Good software project leadership requires an understanding of three major areas: software technology, economic factors, and human relations. This course assumes that you have a good background in software technology, and concentrates on the economic and human factors (and how they interplay with software factors).
The course will focus on a set of pervasive management and economic paradigms which are highly valuable software engineering tools: teambuilding, empowerment, continuous process improvement, win-win situations, production functions, economies of scale, present value, constrained optimization, risk and decision analysis, etc. It will do this in the context of new approaches to the software process, including process maturity models, Theory W, the Spiral Model of software development, and software risk management.
Process maturity models, particularly the SEI Capability Maturity Model, provide a framework for continuous process improvement organized around a set of key practices (requirements management, project planning and control, quality assurance, configuration management, process focus and definition, process measurement and analysis, quality management, change management, etc.) and levels of maturity in mastering these practices. The course will relate these key practices to the overall software process, and particularly to new process models.
Theory W project management is based on the fundamental principle that the project manager's principal objective is to Make Everyone a Winner (customers, subordinates, bosses, users, maintainers). The course will elaborate this principle into a 9-step approach which focuses on techniques for creating win-win conditions, negotiation, expectations management, and conflict resolution.
Software risk management is one of the nine Theory W steps: identifying and managing win-lose or lose-lose project risks. It is also the driver of the Spiral Model. The course will cover the discipline of software risk management under six primary sub-topics: risk identification, risk analysis, risk prioritization, risk management planning, risk resolution, and risk monitoring.
Term Paper
The term paper should be about 25 pages long (plus or minus a factor of 2; clarity of understanding and evidence of independent thinking are much more important than length). Some example topics for a term paper are:
* A study of a software project, analyzing how its management practices compared with the principles of software management and economics covered in the course, and relating the comparisons to the successes or failures of the project.
* A survey of several projects, analyzing the same considerations as in the single project above.
* An analysis of a particular aspect of software management and economics, in the context of the course materials plus additional material.
If you have a different topic you would like to pursue, that is fine. Just describe it in your term paper outline that you turn in OCT 9(Mon).
There will be two term paper deliverables:
* The outline, describing your main choice of theme for the paper and its expected contents, due at the beginning of class (8:30am) OCT 9(Mon).
* The term paper, due at 12 noon DEC 8(Fri) in Prof. Boehm's office (SAL 326).
Basis of Grade
300 points: Homework exercises. Due dates are indicated in the Course Schedule. Assignments are due at the beginning of class on the day indicated.
300 points: Midterm Exams(OCT 2(Mon) and NOV 1(Wed)). 150 points each; based on lecture, homework, and reading material covered through the previous class session. Open book.
400 points: Term Paper. Again, the main grading criteria will be clarity of understanding the course concepts (clarity of exposition; connections to course concepts -- 120 points) and evidence of independent thinking (originality, incisiveness of analysis -- 160 points), as well as thoroughness of coverage (120 points).