Software Software Engineering Concept Flashcards

1
Q

The economies of ________ are
dependent on software.

A

ALL developed nations

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

________ is concerned with theories, methods, and tools for professional software development.

A

Software Engineering

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

Expenditure on software represents a
a significant fraction of ____ in all developed countries.

A

GNP

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

______ often dominate computer system costs.

A

Software costs

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

The costs of __________on a PC are often greater than the ________cost.

A

software, hardware

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

Software costs more to _______ than it does to ______. For systems with long life, maintenance costs may be several times development costs.

A

maintain, develop

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

Software engineering is concerned with _________ software development.

A

cost-effective

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

Computer programs and associated documentation such as requirements, design models, and user manuals.

A

Software

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

Software products may be developed for a __________ or may be developed for a __________

A

particular customer, general market

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

developed to be sold to a range of different customers e.g. PC software such as Excel or Word.

A

Generic

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

developed for a single customer according to their specification.

A

Bespoke (custom)

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

New software can be created by______

A

developing new programs, configuring generic software systems or reusing existing software.

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

______ is an engineering discipline that is concerned with all aspects of software production.

A

Software engineering

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

Software engineers should adopt a _____ and _____ approach to their work and use appropriate tools and techniques depending on the problem to be solved, the development constraints, and the resources available.

A

systematic, organized

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

is concerned with theory and fundamentals;

A

Computer science

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

is concerned with the practicalities of developing and delivering useful software.

A

software engineering

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

is concerned with all aspects of computer-based systems development including hardware, software, and process engineering.

A

System engineering

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

is part of the system engineering process concerned with developing the software infrastructure, control, applications and databases in the system.

A

software engineering

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

System engineers are involved in ______

A

system specification, architectural design, integration and deployment.

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

A set of activities whose goal is the development or evolution of software.

A

Software Process

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

Generic activities in all software processes are:

A

Specification, Development, Validation, Evolution

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

(Software Process) what the system should do and its development constraints

A

Specification

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

(Software Process) production of the software system

A

Development

24
Q

(Software Process) checking that the software is what the customer wants

A

Validation

25
Q

(Software Process) changing the software in response to changing demands.

A

Evolution

26
Q

A simplified representation of a software process, presented from a specific perspective.

A

Software Process Model

27
Q

Examples of process perspectives are:

A

Workflow, Data/flow, Role/action

28
Q

Generic process models:

A

Waterfall, Iterative development, Component-based software engineering

29
Q

(Software Process Model) a sequence of activities;

A

Workflow

30
Q

(Software Process Model) information flow;

A

Data-flow

31
Q

(Software Process Model) who does what.

A

Role/action

32
Q

Roughly ____ of costs are development costs, ____ are testing costs.

A

60%, 40%

33
Q

For custom software, ______ often exceed ______.

A

evolution costs, development costs

34
Q

The distribution of costs depends on the _____ that is used.

A

development model

35
Q

Software engineering methods include:

A

Model descriptions, Rules, Recommendations, Process guidance

36
Q

(Software Engineering Methods) Descriptions of graphical models which should be produced;

A

Model descriptions

37
Q

(Software Engineering Methods) Constraints applied to system models;

A

Rules

38
Q

(Software Engineering Methods) Advice on good design practice;

A

Recommendations

39
Q

(Software Engineering Methods) What activities to follow.

A

Process Guidance

40
Q

What is a CASE

A

Computer-Aided Software Engineering

41
Q

Software systems that are intended to provide automated support for software process activities.

A

CASE

42
Q

Tools to support the early process activities of requirements and design;

A

Upper-CASE

43
Q

Tools to support later activities such as programming, debugging, and testing.

A

Lower-CASE

44
Q

Attributes of good software

A

Maintainability, Dependability, Efficiency, Acceptability

45
Q

(Attributes of good software) The software must evolve to meet changing needs;

A

Maintainability

46
Q

(Attributes of good software) The software must be trustworthy;

A

Dependability

47
Q

(Attributes of good software) The software should not make wasteful use of system resources;

A

Efficiency

48
Q

(Attributes of good software) The software must be accepted by the users for which it was designed. This means it must be understandable, usable, and compatible with other systems.

A

Acceptability

49
Q

(Key challenges) Developing techniques for building software that can cope with heterogeneous platforms and execution environments;

A

Heterogeneity

50
Q

(Key challenges) Developing techniques that lead to faster delivery of software;

A

Delivery

51
Q

(Key challenges) Developing techniques that demonstrate that software can be trusted by its users.

A

Trust

52
Q

Software engineers must behave in an _____ and -_____ way if they are to be respected as professionals.

A

honest, ethically responsible

53
Q

Issues of professional responsibility

A

Confidentiality, Competence, Intellectual property rights, Computer misuse

54
Q

(Issues) Engineers should normally respect the confidentiality of their employers or clients irrespective of whether or not a formal confidentiality agreement has been signed.

A

Confidentiality

55
Q

(issues) Engineers should not misrepresent their level of competence. They should not knowingly accept work that is outwith their competence.

A

Competence

56
Q

(issues) Engineers should be aware of local laws governing the use of intellectual property such as patents, copyright, etc. They should be careful to ensure that the intellectual property of employers and clients is protected.

A

Intellectual property rights

57
Q

(issues) Software engineers should not use their technical skills to misuse other people’s computers. Computer misuse ranges from relatively trivial (game playing on an employer’s machine, say) to extremely serious (dissemination of viruses).

A

Computer misuse