0% found this document useful (0 votes)
79 views2 pages

Assignment 4

The document discusses different software development models and approaches: - The spiral model is best for safety-critical systems like anti-locking brakes, while the waterfall model works for systems with stable requirements like maintenance software. Iterative development is suitable for replacing legacy systems. The prototype model allows for fast changes in passenger train information systems. - Evolutionary development can be hard to maintain due to a lack of documentation, poor structure from continual changes, and few people skilled in the techniques. - The waterfall model requires stable requirements and is still used, especially for large engineered systems. Formal development uses mathematical specification transformations instead of testing. - Reuse-oriented development relies on reusable components and frameworks. Its stages are component analysis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
79 views2 pages

Assignment 4

The document discusses different software development models and approaches: - The spiral model is best for safety-critical systems like anti-locking brakes, while the waterfall model works for systems with stable requirements like maintenance software. Iterative development is suitable for replacing legacy systems. The prototype model allows for fast changes in passenger train information systems. - Evolutionary development can be hard to maintain due to a lack of documentation, poor structure from continual changes, and few people skilled in the techniques. - The waterfall model requires stable requirements and is still used, especially for large engineered systems. Formal development uses mathematical specification transformations instead of testing. - Reuse-oriented development relies on reusable components and frameworks. Its stages are component analysis
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 2

COMP 612 A4

by EMCS-257
MA MAY PYAE PHYO THU

1.
The most appropriate generic software process model which might be used as a basis for
managing the development of the following systems:
• A system to control anti-locking in a car.
– Spiral model. Since this type of system is a safety-critical system, we need to
designed a perfect system with no errors since error may lead to a life-
threatening situation
• A virtual reality system to support software maintenance.
– Waterfall model. The requirement of this type of system is rarely change or
perhaps fix. Therefore, it is better to develop a waterfall model to swift the
progress. (We want to focus on maintaining software not focusing on the
virtual system performance and esthetics)
• A university accounting system that replaces an existing system.
– Iterative model. Since this type of system might be a legacy system, we have
to iteratively develop part of the system one by one and integrate it to the
existing system concurrently.
• An interactive system that allows railway passengers to find train times from
terminals installed in stations.
– Prototype model. User requirements may likely to change and fast delivery is
essential to be implemented. Therefore, prototype model can save time of
development to focus on essential function first to be later completed.

2.
Programs which are developed using evolutionary development are likely to be difficult to
maintain because:
(1) The process is not visible
Managers need regular deliverables to measure progress. If systems are developed
quickly, it is not cost-effective to produce documents that reflect every version of the
system.
(2) Systems are often poorly structured
Continual change tends to corrupt the software structure. Incorporating software
changes becomes increasingly difficult and costly.
(3) Continual change tends to corrupt the software structure. Incorporating with other
tools or techniques and relatively few people may have the skills which are needed to use
them.
3.
The waterfall model
Waterfall model should only be used when the requirements are well understood and
unlikely to change radically during system development the waterfall model reflects the type
of process model are still used for software development, particularly when the software
project is part of a largest systems engineers process.

Formal systems development


Formal systems development is an approach to software development which have
something in common with the waterfall model but when the developments process is base
on formal mathematical transformation of a system specification to an executable program.

The critical distinctions between formal systems development and waterfall model are:
- The software requirements specification is refined into a detailed formal specification
which is expressed in a mathematical notation.
- The development processes of design, implementation and unit testing are replaced by
a transformational development process where the formal specification is refined,
through a series of transformations, into a program.
- Software correctness is demonstrated using a formal approach. There is no testing for
defects in the process, and the system testing is focused on assessing the system's
reliability.

4.
The reuse-oriented approach relies on a large base of reusable software components and some
integrating framework for these components. Sometimes, these components are systems in
their own right (COST or commercial off-the-shelf systems) that may provide specific
functionality such as text formatting or numeric calculation.
While the initial requirements specification stage and the validation stage are comparable
with other processes, the intermediate stages in a reuse-oriented process are different. These
stages are:
(1) Component analysis
(2) Requirements modification
(3) System design with reuse
(4) Development and integration

Reuse-oriented development

You might also like