Table of Contents
Characteristics of a software Product5
Components of software6
Types of Software Product6
Software Crisis:- 1965-19856
The 4Ps of Software engineering7
Software Development Life Cycle(SDLC)8
When to use the Waterfall Model10
Spiral SDLC Model10
Spiral Model Strengths11
Spiral Model Weaknesses11
When to use Spiral Model12
Advantages of Incremental Model15
Disadvantages Incremental Model15
Rapid Application Development (RAD)16
Advantages of RAD Model16
Disadvantages of RAD Model16
REQUIREMENTS ANALYSIS AND SPECIFICATION17
Types of Requirements17
Requirement engineering Process18
Critical Priority Analysis21
SOFTWARE PROJECT MANAGEMENT25
THE MANAGEMENT SPECTRUM25
CHARACTERISCTIC OF AN EFFECTIVE PROJECT MANAGER26
AVOIDING PROBLEMS SIGNED BY JEOPARDY27
THE W5HH PRINCIPLE29
Software Project Planning30
Project Resources characteristics31
Software Project Estimation31
Categories of estimation techniques31
Characteristics of Risks32
Risk Management Process32
Types of Risks33
Critical Error Removal35
Computer Aided Software Engineering42
Categories of CASE Tools:43
How the Organization uses CASE tools:43
Need of CASE tools:44
Positioning of CASE tools in a Software Application development:45
Advantages and Disadvantages of CASE Tools:45
Characteristics of a successful CASE Tool:46
Categories of software maintenance47
Costs and challenges47
Program:- Instructions that tell a computer what to do and how to behave. It is combination of source codes and object codes.
Software- Computer programs that when executed provides a desired function. It consists of written programs or procedures or rules and associated documentation pertaining to the operation of a computer system stored in memory.
Engineering:- Application of scientific principles and methods to the construction of useful structures and machines.
Software engineering- “Application of systematic, disciplined and quantifiable approach to the development, operation and maintenance of soft wares” (according to Institute of Electronic and Electrical Engineers-IEEE)
There is a debate on whether programmers qualify to be considered as engineers just like other engineers.
Software takes a dual role as both the product and the vehicle for delivering a product. It is a vehicle because it forms the basis for the control of the computer. It delivers the most important product of our time i.e. information.
Software engineering is an engineering discipline concerned with all aspects of software production.
Software engineers should adopt a systematic and organized approach to their work. They should also use appropriate tools and technique depending on problem to be solved, development constraint and resources available.
Software engineering and computer science are different because computer science deals...