Feasibility Study: Question 1 Compare and Contrast Waterfall Model With Spiral Model
Feasibility Study: Question 1 Compare and Contrast Waterfall Model With Spiral Model
Feasibility Study – In this stage, the cost and benefits are evaluated of
the proposed application. The feasibility analysis should produce a
document containing – definition of the problem, discovering the
technical and economic viability, alternate solutions, needed resources,
cost and delivery dates.
The spiral model is an evolutionary type of software life cycle model which
merges the features of the prototype model and waterfall model. It has the
potential for developing the incremental versions of the softwares by
implementing the iterativeness of the prototype model and controlled
methodical of the linear segmental model. The outcome of the spiral model is
the series of the incremental releases of the software.
It works by dividing the model into framework activities, which are known as
task regions. Basically, there are three to six task regions could present such
as customer communication, planning, risk analysis, engineering and so on
which are described below.
Construct and release – It carries out all the important tasks needed to
build, test, install the application and also provides user support.
Key Differences –
3. Risks to the product can only be identified at the end of the process in
the waterfall model. Conversely, the spiral model recognizes risk at
earlier phases of the process which is revised at each iteration too.
4. The waterfall model produces the single final product at the end of the
process. In contrast, the spiral model generates a rough working
product at each iteration.
Question 2 What do you mean by SRS and why is it important. Give suitable
example? Explain Software Design Principles in detail.
Purpose of an SRS
SRS Example
Table of Contents
1. Introduction
1.3 Overview
2. General Description
3. Functional Requirements
4. Interface Requirements
5. Performance Requirements
6.1 Security
6.3 Reliability
6.4 Maintainability
6.5 Portability
6.6 Extensibility
6.7 Reusability
9. Updated Schedule
10. Appendices
10.2 References
Rayleigh Curve –
Example ?
Bottom up approach:In this method, the project managers add on to their costs upwards
initiating from the lowermost levels. The process is time consuming as every possible expense be
it labour related or equipment based is added up starting from the foundation levels. This
approach is well suited to large multi faceted projects.
Cocomo (Constructive Cost Model) is a regression model based on
LOC, i.e number of Lines of Code. It is a procedural cost estimate
model for software projects and often used as a process of reliably
predicting the various parameters associated with making a project
such as size, effort, cost, time and quality. It was proposed by Barry
Boehm in 1970 and is based on the study of 63 projects, which make
it one of the best-documented models.
The key parameters which define the quality of any software products,
which are also an outcome of the Cocomo are primarily Effort &
Schedule:
Effort: Amount of labor that will be required to complete a task. It
is measured in person-months units.
Schedule: Simply means the amount of time required for the
completion of the job, which is, of course, proportional to the
effort put. It is measured in the units of time such as weeks,
months.
Types of Models: COCOMO consists of a hierarchy of three
increasingly detailed and accurate forms. Any of the three forms can
be adopted according to our requirements. These are types of
COCOMO model:
1. Basic COCOMO Model
2. Intermediate COCOMO Model
3. Detailed COCOMO Model
The first level, Basic COCOMO can be used for quick and slightly
rough calculations of Software Costs. Its accuracy is somewhat
restricted due to the absence of sufficient factor considerations.
Intermediate COCOMO takes these Cost Drivers into account
and Detailed COCOMO additionally accounts for the influence of
individual project phases, i.e in case of Detailed it accounts for both
these cost drivers and also calculations are performed phase wise
henceforth producing a more accurate result. These two models are
further discussed below.
1. Basic Model –
E=a(KLOC)^b
The above formula is used for the cost estimation of for the basic
COCOMO model, and also is used in the subsequent models.
The constant values a and b for the Basic Model for the different
categories of system:
SOFTWARE PROJECTS A B
Product Attributes
Required Software
Size of Application
Complexity of The
Hardware Attributes
Runtime Performance
Personnel attributes
Software engineer
Virtual machine
Programming language
Project Attributes
Application of software
Required development
3. Detailed Model –
Detailed COCOMO incorporates all characteristics of the
intermediate version with an assessment of the cost driver’s
impact on each step of the software engineering process. The
detailed model uses different effort multipliers for each cost driver
attribute. In detailed cocomo, the whole software is divided into
different modules and then we apply COCOMO in different
modules to estimate effort and then sum the effort.
The Six phases of detailed COCOMO are:
1. Planning and requirements
2. System design
3. Detailed design
4. Module code and test
5. Integration and test
6. Cost Constructive model
The effort is calculated as a function of program size and a set of
cost drivers are given according to each phase of the software
lifecycle.
Question 6 What do you mean by the risk in a project? What
are the different approaches towards risk management? What
is Risk Matrix and Risk Mitigation?
The exposure to a company that arises from taking on a particular task. A project
risk can be internal to the business, it can involve external events or it can stem
from any other circumstances that can hamper the project's overall success and
result in loss or embarrassment to the firm undertaking it.
Risk Matrix-
Question 7
Software Quality Assurance (SQA) is simply a way to
assure quality in the software. It is the set of activities which
ensure processes, procedures as well as standards suitable
for the project and implemented correctly.
Question 8
Now we know what we’re dealing with, let’s see how to practically
apply project control throughout the project management cycle.
You’ve finished the project! Surely that means the project control
element is over? Not quite. You need to be able to review its total
performance, understanding trends and processes that led to
success so you can repeat them for future projects.
Did your team meet their objectives? Did they progress at the
expected rate? Did you deliver a quality product and still stick to
budget? Is there still work to do? Good project control allows you
to appraise these points. So do a thorough debrief – compile
performance data and break it down to the project task level to
uncover new learnings.
You should charter exactly how your project transpired –
where time was spent, where activity veered off course, and what
limited productivity – and build effective measures into your new
projects to control for them further.