MySlidesch1 Lecture1 SEIntro
MySlidesch1 Lecture1 SEIntro
Engineering
Generic process models
• Waterfall;
• Iterative development;
• Component-based software engineering.
Software engineering methods are organised
ways of producing software. They include:
• suggestions for the process to be followed, egs. Use
a heuristic to solve this problem, assign this person
to do this part of the work, etc.
• the notations to be used, we will see this later
• rules governing the system descriptions egs. System
has to be fast, and
• design guidelines – we will see this later.
Upper-CASE
• Tools to support the early process activities of requirements
and design
E.g.s.,MS Project Manager, Visio, Rational Rose
Lower-CASE
• Tools to support later activities such as programming,
debugging and testing
E.g.s., NetBeans, Eclipse, etc..
The software should deliver the required functionality and
performance to the user and should be maintainable,
dependable, efficient and acceptable.
Maintainability
• Software must evolve to meet changing needs;
Dependability
• Software must be trustworthy;
Efficiency
• Software should not make wasteful use of system resources;
Acceptability
• Software must be accepted by the users for which it was designed.
This means it must be understandable, usable and compatible with
other systems.
Heterogeneity, delivery and trust.
Heterogeneity
• software can cope with heterogeneous platforms and
execution environments;
Delivery
• Must develop techniques that lead to faster delivery of
software; time is an issue!
Trust
• Should be able to demonstrate to the user that they can trust the system.