A Layered Technology
Software Engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.
The various layers are
- tools
- methods
- process
- a quality focus
Software Engineering asks the following questions
- What is the problem to be solved?
- what are the characteristics of the entity that is used to solve the problem?
- How will the entity and the solution will be realized?
- How will the entity be constructed?
- What approach will be used to uncover the errors that were made in the design and construction of the entity?
- How will the entity be supported over the long term, when corrections,adaptations and enhancements are requested by users of the entity?
The Software Process
Software Engineering Institute has developed a comprehensive model that is predicated on a set of software engineering capabilities that should be present as an organization reaches different levels of process maturity. It is called the Capability Maturity Model.it has five process maturity levels, which are defined in the following manner:
- Level 1 : Initial
- Level 2 : Repeatable
- Level 3 : Defined
- Level 4 : Managed
- Level 5 : Optimizing
Software Process Models
- The Linear Sequential Model
- The Prototyping Model
- The RAD Model
Evolutionary Software Process Model
- The Incremental Model
- The Spiral Model
- The Component Assembly Model
- The Concurrent Development Model
The Formal Methods Model
Fourth Generation Techniques
Comments
Post a Comment