SlideShare a Scribd company logo
Software Development
Security
(Understanding, Applying, and Enforcing Software Security)
• 8.1 Understand and integrate security in the Software
Development Life Cycle (SDLC)
• 8.2 Identify and apply security controls in software
development ecosystems
• 8.3 Assess the effectiveness of software security
• 8.4 Assess security impact of acquired software
• 8.5 Define and apply secure coding guidelines and
standards
Domain 8: SW Development Security 2
Test Objectives at a Glance
8.1 Understand and integrate security in the Software
Development Life Cycle (SDLC)
• Development methodologies (e.a. Agile, Waterfall, DevOps,
DevSecOps)
• Maturity models (e.g. Capability Maturity Model (CMM), Software
Assurance Maturity Model (SAMM))
• Operation and maintenance
• Change management
• Integrated product team (IPT)
Domain Objectives 8.1
Domain 8: SW Development Security 3
• Focuses on security at every level
• Used to plan, execute, and control a software development
project
• Security plan is the first step of any SDLC model
• Multiple models of the SDLC
• Most models contain 5 basic phases:
• Initiation
• Development/acquisition
• Implementation
• Operation
• Disposal
Systems Development Life Cycle (SDLC)
Domain 8: SW Development Security 4
Systems Development Life Cycle (ISC)2
System Development Lifecycle
Phases
• Project Initiation and planning
• Functional Requirements Definition
• System Design Specifications
• Development and Implementation
• Documentation and Common
Program Controls
• Testing and
EvaluationControl(Certification/Acc
reditation)
• Transition to Production
System Lifecycle has
two additional Phases
• Operations and
Maintenance
Support
• Decommissioning/Di
sposal and System
Replacement
Domain 8: SW Development Security 5
• Determine security requirements
• Conduct risk analysis
• Define security strategy
Domain 8: SW Development Security 6
Project Initiation and Planning Security
Activities
• Identify Security Areas
• Establish security requirements
• Security tests
• Define strategy
• Develop functional baseline
Domain 8: SW Development Security 7
Functional Requirements Specifications
Security Activities
• Establish security specifications
• Update security test plans
• Document security baseline
Domain 8: SW Development Security 8
Detailed Design Specifications Security
Activities
• Develop security code
• Evaluation of security code
• Document security code
Domain 8: SW Development Security 9
Development and Documentation Security
Activities
• Test security components
• Validate security in integrated systems
• Implement security code
• Document security controls
• Certify secure operations
• Accept secure system
Domain 8: SW Development Security 10
Testing, Acceptance, and Transition into
Production Security Activities
Waterfall Lifecycle Method
Measure Twice,
Cut Once
Software Development Methods
• Finish one stage prior to
starting the next
• Requires formal reviews before
moving into the next phase
• Heavy overhead in planning and
administration
• No changes once the project is
started
• Paradigm for non-iterative models
• Non-iterative are more secure
Domain 8: SW Development Security 11
Requirements
Analysis
Design
Development
Testing
Maintenance
• Non-iterative
• Estimated costs and schedules are revised at the end of
each risk assessment
• Decision to proceed/cancel project is revisited after
each risk assessment
• Nested waterfall phases
• Each phase has 4 sub phases
• Phases based on Deming PDCA
• Plan, do, check, act
Spiral Model
Domain 8: SW Development Security 12
• Simplest and least disciplined method
• Useful for small development projects where quality is not
essential.
• Not a recommended software development practice.
1. Developer creates the first version of the program with
limited specification and design
2. Software developer may sketch out a functional or
technical design based on customer needs
3. From the initial project, the software is repeatedly
modified until the customer is satisfied.
Domain 8: SW Development Security 13
Build and Fix
• A repetitive mini waterfall
• A series of small, incremental development projects
• Without a complete understanding of ultimate end product,
success may be hard to achieve
1. Determine system requirements
2. Evaluate and prioritize
3. Develop based on priority
Domain 8: SW Development Security 14
Incremental Method
• Non-iterative
• Write good code the first time
• Controls defects in software
• Quality achieved through design versus testing and
remediation
• Focus is on defect prevention rather than defect
removal
Clean Room Model
Domain 8: SW Development Security 15
• Prototyping
• Iterative
• Developed to combat the weaknesses of the waterfall model
• Refine prototype until acceptable
• 4 Step Process:
• Initial Concept
• Design and Implement Initial Prototype
• Refine Prototype
• Complete and Release
Prototyping Model
Domain 8: SW Development Security 16
• Modified Prototype Model (MPM)
• Iterative
• Ideal for web application development
• Allows for basic functionality to be deployed in a quick time frame
• Maintenance phase begins after the deployment
• Application evolves as the environment changes (not frozen in
time)
Modified Prototype Model (MPM)
Domain 8: SW Development Security 17
• Rapid Application Development (RAD)
• Iterative
• Rapid prototyping within strict time limits
• Can be a disadvantage if decisions are made too quickly
• Joint Application Development (JAD)
• Iterative
• Management process that allows developers to work directly with
users. Can help with RAD
• Key players communicate at key phases of development
Rapid Application Development (RAD) /
Joint Application Development (JAD)
Domain 8: SW Development Security 18
• Requirements built on what is available
• Built on assumptions as to how the system might work
• Consists of planning and trying different designs before development
• Not cost-effective
• Results in less-than-optimal systems
• Iterative
Exploratory Model
Domain 8: SW Development Security 19
• Component Based Development
• Involves using standardized building blocks to assemble, rather
than develop, an application
• May be a security advantage as the components have previously
been tested for security
• Similar to Object Oriented Programming (OOP)
Component Based Model
Domain 8: SW Development Security 20
• Reuse Model
• Built from existing components
• Best suited for projects using
object oriented development
… because objects can be
exported, reused, and
modified
• Libraries of software modules
are maintained to be copied
for use in any system
Reuse Model
Domain 8: SW Development Security 21
• Individuals and interactions over processes and tools
• Working software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
• More flexible
• Fast turnaround
• Strong communications
• Customer involvement
• Methods include scrum and extreme programming
Agile Model
Domain 8: SW Development Security 22
Waterfall Model versus Agile Model
Domain 8: SW Development Security 23
• Extreme Programming (XP)
• Based on simplicity, communications, and feedback
• Relies on subprojects of limited and defined scope with
programmers working in pairs
• Code quality improves to compensate for second
programmer cost.
• Relies on continuous integration and test-driven
development to produce working software.
Extreme Programming (XP) Model
Domain 8: SW Development Security 24
• Small teams of developers called
scrum teams
• Scrum master supports the
scrum team
• Product owner makes major
decisions
• The teams take the project from
start to finish, handing off similar
to rugby
Scrum Development Model
Domain 8: SW Development Security 25
• An approach based on lean and agile principles in which
business owners and the development, operations, and
quality assurance departments collaborate and work
together to deliver software in a continuous manner that
enables the business to more quickly react to market
opportunities and reduce the time to include customer
feedback into products.
• A set of practices that combines software development and
IT operations.
• It trys to shorten the systems development life cycle and provide
continuous delivery with high software quality.
Domain 8: SW Development Security 26
DevOps
• it is short for development, security and operations.
• Make everyone accountable for security with the objective
of implementing security decisions and actions at the same
scale and speed as development and operations decisions
and actions
• DevSecOps tools ensures security is built into applications
instead of added later.
• When security is present during every stage of the software
delivery lifecycle, the cost of compliance is reduced and
software is delivered and released faster
Domain 8: SW Development Security 27
DevSecOps
• A tool for process improvement (capability maturity model)
• Used to evaluate areas of capability or performance and to
point out specific areas of improvement
• May be used as a standard to evaluate a process
• Can be used as a bench mark or score card to evaluate
performance or identify improvement areas.
Domain 8: SW Development Security 28
Maturity Models
Levels
• Initial
• Managed
• Defined
• Qualitatively managed
• optimizing
Domain 8: SW Development Security 29
Maturity Models: Capability Maturity Model
(CMM)
Process level improvement program created to integrate an
assessment and process improvement guidelines for separate
organizational functions.
Levels
• Incomplete
• performed
• Managed
• Defined
• Qualitatively managed
• optimizing
Domain 8: SW Development Security 30
Maturity Models: Capability Maturity Model
Integration (CMMI)
BSIMM: Descriptive software security focused maturity
model based on actual software security initiatives. Available
under the creative commons license. An evidence based
model as it reflects real world industry activities.
SAMM: framework to help organizations formulate and
implement a security software strategy that is tailored to the
specific risks facing an organization (prescriptive framework).
Maintained by OWASP. Based on: governance, construction,
verification, and operations
Domain 8: SW Development Security 31
Maturity Models: Building Security in Maturity
Model (BSIMM) & Software Assurance Maturity
Model (SAMM)
• An Integrated Product Team (IPT) is a multidisciplinary
group of people who are collectively responsible for
delivering a defined product or process.
• IPTs are used in complex development programs/projects
for review and decision making.
• The emphasis of the IPT is on involvement of all
stakeholders (users, customers, management, developers,
contractors) in a collaborative forum
Domain 8: SW Development Security 32
Integrated Product Team
• Combine product design and process design to better
understand product requirements
• Facilitates meeting cost and performance objectives
• Facilitates multi-skilled team members working together
through the concept of integrated product teams
• Allows for team decisions to made from input from the
entire team.
Domain 8: SW Development Security 33
Integrated Product and Process
Development (IPPD)
Questions?
Domain 8: SW Development Security 34

