Introduction to Software Engineering And Models
• Introduction – Professional software development – Software
Engineering: Myths – Ethics – Software Process Models: Waterfall
Model – Prototyping Model – Spiral Model – Increment Model ; Agile
Software Development: Agile Methods – Plan Driven and Agile
development – Software Development Life Cycle Model.
,Introduction
• Software is defined as the set of instructions or programs that are used
by a computer for performing specific tasks.
• Engineering on the other hand, is all about developing products, using
well-defined, scientific principles and methods.
• Software engineering is an engineering branch associated with
development of software product using well-defined scientific principles,
methods and procedures. The outcome of software engineering is an
efficient and reliable software product.
,What is the Need of Software Engineering?
The following crises will occur when proper software engineering concepts
are not employed in the development of a software application.
• Inability to write efficient software programs within the required time-frame.
• Over budget and providing unreliable software that is expensive to maintain.
• Software applications becoming outdated.
• Software becoming more complex when trying to scale them.
To overcome the above-mentioned software crisis, s/w engineering is required.
, Professional Software Development
Software engineering is intended to support professional software
development rather than individual programming.
Software associated - documentation, libraries, support websites, and
configuration data that are needed to make these programs useful.
A system may consist of several separate programs and configuration files that
are used to set up these programs. (system documentation, user
documentation, and websites).
The process of developing a software product using software engineering
principles and methods is referred to as professional software development.