【正文】
Software Project Management Manage your people ? Software development and maintenance is a plex task: – Specific details. – Unexpected circumstances. ? To succeed, manager has to take in mind: – People – Process – Tools – Measurements ? Discarding any one of the previous 4, will lead to a problem in the project. ? Good management of people will lead to a successful project. ? The project team is cultural entity: you improve their skills and culture. ? The project itself is cultural event: you put them in a real circumstances. ? Part of management is improving every team member. Managing project culture ? Any project begins from an idea from the top managers, users, or any other people. ? The role of manager and the team is to make this idea to be a plete up and running project. ? The role of the manager of the team is to improve the team members, the process and the tools used to build the project. ? Every project has its own circumstances and its own culture. ? Project manager has to understand every project culture in order to use people and tools to make a good process to develop the project. ? Steps for that: – Understand anizational structure. – Understand each person in the project and his background: to put him in the suitable place in the project. – Match cultural and engineering roles to people. – Monitor the whole process ? Understand the anizational structure: – Project culture is influenced by the anizational structure. – Understanding culture of your anization may involve asking some questions: ? How projects normally proceed in this anization. ? Are project typically successful. ? How do software engineers deal with projects. ? How software engineers deal with schedules, CASE tools, measurements, and other things. ? What difficulties do you face with the four building blocks of software project management. ? Understand each team member: – Team members usually e from different cultures, so you have to understand each one. (different backgrounds, generation and experience). – To asses these different factors, you have to raise up these questions for every member: ? What type of his educational background. ? How much his experience. ? What is his generation. ? Try to know about his personal life. ? What are the strengths and weakness points of this person. ? Determining the previous information of every member in the team, will lead you to make good binations of those members. Match roles to people ? Roles in the project may be determined by project manager, members, or from the progress in the project. ? Typical roles in a project are: – Requirement engineer: maintains project requirements during the production of the project (documents, clarifications,…etc). – Lead Designer: evaluates, chooses, documents, clarifies, and maintains product design. – Coder: implements the project and correct errors. – Quality assurance engineer: measures the quality of the software, determines the level of the quality, by working on the errors in the project. – Customer liason: maintains the relationships with users of the project. – Tools expert: installs, troubleshoots, upgrades, and maintains project tools. – Other: additional roles required by the project. ? Project roles can be defined in many ways: – Team leader: builds and maintains and effective team. – Development leader: produces a superior product. – Planning manager: guides the team to produce a plan and tracks progress against the plan. – Support manager: ensures the project is properly supported and controlled. Monitor and manage team culture ? Team cohesion is the first factor in leading teams that influence the productivity. ? To manage project culture you must: – Make each member role to be clear. – Understand each person’s personality and try to use that in assigning him a suitable role. – State and maintain your view of the team. – Recognize problems that might occur before they impact the team. – Solve the problems before they impact the project. (if an employee has a problem, then the whole pany has a problem). Managing Good People ? Difficult task, because you are dealing with people who are talented. ? You have to balance between authority and respect. ? There are six guidelines you should follow to manage the team: – Gain visibility without micromanagement. – Review process and products, not people. – Coordinate with talented people. – Use your knowledge, not your position of power. – Channel people. – Focus on their and the project’s needs, not your authority as manager. Making Good People Better ? Deal with team members side by side as you deal with project itself. ? Steps t make good people better: – Make professional development a project goal. – Recognize long and shortterm professional development goals. – Let each team member specify personal improvement goals. – Have team members track their individual time. ? Make a professional development a project goal: – Professional development of your team includes shortterm and longterm goals. – Shortterm goals focuses on skills needed for this project while longterm goals prepare the team for future projects. ? Recognize long and shortterm goals: – You have to discuss with team members t