Lec 2 SE1
Lec 2 SE1
Lec 2 SE1
Software Engineering-1
(SE-1)
Lecture: 02
Sequence [Todays Agenda]
Content of Lecture
• Software Myths
• Program vs Software Product
• Programming vs Software Engineering
• Software Engineering Frameworks
• Process Model
Software Myths
Software Myths
(Developers Perspective)
Software Myths
(Developers Perspective - 2)
Software Myths
(Developers Perspective - 3)
Software Myths
(Management Perspective)
Software Myths
(Management Perspective - 2)
Software Myths
(Management Perspective - 3)
Program v/s Software Product
Software Programming ≠ Software Engineering
Software Programming ≠ Software Engineering
Software is Complex
The Role of Software Engineering
Software Engineering Framework
• Requirements
• System Design
• Detailed Design
• Implementation
• Testing & Installation
• Operations & Maintenance
• Retirement
Phases of a Life-Cycle
A phase is a
–period of time within a life-cycle
–that has a defined goal and
–is based on result(s) of earlier phases.
Different Life Cycle Models
• Build-and-fix model
• Waterfall model
• Rapid prototyping model
• Incremental model
• Spiral model
• Extreme programming
• Synchronize-and-stabilize model
• Component Based Software Engineering
• Object-Oriented life-cycle models
Generic Waterfall Model
Documentation
• • end-user documentation:
• – user handbook
• – quick reference
• – guided tour
• – standard set-up
Waterfall Model Strengths
• Incremental development
• – Develop the system in increments and evaluate each increment
before proceeding to the development of the next increment;
• – Normal approach used in agile methods;
• – Evaluation done by user/customer proxy.
• • Incremental delivery
• – Deploy an increment for use by end-users;
• – More realistic evaluation about practical use of software;
• – Difficult to implement for replacement systems as increments
have less functionality than the system being replaced.
48