Wednesday

Role of Management in Software Development

  • Software development is populated by players who can be categorized into one of five constituencies:
  1. Senior managers who define the business issues that often have significant influence on the project. 
  2. Project (technical) managers who must plan, motivate, organize, and control the practitioners who do software work.
  3. Practitioners who deliver the technical skills that are necessary to engineer a product or application. 
  4. Customers who specify the requirements for the software to be engineered and other stakeholders who have a peripheral interest in the outcome. 
  5. End-users who interact with the software once it is released for production use. 
“Management includes Senior managers, Project (technical) managers, Practitioners”
  • Senior managers
  1. Motivation. The ability to encourage (by “push or pull”) technical people to produce to their best ability.
  2. Organization. The ability to mold existing processes (or invent new ones) that will enable the initial concept to be translated into a final product.
  3. Ideas or innovation. The ability to encourage people to create even when they must work within bounds established.
  • Team Leaders : Project manager emphasizes four key traits:
  1. Problem solving. An effective software project manager can diagnose the technical and organizational issues, systematically structure a solution or properly motivate other practitioners to develop the solution.
  2. Managerial identity. A good project manager must take charge of the project.
  3. Achievement. To optimize the productivity of a project team, a manager must reward initiative and accomplishment and demonstrate through his own actions that controlled risk taking will not be punished.
  4. Influence and team building. An effective project manager must be able to “read” people; must be able to understand verbal and nonverbal signals and react to the needs of the people sending these signals. The manager must remain under control in high-stress situations.
  • The Software Team:
  1. The “best” team structure depends on the management style of your organization,
  2. The number of people who will populate the team and their skill levels, and the overall problem difficulty.
  3. To achieve a high-performance team: 
• Team members must have trust in one another.
• The distribution of skills must be appropriate to the problem.
• Problems may have to be excluded from the team, if team is to be maintained.

     4. It is important to recognize that human differences is the first step toward creating teams that jell.

1 comment:

  1. interesting blog. It would be great if you can provide more details about it. Thanks you





    Custom Software Development

    ReplyDelete