wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

HIgher - Development Methodologies

Total questions: 73

Worksheet time: 37mins

Name
Class
Date
1.

Which stage of the software development process is missing? Analysis, Design, Testing, Documentation, Evaluation, Maintenance

a)

Fixing

b)

Implementation

c)

Re-analysis

d)

Specification

2.

During the design stage, which of the following would not be done?

a)

Wireframing a user interface.

b)

Creating a structure diagram of the program modules.

c)

Agreeing the functional requirements with the users.

d)

Deciding on variables and arrays required to store data.

3.

What is the traditional software development process often called?

a)

Agile model

b)

V-model

c)

Waterfall model

d)

Spiral model

4.

Why has the waterfall model evolved over time?

a)

To increase the complexity of applications

b)

To reduce the time and money spent creating and maintaining applications

c)

To make the process less structured

d)

To decrease software quality

5.

What characteristic of the traditional software development process makes it an iterative process?

a)

Constant revision and evaluation at every phase

b)

Lack of documentation

c)

Single phase development

d)

No team collaboration

6.

What ensures quality and efficiency in the final product of the traditional software development process?

a)

The complexity of the applications

b)

The iterative nature of the process

c)

The use of a single developer

d)

The reduction of team collaboration

7.

What is the purpose of following the traditional software development process as far as possible in large scale commercial software projects?

a)

To create a successful product

b)

To complicate the development process

c)

To reduce the need for maintenance

d)

To avoid documentation

8.

What is the role of a Systems Analyst in the analysis stage of software development?

a)

To program the software according to the client's needs

b)

To communicate with the client and discover the exact problem to be solved

c)

To test the software for bugs

d)

To maintain the software after it has been developed

9.

Why might it be difficult for a Systems Analyst to accurately describe what needs to be produced?

a)

The client may not be able to describe the problem they want solved accurately enough

b)

The Systems Analyst usually lacks the technical skills to understand the problem

c)

The software development team does not need a precise description of the software

d)

The Systems Analyst is typically not involved in the communication with the client

10.

Which of the following is a challenge that a Systems Analyst may face when dealing with a large organisation?

a)

There is usually only one person who knows how every part of the system operates

b)

The information flow within the organisation is always clear and well understood

c)

There is often no single person who knows exactly how every part of the system operates

d)

Large organisations do not have complex information systems

11.

What is the first stage of software development process?

a)

Design

b)

Implementation

c)

Analysis

d)

Testing

12.

Which stage follows the 'Testing' stage in software development?

a)

Maintenance

b)

Design

c)

Documentation

d)

Evaluation

13.

Why is the analysis stage of software development important?

a)

It helps in marketing the software.

b)

It is only necessary for large software projects.

c)

It ensures that the software specification accurately describes what the software will be able to do and is a legally binding document.

d)

It is the final step in software development.

14.

What is a software specification?

a)

A document that outlines the software's color scheme and design elements.

b)

A legally binding document that describes exactly what the software will be able to do, how long it will take to build, and how much it will cost.

c)

A preliminary sketch of the software's user interface.

d)

A list of software components and their functions.

15.

What is the responsibility of the people who undertake the design stage of software development?

a)

To collect as much information as they can about the organization and the problem they want solved.

b)

To ensure that the software specification is a legally binding document.

c)

To describe how the software will be able to do what it is supposed to do.

d)

To fix errors made during the analysis stage.

16.

What can be the consequence of errors made or shortcuts taken during the analysis stage of software development?

a)

Increased marketing potential.

b)

Reduced development costs.

c)

No significant impact.

d)

Disastrous effects on subsequent stages.

17.

What is the process called that involves breaking down software problems into smaller, more easily managed problems?

a)

Bottom Up Design

b)

Horizontal Refinement

c)

Top Down Design and Stepwise Refinement

d)

Modular Programming

18.

What is usually created at the design stage to show how different sub-problems relate to each other?

a)

A flowchart

b)

A structure diagram

c)

A Gantt chart

d)

A use case diagram

19.

What is the benefit of spending more time on the design stage of software development?

a)

It increases the overall development time.

b)

It requires more programmers.

c)

It decreases the time needed to be spent on the next stage.

20.

What is the term used to describe the process of breaking down a complex problem into smaller, more manageable sub-problems that can be worked on separately?

a)

Stepwise refinement

b)

Data flow diagramming

c)

Modular design

d)

Pseudocode development

21.

What is the benefit of having different modules in a system that can be worked on simultaneously?

a)

Increases complexity

b)

Reduces the need for testing

c)

Allows for separate programming teams to work on different parts

d)

Eliminates the need for pseudocode

22.

What is the purpose of a data flow diagram?

a)

To outline the detailed logic of each component using pseudocode

b)

To represent the flow of data around a system

c)

To describe the stepwise refinement process

23.

What is stepwise refinement?

a)

A method to test modules independently

b)

The process of designing the logic of each module by breaking it down into smaller steps

c)

A technique to reuse modules in different applications

d)

The initial phase of creating a data flow diagram

24.

What does the implementation stage depend upon in the software development process?

a)

The quality of the maintenance

