Balancing the Speed of Agility with Technical Quality
The goal of project management is the timely delivery of capabilities that delivers value-add to its customer. Difficult challenges of software intensive projects include:
- Capturing the requirements and translating them into a value-added solution
- Estimating the time and effort required to deliver the value-added solution
- Accurately measuring the amount of work completed, and estimating the remaining work
This paper will identify a series of warning signs of projects under stress and concludes that a normal human tendency is to subconsciously reduce technical quality. It describes how agile practices assess technical progress daily and promotes rapid feedback and adjustments.
Requirements and solutions will change and the paper will identify this as a fact of life as there are many unknowns at the start of the project. A Project Manager’s responsibility is to identify, assess and manage change in a timely manner. The paper will then identify multiple technical mechanisms for identifying, assessing and accommodating change. It will define technical concepts for developing service based architectures to isolate, encapsulate, and decouple those areas of the system that are subject to high rates of change. It will discuss how cloud technologies enhance the speed and technical quality of delivering new capabilities.
The paper will then introduce the concept of technical debt and discuss how poor implementation of 6 agile principles could result in creating a large amount of technical debt. Each principle will be discussed and examples provided of various implementation practices.
PMI Talent Triangle Skill: Technical Project Management