(Chapter 1 Introduction) : The Evolving Role of Software
(Chapter 1 Introduction) : The Evolving Role of Software
(Chapter 1 Introduction) : The Evolving Role of Software
Application Software:
Application software is defined as programs that solve a specific
business need. Application in this area process business or technical
data in a way that facilitates business operation or management
technical decision making. In addition to convention data processing
application, application software is used to control business function in
real time.
Embedded Software:
Embedded software resides within the system or product and is used to
implement and control feature and function for the end-user and for the
system itself. Embedded software can perform the limited and esoteric
function or provided significant function and control capability.
Product-line Software:
Designed to provide a specific capability for use by many different
customers, product line software can focus on the limited and esoteric
marketplace or address the mass consumer market.
Web Application:
It is a client-server computer program which the client runs on the web
browser. In their simplest form, Web apps can be little more than a set
of linked hypertext files that present information using text and limited
graphics. However, as e-commerce and B2B application grow in
importance. Web apps are evolving into a sophisticate computing
environment that not only provides a standalone feature, computing
function, and content to the end user.
Umbrella Activities
• Waterfall model
• V model
• Iterative model
• Spiral model
• Big Bang Model
• Agile model
1. Waterfall Model
Waterfall is the oldest and most straightforward of the structured SDLC
methodologies — finish one phase, then move on to the next. No going
back. Each stage relies on information from the previous stage and has
its own project plan. Waterfall is easy to understand and simple to
manage.
But early delays can throw off the entire project timeline. And since
there is little room for revisions once a stage is completed, problems
can’t be fixed until you get to the maintenance stage. This model doesn’t
work well if flexibility is needed or if the project is long term and
ongoing.
2. V-Shaped Model
Also known as the Verification and Validation model, the V-shaped
model grew out of Waterfall and is characterised by a corresponding
testing phase for each development stage. Like Waterfall, each stage
begins only after the previous one has ended.
3. Iterative Model
The Iterative model is repetition incarnate. Instead of starting with fully
known requirements, you implement a set of software requirements,
then test, evaluate and pinpoint further requirements. A new version of
the software is produced with each phase, or iteration. Rinse and
repeat until the complete system is ready.
One advantage over other SDLC methodologies: This model gives you a
working version early in the process and makes it less expensive to
implement changes. One disadvantage: Resources can quickly be eaten
up by repeating the process again and again.
4. Spiral Model
One of the most flexible SDLC methodologies, the Spiral model takes a
cue from the Iterative model and its repetition; the project passes
through four phases over and over in a “spiral” until completed,
allowing for multiple rounds of refinement.
This model allows for the building of a highly customised product, and
user feedback can be incorporated from early on in the project. But the
risk you run is creating a never-ending spiral for a project that goes on
and on.
6. Agile Model
By breaking the product into cycles, the Agile model quickly delivers a
working product and is considered a very realistic development
approach. The model produces ongoing releases, each with small,
incremental changes from the previous release. At each iteration, the
product is tested.