Software Engineering Project Management

Introduction to Software Engineering Project Management

Reading notes on Introduction to Software Engineering Project Management

It is the application of project management to Software development.

Stellman and Greene, 2005, Is the art of planning and leading software project and requires refocusing skills or additional skills (the knowledge of the SDLC), defining a vision, planning tasks, gathering the team, estimating effort, etc.

As a project manager we would be required to manage:

  • 1. Requirements. Working with business architects and analysts
  • 2. Resources. Working with interdisciplinary teams and architects.
  • 3. Stakeholders. Both from within and external to the company.
  • 4. Expectations. Of stakeholders, architects and other managers.

TOGAF (Architecture Development Method) and PMs

Each phase includes Business, IT, Planning and Change

Business. Architecture vision and business architecture. Meetings with stakeholders. Initial documentation and agreements

IT. Information system architecture and technology architecture. Meetings for designing and planning for transition architectures that can be used to establish an incremental evolutionary path from ‘as-is’ to ‘will-be

Planning. Centre stage of the PM. Opportunities and solutions and migration planing

Change. Implementation governance and architecture change management.


Collaborative Discussion 1: Project Failures StudyForum

In this article, Lehtinen et al. (2014) use root cause analysis to classify the cause type, area of process and the link to other causes. This method aims to find the common elements (categories, process areas) between the causes being studied.

An interesting concept mentioned by the authors is software process improvement (SPI), which aims to lower costs and reduce time to market while improving software quality.

The authors conclude that a cause-specific analysis is needed to prevent the software projects from failing. To control the causes outside the area where the failure is found.

Based on my experience, the most common causes for software projects to fail are.

  • Chaotic environment
  • Failing to understand specifications (project requirements)
  • Lack of relevant skills

Examples of these failures are:

Ariane 501 (lack of relevant skills)

The main issue that caused the loss of information was errors in the specification and design of the inertial reference system's software (The European Space Agency, 1996).

BSkyB and EDS CRM (chaotic environment)

Miscommunication and need for more expectations management. The case concerns issues developing and integrating a CRM system that ran into delays, increasing the total costs (Rose, 2010).

References

Lehtinen, T. O. A., Mantyla, M. V., Vanhanen, J., Itkonen, J. & Lassenius, C. (2014) Perceived causes of software project failures - An analysis of their relationships. Available from: https://mmantyla.github.io/Lehtinen_IST_2014_Perceived_causes_of_software_project_failures_an_analysis_of_their_relationships.pdf [Accessed 22 September 2023].

Rose, H. (2010) Case comment: BSkyB v. EDS [2010] EWHC 86 (TCC) case no: HT-06-311 26.01.2010. Available from: https://www.sciencedirect.com/science/article/abs/pii/S0267364910000579. [Accessed 24 September 2023].

The European Space Agency (1996) N° 33–1996: Ariane 501 - Presentation of Inquiry Board report. Available from: https://www.esa.int/Newsroom/Press_Releases/Ariane_501_-_Presentation_of_Inquiry_Board_report [Accessed 24 September 2023].