Professional Documents
Culture Documents
Processmodels
Processmodels
Processmodels
Other process areas defined for "project management" include: project monitoring
and control, supplier agreement management, integrated project management for
IPPD, risk management, integrated teaming, integrated supplier management, and
quantitative project management.
The specific goals (SG) and the associated specific practices (SP) defined for
project planning are
SG 1 Establish estimates
In addition to specific goals and practices, the CMMI also defines a set of five
generic goals and related practices for each process area. Each of the five generic
goals corresponds to one of the five capability levels.
To achieve a particular capability level, the generic goal for that level and the
generic practices that correspond to that goal must be achieved.
To illustrate, the generic goals (GG) and practices (GP) for the project planning
process area are :
The staged CMMI model defines the same process areas, goals, and practices as
the continuous model. The primary difference is that the staged model defines five
maturity levels, rather than five capability levels. To achieve a maturity level, the
specific goals and practices associated with a set of process areas must be
achieved. The relationship between maturity levels and process areas is shown in
Figure 2.4.
Software Development Life Cycle (SDLC)
The software development life cycle (SDLC) is a structured process that is
used to design, develop, and test good-quality software. SDLC, or software
development life cycle is a methodology that defines the entire procedure of
software development step-by-step. The goal of the SDLC life cycle model is to
deliver high-quality, maintainable software that meets the user’s requirements.
SDLC in software engineering models outlines the plan for each stage so that
each stage of the software development model can perform its task efficiently to
deliver the software at a low cost within a given time frame that meets users’
requirements.
SDLC stands for software development life cycle. It is a process followed for
software building within a software organization. SDLC consists of a precise
plan that describes how to develop, maintain, replace, and enhance specific
software. The life cycle defines a method for improving the quality of software
and the all-around development process.
Stages of the Software Development Life Cycle Model
SDLC specifies the task(s) to be performed at various stages by a software
engineer or developer. It ensures that the end product is able to meet the
customer’s expectations and fits within the overall budget. Hence, it’s vital for a
software developer to have prior knowledge of this software development
process.
SDLC Cycle represents the process of developing software. SDLC framework
includes the following steps:
Software processes are the activities for designing, implementing, and testing a
software system.
There are many kinds of process models for meeting different requirements. We
refer to these as SDLC models (Software Development Life Cycle models). The
most popular and important SDLC models are as follows:
Perspective models
Waterfall model
Incremental process model
Evolutionary process models
unified process models
specialized process models
Agile modeling
There are multiple kinds of software process models that each meet different
requirements.
•Defines a distinct set of activities, actions, tasks, milestones, and work products
that are required to engineer high-quality software
•The activities may be linear, incremental, or evolutionary
These models are called as "prescriptive" because they prescribe a set of process
elements— framework activities, software engineering actions, tasks, work
products, quality assurance, and change control mechanisms for each project. Each
process model also prescribes a workflow—that is, the manner in which the
process elements are interrelated to one another. All software process models can
accommodate the generic framework activities.
There are three types of prescriptive process models. They are:
c. RAD model
Advantages of waterfall model
The waterfall model is simple and easy to understand, implement, and use.
All the requirements are known at the beginning of the project, hence it is easy
to manage.
It avoids overlapping of phases because each phase is completed at once.
This model works for small projects because the requirements are understood
very well.
This model is preferred for those projects where the quality is more important
as compared to the cost of the project.
Disadvantages of the waterfall model
This model is not good for complex and object oriented projects.
It is a poor model for long projects.
The problems with this model are uncovered, until the software testing.
The amount of risk is high.
3. RAD model
1. Business Modeling
Business modeling consist of the flow of information between various functions
in the project.
For example what type of information is produced by every function and which
are the functions to handle that information.
A complete business analysis should be performed to get the essential business
information.
2. Data modeling
The information in the business modeling phase is refined into the set of
objects and it is essential for the business.
The attributes of each object are identified and define the relationship between
objects.
3. Process modeling
The data objects defined in the data modeling phase are changed to fulfil the
information flow to implement the business model.
The process description is created for adding, modifying, deleting or retrieving
a data object.
4. Application generation
In the application generation phase, the actual system is built.
To construct the software the automated tools are used.
5. Testing and turnover
The prototypes are independently tested after each iteration so that the overall
testing time is reduced.
The data flow and the interfaces between all the components are are fully
tested. Hence, most of the programming components are already tested.