7. Maintaining software solutions Flashcards

1
Q

Define Maintainability

A

A measure of the ease with which source code can be understood and modified

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

Changing user requirements

A

Modifying code to include new functionality due to change in users’ requirements

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

Upgrading the user interface

A

The user interface is often the most significant influence on the ongoing success of a software product. Changes to the user interface can cause problems for users skilled in the use of the existing product. Care must be taken to maintain consistency between subsequent versions of software products. It is significantly preferable for user interfaces to evolve without significantly altering their structure.

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

Changes in the data to be processed

A

Modifications to software are often required when the structure or format of the input data changes

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

Introduction of new hardware or software

A

Software developers must modify their products if they wish to use new features of hardware

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

Changing organisational focus

A

Software applications often require modification to cater to the changes in organisations. Custom designed solutions often require continual modification.

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

Changes in government requirements

A

Government legislation covers many areas that can affect software applications. As legislation and laws are changed by government these software applications must be modified to comply.

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

Poorly implemented code

A

Testing and evaluating software solutions aims to ensure that software applications are bug free and perform their tasks efficiently. Maintenance is required to correct problems as they are discovered.

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

Define plagiarism

A

Copying or imitating the work of another and claiming it to be your own

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

Use of variables or constants instead of literal constants

A

Programmers overcame the problem of replacing every occurrence of a value by assigning literal constants to variables.

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

Meaningful names for variables

A

Meaningful variable names greatly increases the readability and hence the maintainability of source code. Meaningful identifiers should also be used for subroutines. Code that uses meaningful identifiers is said to be self-documenting.

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

Explanatory comments in the code

A

Comments within the source code should explain what the code does rather than how it does it. Comments that describe the detail of the processing will be incorrect if the processing is altered. Comments should also be used to document changes made to the code.

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

A clear and uncluttered mainline

A

The mainline or main program of a software solution should include minimal actual processing. The mainline of many programs will essentially be a series of calls to subroutines.

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

One logical task per subroutine

A

Subroutines that accomplish a single logical task increase the maintainability of the product. The longer the subroutine is, the more difficult it will be to understand, test, and subsequently maintain. Short routines that accomplish single, well-defined tasks are generally easier to understand, test, reuse and consequently maintain.

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

Documentation to the user

A

Before modifying a product, it is important that the developers understand the operation of the existing product from the user’s perspective. Types of user documentation include installation guides, user manuals, reference manuals, online help and tutorials.

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

Documentation to the developer

A

The source code itself is the most crucial piece of documentation when modifying software solutions. Other forms of technical documentation, that were produced during the product’s design and development, will also be of assistance when attempting to understand and interpret code in preparation for modification. Types of technical documentation in addition to the source code include requirements, design specifications; system models, system flowcharts, data flow diagrams, structure charts; IPO charts; data dictionaries; algorithms and screen designs and storyboards.