b)

How clear the design is

c)

The effectiveness of the testing

d)

The detail in the documentation

25.

What may be necessary if problems are identified during the implementation stage?

a)

Revisiting and possibly re-examining the original design

b)

Skipping to the maintenance stage

c)

Ignoring the problems and continuing with the implementation

d)

Completing the documentation first

26.

What makes the software development process iterative?

a)

The need for constant testing

b)

The use of detailed documentation

c)

The process of looking back to previous stages to solve problems

d)

The implementation stage being a straightforward process

27.

If the design has been written in enough detail, what should the implementation stage be?

a)

A matter of using the design to create the source code for the application

b)

A time to evaluate the effectiveness of the design

c)

A stage to test the software for the first time

d)

A process to document the software's features

28.

What is one of the purposes of testing a piece of software?

a)

To ensure the software is expensive

b)

To confirm the software meets the specification

c)

To make the software less reliable

d)

To reduce the software's robustness

29.

What is an attribute of software that testing should verify?

a)

Its color scheme

b)

Its user interface design

c)

Its robustness

d)

Its brand recognition

30.

What is a limitation of software testing?

a)

It can only demonstrate the presence of errors, not their absence

b)

It can only be done in the initial stages of development

c)

It can only be performed by the original developers

d)

It can only be conducted on open-source software

31.

Testing should be systematic and what else?

a)

Expensive

b)

Quick

c)

Comprehensive

d)

Optional

32.

What is the correct sequence of stages in the development process?

a)

Analysis, Design, Implementation, Testing, Documentation, Evaluation, Maintenance

b)

Design, Analysis, Implementation, Testing, Evaluation, Documentation, Maintenance

c)

Analysis, Implementation, Design, Testing, Documentation, Evaluation, Maintenance

d)

Implementation, Analysis, Design, Testing, Documentation, Evaluation, Maintenance

33.

What type of data is expected to be dealt with by a program under normal circumstances?

a)

Data that is invalid

b)

Normal data

c)

Extreme data

d)

Exceptional data

34.

Which type of data represents values at the boundaries of the range a program should accept?

a)

Normal data

b)

Extreme data

c)

Exceptional data

d)

Invalid data

35.

Exceptional data should include which of the following?

a)

Only data within the program's normal operational range

b)

Data that is just outside the boundaries of the range of data it should accept

c)

Data that the program has been built to process

d)

Data that is completely unrelated to the program's function

36.

What is alpha testing within an organization designed to detect?

a)

Performance issues

b)

Logical errors in the code

c)

User interface design flaws

d)

Network connectivity problems

37.

When can alpha testing be performed on an application?

a)

Only after the application is fully developed

b)

At any stage, even when parts of the application are still being developed

c)

Only before the application development starts

d)

After the application has been released to the public

38.

Which of the following statements are true of alpha testing of an application?

a)

Testing is done by the users.

b)

Testing is done by the programmers responsible for the application.

c)

Testing is done by specialist companies.

d)

Testing is done by the client.

e)

Testing may be done on parts of the application.

39.

Which one of the following statements describe beta testing?

a)

The testing is performed by the clients.

b)

The testing is more rigorous than alpha.

c)

The testing is for market research.

d)

The testing is performed by specialist companies.

40.

What is the purpose of the documentation stage in software development?

a)

To create a comprehensive guide to the menu options and how each one functions.

b)

To produce guides for using and installing the software.

c)

To specify the platform and operating system versions which the software is compatible with.

d)

All of the above.

41.

What should the user guide for the software include?

a)

Details of the minimum specification of hardware required.

b)

A comprehensive guide to the menu options and how each one functions.

c)

Information on how to license the software.

d)

Software specification and test history.

42.

What should the technical guide for the software include?

a)

A comprehensive guide to the menu options and how each one functions.

b)

Details of the minimum specification of hardware required.

c)

Software specification and test history.

d)

Guides for using and installing the software.

43.

What information is collected together during the documentation stage to be referred to in case of changes or problems discovered at a later date?

a)

User guide and technical guide.

b)

Software specification and test history.

c)

Menu options and their functions.

d)

Platform and operating system versions compatibility.

44.

What is the single most important criterion for evaluating software?

a)

The software's usability

b)

The software's efficiency

c)

Whether the software is fit for purpose

d)

The software's maintainability

45.

Which of the following is NOT listed as a criterion for evaluating software?

a)

Robustness

b)

Maintainability

c)

Scalability

d)

Usability

46.

Why is the evaluation stage useful to the client?

a)

It ensures the software is robust.

b)

It guarantees the software's efficiency.

c)

It confirms that they have the software they need.

d)

It improves the developer's future performance.

47.

How can an evaluation help the developer?

a)

By ensuring the software is maintainable

b)

By finding problems that can save work later on

c)

By confirming the software's usability

d)

By verifying the software's robustness

48.

What type of maintenance is concerned with errors that were not detected during testing?

a)

Corrective

b)

Adaptive

c)

Perfective

d)

Preventive

49.

Which type of maintenance is necessary when the program's environment changes?

a)

Corrective

b)

Adaptive

