17CS45 Software Engineering syllabus for CS



A d v e r t i s e m e n t

Module-1 Introduction 12 hours

Introduction:

Software Crisis, Need for Software Engineering. Professional Software Development, Software Engineering Ethics. Case Studies.

 

Software Processes:

Models: Waterfall Model (Sec 2.1.1), Incremental Model (Sec 2.1.2) and Spiral Model (Sec 2.1.3). Process activities.

 

Requirements Engineering:

Requirements Engineering Processes (Chap 4). Requirements Elicitation and Analysis (Sec 4.5). Functional and non-functional requirements (Sec 4.1). The software Requirements Document (Sec 4.2). Requirements Specification (Sec 4.3). Requirements validation (Sec 4.6). Requirements Management (Sec 4.7).

Module-2 System Models 11 hours

System Models:

Context models (Sec 5.1). Interaction models (Sec 5.2). Structural models (Sec 5.3). Behavioral models (Sec 5.4). Model-driven engineering (Sec 5.5).

 

Design and Implementation:

Introduction to RUP (Sec 2.4), Design Principles (Chap 17). Object-oriented design using the UML (Sec 7.1). Design patterns (Sec 7.2). Implementation issues (Sec 7.3). Open source development (Sec 7.4).

Module-3 Software Testing 9 hours

Software Testing:

Development testing (Sec 8.1), Test-driven development (Sec 8.2), Release testing (Sec 8.3), User testing (Sec 8.4). Test Automation (Page no 42, 70,212, 231,444,695).

 

Software Evolution:

Evolution processes (Sec 9.1). Program evolution dynamics (Sec 9.2). Software maintenance (Sec 9.3). Legacy system management (Sec 9.4).

Module-4 Project Planning 10 hours

Project Planning:

Software pricing (Sec 23.1). Plan-driven development (Sec 23.2). Project scheduling (Sec 23.3): Estimation techniques (Sec 23.5).

 

Quality management:

Software quality (Sec 24.1). Reviews and inspections (Sec 24.3). Software measurement and metrics (Sec 24.4). Software standards (Sec 24.2)

Module-5 Agile Software Development 8 hours

Agile Software Development:

Coping with Change (Sec 2.3), The Agile Manifesto: Values and Principles. Agile methods: SCRUM (Ref “The SCRUM Primer, Ver 2.0”) and Extreme Programming (Sec 3.3). Plan-driven and agile development (Sec 3.2). Agile project management (Sec 3.4), Scaling agile methods (Sec 3.5):

Course Outcomes: After studying this course, students will be able to:

  • Design a software system, component, or process to meet desired needs within realistic constraints.
  • Assess professional and ethical responsibility · Function on multi-disciplinary teams
  • Make use of techniques, skills, and modern engineering tools necessary for engineering practice
  • Comprehend software systems or parts of software systems.

Question paper pattern:

  • The question paper will have ten questions.
  • There will be 2 questions from each module.
  • Each question will have questions covering all the topics under a module.
  • The students will have to answer 5 full questions, selecting one full question from each module.

Text Books:

1. Ian Sommerville: Software Engineering, 9th Edition, Pearson Education, 2012. (Listed topics only from Chapters 1,2,3,4, 5, 7, 8, 9, 23, and 24)

2. The SCRUM Primer, Ver 2.0, http://www.goodagile.com/scrumprimer/scrumprimer20.pdf

 

Reference Books:

1. Roger S. Pressman: Software Engineering-A Practitioners approach, 7th Edition, Tata McGraw Hill.

2. Pankaj Jalote: An Integrated Approach to Software Engineering, Wiley India

 

Web Reference for eBooks on Agile:

1. http://agilemanifesto.org/

2. http://www.jamesshore.com/Agile-Book/

Last Updated: Tuesday, January 24, 2023