Deck 1 - Higher Computing - Software Design and Development Flashcards

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

Name the stages we normally work through when developing software.

A
  • Analysis
  • Design
  • Implementation
  • Testing
  • Documentation
  • Evaluation
  • Maintenance (not in test)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the two main methodologies for creating software?

A
  • Iterative

- Agile

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

What does iterative mean?

A
  • Repeating steps over and over again
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the iterative development methodology?

A
  • The Iterative Development Methodology involves completing all of the stages or development.
  • If there are any issues, you start the whole process again.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the agile development methodology?

A
  • A way of developing software in a reactive and responsive way, with constant feedback with the client.
  • Each stage of development can be iterated many times before moving on to the next stage.
  • The client is involved throughout the whole process.
  • The whole development team works closely together.
  • The project is broken down into many short-term goals (sometimes called “sprints”) that the team works towards.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How is agile development achieved?

A
  • It is achieved with a very short feedback loop
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is software that does not crash easily when given invalid data called?

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

What is a software-development methodology where active user involvement is imperative to gain feedback called?

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

What is software that solves the problem that it is required to solve in terms of usability and functionality requirements called?

A
  • Fit for purpose
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is software which can be easily adapted to changing requirements in the future called?

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

What is software that solves a problem without using an unnecessarily large amount of code called?

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

What design methodology is suited to what scale of projects?

A
  • The iterative method is better suited to large scale projects with strict deadlines
  • Agile is better suited to projects that don’t have a clear scope and where client needs might change
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the analysis stage and what it is done through?

A
  • During the analysis stage of software development, the analyst will discover exactly what the client needs
  • The analysis is done through:
    • Interviews with the client
    • Questionnaires for the users
    • Observing the current system in use
    • Reading the documentation for the current system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is software specification?

A
  • A legally binding contract between the client and the developer
  • The software specification outlines:
    • Purpose
    • Scope
    • Boundaries
    • Functional requirements
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the scope (analysis)?

A
  • The scope of your solution is a list of things you will deliver to the client as part of your project
  • The scope can also include a timescale for delivery
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are boundaries (analysis)?

A
  • Boundaries define the limits of the program
  • If the scope lists what IS included, the boundaries list what is NOT included
  • These may be assumptions that the client could clarify before agreeing to the specification
17
Q

What are functional requirements?

A
  • The functional requirements are a list of the features and functions of your program
  • This can be listed in terms of inputs, processes and outputs
18
Q

What are the 5 data types?

A
  • Character
  • String
  • Integer
  • Real
  • Boolean
19
Q

What are the 4 data structures?

A
  • Arrays
  • Parallel arrays
  • Records
  • Arrays of records