SDLC

?
What are the 9 stages of software development life cycles?
Identification, Feasibility Study, Analysis, Design, Coding, Testing, Implementation, Maintenance, Review and Evaluation.
1 of 41
What happens at the Identification stage?
The requirements for the product and the problems it needs to solve are identified.
2 of 41
Why must requirements be accurate?
If they are not, then the software created will not be fit for the purpose that the client desired.
3 of 41
What happens at the Feasibility Study stage?
This stage involves ensuring that developing the product at the company is suitable and that they have enough developers and experience to solve the problem.
4 of 41
List 3 important questions that need to be answered in the feasibility study.
Is it legal? Is it ethical? Is it economically viable? Is the company capable of solving the problem? Is there actually a problem?
5 of 41
What happens at the Analysis stage?
At this stage, existing solutions are explored and analysed to find out why they are not suitable. Interviews are carried out, questionnaires are used and clients are observed to analyse the problem.
6 of 41
What other important things happen at the analysis stage?
Data flow diagrams are created. Users are targeted. Data storage plans are prepared. Input and outputs are decided on.
7 of 41
What happens at the Design stage?
A solution to the problem is actually thought about here. The product is designed based on all of the data collected. Flowcharts and other plans are created, they should be comprehensive.
8 of 41
What are some of the important things to consider at the design stage?
Specification (ensures high-quality coding), user interface, algorithms, IO design, validation measures and security.
9 of 41
What happens at the Coding stage?
The product which has been designed is now created. It is built based on the specification created and documented during development.
10 of 41
What things need to be considered at the coding stage?
The language which will be used (C++ for speed, Java for portability, Javascript for client-side, PHP for server-side etc.) and the design type (modular design etc.) are decided on.
11 of 41
What happens at the Testing stage?
Testing has to be performed systematically to ensure that the functionality and reliability of the code is high-quality.
12 of 41
What are two types of box testing?
White Box - tests logic and all pathways of the program. Black Box - Uses normal, erroneous and extreme data to fully test the program.
13 of 41
What are the three testing stages?
Alpha - This done by the development team during development. Testing for fatal errors and logic errors. Beta - Done by specific people who are likely to be clients, looking for flaws in the program. Acceptance - Done to check functionality.
14 of 41
List 3 testing and debugging tools/methods.
Dry-run testing, variable watch, stepping, crash dumps, breakpoints, translator diagnostics and cross reference.
15 of 41
What happens at the Implementation stage?
At this stage, the solution is installed and given to the clients.
16 of 41
What are the four types of implementation?
Pilot - New version is trialed and then fully implemented. Phased - Current software is updated over time with the new features. Parallel - Current solution and new solution are both used. Direct - New solution is implemented fully immediately.
17 of 41
What happens at the Maintenance stage?
The software is maintained after it has been installed to solve any issues.
18 of 41
What are the three types of maintenance?
Adaptive - Adds or changes features that are needed by the company or due to law changes. Perfective - Improves the performance or UI of the software. Corrective - Fixes broken features, bugs and security exploits.
19 of 41
What happens at the Review and Evaluation stage?
At this stage, evidence of the functionality is given to the client and the effectiveness is discussed. Technical support is also offered here.
20 of 41
List 3 other things which happen at the review and evaluation stage.
Performance is reviewed, usability is reviewed, robustness is reviewed, cost (did it surpass the budget?), maintainability is reviewed.
21 of 41
What is the spiral model?
This model is a continuous cycle which constantly repeats to improve the software in each iteration.
22 of 41
What are the advantages of the spiral model?
It is suitable for changing requirements, produces a prototype, high amount risk analysis, functionality can be added easily, good documentation.
23 of 41
What are the disadvantages of the spiral model?
Requires experienced, skillful team, expensive, unsuitable for small projects.
24 of 41
When is the spiral model used?
It is usually used for complex problems such as in video game development.
25 of 41
What is the waterfall model?
This model requires each stage to be completed in full before the next one can be started. If any stage before needs repeating, all steps after it must also be repeated. It is a linear life cycle which is very rigid in structure.
26 of 41
What are the advantages of the waterfall model?
Suitable for inexperienced teams, comprehensive plans are produced, progress can be observed, easily managed.
27 of 41
What are the disadvantages of the waterfall model?
Time consuming if previous stages need repeating, requires rigid requirements, performance tests are difficult, documentation may be overwhelming, not suitable for large or object-oriented projects.
28 of 41
When is the waterfall model used?
It is usually used for simple projects with inexperienced developers to guide them.
29 of 41
What is the rapid application model?
Also known as the prototyping model, this produces a prototype on each iteration but does not require more analysis every time. It follows an iterative and incremental approach to development.
30 of 41
What are the advantages of the rapid application model?
Suitable for changing requirements, feedback is constantly given, incomplete areas can be improved easily, progress is easily observed, fast development.
31 of 41
What are the disadvantages of the rapid application model?
Prototypes are expensive to make, can take longer than expected causing it to go over-budget, analysis and design are fast and in-comprehensive usually, requires skilled developers.
32 of 41
When is the rapid application model used?
It is usually used when a problem needs solving quickly and efficiently whilst also being subject to changes.
33 of 41
What is the agile model?
This model is an iterative and incremental development approach. High functionality software is produced for complex problems with testing.
34 of 41
What are the advantages of the agile model?
Client can review progress, software is deployed constantly, good design is produced, suitable for changing requirements.
35 of 41
What are the disadvantages of the agile model?
Unsuitable for large projects, low emphasis on documentation, requires experienced developers, can change course lots because of changing requirements.
36 of 41
When is the agile model used?
The agile model is most useful when the client needs to be involved in the development of the software.
37 of 41
What is the extreme programming model/methodology?
This is similar to the agile model and follows many of the steps. However, it has a greater emphasis on being simplistic and feedback-oriented.
38 of 41
What are the advantages of extreme programming?
Simplicity, feedback-oriented, heavy emphasis on testing, similar to agile advantages.
39 of 41
What are the disadvantages of extreme programming?
Same as agile model. Unsuitable for large projects, low emphasis on documentation, requires experienced developers, can change course lots because of changing requirements.
40 of 41
When is extreme programming used?
It is most suitable for small development teams who are creating software with changing requirements.
41 of 41

Other cards in this set

Card 2

Front

The requirements for the product and the problems it needs to solve are identified.

Back

What happens at the Identification stage?

Card 3

Front

If they are not, then the software created will not be fit for the purpose that the client desired.

Back

Preview of the back of card 3

Card 4

Front

This stage involves ensuring that developing the product at the company is suitable and that they have enough developers and experience to solve the problem.

Back

Preview of the back of card 4

Card 5

Front

Is it legal? Is it ethical? Is it economically viable? Is the company capable of solving the problem? Is there actually a problem?

Back

Preview of the back of card 5
View more cards

Comments

No comments have yet been made

Similar Computing resources:

See all Computing resources »See all Systems development lifecycle resources »