Chapter 24: Software Development Flashcards
Five phases of SDLC
software development lifecycle: requirements gathering, design, development, testing, and operations and maintenance (O&M)
CASE
computer-aided software engineering
computer-aided software engineering
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
attack surface
collection of possible entry points for an attacker
threat modeling
systematic approach to understand how different threats could be realized and how successful compromise could take place
prototyping methodology
creating a sample of the code for proof-of-concept purposes
spiral methodology
iterative approach emphasizing risk analysis per iteration
RAD
rapid application development
DevSecOps
improve internal coordination and reduce friction by integrating the development, operations, and security teams when developing software
IPT
`integrated product team
integrated product team
multidisciplinary development team with representatives from many or all the stakeholder populations
CMMI
Capability Maturity Model Integration
Capability Maturity Model Integration
process improvement approach which provides organizations with the essential elements of effective processes, which will improve their performance
six maturity levels of the CMMI model
0 - Incomplete, 1 - Initial, 2 - Managed, 3 - Defined, 4 - Quantitatively Managed, 5 - Optimizing
OWASP SAMM
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