Overview of Secure Application Development Flashcards

1
Q

SDLC

A

Software Development Life Cycle

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

What are the SDLC stages?

A

Stage 1: Planning and Requirement Analysis
Stage 2: Defining Requirements
Stage 3: Designing the Product Architecture
Stage 4: Building or Developing the Product
Stage 5: Testing the Product
Stage 6: Deployment in the Market and Maintenance

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

SRS

A

Software Requirement Specification

consists of all the product requirements to be designed and developed during the project life cycle.

Created in stage 2 - Defining Requirements stage

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

DDS

A

Design Document Specification

Based on the requirements specified in SRS, usually more than one design approach for the product architecture is proposed and documented in a DDS

created in stage 3 - Designing the Product Architecture

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

UAT

A

User Acceptance Testing

sometimes products are released in stages. a UAT is when product is released in a limited segment and tested in real business environment

created in stage 6: Deployment in the Market and Maintenance

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

What are the popular SDLC Models or software development process models?

A

Waterfall Model
Iterative Model
Spiral Model
V-Model
Big Bang Model

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

Waterfall Model Design?

A

Sequential in nature. Current step must be complete prior to moving on to next step.

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

Situations where use of Waterfall model is appropriate?

A
  1. Requirements are very well documented, clear, and fixed
  2. Product Definition is Stable
  3. Technology is understood and not dyamic
  4. There are no ambiguos requirements
  5. Ample resources with required expertise are available to support the product
  6. The project is short.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the advantages of the Waterfall Model

A

allows for deatmentalization and control

a schedule can be set with deadlines for each stage

simple and easy to use

easy to manage

clearly defined stages

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

Waterfall Model disadvantages

A

does not allow much reflection or revision.

no working software produced until late during the life cylce

high risk and uncertainty

not good for complex and object oriented projects

not suitable for projects with risk of changing

difficult to measure progress within the stages

adjusting scope during life cycle can end project

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

What is the Iterative Model in SDLC

A

it starts with a simple implementation of a small set of software requirements and iteratively enhances evolving versions until a complete system is ready to be deployed

Basically, develpment begins by specifying and implementing just part of the software, which is then reviewed for further requirements and repeated which produces a nrew version at each iteration of the model

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

Illustration of the Iterative Model

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

What applications would use the Iterative Model?

A

Requirements of the complete system are clearly defined and understood.

Major requirements must be defined; however, some functionalities or requested enhancements may evolve with time.

There is a time to the market constraint.

A new technology is being used and is being learnt by the development team while working on the project.

Resources with needed skill sets are not available and are planned to be used on contract basis for specific iterations.

There are some high-risk features and goals which may change in the future.

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

Pros of the Iterative Model

A

The advantage of this model is that there is a working model of the system at a very early stage of development, which makes it easier to find functional or design flaws. Finding issues at an early stage of development enables to take corrective measures in a limited budget

Some working functionality obtained early on

results obtained early and periodically

progress can be measured

testing and debugging easy

supports changing requirements

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

Disadvantages of Iterative Model

A

The disadvantage with this SDLC model is that it is applicable only to large and bulky software development projects. This is because it is hard to break a small software system into further small serviceable increments/modules

not suitable for smaller projects

management complexity is more

end of project may not be known which is a risk

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