Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

Assignment 2

Denise Naidoo

[Document subtitle]
Page |1

CONTENTS

QUESTION 1 – PG 2 - 3
QUESTION 2 – PG 4 - 5
QUESTION 3 – PG 6

REFERENCES – PG 8

Denise Naidoo
Page |2

QUESTION ONE
1.1. Describe the phases of the systems development life cycle. (20)

Systems Investigation
During this phase investigation is done to determine whether a new system will be needed
for the business to achieve its goals. It will need to be researched and established whether
the development of the system will be worth the cost and time involved in creating the
solution. Resources, costs, time, benefits and other aspects will need to be considered at
this stage. All business problems and possible opportunities will be looked at and used to
define the development project

Systems Analysis
This phase will now use the above information and determine how it will be implemented /
how the information system will solve the identified problems. All systems currently in place
will be looked at to determine how it can be improved by narrowing down its weaknesses
and strengths. Systems Analysis will also aim to ensure that the new system will meet the
user’s expectations. It will also provide a timeline as well are determine who will be
responsible for the individual pieces of the project. The most important outcome of this
phase overall is the list of requirements and priorities.

Systems Design
This phase deals with the technical design of the system. It will detail all the necessary
specifications, features and operations that will need to be in place in order to meet with
the requirements derived during the system analysis phase. The design itself will include
details such as the system outputs, inputs and user interfaces, and will indicate how these
components are all related and will work together.

Systems Implementation
It’s in this phase that the bulk on the work is done. Programmers, network engineers,
database developers are brought together to begin working on the proposed system. All the
components will need to be created and integrated together, tested thoroughly then get
the new system or the modified system into operation. This phase will also be responsible
for training the users in using the new system. It also involves phasing out or removing old
systems which are often difficult for existing users to adjust to. The result of this phase will
be an installed system, that is fully operational which meets the needs of the business that it
was developed for.

Systems Maintenance and Review


This step is when end users can fine-tune the system, if they wish, in order to boost
performance, add new capabilities or meet additional user requirements. This phase also
ensures that the system continues to operate correctly under all sorts of real-world
scenarios that may not have been considered during design and testing of the system.

Denise Naidoo
Page |3

1.2. Compare the SDLC waterfall model to the spiral model. (15)

The waterfall model is a very structured approach to software development, it is fairly


simple to understand and to use. In this model each phase must first be completed, the
outcome of the completed phase will be used as the input for the next phase. Only when
one phase is complete can the next phase begin. This behavior resembles the behavior of a
waterfall. The key point in the waterfall model is that it can only move sequentially down,
and not return to a previous phase at will. Once all phases have completed it will have to
begin again from the first stage in order to make changes to the system. The phases of the
waterfall model can vary by project needs but generally consists of Requirements, Analysis,
Design, Coding, Testing, Implementation, Maintenance phases.
The advantages of the waterfall model are that each phase has clear deliverables and all
activities performed are clearly defined. This ease of application makes it the go-to
approach for small projects. The downside to this model is that the model is quite rigid and
does not allow for changes to the requirements once the process has begun, as a result
there is no room for reflection or revision to the system in development. This creates a high
amount of risk as discrepancies will only be picked up at the end of the development life
cycle.
The Spiral Model differs in that it takes an incremental approach to development, and a lot
of emphasis is placed on risk analysis. The software here will repeatedly pass through these
iterations, also called “Spirals”. Each loop of the spiral is called a phase in the development
process. The project manager will determine the number of phases the project should go
through. The spiral model generally has 4 phases. Namely Planning, and Risk Analysis where
potential risks are analyzed, and a prototype may be produced. If any risks are found an
alternate solution will be implemented. An engineering phase where the system is
developed and tested. As well as an evaluation phase where the customer given an
opportunity to evaluate the project before the it goes into its next spiral.
The advantage of the Spiral model is that the software is developed early in the process and
a lot of risk analysis is done. Additional functionality can easily be added along the way in
this model. The downside of this model is that is can be quite costly to use. Risk Analysis will
also need highly specific expertise. This approach does not work well for small projects.

Denise Naidoo
Page |4

QUESTION TWO

2.1. You are an IT consultant, and you are asked to create a new system for a small real
estate brokerage firm. Your only experience is with traditional data and process modelling
techniques. This time, you decide to try an object-oriented approach. How will you begin?
How are the tasks different from traditional structured analysis? (15)

Object-oriented techniques are thought to work well in situations in which complicated


information systems are undergoing continuous maintenance, adaptation, and redesign.
Object-oriented approaches use the industry standard for modeling object-oriented
systems, called the unified modeling language (UML), to break down a system into a use
case model.
Object-oriented programming differs from traditional procedural programming by
examining objects that are part of a system. Each object is a computer representation of
some actual thing or event. Objects may be customers, items, orders, and so on. Objects are
represented by and grouped into classes that are optimal for reuse and maintainability. A
class defines the set of shared attributes and behaviors found in each object in the class.
The phases in UML are similar to those in the SDLC. Since those two methods share rigid and
exacting modeling, they happen in a slower, more deliberate pace than the phases of agile
modeling. The analyst goes through problem and identification phases, an analysis phase,
and a design phase.
When designing the above-mentioned system, I would start with the UML process. First the
use case model will be defined, by determining the actors and major events. This will be put
in the form of a use case diagram showing how the actors relate to the scenarios. The use
case scenario will also be written. In this system the actors are the Real estate agents. It will
be determined the possible uses for the system, such as storing property information and
client information. Once these scenarios are created the Activity diagrams will be drawn,
these will illustrate all the major activities within the use case. This process will continue to
develop class diagrams by grouping the use cases into classes. The Statechart diagrams will
also be drawn to increase understanding of the processes. Specifications for the system is
then drawn up and the system will move into its development phase.

