SWE1002-Principles of Software Engineering
SWE1002-Principles of Software Engineering
Faculty
Dr. Ch Anil Carie
Assistant Professor Sr.Grade-1
2
• Nature of Software,
• Software Engineering,
• Software Process,
• Software Engineering Practice,
• Software Process Models:
– Linear ,
– RAD,
– Incremental ,
– Spiral ,
• Component –based development , Fourth Gen Techniques.
• Simple questions:
• Who has a stake in the solution to the problem? That is, who are the
stakeholders?
• What are the unknowns? What data, functions, and features are required to
properly solve the problem?
• Can the problem be compartmentalized? Is it possible to represent smaller
problems that may be easier to understand?
• Can the problem be represented graphically? Can an analysis model be created?
• Before you Code, slow down just a bit and do a little design:
– Have you seen similar problems before? Are there patterns that are
recognizable in a potential solution? Is there existing software that
implements the data, functions, and features that are required?
• Has a similar problem been solved? If so, are elements of the solution
reusable?
• Can subproblems be defined? If so, are solutions readily apparent for the
subproblems?
• Can you represent a solution in a manner that leads to effective
implementation?
Can a design model be created?
• Does the solution conform to the plan? Is source code traceable to the design
model?
• Is each component part of the solution provably correct? Have the design and
code been reviewed, or better, have correctness proofs been applied to the
algorithm?