Selecting a Project Team

Selecting a Project Team

The IEEE-CS/ACM joint task force on Software Engineering Ethics and Professional Practices (SEEPP) has built up a code of ethics for software engineers. It includes eight sets of guiding principles:

1.  Public -  Software engineers shall act consistently with the public interest.

2.  Client and employer - Software engineers shall act in a manner that is in the best interests of their client and employer, and that is consistent with the public interest.

3.  Product - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.

4.  Judgment - Software engineers shall maintain integrity and independence in their professional judgment.

5.  Management - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.

6.  Profession - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.

7.  Colleagues - Software engineers shall be fair to and supportive of their colleagues.

8.  Self - Software engineers shall participate in lifelong learning regarding the practice of their profession, and promote an ethical approach to the practice of the profession.

Principles 7 and 8 include language that is relevant to the development and maintenance of teams. As we delve into the "personalities of project teams," it is relevant that we, as project managers and leaders, keep in mind that we are the guardians of our staff. In addition to maintaining awareness of our own actions toward the team, we can encourage the team to behave morally toward each other as well as themselves.

Principle 7: Colleagues

Software engineers shall be fair to and supportive of their colleagues. In particular, software engineers shall, as appropriate:

7.01.  Encourage colleagues to adhere to this code.

7.02.  Assist colleagues in professional development.

7.03.  Credit fully the work of others and refrain from taking undue credit.

7.04.  Review the work of others in an objective, candid, and properly documented way.

7.05.  Give a fair hearing to the opinions, concerns, or complaints of a colleague.

7.06.  Assist colleagues in being fully aware of current standard work practices, including policies and procedures for protecting passwords, files and other confidential information, and security measures in general.

7.07.  Not unfairly intervene in the career of any colleague; however, concern for the employer, the client, or public interest may compel software engineers, in good faith, to question the competence of a colleague.

7.08.  In situations outside their own areas of competence, call upon the opinions of other professionals who have competence in that area.

Principle 8: Self

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. Particularly, software engineers shall continually try 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 completely to be able to assess the health of relationships on project teams. Understanding various 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 progressively more complex teams. Most software projects are so complicated that no single individual can complete 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 need 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 know-how.

The Software Engineering Institute offers a People Capability Maturity Model (P-CMM), which adapts the maturity framework of the Capability Maturity Model for Software (CMM) for managing and developing an organization's work force. The motivation for the P-CMM is to thoroughly improve the ability of software organizations to attract, develop, motivate, organize, and retain the talent required to constantly 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 biggest 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 particular 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 disharmony, at best, and possibly an unfinished symphony.

This section 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.


software engineering, ieee, software projects, project team, seepp
The contents available on this website are copyrighted by TechPlus unless otherwise indicated. All rights are reserved by TechPlus, and content may not be reproduced, published, or transferred in any form or by any means, except with the prior written permission of TechPlus.
Copyright 2017 SPMInfoBlog.
Designed by TechPlus