Professional Documents
Culture Documents
Software Engineering
Chapter 1
Introduction to Software
Engineering
Hiranthi Ranasinghe(MSc(AI),BSc(Hons))
A software is a system consists of a
number of separate programs
What is a configuration files which are used to set up the
SOFTWARE? programs
Systems and user documentation which
explains how to use the system
Individuals who develop software
Categories
of Software
Generic (Over the Shelf) Bespoke (Customize)
products products
SOFTWARE
Embedded Software
Hardware advances
Software
Engineering Programs rapidly change according to
demand
Widespread use of software operation
in use
Engineering discipline :
Making things work by engineers
system
Software specification
Software
Process Software design and implementation
Software validation
Software evolution
An abstract representation of a software
process is a software development process
model
RAD model
The WATERFALL MODEL is a sequential
design process, used in software
development processes, in which progress
is seen as flowing steadily downwards
Waterfall
Model (like a waterfall) through the phases.
specification
Waterfall
Model System and Software Design – Partitions the
STEPS
requirements to hardware & software system
implementation is done
Systems with clearly defined requirements.
control.
process.
Strengths
Phases are processed and completed one at a time.
33
2 types of evolutionary
development prototyping models
Evolutionary
Prototyping Exploratory development
Model
Throw-away prototyping
Exploratory development
Development starts with the parts that the system has
understood
system.
DiSE
8/9/20 DiTEC 35
Advantages
Reduced time and costs
Improved and increased user involvement
Disadvantages
Evolutionary Insufficient analysis
User confusion of prototype and finished
Prototyping
system
Model
Developer misunderstanding of user
objectives
Excessive development time of the prototype
Expense of implementing prototyping
36
Reuse is one of the most important
based on them.
Requirement Specification: Which is the activity of
translating the information gathered during the analysis
activity into a (formal or informal, depending on the
underlying process used) document that defines a set of
looked for. In the most of the cases there is no exact match and
Oriented
Development Development and integration. Software that cannot be
externally procured is developed, and the components and
commercial-off-the-shelf (COTS) systems are integrated to
create the new system. System integration, in this model,
may be part of the development process rather than a
separate activity.
System validation more generally, verification and validation
and that it meets the real needs of the customer or user of the application.
commonly used.
System testing. System components are integrated to create a
tested with data supplied by the system customer rather than with
data exercise the system in different ways from the test data.
Web services that are developed according to well-known
remote invocation.
Most Collections of objects that are developed as a package to
Appropriate
be integrated with a component framework such like .NET
In
or Java EE.
in a particular environment.
reduced amount of software to be developed
Benefits
compromises must be achieved on requirements which
might lead to a system that does not meet the real needs
of users