Component Teams vs Feature Teams
27 Feb 2018
There’s nearly always too much work. Certainly there is often too much work for one team. Considering the optimum team size (in Scrum) is between 5 and 9 people, it doesn’t take much of a backlog to require us to have multiple teams. When this is the case, it introduces the problem of how to divide the work up between the teams. The two most common ways I’ve seen teams organised are as Component Teams and Feature Teams – but which is the best way of organising your company? This is an area that is often debated. They are contrasting approaches to software delivery and I’ve heard many arguments in favour of each. Let’s have look at them. Component Teams Component Teams are considered to be made up of experts that specialise in a specific domain and they are focused only on the knowledge and technology related to their domain. It ’stands to reason’ that if there is an area of complexity needing work performed on it on a regular basis, we should have a team dedicated to it. Common examples are the user interface (UI) or the database (DB), we may well have a team for each of those. […]
Agile Project Management
Agile Project Management (AgilePM) is an Agile stablemate to PRINCE2 based upon a subset of the Dynamic Systems Development Method (DSDM) Atern Agile approach, the longest established Agile method based on managing projects. AgilePM focuses on those elements of Agile that are specific to the Agile Project Manager whilst DSDM Atern also includes guidance on delivery techniques and solution development.
AgilePM can be used easily with the entire DSDM Atern approach, or as a project management wrapper for Scrum and other Agile methods. AgilePM is popular with organisations who are are using Scrum but feel that it doesn’t fully meet their needs for project management and governance – particularly if they are already using PRINCE2 or a similar gateway-based approach.
Agile Project Lifecycle Phases
The Feasibility and Foundations phases of the AgilePM lifecycle cover the initial up-front high-level analysis, design and planning required to initiate an Agile project. Guidance is provided for the deliverables of these phases including a MoSCoW Prioritised Requirements List (Must have, Should have, Could have and Won’t have).
In Scrum these initial activities are often referred to as Sprint Zero, but in the AgilePM framework they do not have to be organised as iterative cycles at all. Completion of these phases forms an important governance checkpoint before development commences through detailed Exploration and Engineering of requirements within iterative Timebox cycles. Again, guidance is provided for recommended documentation.
Agile Project Roles
The full set of Management, Technical and Business/Customer focused roles are defined. With a few exceptions, roles can be shared between people and several roles can be performed by the same person.
Project Level Roles
- Business Sponsor: Owns the Business Case, commits funds and resources (equivalent to the highest level aspects of the Product Owner role from Scrum)
- Business Visionary: Defines, owns and communicates the business Vision (equivalent to the higher level aspects of the Product Owner role from Scrum)
- Project Manager: From either business / user / customer or supplier side as appropriate (equivalent to the higher level aspects of the ScrumMaster role)
- Technical Co-ordinator(s): Ensures the solution is technically fit for purpose
Solutions Development Team Roles
- Team Leader: One for each small team (equivalent to the team level aspects of the ScrumMaster role)
- Business Ambassador: Defines detail of requirements, oversees acceptance testing of solution
- Business Analyst: Ensures the business need is properly thought through
- Solution Developer: Creates the solution
- Solution Tester: Plans, defines and performs all non-business user/customer side testing
- Workshop facilitator: Facilitates workshops for the project
- Business Advisor: Inputs specialist business knowledge, perhaps from other areas and/or provides another viewpoint for the Business Ambassador role.
- Agile Coach: Coaches the Project Team on the Agile approach