SYLLABUS
IT22502
SOFTWARE ENGINEERING
LTPC
2 02 3
UNIT I INTRODUCTION TO SOFTWARE ENGINEERING
6
Introduction to Software Engineering: The evolving role of software, changing nature of software, a
layered technology. Software Process, Process Models: The waterfall model, incremental process
models, evolutionary process models, Agility: Agile process, Extreme programming.
UNIT II SOFTWARE REQUIREMENTS AND OBJECT MODELLING
6
Software Requirements: Functional and non-functional requirements, user requirements, system
requirements. Requirements engineering process, Object modelling with UML: Use case diagram,
Class diagram, Sequence diagram, Collaboration diagram.
UNIT III DESIGN ENGINEERING
6
Design process: design concepts, design model, design heuristic. Architectural Design: architectural
styles, architectural Design, architectural mapping using data flow, Component level Design:
designing class-based components.
UNIT IV SOFTWARE TESTING
6
Testing Strategies: A strategic approach to software testing, black-box and white-box testing.
Regression testing, unit testing, integration testing, validation testing, system testing, and the art of
debugging.
UNIT V PROJECT ESTIMATION
6
Software Project Estimation — LOC, FP Based Estimation, Make/Buy Decision, COCOMO I
model, COCOMO II model, Risk management.
TOTAL PERIODS: 30
PRACTICAL EXERCISES
1. Identify a software system that needs to be developed.
2. Document the Software Requirements Specification (SRS) for the identified system.
3. Identify use cases and develop the Use Case model.
4. Identify the conceptual classes, derive a Class Diagram and generate code.
5. Using the identified scenarios, find the interaction between objects and represent them using
UML Sequence and Collaboration Diagrams
6. Draw relevant State Chart and Activity Diagrams for the system.
7. Implement the system as per the detailed design.
TOTAL PERIODS: 30
References
Text Books Prescribed in the Syllabus (T):
T1. Larman Craig, “Applying UML and Patterns”, Third Edition, Pearson, 2015.
T2. Roger S. Pressman, “Software Engineering - A Practitioner‟s Approach”, Seventh Edition,
McGraw-Hill International Edition, 2010.
Reference Books Prescribed in the Syllabus (R):
R1. Ali Bahrami, “Object Oriented Systems Development”, McGraw Hill International
Edition,2012.
R2. Hessam Ashrafi and Noushin Ashrafi, "Object Oriented Systems Analysis and Design: Pearson
New International Edition", Pearson Education Limited, 2013.
R3. Simon Bennett, Ray Farmer and Steve McRobb, ”Object-Oriented Systems Analysis and
Design Using UML", McGraw-Hill Europe, 2010.
R4. Ian Sommerville, “Software Engineering”, Ninth Edition, Pearson Education Asia, 2011.
R5. Rajib Mall, “Fundamentals of Software Engineering”, Fourth Edition, PHI Learning Private
Limited, 2014.