Print Email Download Reference This Send to Kindle Reddit This
submit to reddit

Systems Development Life Cycle

The Systems Development Life Cycle

Abstract

System development life cycle is a tool or technique which is used to help develop new or upgrade systems, this being hardware, software or how a business operates. SDLC is used to describe the process for building an information system in a structured and logical way. This is usually used by system analysis who will research into current problems and requirements which should always be of a high quality meeting or exceeding customer's expectations; completed within time line, budget agreed and should work effectively and efficiently in the current or planned infrastructure. If it does not meet all these requirements then it is most probably a waste of resources, time and money resulting in an already created information system.

Prototyping is a tool which is used during the development of systems and it allows developers to create test models of the system such as the interface which doesn't function. This allows the developers to get a feel of how the application looks and see if the system is going to achieve its expected design purpose (new systems have unexpected problems and this helps to remove these problems).

A use case model can be used by developers to aid them in creating the desired system. This documentation allows the developer to see how different users will interact with a system by the means of diagrams. This gives them an idea of how the system is used allowing them to progress onto creating the system using provided documentation (developers should be able to create a system using all there provided documentation with minimal extra input).

1 Introduction

Computer, technology, hardware and software are always changing with upgrades to current technologies, development of new technologies and extinction of old technology. A company needs to stay ahead of its competitors if they are planning on selling their services or products so they need to have proficient technology to do this efficiently and quickly as possible, whilst not costing in the long run.

This is why companies use such tools as a system development life cycle, prototyping and use case model in order to research into these new technologies to determine if they are financially possible, worth installing and most importantly going to increase performance and efficiency.

2 System Development Life Cycle

The systems development life cycle (SDLC) also known as software development life cycle is a technique used within systems engineering and software engineering. It is a type of methodology used to describe the process for building an information system in a deliberate, structured and methodical way repeating each stage of the life cycle. The systems development life cycle, according to (Wikipedia 2009) "originated in the 1960s to develop large scale functional business systems in an age of large scale business conglomerates. Information systems activities revolved around heavy data processing and number crunching routines".

A SDLC is a process used by any systems analyst to develop an information system that meets all set requirements and validation for their customer. All these systems should be of a high quality meeting or exceeding customer's expectations, completed within the time line agreed and budget. It should work effectively and efficiently in the current or planned infrastructure and also be inexpensive to maintain or enhance.

Systems development life cycle is made up of multiple phases (See Systems Development Life Cycle Life-Cycle Phases picture on page 10), four that are very important: planning, analysis, design and implementation/maintenance. A systems analysis can perform these phases using already created models (systems development life cycle models). There are several of these models available such as: rapid application development (RAD), waterfall, open source and joint application design (JAD) all having positives and negatives (See Strength and Weaknesses of SDLC table on page 10), in different situations but there is no right or wrong to type of method used (See Comparison of Methodologies table on page 10) as long as the final product is of a high quality meeting or exceeding the customers expectation and within their time line and agreed budget.

Planning is a very important stage for a systems analysis, this is the stage where the systems analysis has to determine the goals of the project and create a high level view of the project in an attempt to gain funding from higher management. A feasibility study can sometimes be used to help present the project to higher management.

Analysis is the next important step which is performed to find out what is the problem, possible solutions and if it's better for the company to perform an upgrade or install a completely new system. This is achieved by the systems analysis ripping apart the current system until they learn how everything works.

Before implementation of a system can be achieved the systems analysis needs to design the new system or upgrades. This is where the systems analysis describes the system in detail, including screen layouts, business rules, process diagrams, pseudo code, a complete entity relationship diagram and other documentation. The main purpose of this step is so that the new system or upgrades are described in as much detail as possible so skilled professionals can develop the new system or upgrade with minimal additional input.

3 Prototyping

