ANNA UNIVERSITY, CHENNAI
REGULATIONS - 2013
ME 3RD SEM COMPUTER SCIENCE AND ENGINEERING SYLLABUS
CP7301 SOFTWARE PROCESS AND PROJECT MANAGEMENT SYLLABUS
- To understand overall SDLC and adopt suitable processes
- To elicite, analyze, prioritize, and manage both functional and quality requirements
- To estimate efforts required, plan, and track the plans
- To understand and apply configuration and quality management techniques
- To evaluate, manage, and design processes
(A mini-project can be chosen by the instructor and use it as a context for the tutorials)
UNIT I DEVELOPMENT LIFE CYCLE PROCESSES
Overview of software development life cycle – introduction to processes – Personal Software Process (PSP) – Team software process (TSP) – Unified processes – agile processes – choosing the right process Tutorial: Software development using PSP
UNIT II REQUIREMENTS MANAGEMENT
Functional requirements and quality attributes – elicitation techniques – Quality Attribute Workshops (QAW) – analysis, prioritization, and trade-off – Architecture Centric Development Method (ACDM) – requirements documentation and specification – change management – traceability of requirements Tutorial: Conduct QAW, elicit, analyze, prioritize, and document requirements using ACDM
UNIT III ESTIMATION, PLANNING, AND TRACKING
Identifying and prioritizing risks – risk mitigation plans – estimation techniques – use case points – function points – COCOMO II – top-down estimation – bottom-up estimation – work breakdown structure – macro and micro plans – planning poker – wideband delphi – documenting the plan – tracking the plan – earned value method (EVM) Tutorial: Estimation, planning, and tracking exercises
UNIT IV CONFIGURATION AND QUALITY MANAGEMENT
identifying artifacts to be configured – naming conventions and version control – configuration control – quality assurance techniques – peer reviews – Fegan inspection – unit, integration, system, and acceptance testing – test data and test cases – bug tracking – causal analysis Tutorial: version control exercises, development of test cases, causal analysis of defects
UNIT V SOFTWARE PROCESS DEFINITION AND MANAGEMENT
Process elements – process architecture – relationship between elements – process modeling – process definition techniques – ETVX (entry-task-validation-exit) – process baselining – process assessment and improvement – CMMI – Six Sigma Tutorial: process measurement exercises, process definition using ETVX
TOTAL 45+15=60 PERIODS
OUTCOMES:
Upon Completion of the course,the students will be able to
1. Explain software development life cycle
2. Adopt a suitable process for software development
3. Elicit functional and quality requirements
4. Analyze, prioritize, and manage requirements
5. Perform trade-off among conflicting requirements
6. Identify and prioritize risks and create mitigation plans
7. Estimate the efforts required for software development
8. Perform planning and tracking activities
9. Control the artifacts during software development
10. Perform various tests to ensure quality
11. Define new processes based on the needs
12. Adopt best practices for process improvement
REFERENCES:
1. Pankaj Jalote, “Software Project Management in Practice”, Pearson, 2002.
2. Chris F. Kemerer, “Software Project Management – Readings and Cases”, McGraw Hill, 1997.
3. Watts S. Humphrey, “PSP: A self-improvement process for software engineers”, Addison- Wesley, 2005.
4. Watts S. Humphrey, “Introduction to the Team Software Process”, Addison-Wesley, 2000.
5. Orit Hazzan and Yael Dubinsky, “Agile software engineering”, Springer, 2008.
6. James R. Persse, “Process Improvement Essentials”, O’Reilly, 2006.
7. Roger S. Pressman, “Software Engineering – A Practitioner’s Approach”, Seventh Edition, McGraw Hill, 2010.
No comments:
Post a Comment