Chapter 24: Software Development Flashcards

(27 cards)

1
Q

Five phases of SDLC

A

software development lifecycle: requirements gathering, design, development, testing, and operations and maintenance (O&M)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

CASE

A

computer-aided software engineering

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

computer-aided software engineering

A

type of software which allows for the automated development of software (program editors, debuggers, code analyzers, version-control mechanisms; increase development speed and productivity and reduce errors

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

attack surface

A

collection of possible entry points for an attacker

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

threat modeling

A

systematic approach to understand how different threats could be realized and how successful compromise could take place

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

prototyping methodology

A

creating a sample of the code for proof-of-concept purposes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

spiral methodology

A

iterative approach emphasizing risk analysis per iteration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

RAD

A

rapid application development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

DevSecOps

A

improve internal coordination and reduce friction by integrating the development, operations, and security teams when developing software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

IPT

A

`integrated product team

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

integrated product team

A

multidisciplinary development team with representatives from many or all the stakeholder populations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

CMMI

A

Capability Maturity Model Integration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Capability Maturity Model Integration

A

process improvement approach which provides organizations with the essential elements of effective processes, which will improve their performance

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

six maturity levels of the CMMI model

A

0 - Incomplete, 1 - Initial, 2 - Managed, 3 - Defined, 4 - Quantitatively Managed, 5 - Optimizing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

OWASP SAMM

A

Software Assurance Maturity Model, focused on secure software development and allows orgs to decide their target maturity levels within each five critical business functions: Governance, Design, Implementation, Verification, and Operations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

JAD

A

Joint Application Development; team approach in app dev in a workshop-oriented environment

17
Q

RAD

A

Rapid Application Development; combines prototyping and iterative dev procedures with the goal of accelerating software dev process

18
Q

Reuse methodology

A

using progressively developed code; programs evolve gradually by modifying preexisting prototypes to customer specifications

19
Q

Cleanroom

A

prevents errors or mistakes by following structured and formal methods of developing and testing; used for high-quality and critical applications that will be put through strict certification process

20
Q

0 - Incomplete

A

dev process is ad hoc and chaotic; tasks not completed and so projects are cancelled or abandoned

21
Q

1 - Initial

A

effective management procedures and plans; no assurance of consistency, and quality is unpredictable; success is the result of individual heroics

22
Q

2 - Managed

A

formal management structure, change control, and quality assurance for individual projects; org can properly repeat processes throughout each project

23
Q

3 - Defined

A

Formal procedures in place; org is proactive rather than reactive

24
Q

4 - Quantitatively Managed

A

formal processes to collect and analyze quantitative data, metrics are defined and fed into process-improvement program

25
5 - Optimizing
budgeted and integrated plans for continuous process improvement, which allow it to quickly respond to opportunities and changes
26
Waterfall
rigid approach used if requirements are fully understood and different orgs will perform the work at each phase
27
user stories
agile methodology (Scrum) for documenting requirements for a software system