More Related Content

Similar to Lecture 10.pptx

Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
ElieNGOMSEU
 
ddd.ppt
ddd.pptddd.ppt
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
AbdugafforAbduganiye
 
Session2 (1).ppt
Session2 (1).pptSession2 (1).ppt
Session2 (1).ppt
Saraj Hameed Sidiqi
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
SnehaBarua5
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
SravyaPreethi1
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
DrJanarthananP
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
Mehuk1
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
AqeelAbbas94
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
EveryThing68
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
chandrasekarnatraj
 
Offshore Software Development company India
Offshore Software Development company IndiaOffshore Software Development company India
Offshore Software Development company India
rahulkwebvirtue
 
Iscope Digital Media Offshore Software Development Company
Iscope Digital Media Offshore Software Development CompanyIscope Digital Media Offshore Software Development Company
Iscope Digital Media Offshore Software Development Company
Iscope Digital
 
software development life cycle
software development life cyclesoftware development life cycle
software development life cycle
Ananthachethan
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
Session2
Session2Session2
Session2
cherrybear2014
 
SDLC
SDLCSDLC
SDLC
chkjha
 
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
loloka1
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.ppt
NyamburaKinyua
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
RIKSOF
 

Similar to Lecture 10.pptx (20)

Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
ddd.ppt
ddd.pptddd.ppt
ddd.ppt
 
