Week15 SE
Week15 SE
Week15 SE
WEEK 14
Software Engineering
The economies of ALL developed nations are
dependent on software.
More and more systems are software-controlled.
Software Engineering is concerned with theories,
methods and tools for professional software
development.
What is Software Engineering?
Software design
Code Generation
Software Testing
Maintenance (Change)
Correction
Adaptation
Enhancement
Prevention
Process in S.E
Software Engineering
tools
methods
process model
a “quality” focus
Attributes of Good Software
The software should deliver the required functionality and
performance to the user and should be maintainable,
dependable and usable.
Maintainability
Software must evolve to meet changing needs
Dependability
Software must be trustworthy
Efficiency
Software should not make wasteful use of system
resources
Usability
Software must be usable by the users for which it was
designed
Software Engineering Process Models
Functional Requirements
That define the function of the project
Non-Functional Requirements
That define property of the project
Design Phase
Dangerous!
No visibility/control
No resource planning
No deadlines
Mistakes hard to detect/correct
Impossible for large projects,
communication breakdown, chaos.
Rapid Prototyping
Key idea
Customers are non-technical and usually don’t know what they
want.
Advantages