Professional Documents
Culture Documents
Noida Institute of Engineering and Technology, Greater Noida Noida Institute of Engineering and Technology, Greater Noida
Noida Institute of Engineering and Technology, Greater Noida Noida Institute of Engineering and Technology, Greater Noida
Noida Institute of Engineering and Technology, Greater Noida Noida Institute of Engineering and Technology, Greater Noida
INTRODUCTION
Unit: 1
Subject Name
Software Engineering Prakirti Raghuvanshi
Assistant Professor (IT)
Course Details
B.TECH IT-VI Sem
CO3 Compare and contrast various methods for software design. K2, K3
KCS601.2 3 3 3 3 2 2 1 3 2 3 3 3
KCS601.3 2 2 2 2 2 2 2 3 3 3 3 3
KCS601.4 3 2 3 3 3 1 1 3 2 3 2 2
KCS601.5 3 3 3 3 3 2 1 3 3 3 3 3
Average 2.80 2.60 2.80 2.60 2.40 1.60 1.20 2.80 2.40 3 2.80 2.80
KCS601.2 3 2 3 3
KCS601.3 3 2 3 3
KCS601.4 3 2 3 3
KCS601.5 3 1 3 3
Average 3 1.80 3 3
• Software is:-
Programs
Documentation Operating
Procedures
• To be precise
– Software is the collection of computer programs whose
objective is to enhance the capabilities of hardware
• It affects nearly every aspect of our lives and has become pervasive
in our commerce, our culture and our every day activities
software impact on our society and culture is significant .
• IEEE Definition:-
– Software is flexible.
• We don’t have this phase for the software as it does not wear out.
• It becomes obsolete.
• Software Crisis
• Software Myths
• Software Process
• Y2K problem
There are four fundamental process activities which are common to all
software processes. These activities are :-
• Software specification:- the functionality of the software and
constraints on its operation must be defined.
• Second Era: In this era the software are mainly based on (1960-
1972)
– Multi-user
– Data base
– Real time
– Product software
– Multiprogramming
• Third Era: In this era the software are mainly based on(1973-1985)
– Embedded intelligence
– Consumer impact
– Distributed systems
– Low cost hardware
• Fourth Era:- In this era the software are mainly based on(1985- )
– Powerful desktop system
– Expert system
– Artificial intelligence
– Network computers
– Parallel computing
– Object oriented technology
• Robustness:
– Robustness reduces the impact of operational mistakes,
erroneous input data, and hardware errors.
• Origins
– Proposed in the early 70s & widely used even today
– Based strongly on the way hardware systems are designed &
implemented.
Requirement
analysis &
specification
Software Design &
Detailed Design
Integration &
System Testing
Operation &
Maintenance
Advantages:
• Easy to understand even by non technical persons i.e.,
customers
• Each phase has well defined inputs and outputs e.g., input to
system design stage is Requirement Specification Documents
(RSD) and output is the design document
Disadvantages:
• It is difficult to define all requirements at the beginning of a
project.
• Developer and customer meet and define overall objective for the
software, identify whatever requirements are known, and outline
area where further definition is mandatory.
• Waterfall Model
• Prototype Model
• An iterative life cycle model does not attempt to start with a full
specification of requirements.
• Resources with needed skill sets are not available and are planned
to be used on contract basis for specific iterations.
• There are some high-risk features and goals which may change in
the future.
• It is used in large projects where you can easily find modules for
incremental implementation. Evolutionary model is commonly used
when the customer wants to start using the core features instead of
waiting for the full software.
• Development can be divided into smaller parts and the risky parts can
be developed earlier which helps in better risk management.
• Not suitable for small or low risk projects and could be expensive for
small projects.
• Process is complex
Iterative Evolutionary
Requirements Waterfall Prototype Spiral RAD
enhancement development
Are requirements
easily understandable Yes No No No No Yes
and defined?
Do we change
requirements quite No Yes No No Yes No
often?
Can we define
requirements early in Yes No Yes Yes No Yes
the cycle?
Requirements are
indicating a complex No Yes Yes Yes Yes No
system to be built
Less experience on
No Yes No No No No
similar projects?
Availability of
Yes Yes Yes
training if required No No No
User involvement in
No Yes No No No Yes
all phases
Limited user No
Yes Yes Yes Yes No
participation
User have no
previous experience
No Yes Yes Yes Yes No
of participation in
similar projects
• Define the term “Software Engineering”. Explain the major differences between
software engineering and other traditional engineering disciplines.
• Discuss different components of the Software Engineering involved in the
development process.
• Define various software characteristics.
• What is Software development life cycle?
• What is Software process?
• Who is called as the Stakeholder?
• List four reasons why it is difficult to improve software process.
• Discuss the prototype model. What is the effect of designing a prototype on the
overall cost of the software project ?
• List the advantage of waterfall model.
• Explain the waterfall model. Explain why it is more beneficial than adhoc methods.
• Software Components
• Software Characteristics
• Software Crisis
• Software Engineering Processes
• Similarity and Differences from Conventional Engineering Processes
• Software Quality Attributes
• Software Development Life Cycle (SDLC) Models
• Water Fall Model,
• Prototype Model,
• Spiral Model, Evolutionary Development Models,
• Iterative Enhancement Models