Software Development Lifecycle P5 - Let`s E

Download Report

Transcript Software Development Lifecycle P5 - Let`s E

Software Development Lifecycle
Criteria covered in this presentation
• P5: explain the role of software design
principles and software structures in the IT
systems development lifecycle
• When creating software, hardware, or any kind of
product you will go through several stages, we
define these stages in the System Development
Life Cycle.
• Any System Development Life Cycle (SDLC)
typically should result in a high quality system
that meets or exceeds customer expectations, is
finished within time and cost limits, works
effectively and efficiently and is inexpensive to
maintain and cost-effective to improve upon.
• For many life cycles the stages that are
followed are essentially the same; however,
some life cycles are more dynamic or iterative
than others, which can dictate how, for
example, a piece of software is designed,
tested and implemented within a given
General SDLC Stages
• When you are given any problem you should
start off by finding out about the problem and
getting an idea of what you will make to solve
the problem by:
– A detailed look at current systems
– Establish the objectives of the new system in
terms of requirements, specifications and scope
• Once we have settled on what we are going to make and
the objectives for the system, we need to decide about
designing the components.
• Design is important as it allows you to start thinking about
how you will make things, and hopefully avoid making
mistakes later through creating a preliminary mockup.
• The Designing Process involves looking at:
– User interface
– Processes
– Data storage requirements
• It involves the following:
– Programming the software / creation of hardware
– Installation of hardware and software
– Preparation of data files
– Training of users
– Writing the system documentation
– And at the same time make sure that the system
that you build fits in with what you designed
• Once we have created our solution we need to
test that the whole system functions
• Testing is to compare the finished system
against the objectives that we set out in the
• The final thing you should do is evaluate how it all
• Remember we are talking about a systems
development life cycle here, so if you made any
mistakes or things didn't go to plan it's best to make a
note of them. Then next time round you won't make
the same mistake.
• However, the main part of the evaluation is to reflect
on how successful the operational system is:
– Review to confirm the new system meets the original
– Identify any necessary modifications
Design Tools
• Various software design and development
tools can be used to address a particular
• Design tools such as structured diagrams, data
flow diagrams (DFDs) and entity relationship
modelling (ERM) are common modelling tools
that can be applied to problems to generate
appropriate solutions.
Software Structures
• To a programming language or languages,
software structures are important as they are the
tools and formal method for writing a program.
• A number of software structures can be used,
classes and objects.
Software Structures
• An iteration is a repeated process for a given
number of times.
• Decisions are conditions such as ‘ IF THEN ’
• Modules are pieces of reusable code.
• Functions are pieces of code that return
results, for example working out the area of a
• Procedures are similar to functions but they do not
return a value; for example, the use of a procedure to
update a bank balance for a customer.
• An object is a record of different characteristics of a
particular entity, such as a car (make, model, colour,
registration number, mileage), house (type, age,
location, number of bedrooms) or person (gender,
height, weight, eye colour).
• A class is a combination of an object and its associated
functions (for example, to return the make of the car,
update the mileage or edit the service history).
Role of software design principles and
software structures in the IT systems
development lifecycle
• The use of software design and development
tools and principles can ensure that a
developer is following set design procedures
and a particular development life cycle.
• Design tools can be used to provide structure
and rigor to any design and ensure that the
problem domain and requirements
specification are being addressed.
• Software structures are vital to any IT SDLC as they are
the tools and formal techniques for creating the
program that will constitute the overall final
implemented system
• Software structures should be selected and used
properly to ensure achieving their associated aims. E.g.
procedures should be used wherever there is a need
for a particular piece of code in multiple locations in a
• The proper utilization of design tools and software
structures during the SDLC will support in producing a
high quality system