Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession. In particular, software engineers shall continually endeavor to:
8.01. Further their knowledge of developments in the analysis, specification, design, development, maintenance, and testing of software and related documents, together with the management of the development process.
8.02. Improve their ability to create safe, reliable, and useful quality software at reasonable cost and within a reasonable time.
8.03. Improve their ability to produce accurate, informative, and well-written documentation.
8.04. Improve their understanding of the software and related documents on which they work and of the environment in which they will be used.
8.05. Improve their knowledge of relevant standards and the law governing the software and related documents on which they work.
8.06. Improve their knowledge of this code, its interpretation, and its application to their work.
8.07. Not give unfair treatment to anyone because of any irrelevant prejudices.
8.08. Not influence others to undertake any action that involves a breach of this code.
8.09. Recognize that personal violations of this code are inconsistent with being a professional software engineer.
A leader must understand at least one model of determining individual and team personalities thoroughly to be able to assess the health of relationships on project teams. Understanding several models gives the leader even more insight. In addition to being versed in current project management technology, managers today must be equipped to select, form, motivate, and lead increasingly complex teams. Most software projects are so complex that no single individual can accomplish the goal; project teams are required to meet the technological challenges. As IBM's Fred Brooks pointed out in his landmark paper "No Silver Bullet" in 1987, no single tool will solve all the problems of the day, technical or otherwise.
To ensure project, program, and business success, the contemporary company must recognize that project teams and their managers require a careful blend of structure and flexibility, dictating and delegating, speaking and listening, and managing and leading. This is, of course, in addition to the required technical savvy.
The Software Engineering Institute offers a People Capability Maturity Model (P-CMM ), which adapts the maturity framework of the
Capability Maturity Model® for Software (CMIvP) for managing and developing an organization's work force. The motivation for the P-CMM is to radically improve the ability of software organizations to attract, develop, motivate, organize, and retain the talent needed to continuously improve software development capability. The P-CMM is designed to allow software organizations to integrate workforce improvement with software process improvement programs guided by the SW-CMM. The P-CMM can also be used by any kind of organization as a guide for improving its people-related and work-force practices. Bill Curtis, along with William E. Hefley and Sally Miller, is a primary author of the P-CMM.
Experts such as Bill Curtis tell us that the largest variable in the success of a project is the skill of the people on the project team. The project manager's job is not to throw away whole teams and hire new ones for specific projects, but to get the most performance out of employees, new or existing, through management and leadership. When people on a team don't perform in concert, the result is cacophony, at best, and possibly an unfinished symphony.
This chapter explores methods and approaches to aid a project or program manager in understanding the developing personality of a project team. It will also provide guidance on the selection, structure, motivation, and maintenance of a project team.
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.