Unit 1 Flashcards
A ______ is an assembly of components that are connected together in an organised way
system
In software development, a _______ is a set of activities/operations that takes one or more inputs, and produces one or more outputs
process
A ______________ system includes software, hardware, other technical components, people, organisations, and other social structures
sociotechnical
A system ________ separates the system to be studied from ‘everything else’.
boundary
An area or field of knowledge characterised by a set of concepts and terminology is known as a ______
domain
How do each of the following characteristics of software contribute to the introduction of errors:
- Malleability
- Complexity
- Size
- Every change introduces the possibility of new errors
- The more complex a piece of software becomes, the higher the liklihood that a change will affect other parts of the software
- The greater the number of lines of code in a piece of software, the greater the number of likely errors
The follwing are essential characteristics of a good software system:
- U_____
- U_____
- R_______
- F_______
- A________
- A_________
- Useful
- Usable
- Reliable
- Flexible
- Available
- Affordable
A good software system is one that meets users’ needs. Give two reasons why might a delivered software fail to do this?
- some needs are missed during requirements capture
- needs may change over time
How might flexibility and affordability be connected?
Flexible software means that it takes less time to implement changes, therefore reducing labour costs.
_______________ is a software quality factor that determines the effort required to understand, locate, and fix errors in a system
Maintainability
An old software system that is still required because it meets some useful purpose to an organisation is called a ______ system.
legacy
The process of splitting a problem into smaller parts until each one can be understood by an individual is known as _____________
decompostion
A ______ is a program unit / component that is used exclusively through an external interface.
module
______ programming is a a form of software development where a single person attemts to have in mind everything concerning a given problem and its eventual solution
Heroic
__________ is a basic attribute of software. It allows the partition of a set of requirements into a number of intellectually manageable subsets
Modularity