Software Engineering Management by Richard H. Thayer Presented by Shane Marcus EEL 6883 – Spring 2007 References “Software Engineering Management” by Richard H. Thayer, Software Engineering Volume 2: The Supporting Processes [Thayer and Dorfman], Pages 169-187 “Successful Engineering Management: 7 Lessons Learned” by Johanna Rothman, Presented at Electro '99, June 16, 1999 http://www.jrothman.com/Papers/usefulmgmtideas.html “Successful Software Management Style: Steering and Balance” by Walker Royce, IBM Software Group http://web.cs.wpi.edu/~gpollice/Presentations/RoyceIEEESoftware.pdf Overview The Universality of Management Major Issues in Software Engineering Functions and Activities of Management Software Management Process Modes of Engineering Management Successful Software Engineering Management Universality of Management Management Performs the Same Functions Planning, Organizing, Staffing, Directing, and Controlling Management Functions are Characteristic Duties of Managers Management Practices Methods Activities Tasks are Specific to the Enterprise or Job Managed Major Issues in Software Engineering The “Software Crisis” Projects are Late Projects are Over Budget Projects Don’t Meet Requirements Functions and Activities of Management Planning Organizing Selecting and Training Directing (Leading) Relationships, Roles, and Responsibilities Staffing Course of Action Motivate and Energize Employees Controlling Establishing, Measuring, and Evaluating Performance Software Management Process Initiation and Scope Definition Planning Execution and Control Review and Evaluation Closure Post-closure Activities Modes of Engineering Management Senior-level Management Software Acquisition Management Process User or Operator Management Supplier Management Process Software Engineering Project Management Maintenance Management Process Risk Management Successful Software Engineering Management People-help People Do Roles and Responsibilities It Takes All Types to Get the Job Done Create an Environment That Enables Good Work Eliminate Red Tape Help Your Employees Learn and Grow Build Trust and Give Recognition People-help People Do Make Time for Uninterrupted Talk With Each Person in Your Group Every Week Assume the Person Doing the Job Knows How to do the Job Micro-management Breaks Trust Treat People the Way They Want to be Treated, Not the Way You'd Like to be Treated The Golden Rule May Not Apply Create an Environment That Enables Good Work Emphasize Results, Not Time Admit Your Mistakes Commit to Projects Only After Asking Your Staff if They Can Do it Plan Training Time in the Regular Work Week Project Management Style “Project management style is a significant determinant separating successful projects from failures.” (Royce) Steering vs. Plan-and-track “Contrary to conventional wisdom, steering leadership is better than detailed plan-andtrack leadership.” (Royce) Is it Software Engineering or Software Economics? What Decisions are Made by a Software Manager From Day to Day? Conclusion Available Standards Provide Guidance on Tasks/Efforts for Software Engineering Management Use These Resources Management is About Leadership, Not Simply Following an Process It’s Your People That Get the Job Completed Steer the Project Each Day to Success Questions?