1 - Approaches to software development Flashcards

1
Q

A system is an assembly of __________ that are connected in an organised way to perform some ________

A

components, activity

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

A ______ is an area of knowledge characterised by a set of ________ and terminology

A

domain, concepts

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

The ________ of two combined systems encompasses a (wider/narrower) scope than the combined boundaries of the separate systems

A

boundary

wider

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

Three important characteristics of software:

  • ____________ - easy to change
  • __________ - components are linked to each other by a large number of relationshipts
  • ____ - may be measured in terms of lines of code
A

malleability

complexity

size

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

Main characteristics of a good software system:

  • Meets user’s requirements
  • U_____
  • U_____
  • R_______
  • F_______
  • A________
  • A_________

Uthor Underleaf Rode For Ancient Asshai

A

Useful

Usable

Reliable

Flexible

Available

Affordable

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

_______________ is a software quality factor which determines the effort required to understand, locate and fix errors in a system

A

Maintainability

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

A ______ system is an old software system that is still required because it meets some useful purpose to an organisation, and it is not considered to be ___________

A

legacy

replaceable

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

A legacy system may have started out with all the characteristics of a good software system, over time it starts to lose its ___________. All we can do is put processes in place that allow for __________ ______ to take place.

A

flexiblility

controlled change

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

A ______ is a program unit that is used exclusively through an external interface

A

module

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

The operations that a software system or module provides to its clients make up its _________

A

interface

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

________ describes how closely the activities within a single module are related to each other. We would prefer this to be (high/low).

________ is a measure of interconnection among modules in a software system. We would prefer this to be (high/low)

A

cohesion - high

coupling - low

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

The set of structures needed to reason about the system, including software elements, and the relationships between these elements, make up a software’s ____________

A

architecture

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

The characteristics of software development that support the claim that it is an engineering discipline:

  • it is conerned with meeting clearly defined ____________.
  • Uses a defined _______ with clear __________, each of which has at least one identifiable product.
  • developers can apply their ______ and __________ to the tasks demanded of them.
  • __________ and ____________ are regarded as essential.
  • makes use of _____ and ________.
  • Follows a ____ of ________.
A
  • requirements
  • process, activities
  • skills, knowledge
  • validation, verification
  • tools, standards
  • code, practice
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

A ___________ _______ is a set of rules that defines how a software development project should be carried out.

It incorporates a number of __________, and a _______ model.

A

development process

activities, process

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

Project management involves identifying appropriate ____________ for a given set of requirements, controlling the ____ of producing them, and ensuring they are produced __ ____

A

deliverables

cost

on time

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

____________ is important for the reconstruction of significant events.

A

traceability

17
Q

_____________ records the progress from requirements to implementation and beyond.

In _____ development, it should only be gathered with a purpose, should be easy to use, and it should justify the effort that gathering it required

A

documentation

agile

18
Q

A _____ is a simplification of reality that has been created in order to understand a certain _________

A

model

viewpoint

19
Q

A modelling language has two kinds of rules:

______ - the rules that determine whether or not a diagram is legal

_________ - the rules that define what a legal diagram means

A

syntax

semantics

20
Q

A stardard modelling language should be:

  • sufficiently __________
  • easy to _____ and ___
  • u__________
  • ______ used
  • supported by suitable _____
A

expressive

learn, use

unambiguous

widely

tools

21
Q

__________ models describe objects and their relationships to other objects. Aka ______ models.

_________ models describe what happens over time. Aka _______ models.

A

structural

static

behavioural

dynamic

22
Q

______ modelling is concerned with gaining an understanding of the environment in which the system must operate. It includes the production of the following artefacts:

  • _______ _______ statement - a description of the problem
  • _________ model - a description of the business processes and the behaviour of the domain
  • ________ _____ - constraints on the way the above model operates
  • ________ - definitions of relevant terms
  • __________ ______ model - an initial structural model
A

Domain (modelling)

  • initial problem (statement)
  • business (model)
  • business rules
  • glossary
  • initial domain (model)