1.2.3 - Software Development Flashcards

(34 cards)

1
Q

What are the common stages in most Software Development Life Cycles (SDLCs)?

A

Analysis, Design, Development, Testing, Implementation, Evaluation, Maintenance.

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

What occurs during the Analysis stage?

A

Stakeholders define requirements; the problem and system requirements are clearly defined.

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

What factors are considered when defining requirements in Analysis?

A

Strengths/weaknesses of current solutions, types of data (inputs, outputs, stored data), data volume.

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

What is designed during the Design stage?

A

Inputs, outputs, security features, hardware setup, user interface, and a test plan.

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

What happens during the Development stage?

A

The project is split into modules assigned to teams for programming.

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

What are the main types of testing?

A

Alpha testing, Beta testing, White box testing, Black box testing.

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

What is Alpha testing?

A

In-house testing by development teams to pinpoint and fix bugs.

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

What is Beta testing?

A

Testing by end-users after alpha testing; feedback informs further development.

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

What is White box testing?

A

Testing based on the internal structure of the program; all routes are tested.

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

What is Black box testing?

A

Testing without knowledge of internal structure; focuses on inputs and outputs.

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

What occurs during the Implementation stage?

A

The software is installed onto users’ systems.

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

What is the purpose of the Evaluation stage?

A

To assess software effectiveness against initial requirements (robustness, reliability, etc.).

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

What happens during the Maintenance stage?

A

Errors or improvements are flagged; programmers send updates to fix bugs or enhance features.

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

What is the Waterfall model?

A

A sequential SDLC where stages are completed in order from start to finish.

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

What does TELOS stand for in feasibility studies?

A

Technical, Economic, Legal, Operational, Scheduling.

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

What is a major drawback of the Waterfall model?

A

It is inflexible; changes require revisiting previous stages, and user input is limited.

17
Q

What are Agile methodologies?

A

A collection of methodologies focusing on flexibility, adaptability, and iterative development.

18
Q

How does Agile development handle projects?

A

Problems are broken into sections developed in parallel; working prototypes are delivered early and improved iteratively.

19
Q

What is a key priority in Agile development?

A

User satisfaction over extensive documentation.

20
Q

What is Extreme Programming (XP)?

A

An Agile model with paired programmers and an end-user representative, focusing on user stories and high-quality code.

21
Q

What are the principles of Extreme Programming?

A

Paired programming, user stories, 40-hour work weeks, and iterative ‘working versions’.

22
Q

What is a challenge of Extreme Programming?

A

Producing high-quality documentation due to its iterative nature.

23
Q

What is the Spiral model?

A

A risk-focused SDLC with four stages: requirements analysis, risk mitigation, development/testing, and evaluation.

24
Q

When is the Spiral model suitable?

A

For large, risk-heavy projects with high budgets.

25
What is a disadvantage of the Spiral model?
High cost due to risk assessors and constant prototyping.
26
What is Rapid Application Development (RAD)?
An iterative methodology using prototypes and user feedback to refine the product quickly.
27
When is RAD commonly used?
When user requirements are unclear initially, or for small-to-medium projects with short timeframes.
28
What is a drawback of RAD?
Fast pace may reduce code quality, and documentation can be poor.
29
What is an algorithm?
A set of instructions to solve a problem.
30
What are qualities of a good algorithm?
Clearly defined inputs, valid outputs, handles invalid inputs, reaches a stopping condition, well-documented and commented.
31
What methodology is best for static, low-risk projects?
Waterfall.
32
What methodology is suited to small projects with unclear requirements?
Agile or Extreme Programming.
33
What methodology focuses heavily on risk analysis?
Spiral model.
34
What methodology uses prototypes and user feedback iteratively?
Rapid Application Development (RAD).