Session2.pptx.ppt
Session2.pptx.pptSession2.pptx.ppt
Session2.pptx.ppt
 
Session2 (1).ppt
Session2 (1).pptSession2 (1).ppt
Session2 (1).ppt
 
SDLC.ppt
SDLC.pptSDLC.ppt
SDLC.ppt
 
SDLC.PPT
SDLC.PPTSDLC.PPT
SDLC.PPT
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
 
Offshore Software Development company India
Offshore Software Development company IndiaOffshore Software Development company India
Offshore Software Development company India
 
Iscope Digital Media Offshore Software Development Company
Iscope Digital Media Offshore Software Development CompanyIscope Digital Media Offshore Software Development Company
Iscope Digital Media Offshore Software Development Company
 
software development life cycle
software development life cyclesoftware development life cycle
software development life cycle
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
Session2
Session2Session2
Session2
 
SDLC
SDLCSDLC
SDLC
 
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
4_25655_SE291_2020_1__2_1_Lecture 3 - Software Process Models.ppt
 
System development methodologies L2.ppt
System development methodologies L2.pptSystem development methodologies L2.ppt
System development methodologies L2.ppt
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 

More from MuhammadRehan856177

Event Programming JavaScript
Event Programming JavaScriptEvent Programming JavaScript
Event Programming JavaScript
MuhammadRehan856177
 
Intrusion .ppt
Intrusion .pptIntrusion .ppt
Intrusion .ppt
MuhammadRehan856177
 
Botnets Attacks.pptx
Botnets Attacks.pptxBotnets Attacks.pptx
Botnets Attacks.pptx
MuhammadRehan856177
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
MuhammadRehan856177
 
Lecture 3.pptx
Lecture 3.pptxLecture 3.pptx
Lecture 3.pptx
MuhammadRehan856177
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
MuhammadRehan856177
 
Lecture 2.ppt
Lecture 2.pptLecture 2.ppt
Lecture 2.ppt
MuhammadRehan856177
 
Introduction to JavaScript (1).ppt
Introduction to JavaScript (1).pptIntroduction to JavaScript (1).ppt
Introduction to JavaScript (1).ppt
MuhammadRehan856177
 
