Projects

Any person who has gone through education knows of projects. Often people see projects in just the light of school projects. However, projects bleed through schooling into the workforce in nearly every career. Making a new billboard design, introducing a bug fix in a program, or performing a mass sanitization of a workspace, can all be considered projects. For the scope of software engineering, a project is usually considered to be the end product that is delivered to the consumer. The project is often built up in the form of many smaller tasks, these tasks may be small, but there are often an extremely large number of them. The amount of time it would take a single person to complete all these tasks is simply not efficient. Instead, most projects are handled by a group. But, the problem with working as a group is the coordination and organization required to accomplish the goal well.

Project Management

The importance of organization makes project management a vital role to completing a project. Think about it, nearly every job or career has a manager. For software engineers, the project manager is just as important to a successful project completion. But what does a project manager even really do?

Most of the time, project managers are in charge of coordinating who does which tasks and when. Sometimes, the project does not require a project manager but instead a management archetype. One of these archetypes is issue driven project management. This format of management is famous among websites like trello where tasks are created as issues, assigned to someone to work on them, and placed in a tray labeled to-do. This format allows the team working on the project to see what everyone is doing at all times and make sure tasks are being done in a reasonable amount of time.

What is a Reasonable Amount of Time?

When it comes to thinking of tasks or issues, there are tons of questions that deal with the completion of the issues. Early on in a project each individual could be doing great with their issue but once it comes time to combine their contributions, the product might appear as an aberration instead of a beautiful work of art. When that happens, who is responsible? This is an important question that can severely impact not only the reputation of the person who is being blamed, but also the future work that they produce. The person who is held responsible now is punished because of a problem that potentially was not theirs.

Applying this to a larger scale, a company puts out a medical tool that passed several safety tests from several engineering and medical companies. After passing these tests, the tool is used in hospitals and ends up systematically killing patients. Who is at fault? This scenario is illustrated nearly exactly in the Therac-25. In the case of this scenario, which party is held responsible, the hospital workers who operated the machines, the engineers who tested it, or the company who kept selling models? This is a severe case where the lives of people were on someones hands. In the average project though, the stakes are not as high but are still important to consider. The Association of Computing Machinery has a thorough code of ethics that demonstrates patterns to follow maintain a healthy and ethically responsible team and product.