Lifecycle and Project Management
Led by Dr John Hunt, the mission of this chapter is to research the practical application, and real world relevance, of lifecycle models and project management approaches.
Current areas of research interest include issues associated with the practical application of agile development methods and engineering techniques to real world situations. Numerous books and articles have introduced a number of well-known agile methods and engineering processes including SCRUM, Kanban, Test Driven Development, Continuous Integration and XP.
In many cases the scenarios presented with these approaches focus on small teams within environments that are highly reactive and can (relatively) easily be focused on actual users.
Issues for large structured organisations
Research within the chapter considers issues that face larger, more structured organisations. For example:
- How does a CMMI level 4 or 5 organisation adopt, and benefit from, agile methods?
- How do agile methods fit with organisations constrained by a more mechanistic, procedural, and development approach?
- How agile is the Rational Unified Process and where does it fit into the XP to managed project spectrum?
- Can a PRINCE 2 managed project really adopt an agile development approach?
For many larger organisations cost estimation is an important part of forward planning. Therefore being able to provide realistic estimates across of the lifetime of a large project that aims to adopt agile methods is a significant issue. Work based on using use cases and user stories as the basis of such cost estimation has been researched with more advanced work being considered for agile software development.
Also related to use cases is work considering whether they are a suitable approach to capturing requirements for non standard development projects such as those focussed on data models.
Using Agile methods in other projects
Another areas of interest lies in how, and in what way, agile methods can be applied to projects outside of the traditional executable software domain, such as for data modeling projects or process management projects.