0% found this document useful (0 votes)
4 views

Lecture 9 (1)

The document discusses incremental development in software engineering, highlighting its benefits such as reduced costs for accommodating changing customer requirements and faster delivery of useful software. It also outlines problems associated with this model, including lack of visibility and potential degradation of system structure. Additionally, it covers software reuse, emphasizing its importance in building business systems and the stages involved in reuse-oriented software engineering.

Uploaded by

ranahassan7674
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Lecture 9 (1)

The document discusses incremental development in software engineering, highlighting its benefits such as reduced costs for accommodating changing customer requirements and faster delivery of useful software. It also outlines problems associated with this model, including lack of visibility and potential degradation of system structure. Additionally, it covers software reuse, emphasizing its importance in building business systems and the stages involved in reuse-oriented software engineering.

Uploaded by

ranahassan7674
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 10

Lectur

e-9
University of Management & Technology
School of Systems and Technology

Software Engineering
CC-2101

Software Process Models


(Contd.)Somerville | Ch-2 (Pg.
43)
Incremental development

2
Incremental development benefits

The cost of accommodating The amount of analysis and


documentation that has to be
changing customer redone is much less than is
requirements is reduced. required with the waterfall model.

It is easier to get customer Customers can comment on


feedback on the demonstrations of the software
development work that has and see how much has been
implemented.
been done.

More rapid delivery and Customers are able to use and


deployment of useful gain value from the software
software to the customer is earlier than is possible with a
waterfall process.
possible.
3
Incremental development problems
• The process is not visible.

• Managers need regular deliverables to measure


progress.

• If systems are developed quickly, it is not cost-


effective to produce documents that reflect every
version of the system.

• System structure tends to degrade as new


increments are added.

• Unless time and money is spent on refactoring to


improve the software, regular change tends to
corrupt its structure.
4
• Incorporating further software changes becomes
Integration and configuration
Based on software reuse where systems are
integrated from existing components or application
systems (sometimes called COTS -Commercial-off-the-
shelf) systems).

Reused elements may be configured to adapt their


behaviour and functionality to a user’s requirements

Reuse is now the standard approach for building


many types of business system
5
Types of reusable software

Stand-alone application Collections of objects that Web services that are


systems (sometimes are developed as a package developed according to
called COTS) that are to be integrated with a service standards and
configured for use in a component framework such which are available for
particular environment. as .NET or J2EE. remote invocation.

6
Reuse-oriented software engineering

7
Key process stages

REQUIREMENT SOFTWARE REQUIREMENT APPLICATION COMPONENT


S DISCOVERY S SYSTEM ADAPTATION
SPECIFICATIO AND REFINEMENT CONFIGURATI AND
N EVALUATION ON INTEGRATION

8
Advantages and disadvantages
Reduced costs Software is
and risks as developed from
less scratch

But requirements
Faster delivery
compromises are
and
inevitable so system
deployment of
may not meet real
system
needs of users
Loss of control
over evolution
of reused
system 9

elements
Thankyou
Q&A

10

You might also like