Denise Naidoo
Page |5

2.2. Briefly explain and differentiate the following development methods: Joint application
development and Rapid application development. (10)

Joint application development is a software design process that brings together


representatives from the teams of users, sponsors, analysts and developers. The aim of JAD
is to get all the key people into a room to discuss and brainstorm a suitable design. JAD
meetings could take several days to complete. The basic idea here is to answer all questions
around the requirements and to produce an acceptable design.
JAD is conducted using the following steps in the same order:
 Identify project objectives and limitations
 Identify critical success factors
 Define project deliverables
 Define the schedule of JAD workshop activities
 Select the participants
 Prepare the workshop material
 Organize workshop activities and exercises
 Prepare, inform, educate the workshop participants
 Coordinate workshop logistics
Rapid Application Development centers around the creation of prototypes. These are then
evaluated and iteratively changed until they meet the software objectives. RAD is ultimately
an iterative development process and a prototype gets built to provide an answer to
questions raised regarding the design. The aim here is to expose the user to parts of the
solution as early in the development cycle as possible so that critical feedback can be
received and reacted upon.
The Key difference between RAD and JAD is that the end product of JAD is a requirement
model, whereas the end product of RAD is a new information system.
Some other differences are as follows:

JAD RAD
More Expensive Less Expensive
Large number of people can be involved Few people can be involved in software
development
Suitable for dynamic systems development Suitable for unstructured projects
Only manager level decisions will be taken Any developer can take decisions

Denise Naidoo
Page |6

QUESTION THREE

3.1 Critically analyze the difference between horizontal application software and vertical
application software. (15)

Horizontal application software is designed to be used by many different types of users and
businesses. It is a sort of generic application that has usability and utility within a broad
range of users. It can also be considered as a general-purpose application.
Vertical application software is designed to support a specific business process and targets a
smaller number of users that have a specific skillset and job responsibilities within an
organization. These applications often require IT assistance and deployment to as it needs
to integrate with other systems within the organization.
Some key differences are that Horizontal Application Software provides solutions based on
the common needs of many companies whereas vertical applications are written for a
particular market or industry.
In Horizontal applications, the use of a demo copy for entering a few transactions can be
acceptable tests, however in Vertical applications many days or weeks may be needed by
the IT staff and its teams for testing.
Horizontal Application software is not created to be business specific and can be used by
various domains, whereas Vertical Applications are created for a specific business design
and domain.
Horizontal Applications are used for small systems while Vertical Applications are used for
larger systems.
Horizontal Systems are also easy to use and to maintain, whereas Vertical Applications are
more complicated to use when compared to the Horizontal Applications.

Denise Naidoo
Page |7

3.2 Give a detailed account on the relationship between logical and physical design (15)

The logical design defines the functions and features of a system and the relationship that
exists among its components. The logical Design will include the output that must be
produced by the system and the input that will be needed by the system, as well as the
process that must be produced by the system without regard to how tasks will be achieved
physically. So in essence the Logical design defines what must take place, not how it should
be accomplished, they do not address any actual methods of implementation. As an
example, when creating an employee record system, the logical design will describe the
data that must be entered for each customer, it will also specify that records must be
displayed in the employee record numbers and what information must included.
The physical design is a plan for the actual implementation of the system. The physical
design is developed during the systems design phase, where it is built on the systems logical
design and describes the specific implementation, in the same way that a blueprint
describes the actual construction of a building. This type of design will describe the actual
processes of entering, verifying and storing data etc. Where Logical Design is concerned
with what the system must accomplish the physical design is concerned with how the
system will meet those needs and requirements.
Therefore a good system design is impossible without careful and accurate systems analysis.
The design phase typically cannot begin until the analysis work is completed.

Denise Naidoo
Page |8

REFERENCES

Stair, R. and Reynolds, G., 2019. Principles of Information Systems A Managerial Approach. 9th ed.
Printed in the United States of America: © 2010 Course Technology, Cengage Learning.

techspirited.com. 2019. comparison-between-waterfall-model-spiral-model. [ONLINE] Available at:


https://techspirited.com/comparison-between-waterfall-model-spiral-model. [Accessed 22 May
2019].

Systems Development – JAD and RAD. 2019. Systems Development – JAD and RAD. [ONLINE]
Available at: http://www.umsl.edu/~sauterv/analysis/488_f02_papers/JADandRAD.html. [Accessed
22 May 2019].

Joint Application Development (JAD). 2019. Joint Application Development (JAD). [ONLINE] Available
at: https://www.umsl.edu/~sauterv/analysis/488_f01_papers/rottman.htm. [Accessed 22 May
2019] J., H., 2013.

Systems Analysis And Design (with Coursemate, 1 Term (6 Months) Printed Access Card) (shelly
Cashman Series). Cengage Learning.

Denise Naidoo

You might also like