You are on page 1of 26

Software Engineering

Software
• Software is
• A information transformer – Producing, managing, acquiring,
Modifying, displaying or transmitting information that is simple/
complex which is satisfies the users needs & makes the user world
better.
• A software is either a collection of programs which will transfer the
data from one place to another
Engineering
• It is systematic and technical approach which tells you the methods to
carry out the work.
• It can de defined as Applying something technical method or
algorithm in a systematic way.
Software Engineering

• Software engineering is the establishment and use of sound


engineering principles (applying some software methods) in order to
obtain economically software that is reliable(not working properly)
and works efficiently on real machines.
• Software engineering is a discipline that integrates process methods
and tools for the development of computer system.
Software Engineering Layers
• Process layer : It is glue that holds the technology layers together and
enables timely. In other way we can say the technology we are using
produce accurate result.
• Methods : Provides the technical (which platform) how to’s for
building software. It is a set of basic principles that govern each area
of technology.
• Tools: Provides automated and semi automated support for process
and method e.g MS excel tool is used to applying some formula’s.
Software characters
• Software is developed or engineered, it is not manufactured in the
classical sense.
• Software does not wear out. (design and develop is available every
where it is product) car example
• Although industry is moving towards component based assembling
most software continues to be custom built
Software Application
• System software
• Real time software
• Business software
• Engineering and scientific software e.g CAD, CAM
• Embedded software
• Personal computer software
• Web based software
• Artificial intelligence software
Software process model what is software
process model
• A process model describes the sequence of phases for the entire
lifetime of a product . Therefore it is sometimes also called product
life cycle. This covers everything from the initial commercial ideas
until the final DE installation or disassembling of the product after its
use
• Each process model follows a particular life cycle in order to ensure
success in process of software development.
• Three main phases concept phase implementation phase
maintenance phase
Developing model
• Linear sequential model
Waterfall model
• Prototyping
Prototyping model
Rapid application development RAD model
• Evolutionary software process
Spiral model
SDLC--Water fall model
• Water fall model was the first SDLC approach to be used widely in SE
to ensure the success of the project. The water fall approaches the
whole process of software development is divided into separate
phases.
• It is also referred to as a linear sequential life cycle model.
• It is very simple to understand and use.
• Each phase is must be completed before the next phase can begin
and there is no overlapping in the phases.
Software development Life Cycle
• SDLC is step by process involved in the development of a software
product. The whole process is generally classified into a set of steps
and a specified into a set of steps and specific operation will be
carried out in each of the steps.
• There is no reverse action in this model
Phases of Waterfall model SDLC
Planning
• To plan the total project and estimate the merits and demerits of the
project to the developed.
• It involves estimation your attempt to determine how much money,
how much effort how many resource and how much time it will take
to build a specific software based system or project.
analysis
• To perform statistics and requirement gathering.
• To know the behavior of the system to be developed.
• To understand the specific requirement that must be achieved to
build high quality software.
Design
• Design begins with the requirement of the customer as a model.
• It is a meaning engineering representation of something that is to be
built.
• Something like you would not attempt to build a house without
blueprints.
Development
The blue prints is transformed into actual coding by developing or
writing programs in some platform.
That is translating into a machine readable form.
Development includes– structure data, implementation , logic,
processing and produce desired output.
testing
• The testing process focuses on bugs. Software testing is critical
element in development to uncover errors in it.
• It is referred as verification and validation. verification – are we
building the product right? validation – are we building the right
product?
Maintenance
• Software is expected to undergo change in new environment.
• Support given after delivering the product to the customer in the
original environment.
• Maintenance is accommodating the changes in the software in the
external environment.
PROTOTYPING MODEL
• The prototyping model begins with requirements gathered.
• Developer and customer meet and define the overall objectives for
the software identity what ever requirements are know, and a quick
design occurs.
(when a customer is not clear or the customer will know the area of problem but not in the
position of view how he wanted the output or how the result should be like or customer cannot
explain the new product he wants . So customer did not well wise. Customer did not know anything
how product should look like or how to get result in this type the costumer and developer need to
be sit and discuss the requirement gathering and they will discuss the problems now whats
developers do he will create a small program to show )
Continues……
• The construction of this design is called a prototyping.
• The prototyping is evaluated by the customer & used to redefined
requirement for the software to be designed.
• Iteration occurs as the prototyping is tuned to satisfy the needs of
the customer.
Rad Rapid application development model
• It is incremental software development process model emphasis an
extremely short development cycle.
• The rad model is a high speed adaptation of the linear sequential
model in which rapid development is achieved by using component
based constructions.
• IF requirement are well understood and scope is defined the RAD
model develops the fully functional system in very short period.
Spiral Model
• Spiral model is an evolutionary version of incremental prototyping.
Each iteration of the prototype representation as controlled and
systematic aspect in the cycle of spiral.
• The spiral software development model is risk oriented
• Spiral model software development model may be applicable to
projects where:
The projects requirement are very difficult.
Where new technologies are used.
Evolutionary prototyping
• The objectives of evolution prototyping is to deliver a working system
to end users. The development starts with those requirements which
are best understood.
• An approach to system development where initial prototype is
produced and refined through a number of stages to the final system

You might also like