software development Flashcards

1
Q

A software company decides to release a duplicate file finder which it has named “De-Duplicator”. Duplicate files
are files that are exactly the same (bit for bit identical). Space is often wasted on computers by having multiple
versions of the same file. Duplicate file finders are programs that find and identify duplicate files on a hard drive
so that they can be removed.
* The software team that produces De-Duplicator decides to make a new version that can detect duplicated
images the previous version could not. The software team must decide which methodology they will use for the
project. Some members of the team suggest extreme programming whilst others would prefer to use the
waterfall lifecycle.
Discuss the two methodologies and justify which you would recommend.

A

The waterfall lifecycle involves linear
stages whereas XP takes on an agile,
iterative approach.
The waterfall lifecycle establishes
requirements in early stages and
subsequent stages focus on these –
new requirements can be adopted
throughout XP.
The waterfall lifecycle focuses on the
end user at the start and then they may
be consulted at different points
throughout the project whereas an end
user is integral throughout XP.
In the waterfall lifecycle the
development phase focuses on code
that meets the requirements / design.
In XP the quality of the code is an
important factor – paired programming
helps focus on this.
The waterfall lifecycle although
adopted for large projects it can be
inflexible and limits changing
requirements.
AO2.1: Application
The selected knowledge / examples should
be directly related to the specific question.

Discussion of how the methodologies
would impact upon the choices made
regarding abstraction, any
preconditions and how they are
addressed.
Discussion around how the
methodologies would impact the order
of steps in any procedures and how
sub-procedures would be implemented
How the methodologies could

© OCR 2023. You may photocopy this page. 14 of 22 Created in ExamBuilder
Question Answer/Indicative content Marks Guidance

understanding shown; the material is basic
and contains some inaccuracies. The
candidate makes a limited attempt to apply
acquired knowledge and understanding to
the context provided.
The candidate provides nothing more than
an unsupported assertion.
The information is basic and
communicated in an unstructured way. The
information is supported by limited
evidence and the relationship to the
evidence may not be clear.
0 marks
No attempt to answer the question or
response is not worthy of credit.

potentially affect how decisions and the
logic involved are dealt with and how
concurrency is dealt with
Discussion of other social factors that
affect the use of the different
methodologies.
AO3.3: Evaluation
Having considered the different sides to
the argument candidates will need to reach
a supported judgment based on the
evidence included in their response.
There should be no bias in marks as to
which methodology is chosen but
especially in the top mark band there must
be a clear link between the points
candidates have made and justification.
e.g.
The waterfall lifecycle establishes
requirements in early stages and
subsequent stages focus on these. New
requirements can be adopted throughout
XP. The requirements in this project are
likely to be static making the Waterfall
model a more appropriate approach.
OR
In the waterfall lifecycle the development
phase focuses on code that meets the
requirements / design. In XP the quality of
the code is an important factor. Paired
programming helps focus on this.
For this utility to be successful it must work
more efficiently than its competitors and
code developed through XP is more likely
to achieve this, therefore XP is a more
appropriate approach.

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

Justify why the waterfall lifecycle is suited to the development of the operating system.

A

– Tends to suit large scale projects …
– ..An OS is an example of such a big
project.
– Tends to suit projects with stable
requirements …
– … And the base requirements of an OS
are unlikely to change.

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

Give one disadvantage of using the waterfall lifecycle to develop the operating system.

A

If a change does occur in the requirements
the lifecycle cannot respond easily, often at
the cost of time and money.

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

Describe the Rapid Application Development process.

A

– Prototype is created (1)
– (Evaluated and) feedback used to
inform next iteration (1)
– Any changes are made (1)
– Process repeated until…(1)
…prototype becomes final
product. (1)

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

A company makes anti-virus software.
Anti-virus software is an example of a utility.
In order to keep up to date with the latest virus threats, the company is continually updating their software.
The programmers use an Extreme Programming approach when developing the updates.
Explain what is meant by Extreme Programming and why it is a suitable approach in this case.

A

– Extreme programming is a software
development methodology.
– Focus is on good quality code
– It is an agile paradigm
– it is designed to allow development to
respond to changing user
requirements.
– Involves paired programing
– Program is regularly reviewed / iterative
process.
Suited to this scenario as…
– Types of virus/threat is continually
changing/updating
– In order to detect virus effectively there
needs to be an

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

Sally uses a Rapid Application Development (RAD) approach when creating her program.
Describe two benefits of using RAD.

A

Reduced development time (1) due to
time boxing / each subtask being given
a strict time limit (1)
Increased user involvement (1) so
issues can be identified and fixed early
/ more likely to meet client
requirements (1)
The requirements do not all need to be
stated at the start (1) so therefore it is
more flexible (1)

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