Successful software projects need to deal with people and economic considerations, as well as technical considerations. The learning objectives of this course are to enable the student to understand the fundamental principles underlying software management and economics; to analyze management situations via case studies; to analyze software cost/schedule tradeoff issues via software cost estimation tools and microeconomic techniques; and to apply the principles and techniques to practical situations. CS510 is one of the mainstream courses in the Master of Science in Computer Science with specialization in Software Engineering.This year, the course's special focus will be on Value-Based Software Engineering as a framework of theory, principles, and practices for integrating human and economic values into software engineering and management practice.
Course Schedule
Weeks 1-6: Software management and economics goals and issues. Theories of management and their application to software projects. People considerations: motivation, win conditions, leadership, teambuilding, group dynamics. Value-Based Software Engineering. Software life cycle process models. Software cost and schedule estimation; tradeoff and management option analysis.
Weeks 7-10: Relevant microeconomic concepts: production functions, economies of scale, present value, constrained optimization, statistical decision theory, risk, and the value of information. Software risk management. Business-case and economic analysis of software products and product lines.
Weeks 11-14: Software life-cycle planning and control; software process model determination; development and content of project plans; project monitoring and control. Software process maturity models and continuous process improvement. Commercial-off-the-shelf (COTS) software management and economics. Rapid application development. Integrating ethical considerations into daily software engineering and management practice. Outsourcing and global development.
Basis of grade: Final exam: 30%; 2 midterms: 20%; Homework exercises: 50%.
Textbooks: Boehm et al., Software Cost Estimation with COCOMO II, Prentice Hall, 2000; DeMarco and Lister, Peopleware(2nd Ed) , Dorset House, 1999; Reifer Making the Software Business Case: Improvement by the Numbers, Addison Wesley, 2001.
Time and Location: Monday, Wednesday, and Friday, 10:00-10:50am, OHE 122
Instructor: Prof. Barry Boehm, SAL
328, (213) 740-8163, Fax (213) 740-4927; boehm@usc.edu
Prof. Ray Madachy, SAL 328, (213) 740-8163, Fax (213) 740-4927; madachy@usc.edu
Office Hours. Bohem: Monday, Wednesday 11:00 am - 1:00 pm
Teaching Assistant: Yue Chen,yuec@sunset.usc.edu; Dan Wu, danwu@usc.edu, Office: SAL 319, Phone: 213-740-6503 (for both TAs);
TA Office Hours: Tuesday and Thursday, 1:30 pm - 4:00 pm. Or by appointment.