Unit 1 Oose p2 Unit 1 Part 2 Notes
Unit 1 Oose p2 Unit 1 Part 2 Notes
PROCESS FLOW:
Process flow describes how the framework activities and the actions and tasks that occur within each framework activity are organized
with respect to sequence and time. The different process flows are:
1)A linear process flow
2)An iterative process flow
3)An evolutionary process flow
4)A parallel process flow
1)A linear process flow executes each of the five framework activities in 3)An evolutionary process flow executes the activities in a
sequence, beginning with communication and culminating with deployment. “circular” manner. Each circuit through the five activities
leads to a more complete version of the software.
2)An iterative process flow repeats one or more of the activities before 4)A parallel process flow executes one or more activities in
proceeding to the next. parallel with other activities (e.g., modeling for one aspect of
the software might be executed in parallel with construction
of another aspect of the software).
PREPARED BY K.JASPIN,AP/SJIT
PREPARED BY K.JASPIN,AP/SJIT
The V-model
PREPARED BY K.JASPIN,AP/SJIT
PROCESS
CONCEPT ADVANTAGE DISADVANTAGE
MODEL
The incremental model combines the
elements of the waterfall model applied in an Suitable to manage Testing cost will be very high.
iterative fashion. technical risks. Requires proper planning to
Each linear sequence produces Efficient when there are distribute the work
deliverable “increments” of the software.
less number of people involved Total cost is higher
When an incremental model is used, the in the project. than waterfall.
first increment is often a core product. useful when staffing is
The core product is used and evaluated by unavailable for a complete
the customer. implementation
As a result of use and/or evaluation, a initial delivery cost is less
plan is developed for the next increment. It is easier to test and
The plan addresses the modification of debug during a smaller iteration.
the core product to better meet the needs of the This model is more
The customer and the delivery of additional features flexible – less costly to change
incremental and functionality. scope and requirements.
Model This process is repeated until the
complete product is produced.
PREPARED BY K.JASPIN,AP/SJIT
PROCESS
CONCEPT ADVANTAGE DISADVANTAGE
MODEL
RAD requires sufficient
Rapid Application Development (RAD) create a fully functional human resources to createthe right
is an incremental software process model that system within a very short time number of RAD teams.
emphasizes a short development cycle. period. If developers and customers
The RAD model is a high-speed are not committed RAD project fails.
adaptation of the waterfall model If a system is not properly
Rapid development is achieved by using modularized, building the components
component-based construction approach. for RAD will be problematic. High
performance cannot be achieved.
Not appropriate when
technical risks are high or when new
technology is used.
RAD model
PREPARED BY K.JASPIN,AP/SJIT
PROCESS
CONCEPT ADVANTAGE DISADVANTAGE
MODEL
This can be used as a stand-alone process It minimizes product The developer often makes
model. failure. implementation compromises in order
This prototyping model assists the check the function of to get a prototype working quickly.
software engineer and the customer to better system models before committing No consideration for quality.
understand what is to be built. to a final system. inappropriate operating system
The prototyping begins with This model is useful when or programming language may be
communication. requirements are fuzzy. used
A prototyping iteration is planned inefficient algorithm may be
implemented.
quickly in the form of Quick design Customer satisfaction
The quick design leads to the is not achieved
construction of the Prototype.
The Prototype is deployed and then
evaluated by the customer.
Feedback is used to refine requirements
Prototyping for the software.
PREPARED BY K.JASPIN,AP/SJIT
PROCESS
CONCEPT ADVANTAGE DISADVANTAGE
MODEL
It can be applied throughout Risk rate is reduced. It is only suitable for large
the life of the computer software. Reusability of software. sized projects.
It ‘couples’ the iterative nature of It can be used when the Model is complex to use.
prototyping with the controlled and systematic user requirements are not clear. Management skill is
aspects of the waterfall model. Since customer necessary so as to analyze the risk
Anchor point milestones -a combination involvement is there risk rate is factor.
of work products and conditions that are attained reduced.
along the path of the spiral.
Spiral model
PREPARED BY K.JASPIN,AP/SJIT
Concurrent
Development
Model
PREPARED BY K.JASPIN,AP/SJIT
PREPARED BY K.JASPIN,AP/SJIT
It is iterative in nature.
It combines the features of evolutionary model and incremental model.
There are 5 phases in unified model.
1. Inception Phase
2. Elaboration Phase
3. Construction Phase
4. Transition Phase
5. Production Phase
1) Inception Phase
Inception phase combines communication and planning. During this phase
Requirements are gathered.
Indentify actors and their interactions
Develop the prototype
Estimate schedule and deadlines, track the schedules, and risk analysis.
PREPARED BY K.JASPIN,AP/SJIT
2) Elaboration Phase
It is a combination of planning and modeling.
The initial requirements are refined and expanded.
Requirements are made more detailed and the plan must be adjusted.
When requirements are clear the design process starts.
3) Construction Phase
The design is converted in to programming language and the code is tested to find errors.
4) Transition Phase
It is the combination of construction and deployment
The software is installed on user’s machine.
When user suggests modification the code is modified, tested and installed on the users machine.
5) Production Phase
After the fully functional software is produced the software is released as the increment.
PREPARED BY K.JASPIN,AP/SJIT
Formal Methods
Waterfall Model Incremental Model RAD Model Prototyping Model Spiral Model
Model(FMM)
Requirements must Requirements are Requirements must be Some requirements Requirements Requirements must
be clearly understood precisely defined and clearly understood are gathered initially analysis and gathering be clearly
and defined at the there is no confusion and defined at the but there may be can be done in understood and
beginning only about the final beginning only change in iterations because defined at the
product of the requirements when requirements get beginning only
software at each the working changed quite often
increment. prototype is shown
to the customer
Development team Development team It requires heavy Development team Development team Development team
having the adequate having the adequate resources. having the less having the less having the adequate
experience of working experience of (ie, multiple teams) experience of experience of experience of
on the similar project working on the Development team working on the working on the working on the
is chosen to work on similar project is having the adequate similar project is similar project is similar project is
this type of process allowed in this type of experience of working allowed in this type allowed in this type of chosen to work on
model process model on the similar project is of process model process model this type of process
chosen to work on this model
type of process model
If the development The development If the development The development The development If the development
team has less domain team with less team has less domain team has adequate team with less team has less domain
knowledge or if it domain knowledge knowledge or if it new domain knowledge. domain knowledge knowledge or if it
new to the technology can be accommodated to the technology then Similarly they can can be accommodated new to the technology
then such a team is due to iterative such a team is not adopt the new due to iterative then such a team is
allowed for this kind nature of this model. allowed for this kind of technologies if nature of this model. not allowed for this
of process model The change in process model product demands The change in kind of process model
technology in the technology in the
later phase can not be later phase can not be
tolerated tolerated
PREPARED BY K.JASPIN,AP/SJIT
Formal Methods
Waterfall Model Incremental Model RAD Model Prototyping Model Spiral Model
Model(FMM)
There is no user There is no user There is user There is user There is no user Limited community
involvement in all the involvement in all involvement in all the involvement in all involvement in all makes use of formal
phases of the phases of phases of development the phases of the phases of methods model for
development process. development process process. development development process. their projects because
process. this methodology is
based on
mathematical
theorms, formal
methods and automata
theory.
Types of projects: Types of projects: Types of projects: Types of projects: Types of projects: Types of projects:
Whenever there is a
When the When the For high speed and When developer is When the need to build the
requirements are requirements are short time not sure about the requirements are not scientific models
reasonably well reasonably well development projects efficiency of an clearly defined.(ie, based on
defined for small defined, the OR algorithm requirements mathematical
systems, the development effort suitable for the projects OR uncertainties) techniques
development effort suggests a purely where technical risks Not sure about the OR OR
suggests a purely linear effort and are not high. adaptability of an Due to iterative Simulation of the
linear effortthen the when limited set of OR operating system nature of this risk some real time
waterfall model is software If there is use of then the prototyping identification and systems
chosen. functionality is reusable components model is chosen. rectification is done OR
needed quickly then in the project then for before they get When there is a need
the incremental model developing such problematic. Hence to build the systems
is chosen. projects this process for handling real that can contribute to
model is. time problems the the reliability and
spiral model is robustness(ie,critical
chosen. systems) then the
formal methods
models are used.
PREPARED BY K.JASPIN,AP/SJIT
ITERATIVE MODELS
An iterative life cycle model does not attempt to start with a full specification of requirements. Instead, development begins b y
specifying and implementing just part of the software, which can then be reviewed in order to identify further requirements. This
process is then repeated, producing a new version of the software for each cycle of the model.
PREPARED BY K.JASPIN,AP/SJIT
CMMI
The CMMI represents a process meta-model in two different ways: (1) as a continuous model and (2) as a ―staged model.
Each process area (e.g., project planning or requirements management) is formally assessed against specific goals and
practices and is rated according to the following capability levels:
Level 0: Incomplete—the process area (e.g., requirements management) is either not performed or does not achieve all
goals and objectives defined by the CMMI for level 1 capability for the process area.
Level 1: Performed—all of the specific goals of the process area (as defined by the CMMI)have -been satisfied. Work
tasks required to produce defined work products are being conducted.
Level 2: Managed—all capability level 1 criteria have been satisfied. In addition, all work associated with the process
area conforms to an organizationally defined policy; all people doing the work have access to adequate resources to get
the job done; stakeholders are actively involved in the process area as required; all work tasks and work products are
―monitored, controlled, and reviewed; and are evaluated for adherence to the process description‖ .
Level 3: Defined—all capability level 2 criteria have been achieved. In addition, the process is ―tailored from the
organization‘s set of standard processes according to the organization‘s tailoring guidelines, and contributes work
products, measures, and other process-improvement information to the organizational process assets‖ .
Level 4: Quantitatively managed—all capability level 3 criteria have been achieved. In addition, the process area is
controlled and improved using measurement and quantitative assessment. ―Quantitative objectives for quality and
process performance are established and used as criteria in managing the process.
Level 5: Optimized—all capability level 4 criteria have been achieved. In addition, the process area is adapted and
optimized using quantitative (statistical) means to meet changing customer needs and to continually improve the efficacy
of the process area under consideration.
The CMMI defines each process area in terms of ―specific goals and the ―specific practices required to achieve these
goals. Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective.
Specific practices refine a goal into a set of process-related activities.
PREPARED BY K.JASPIN,AP/SJIT