Chapter 20 Flashcards

1
Q

Programming language generations

A

Gen 1: Machine language; 0 and 1 computer directly understands
Gen 2: Assembly language; mnemonics
Gen 3: Structured, object oriented, etc.
Gen 4: Domain-specific
Gen 5: AI, natural language

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

Compiled vs Interpreted

A

Compiled - no source code, but easier to hide malware
Interpreted - need source code

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

Run-time environment

A

Portable across different OS platforms

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

Software libraries

A

Re-usable code; need to be aware of origins of source code

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

Software failure mitigation

A

Input validation
Authen and session mgmt
Error handling
Logging
Fail secure

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

SDLC

A

Conceptual definition
Functional specifications - input/behavior/output
Controls specifications
Design
Coding
Code review
Test
Maintain and change mgmt

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

SDLC models

A

Iterative Waterfall - with feedback for one phase back only
Spiral - repeated waterfall iterations; each one delivering a prototype until finished product

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

Agile development

A

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

Scrum, scrum master, sprints

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

Agile - 12 principles

A
  1. Highest priority - satisfy customer thru early delivery
  2. Welcome changes
  3. Deliver working software frequently
  4. Business and dev work together
  5. Build around motivated people - provide support and trust
  6. Face-to-face communication
  7. Primary measure of progress is working software
  8. Maintain constant pace indefinitely
  9. Attention to technical excellence and good design
  10. Maximize work not done
  11. Self-organizing teams produce best
  12. Regular review and adjust
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

SW-CMM
(Software Capability Maturity Model)

A

Lvl 1: Initial
Lvl 2: Repeatable - basic lifecycle mgmt, reusable code, repeatable project outcomes
Lvl 3: Defined - standard processes, orgranizational processes, training program
Lvl 4: Managed - use metrics, quantitative measurement and quality mgmt
Lvl 5: Optimizing - change mgmt

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

SAMM - software assurance maturity model

A

5 business functions:
- Governance - strategy, compliance, metrics, training, policy
- Design - threat assessment, security req, security arch
- Implementation - secure building, secure deploy
- Verification - testing
- Operations - incident mgmt, operational mgmt env mgmt

Total of 15 security practices

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

IDEAL

A

Initiating
Diagnosing
Establishing
Acting
Learning

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

Change Management

A

Request control processes - request, cost/benefit, prioritize
Change control processes - test and document
Release control processes - approvals, user acceptance, deployment

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

Software Configuration Management

A

Configuration identification
Configuration Control - auth changes, versioning
Configuration status accounting - change tracking
Configuration Audit - regular check for unauth changes

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