3. HTML Forms.ppt
3. HTML Forms.ppt3. HTML Forms.ppt
3. HTML Forms.ppt
MuhammadRehan856177
 
2. HTML Tables.ppt
2. HTML Tables.ppt2. HTML Tables.ppt
2. HTML Tables.ppt
MuhammadRehan856177
 

More from MuhammadRehan856177 (10)

Event Programming JavaScript
Event Programming JavaScriptEvent Programming JavaScript
Event Programming JavaScript
 
Intrusion .ppt
Intrusion .pptIntrusion .ppt
Intrusion .ppt
 
Botnets Attacks.pptx
Botnets Attacks.pptxBotnets Attacks.pptx
Botnets Attacks.pptx
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
 
Lecture 3.pptx
Lecture 3.pptxLecture 3.pptx
Lecture 3.pptx
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
 
Lecture 2.ppt
Lecture 2.pptLecture 2.ppt
Lecture 2.ppt
 
Introduction to JavaScript (1).ppt
Introduction to JavaScript (1).pptIntroduction to JavaScript (1).ppt
Introduction to JavaScript (1).ppt
 
3. HTML Forms.ppt
3. HTML Forms.ppt3. HTML Forms.ppt
3. HTML Forms.ppt
 
2. HTML Tables.ppt
2. HTML Tables.ppt2. HTML Tables.ppt
2. HTML Tables.ppt
 

Recently uploaded

Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
Madan Karki
 
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
amsjournal
 
BRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdfBRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdf
LAXMAREDDY22
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
gerogepatton
 
Introduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptxIntroduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptx
MiscAnnoy1
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
MDSABBIROJJAMANPAYEL
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
171ticu
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
Engine Lubrication performance System.pdf
Engine Lubrication performance System.pdfEngine Lubrication performance System.pdf
Engine Lubrication performance System.pdf
mamamaam477
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
Nada Hikmah
 
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENTNATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
Addu25809
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
abbyasa1014
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
shadow0702a
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
ecqow
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
sachin chaurasia
 
Casting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdfCasting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdf
zubairahmad848137
 

Recently uploaded (20)

Manufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptxManufacturing Process of molasses based distillery ppt.pptx
Manufacturing Process of molasses based distillery ppt.pptx
 
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
UNLOCKING HEALTHCARE 4.0: NAVIGATING CRITICAL SUCCESS FACTORS FOR EFFECTIVE I...
 
BRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdfBRAIN TUMOR DETECTION for seminar ppt.pdf
BRAIN TUMOR DETECTION for seminar ppt.pdf
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
 
Introduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptxIntroduction to AI Safety (public presentation).pptx
Introduction to AI Safety (public presentation).pptx
 
Properties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptxProperties Railway Sleepers and Test.pptx
Properties Railway Sleepers and Test.pptx
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
 
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
Engine Lubrication performance System.pdf
Engine Lubrication performance System.pdfEngine Lubrication performance System.pdf
Engine Lubrication performance System.pdf
 
Curve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods RegressionCurve Fitting in Numerical Methods Regression
Curve Fitting in Numerical Methods Regression
 
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENTNATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
NATURAL DEEP EUTECTIC SOLVENTS AS ANTI-FREEZING AGENT
 
Engineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdfEngineering Drawings Lecture Detail Drawings 2014.pdf
Engineering Drawings Lecture Detail Drawings 2014.pdf
 
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
一比一原版(CalArts毕业证)加利福尼亚艺术学院毕业证如何办理
 
The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.The Python for beginners. This is an advance computer language.
The Python for beginners. This is an advance computer language.
 
Casting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdfCasting-Defect-inSlab continuous casting.pdf
Casting-Defect-inSlab continuous casting.pdf
 

