what is Software Generic Design Process.
Software Generic Design Process
what is software generic model
what is software process model
what is sdlc model
how to use design process model in software
3. Generic
Software
Process
A software process (also knows
as software methodology) is a
set of related activities that leads
to the production of the
software.
These activities may involve the
development of the software
from the scratch, or, modifying
an existing system.
3
5. Generic
Software
Process
▸ Software specification (or requirements
engineering): Define the main
functionalities of the software and the
constrains around them.
▸ Software design and implementation: The
software is to be designed and
programmed.
▸ Software verification and validation: The
software must conforms to it’s
specification and meets the customer
needs.
▸ Software evolution (software
maintenance): The software is being
modified to meet customer and market
requirements changes.
5
7. Generic
Software
Process
Model
A software process model is a
simplified representation of a
software process. Each model
represents a process from a
specific perspective.
Some methodologies are
sometimes known as software
development life cycle(SDLC)
methodologies
7
9. Water Fall
Model
The waterfall model is a sequential
approach, where each fundamental
activity of a process represented as a
separate phase, arranged in linear
order.
In the waterfall model, you must plan
and schedule all of the activities
before starting working on them (plan-
driven process).
9
11. Water Fall
Model
The Nature of Waterfall Phases
In principle, the result of each phase is one or
more documents that should be approved and
the next phase shouldn’t be started until the
previous phase has completely been finished.
11
12. Water Fall
Model
Advantages
▸ Simple and easy to understand and use
▸ Easy to manage due to the rigidity of the model.
Each phase has specific deliverables and a
review process.
▸ Phases are processed and completed one at a
time.
▸ Works well for smaller projects where
requirements are very well understood.
▸ Clearly defined stages.
▸ Well understood milestones.
▸ Easy to arrange tasks.
▸ Process and results are well documented.
12
13. Water Fall
Model
Disadvantages
▸ High amounts of risk and uncertainty.
▸ Not a good model for complex and object-
oriented projects.
▸ Poor model for long and ongoing projects.
▸ Not suitable for the projects where
requirements are at a moderate to high risk of
changing. So, risk and uncertainty is high with
this process model.
13
15. Evolutionary
Development
Model
Evolutionary models are iterative type models.
They allow to develop more complete versions of
the software.
Following are the evolutionary process models.
1. The prototyping model
2. The spiral model
15
16. The
prototyping
model
▸ Prototype is defined as first or preliminary form using
which other forms are copied or derived.
▸ Prototype model is a set of general objectives for
software.
▸ It does not identify the requirements like detailed
input, output.
▸ It is software working model of limited functionality.
16
17. Spiral Model
▸ Spiral model is a risk driven process model.
▸ It is used for generating the software projects.
▸ In spiral model, an alternate solution is provided if the
risk is found in the risk analysis, then alternate
solutions are suggested and implemented.
▸ It is a combination of prototype and sequential model
or waterfall model.
▸ In one iteration all activities are done, for large
project's the output is small.
17
19. Component
Based
Software
Engineering
▸ It based on systematic reuse where systems
are integrated from existing components
▸ People working on the project Know of
design or code modify them as needed
incorporate them into their system
Process Stages:
▸ Component Analysis
▸ Requirement Modification
▸ System Design with reuse
▸ Development and Integration
19
20. Process
Stages
Component Analysis:
▸ Given the requirements specification
▸ Search is made for components
Requirement Modification:
▸ Requirement are analyzed using searched Components
▸ If modification are impossible we again do component
analysis process
System Design with reuse:
▸ Framework of system is designed or existing framework is
used
Development and Integration
▸ Existing software modified and new developed components
are integrated
20