Software development Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

What is the program development life cycles purpose ?

A

It helps plan out the process of creating a program by splitting the process up into 5 stages. This makes it easier to manage and plan. Everything is well ordered and clearly documented as well with clear deliverables produced at the end of each stage

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

What are the five stages of a program development life cycle ?

A

Analysis
Design
Coding
Testing
Maintenance

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

What is the analysis stage in a life cycle ?

A

It is a process of investigation leading to the specification of what a program is required to do. During the analysis stage, the problem definition and the requirements specification are produced.

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

What is the design stage in a life cycle ?

A

The problem definition and the requirements specification from the analysis stage are used to show how the program should be developed.

During the design stage,

  • The identifier table is produced
  • The data structures are defined
  • The file structures are defined
  • The test plan is produced
  • The user interface is produced
  • It decomposes a problem into sub-problems
  • It produces the algorithm and represents it using
    pseudocode/flowchart
  • The choice of programming language is decided
  • it identifies the input and output processes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the coding stage in a life cycle ?

A
  • It translates the algorithm into program code and provides the user interface with executable commands
  • It defines the data structures
  • It performs some of the initial debugging and testing
  • It uses a translator to check and run the code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the testing stage in a life cycle ?

A

It is the rigorous testing of a program to make sure that it works under all conditions and if any errors arise they are corrected.

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

What is the maintenance stage in a life cycle ?

A

It is the process of making sure that the program continues to work during use by dealing with any problems that arise, like correcting any bugs and improving or adapting the program to meet new requirements.

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

What is the waterfall model ?

A
  • It is a linear sequential development cycle where each stage is completed before the next stage begins.
  • There is low customer involvement, they are only involved at the start and the end of the process
  • It is well documented as full documentation is completed every stage.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the pros and cons of the waterfall model ?

A

Pros

  • It is easy to manage, understand and use
  • The stages don’t overlap and are completed one at a time
  • Each stage has specific deliverables
  • It works well for smaller programs where the requirements are known and understood

Cons

  • It is difficult to change the requirements at a later stage
  • It is not suitable for programs where the requirements could change
  • The working program is produced late in the cycle
  • It is not suitable for long, complex projects
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What do upward and downward arrows mean in the waterfall model ?

A

Upwards : - More work is required at a previous stage to complete the current stage

Downwards : - The result from one stage is input into the next

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

What is the iterative model ?

A

It is a type of program development cycle where a simple subset of the requirements is initially developed, the development cycle is ran again and again leading to the subset expanding until the entire system has been developed

  • Incremental development as the program development life cycle is repeated
  • Working programs are produced at every iteration
  • High customer involvement as part of the system can be shown at every iteration
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the pros and cons of the iterative model ?

A

Pros

  • Working programs are developed quickly at an early stage
  • Easier to test and debug smaller programs
  • More flexible, it is easy to alter requirements
  • Customers are involved at each iteration

Cons

  • The whole system needs to be defined at the start so that it can be broken down into pieces to be developed at each iteration
  • It needs good planning for every stage
  • It is not suitable for short, simple projects
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is rapid application development ?

A

It is a type of program development cycle where different parts of the requirements are developed in parallel.

  • It requires minimal planning
  • It is a flexible development process
  • It is used for time critical development
  • The client is involved during all the stages of development
  • Small incremental releases are made with each one increasing the functionality.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the pros and cons of rapid application development ?

A

Pros

  • Fast development time
  • A prototype is produced at an early stage in the cycle
  • It is very flexible, it is easier to deal with a change in requirements
  • There is very close cooperation between the client and the developers.

Cons

  • It is difficult to estimate the cost and time to complete the project
  • There is little documentation
  • It is easy for the client to keep changing their mind
  • Not suitable for short, simple projects
  • Needs strong teams of skilled developers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the purpose of a structure chart ?

A
  • It shows the module hierarchy and how a problem is broken down
  • It shows the parameters that are passed are passed between the modules and it shows whether a module is a function or a procedure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are four features shown in a structure chart ?

A
  • Sequence
  • Selection
  • Iteration
  • Module hierarchy
  • The parameters that are being passes between the modules