CS8494 SOFTWARE ENGINEERING L T P C
3 0 0 3
OBJECTIVES:
• To understand the phases in a software project.
• To understand fundamental concepts of requirements engineering and Analysis
Modelling.
• To understand the various software design methodologies.
• To learn various testing and maintenance measures.
UNIT I SOFWARE PROCESS AND AGILE DEVELOPMENT 9
Introduction to Software Engineering, Software Process, Perspective and Specialized Process
Models –Introduction to Agility-Agile Process-Extreme programming-XP Process.
UNIT II REQUIREMENTS ANALYSIS AND SPECIFICATION 9
Software Requirements: Functional and Non-Functional, User requirements, System
requirements, Software Requirements Document – Requirement Engineering Process:
Feasibility Studies, Requirement’s elicitation and analysis, requirements validation,
requirements management-Classical analysis: Structured system Analysis, Petri Nets- Data
Dictionary.
UNIT III SOFTWARE DESIGN 9
Design process – Design Concepts-Design Model– Design Heuristic – Architectural Design -
Architectural styles, Architectural Design, Architectural Mapping using Data Flow- User
Interface Design: Interface analysis, Interface Design –Component level Design: Designing
Class based components, traditional Components.
UNIT IV TESTING AND MAINTENANCE 9
Software testing fundamentals-Internal and external views of Testing-white box testing - basis
path testing-control structure testing-black box testing- Regression Testing – Unit Testing –
Integration Testing – Validation Testing – System Testing And Debugging –Software
Implementation Techniques: Coding practices-Refactoring-Maintenance and Reengineering-
BPR model-Reengineering process model-Reverse and Forward Engineering.
UNIT V PROJECT MANAGEMENT 9
Software Project Management: Estimation – LOC, FP Based Estimation, Make/Buy Decision
COCOMO I & II Model – Project Scheduling – Scheduling, Earned Value Analysis Planning
– Project Plan, Planning Process, RFP Risk Management – Identification, Projection - Risk
Management-Risk Identification-RMMM Plan-CASE TOOLS
TOTAL :45 PERIODS
OUTCOMES:
On Completion of the course, the students should be able to:
• Identify the key activities in managing a software project.
• Compare different process models.
• Concepts of requirements engineering and Analysis Modelling.
• Apply systematic procedure for software design and deployment.
• Compare and contrast the various testing and maintenance.
• Manage project schedule, estimate project cost and effort required.
TEXT BOOKS:
1. Roger S. Pressman, ―Software Engineering – A Practitioner‟s Approach‖, Seventh
Edition, Mc Graw-Hill International Edition, 2010.
2. Ian Sommerville, ―Software Engineering‖, 9th Edition, Pearson Education Asia, 2011.
REFERENCES:
1. Rajib Mall, ―Fundamentals of Software Engineering‖, Third Edition, PHI Learning
PrivateLimited, 2009.
2. Pankaj Jalote, ―Software Engineering, A Precise Approach‖, Wiley India, 2010.
3. Kelkar S.A., ―Software Engineering‖, Prentice Hall of India Pvt Ltd, 2007.
4. Stephen R.Schach, ―Software Engineering‖, Tata McGraw-Hill Publishing Company
Limited,2007.
5. http://nptel.ac.in/.