Project Management
Project Management including teams, planning, progress reports, time management, work assignment (work breakdown structure)
References
Sommerville I, Software Engineering
Hawrysziewycz I T Introduction to System Analysis and Design
Project Management
In the development of projects involving computers and software, it is not uncommon to find that they run overtime, over budget and do not deliver the system as initially planned. The major reason for this is that projects of this nature are often "one off" projects, the final product is intangible (cannot be seen or held) and the software processes involved may not be clearly understood.
The role of the manager is to plan and oversee the work, making sure it is done as specified and delivered on time and on budget. Part of the planning is to break down the whole project into well defined subtasks that can be effectively managed. As well, the manager must be able to estimate the amount and complexity of the work to be done.
Activities that are carried out in relation to this include:
Teams
Systems are usually developed by teams of people. The projects are such that no one individual can do the job alone. It has been found that the best size for a team is about eight people. If the job is so large that one team is not sufficient, then multiple teams must be used. These teams should all work on component of the project that do not have, where possible, common components.
Some of the benefits of team approach is that team members:
Types of team structures
Hierarchical
These are used when the tasks are well known, similar and repetitive. The technology is usually stable, the problem is well defined and the project is large.
Chief programmer
This is a highly structured team of people with well defined roles. The team may include:
Adaptive
Expertise is distributed among people with specific skills. The assumption is that no-one can be an expert at everything. Members may change depending on what is needed doing. It may consist of consultants with specific skills.
Planning
For a project to be successfully completed, a proper and thorough plan must be made. This plan will determine the progress of the project allowing the manager to anticipate problems and come up with appropriate solutions in time.
The first phase of any project plan is to determine what needs to be done and consequently what is not to be done. These are termed the project constraints and are usually determined by the amount of money to be spent, the completion date and the number of staff available. As well, the project parameters need to be determined. These include such parameters as size, structure, scope and distribution of the functions of the project.
Once these parameters have been determined, project milestones and deliverables need to be determined. These are usually set at the conclusion of a major component of the project and are associated with a report as to the progress of the project.
Once this has been done, a clear idea of what is involved in the project has been determined and work can be started to complete each sub-task. An iterative approach is used to do this as it allows for constant revision and review of the project and provides for a satisfactory final product. The following list represent the activities that are carried out to achieve this.
Scheduling (Time management)
This is a very difficult task unless the project is similar to one previously completed. Scheduling involves an iterative process that separates the total work into distinct tasks and then assessing when the tasks will be completed. Many of these tasks may be done in parallel and the hardest part is ensuring that all workers are continually working and not waiting for other jobs to be completed so as they can go on with their allocated tasks.
To assist in obtaining an optimal project work rate, a variety of tools are used, the output of which are charts. These show the breakdown, task dependencies and staff allocation.
Bar Charts and Activity networks (or network charts)
Barcharts (or Gantt charts) show the start /stop dates for each part of the project.
Day |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
t1 |
||||||||||||||||||||||
t2 |
||||||||||||||||||||||
t3 |
||||||||||||||||||||||
t4 |
||||||||||||||||||||||
t5 |
||||||||||||||||||||||
t6 |
||||||||||||||||||||||
t7 |
||||||||||||||||||||||
t8 |
The table above gives an indication as to when each task begins and ends. It also shows which jobs can be extended. This is indicated by the lighter shading in t1 and t5.
Barcharts also can be used to show who is responsible for each part of the project. The following chart indicates who is responsible for each component of the project.
Day |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
| Mike | T1 | T4 |
T8 | |||||||||||||||||||
John |
T2 |
T5 | T7 | |||||||||||||||||||
Mary |
T3 |
T6 | holidays | |||||||||||||||||||
Activity Networks
Activity networks are diagrams that show the different activities that make up the project, the time the components are estimated take to complete and how they relate to other components.
The diagram below shows a simple example of an activity network. It shows:

Progress reports
Progress reports occur at each milestone. The report will identify any problems encountered and the processes put in place, or required, to remedy the situation. These are essential to the production process and the final quality of the completed project.
Reports have quantitive data that relates to entities such as:
Work Assignment (Work Breakdown Structure)
As indicated above, all projects must be undertaken as a team approach. The number of tasks required to be completed, the number of teams, the number of members in a team And the experience and skills of each team member will determine the final breakdown of the allocation of tasks. The project manager must assign tasks so as the project can optimally completed. Bar charts, like the one above are used to assign tasks to team members.
Author Mike Leishman