New systems or upgrades are created by developers but there is no certainty that the end system will achieve its expected design purpose and new systems often have unexpected problems; (“The conventional purpose of a prototype is to allow users of the software to evaluate developers' proposals for the design of the eventual product by actually trying them out, rather than having to interpret and evaluate the design based on descriptions” (Wikipedia 2009)). A prototype is a tool/technique available to developers usually used during the design stages, allowing them to design alternatives, make alterations, test theories and confirm performance before starting production of the new system (“A prototype typically simulates only a few aspects of the features of the eventual program, and may be completely different from the eventual implementation.” (Wikipedia 2009)).

3.1 Prototyping Types

‘Prototyping' falls into multiple categories depending on the type of prototype and what the prototype is used for, such as creating the interface for a program but not the code, or creating half the program to test that specific area. There is no general agreement on what makes a prototype (Wikipedia 2009), so most prototypes fall into any of these four categories: proof-of-principle prototyping, form study prototype, visual prototype and functional prototype.

3.1.1 Proof-of-Principle Prototype

This type of prototype is used to test some parts of the design without having to create the full system, project or interface.

3.1.2 Form Study Prototype

This type of prototype allows the developers to explore the basic size, look and feel of the product without having to simulate the actual function or exact visual appearance of the product.

3.1.3 Visual Prototype

Visual prototypes are used by the developer to simulate the appearance and colours of the intended product, but will not contain any of the background functions such as basic operation.

3.1.4 Functional Prototype

Functional prototype is the developer trying to simulate the final design and functionality of the product; this is the developer's final check for design flaws, problems and allows last minute improvements.

4 Use Case Models

A use case model is used by developers when creating a project; “the use case diagram is the first that designers will work with when starting a project” (Visual Case Tool - UML Tutorial 2009). A use case model shows the developer how a user will interact with a system by the means of diagrams (see Use Case Model Diagram on page 11) or simple instructions; (“A Use Case represents a discrete unit of interaction between a user (human or machine) and the system.” (The Use Case Model 2009)).

In basic terms a use case model is a set of scenarios which will occur between users the system and what will happen in each scenario such as: a user entering their login details and then clicking on the login button. The use case model will tell the developers exactly how the user will interact with the system and on each scenario what the server will do. Using this knowledge the developers have the ability to create the new system with the ‘use case model' and other documentation without needing further input or documentation.

5 Conclusion

In this report the following has been covered: system development life cycle, prototyping and use case model. As you probably know from reading this report all three of these are to try and make it easier to research into new or upgrading systems, by providing developers with enough documentation allowing them to develop an information system, high management can have more of an input and understanding of the new system because of the ‘use case model' and ‘prototypes'. All of these should create a more efficient information system helping increase sales and efficiency of the company.

6 Bibliography

Wikipedia 2009, Systems Development Life Cycle, online, retrieved 15 November 2009, from http://en.wikipedia.org/wiki/System_development_life_cycle.

Wikipedia 2009, Prototype, online, retrieved 15 November 2009, from http://en.wikipedia.org/wiki/Prototype.

Wikipedia 2009, Software Prototyping, online, retrieved 15 November 2009, from http://en.wikipedia.org/wiki/Software_prototyping.

Visual Case Tool - UML Tutorial 2009, online, retrieved 17 November 2009, from http://www.pata.org/patasite/fileadmin/docs/issuestrends/I_T_Mar07_The_Non-Hub_Story.pdf.

The Use Case Model 2009, online, retrieved 28 September 2007, from http://www.sparxsystems.com/resources/tutorial/use_case_model.html.

7 Appendix

Systems Development Life Cycle Life-Cycle Phases (Wikipedia 2009)

Comparison of Methodologies (Wikipedia 2009)

SDLC

RAD

Open Source

Objects

JAD

Prototyping

End User

Control

Formal

MIS

Weak

Standards

Joint

User

User

Time Frame

Long

Short

Medium

Any

Medium

Short

Short

Users

Many

Few

Few

Varies

Few

One or Two

One

MIS Staff

Many

Few

Hundreds

Split

Few

One or Two

None

Transaction/DSS

Transaction

Both

Both

Both

DSS

DSS

DSS

Interface

Minimal

Minimal

Weak

Windows

Crucial

Crucial

Crucial

Documentation and Training

Vital

Limited

Internal

In Objects

Limited

Weak

None

Integrity and Security

Vital

Vital

Unknown

In Objects

Limited

Weak

Weak

Reusability

Limited

Some

Maybe

Vital

Limited

Weak

None

Strength and Weaknesses of SDLC (Wikipedia 2009)

Strengths

Weaknesses

Control

Increased development time

Monitor large projects

Increased development cost

Detailed steps

Systems must be defined up front

Evaluate costs and completion targets

Rigidity

Documentation

Hard to estimate costs, project overruns

Well defined user input

User input is sometimes limited

Ease of maintenance

Development and design standards

Tolerates changes in MIS staffing

Print Email Download Reference This Send to Kindle Reddit This

Share This Essay

To share this essay on Reddit, Facebook, Twitter, or Google+ just click on the buttons below:

Request Removal

If you are the original writer of this essay and no longer wish to have the essay published on the UK Essays website then please click on the link below to request removal:

Request the removal of this essay.


More from UK Essays

Doing your resits? We can help!