c)

Perfective

d)

Preventive

50.

What might require a program to have its code adapted to run on a new system under adaptive maintenance?

a)

A change of computer system

b)

A detected error during testing

c)

A new version of the program

d)

A change in the development team

51.

What type of maintenance occurs when the client requests changes or improvements to the program which were not in the original software specification?

a)

Corrective

b)

Adaptive

c)

Perfective

d)

Preventive

52.

Which phase of the Waterfall model involves "Creating a structure diagram and pseudocode"?

a)

Documentation

b)

Design

c)

Analysis

d)

Implementation

53.

During which phase of the Waterfall model is the source code written?

a)

Documentation

b)

Design

c)

Analysis

d)

Implementation

54.

What is the main criticism of the waterfall model in software development projects?

a)

It is too flexible and changes cannot be made once the project starts.

b)

It has been criticized for being too rigid and too slow a process.

c)

It allows for too much user involvement at all stages of the development process.

d)

It is unrealistic because it is too fast and too flexible.

55.

What does Rapid Application Development (RAD) emphasize compared to traditional models?

a)

Less user involvement throughout the development process.

b)

No changes to the design after the project has started.

c)

User involvement at all stages and the ability to make design changes at any time.

d)

A slower and more rigid development process.

56.

How does the Rapid Application Development model improve the development process?

a)

By making the process slower and less flexible.

b)

By following a strict sequence of stages without deviation.

c)

By making the development process faster and more flexible.

d)

By eliminating user feedback and reducing the number of stages.

57.

What is the emphasis of Rapid Application Development?

a)

Creating software slowly and meticulously

b)

Creating software quickly and efficiently

c)

Focusing solely on large software projects

d)

Developing software without user involvement

58.

Which development methodology is considered more appropriate for smaller software projects?

a)

Waterfall development

b)

Agile development

c)

Rapid Application Development

d)

Incremental development

59.

Agile software development is seen as more adaptable and responsive compared to which other development model?

a)

Spiral model

b)

V-model

c)

Waterfall model

60.

What type of environment is Agile development particularly suitable for?

a)

Large corporations with fixed requirements

b)

Environments using large teams of generalists

c)

Environments using small teams of experts such as web development

d)

Static environments with no change in requirements

61.

What are the benefits of the Agile method? (Choose two)

a)

Reduced development time

b)

Increased responsiveness to changing circumstances

c)

Larger teams required

d)

More rigid process

62.

What is a common feature of agile development mentioned in the text?

a)

Rare updates to the software

b)

Frequent appearance of updates with sequential version numbers

c)

Use of large development teams

d)

Fixed project specifications from the beginning

63.

According to the text, what does agile development encourage the client to do?

a)

To avoid making changes to the specification throughout the development process

b)

To think clearly about what they require at the beginning

c)

To make changes to the specification throughout the development process

d)

To use a rigid planning structure

64.

Which of the following is a strength of the Iterative Methodology (traditional) as compared to Agile Methodology?

a)

Copes well with little cumulative changes as the project progresses

b)

Good for small-scale projects like most Apps

c)

Helps to plan and track large software projects

d)

Ongoing involvement of client allows changes to be agreed quickly

65.

What is a weakness of the Iterative Methodology (traditional) according to the table?

a)

Works best with small teams

b)

Can over-complicate simple projects

c)

Changes cause less delay or can be tackled in the next version

d)

Usually no legally binding agreement at the start

66.

Which of the following is a weakness of Agile Methodology as mentioned in the text?

a)

Good for large teams

b)

Rigid planning structure

c)

Can be difficult to determine the full scope of the project in the early stages

d)

Clear agreement on outcomes at start of project

67.

What is the purpose of the design stage in software development?

a)

To create and debug the program code

b)

To examine the software for reliability and user-friendliness

c)

To turn the software specification into structure diagrams, pseudocode, and data structures

d)

To test the code using normal, extreme, and exceptional test data

68.

What is Rapid Application Development (RAD) primarily used for?

a)

To fix problems and adapt the software to new circumstances

b)

To streamline the waterfall model by involving the client more and using prototyping

c)

To produce user and technical guides

d)

To test the software using clients or individuals outside the development team

69.

What is Agile programming designed to do?

a)

Adapt to new circumstances and add features

b)

Be as flexible as possible and reduce development time and costs

c)

Create and debug program code

d)

Examine software for reliability and robustness

70.

Which one of these would not be found in the technical guide?

a)

Operating system required

b)

Hardware requirements

c)

Memory requirements

d)

Tutorial

71.

During the software development process, which one of the following is responsible for converting the design into actual program code?

a)

Programmers

b)

Systems Analyst

c)

Independent test group

d)

Client

72.

Which one of these is NOT an advantage of agile software development?

a)

Reduced development time

b)

Responsiveness to changed circumstances

c)

Reduced costs

d)

Reduced time spent on analysis

73.

Which of the following is a strength of Agile Development?

a)

High level of involvement of the client/customer.

b)

Lack of feedback from customers.

c)

Easy for large teams to work on an agile project.

d)

Clear scope and boundaries from the start of the project.