Lecture 10.pptx

  • 2. • 8.1 Understand and integrate security in the Software Development Life Cycle (SDLC) • 8.2 Identify and apply security controls in software development ecosystems • 8.3 Assess the effectiveness of software security • 8.4 Assess security impact of acquired software • 8.5 Define and apply secure coding guidelines and standards Domain 8: SW Development Security 2 Test Objectives at a Glance
  • 3. 8.1 Understand and integrate security in the Software Development Life Cycle (SDLC) • Development methodologies (e.a. Agile, Waterfall, DevOps, DevSecOps) • Maturity models (e.g. Capability Maturity Model (CMM), Software Assurance Maturity Model (SAMM)) • Operation and maintenance • Change management • Integrated product team (IPT) Domain Objectives 8.1 Domain 8: SW Development Security 3
  • 4. • Focuses on security at every level • Used to plan, execute, and control a software development project • Security plan is the first step of any SDLC model • Multiple models of the SDLC • Most models contain 5 basic phases: • Initiation • Development/acquisition • Implementation • Operation • Disposal Systems Development Life Cycle (SDLC) Domain 8: SW Development Security 4
  • 5. Systems Development Life Cycle (ISC)2 System Development Lifecycle Phases • Project Initiation and planning • Functional Requirements Definition • System Design Specifications • Development and Implementation • Documentation and Common Program Controls • Testing and EvaluationControl(Certification/Acc reditation) • Transition to Production System Lifecycle has two additional Phases • Operations and Maintenance Support • Decommissioning/Di sposal and System Replacement Domain 8: SW Development Security 5
  • 6. • Determine security requirements • Conduct risk analysis • Define security strategy Domain 8: SW Development Security 6 Project Initiation and Planning Security Activities
  • 7. • Identify Security Areas • Establish security requirements • Security tests • Define strategy • Develop functional baseline Domain 8: SW Development Security 7 Functional Requirements Specifications Security Activities
  • 8. • Establish security specifications • Update security test plans • Document security baseline Domain 8: SW Development Security 8 Detailed Design Specifications Security Activities
  • 9. • Develop security code • Evaluation of security code • Document security code Domain 8: SW Development Security 9 Development and Documentation Security Activities
  • 10. • Test security components • Validate security in integrated systems • Implement security code • Document security controls • Certify secure operations • Accept secure system Domain 8: SW Development Security 10 Testing, Acceptance, and Transition into Production Security Activities
  • 11. Waterfall Lifecycle Method Measure Twice, Cut Once Software Development Methods • Finish one stage prior to starting the next • Requires formal reviews before moving into the next phase • Heavy overhead in planning and administration • No changes once the project is started • Paradigm for non-iterative models • Non-iterative are more secure Domain 8: SW Development Security 11 Requirements Analysis Design Development Testing Maintenance
  • 12. • Non-iterative • Estimated costs and schedules are revised at the end of each risk assessment • Decision to proceed/cancel project is revisited after each risk assessment • Nested waterfall phases • Each phase has 4 sub phases • Phases based on Deming PDCA • Plan, do, check, act Spiral Model Domain 8: SW Development Security 12
  • 13. • Simplest and least disciplined method • Useful for small development projects where quality is not essential. • Not a recommended software development practice. 1. Developer creates the first version of the program with limited specification and design 2. Software developer may sketch out a functional or technical design based on customer needs 3. From the initial project, the software is repeatedly modified until the customer is satisfied. Domain 8: SW Development Security 13 Build and Fix
  • 14. • A repetitive mini waterfall • A series of small, incremental development projects • Without a complete understanding of ultimate end product, success may be hard to achieve 1. Determine system requirements 2. Evaluate and prioritize 3. Develop based on priority Domain 8: SW Development Security 14 Incremental Method
  • 15. • Non-iterative • Write good code the first time • Controls defects in software • Quality achieved through design versus testing and remediation • Focus is on defect prevention rather than defect removal Clean Room Model Domain 8: SW Development Security 15
  • 16. • Prototyping • Iterative • Developed to combat the weaknesses of the waterfall model • Refine prototype until acceptable • 4 Step Process: • Initial Concept • Design and Implement Initial Prototype • Refine Prototype • Complete and Release Prototyping Model Domain 8: SW Development Security 16
  • 17. • Modified Prototype Model (MPM) • Iterative • Ideal for web application development • Allows for basic functionality to be deployed in a quick time frame • Maintenance phase begins after the deployment • Application evolves as the environment changes (not frozen in time) Modified Prototype Model (MPM) Domain 8: SW Development Security 17
  • 18. • Rapid Application Development (RAD) • Iterative • Rapid prototyping within strict time limits • Can be a disadvantage if decisions are made too quickly • Joint Application Development (JAD) • Iterative • Management process that allows developers to work directly with users. Can help with RAD • Key players communicate at key phases of development Rapid Application Development (RAD) / Joint Application Development (JAD) Domain 8: SW Development Security 18
  • 19. • Requirements built on what is available • Built on assumptions as to how the system might work • Consists of planning and trying different designs before development • Not cost-effective • Results in less-than-optimal systems • Iterative Exploratory Model Domain 8: SW Development Security 19
  • 20. • Component Based Development • Involves using standardized building blocks to assemble, rather than develop, an application • May be a security advantage as the components have previously been tested for security • Similar to Object Oriented Programming (OOP) Component Based Model Domain 8: SW Development Security 20
  • 21. • Reuse Model • Built from existing components • Best suited for projects using object oriented development … because objects can be exported, reused, and modified • Libraries of software modules are maintained to be copied for use in any system Reuse Model Domain 8: SW Development Security 21
  • 22. • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan • More flexible • Fast turnaround • Strong communications • Customer involvement • Methods include scrum and extreme programming Agile Model Domain 8: SW Development Security 22
  • 23. Waterfall Model versus Agile Model Domain 8: SW Development Security 23
  • 24. • Extreme Programming (XP) • Based on simplicity, communications, and feedback • Relies on subprojects of limited and defined scope with programmers working in pairs • Code quality improves to compensate for second programmer cost. • Relies on continuous integration and test-driven development to produce working software. Extreme Programming (XP) Model Domain 8: SW Development Security 24
  • 25. • Small teams of developers called scrum teams • Scrum master supports the scrum team • Product owner makes major decisions • The teams take the project from start to finish, handing off similar to rugby Scrum Development Model Domain 8: SW Development Security 25
  • 26. • An approach based on lean and agile principles in which business owners and the development, operations, and quality assurance departments collaborate and work together to deliver software in a continuous manner that enables the business to more quickly react to market opportunities and reduce the time to include customer feedback into products. • A set of practices that combines software development and IT operations. • It trys to shorten the systems development life cycle and provide continuous delivery with high software quality. Domain 8: SW Development Security 26 DevOps
  • 27. • it is short for development, security and operations. • Make everyone accountable for security with the objective of implementing security decisions and actions at the same scale and speed as development and operations decisions and actions • DevSecOps tools ensures security is built into applications instead of added later. • When security is present during every stage of the software delivery lifecycle, the cost of compliance is reduced and software is delivered and released faster Domain 8: SW Development Security 27 DevSecOps
  • 28. • A tool for process improvement (capability maturity model) • Used to evaluate areas of capability or performance and to point out specific areas of improvement • May be used as a standard to evaluate a process • Can be used as a bench mark or score card to evaluate performance or identify improvement areas. Domain 8: SW Development Security 28 Maturity Models
  • 29. Levels • Initial • Managed • Defined • Qualitatively managed • optimizing Domain 8: SW Development Security 29 Maturity Models: Capability Maturity Model (CMM)
  • 30. Process level improvement program created to integrate an assessment and process improvement guidelines for separate organizational functions. Levels • Incomplete • performed • Managed • Defined • Qualitatively managed • optimizing Domain 8: SW Development Security 30 Maturity Models: Capability Maturity Model Integration (CMMI)
  • 31. BSIMM: Descriptive software security focused maturity model based on actual software security initiatives. Available under the creative commons license. An evidence based model as it reflects real world industry activities. SAMM: framework to help organizations formulate and implement a security software strategy that is tailored to the specific risks facing an organization (prescriptive framework). Maintained by OWASP. Based on: governance, construction, verification, and operations Domain 8: SW Development Security 31 Maturity Models: Building Security in Maturity Model (BSIMM) & Software Assurance Maturity Model (SAMM)
  • 32. • An Integrated Product Team (IPT) is a multidisciplinary group of people who are collectively responsible for delivering a defined product or process. • IPTs are used in complex development programs/projects for review and decision making. • The emphasis of the IPT is on involvement of all stakeholders (users, customers, management, developers, contractors) in a collaborative forum Domain 8: SW Development Security 32 Integrated Product Team
  • 33. • Combine product design and process design to better understand product requirements • Facilitates meeting cost and performance objectives • Facilitates multi-skilled team members working together through the concept of integrated product teams • Allows for team decisions to made from input from the entire team. Domain 8: SW Development Security 33 Integrated Product and Process Development (IPPD)
  • 34. Questions? Domain 8: SW Development Security 34