Project roles at Deeson
This page describes the roles individuals take on projects at Deeson.
Here are the specific accountabilities we all share regardless of our job title and role on any specific project:
- Client satisfaction
- Delivering projects (on time, on budget, on spec)
- Your own capacity
- Your own capability
- Supporting your colleagues
- Following company processes
Project roles at Deeson
Our project management process is based on the Agile methodology called DSDM Agile project framework developed by the Agile Business Consortium. Project roles are distinct sets of responsibilities on a project. An individual on a project may hold one or more of these roles.
The diagram below shows the DSDM 'alien baby' diagram that shows the various project roles.
The roles in the head are project governance roles, those in the body are the team that build and deliver the solution for the project. The roles in the shaded area are supporting the project and are not part of the project team. White roles are Deeson roles and orange roles are client or other external roles.
The project lead acts as oversight on the entire project and is ultimately responsible for its successful delivery.
They ask the hard questions to keep the project team honest and the project on track. They discover the issues that the team struggle to articulate and act as the most senior escalation point on the project team for the client. They have the more senior account level conversations and consultancy with the client.
The project lead provides continuity of leadership and direction throughout the project, starting with Feasibility and staying with the project through Foundations, Development and Launch.
- Positively encouraging the sense of shared ownership in the project and its goals with the whole team.
- Holding project team members to account for project slippage.
- Identifying weaknesses in project team approach and identifying the root causes of the issues.
- Having the difficult client conversations if other routes have failed.
- Supporting and coaching the project team, in particular the Delivery Lead and Delivery Manager.
- Escalating performance issues to the Chapter Leads.
The Delivery Manager is responsible for the successful delivery of the solution.
- Ensuring effective and timely communication with our clients, teams and other appropriate stakeholders
- Performing high-level project planning and scheduling (but not detailed Timebox planning or task planning)
- Collaborating with the Delivery Lead and other appropriate stakeholders to create and agree the Delivery Plan
- Monitoring progress against the Delivery Plan
- Managing risk and any issues as they arise, collaborating with senior business or technical roles as required to resolve them
- Motivating and ensuring empowerment of the teams to meet their objectives
- Monitoring and ensuring appropriate involvement and communication between required members of the Delivery Team
- Handling problems escalated from the Delivery Team
- Providing help and guidance to the Delivery Team when difficult situations arise
- Ensure that projects are delivered using Deeson’s agile framework
The Delivery Lead runs the delivery of the solution for a project and the quality of its implementation. This role is generally taken on by a developer with the Lead Developer job title or one working towards that position.
- Facilitating the team focus on the on-time delivery
- Encouraging full participation of team members
- Ensuring that the Iterative Development process is properly focused and controlled
- Ensuring that all testing and review activity is properly scheduled and carried out
- Managing risks and issues at the Timebox level, escalating to the Delivery Manager, Project Lead or Technical Co-ordinator as required
- Monitoring progress on a day-to-day basis for all team activities
- Facilitating communication of team progress with the Project Lead
- Facilitating the daily stand-ups, ensuring they are timely, focussed and brief
- Facilitating reviews and retrospectives with the team
As the project’s technical authority, the Technical Co-ordinator ensures that the solution/technical roles work in a consistent way, that the project is technically coherent and meets the desired technical standards.
This role provides the glue that holds the technical aspects of the project together while advising on technical decisions and innovation.
This role is generally taken on by a developer with the Lead Developer job title or one working towards that position.
- Supporting and controlling developers in their implementation of the technical architecture
- Determining the technical environments
- Advising on and coordinating each team’s technical activities
- Identifying and owning architectural and other technically based risks
- Advising on the achievability of non-functional requirements
- Working with both the UX Designer and Designer to evaluate the technical options and decide the best way to turn the high-level business requirements into a technical solution
- Advising on and coordinating each team’s approach to estimating, to reflect technical best practice and current technical understanding
- Promoting appropriate standards of technical best practice
- Controlling the technical configuration of the solution
- Approving the solution as technically fit for purpose prior to deployment
- Managing technical aspects of the transition of the solution into live use
- Empowering the technical roles within the Solution Development Team to appropriate levels within their responsibilities
- Acting as the final arbiter of technical differences between Solution Development Team members
- Overseeing the implementation of both the frontend and backend solutions
- Provide leadership of the user experience design process during Foundations and Evolutionary Development
- Identify organisation goals, user needs and deliver evidence led solutions to deadline within the Foundations phase
- Run research activities to learn more about the client, sector and audience
- Define evidence-led interaction models, sitemaps, user task flows, content hierarchies, wireframes and interactive prototypes as required
- Run user testing using various techniques as required to test assumptions and validate solutions
- Present research findings, solutions and iterations to stakeholders and gain buy-in on direction to build the client’s confidence in the solution
- Take ownership of ongoing analysis and optimisation of client projects
- Advocate for the users, client and solution during Evolutionary Development
- Lead the design process during Foundations and Evolutionary Development
- Participate in workshops and research activities
- Deliver brand-led design concepts that meet the needs of the users, as well as the strategic and tactical goals of the client
- Deliver component design to budget and deadline within the Evolutionary Development phase
- Identify and address any risks regarding to the delivery of design
- Collaboration with front-end developers to ensure interaction design works within technological constraints
- Present your designs to clients, face to face or using video link.
The developer owns the delivery of part of the technical solution to a project and the quality of its implementation.
- Working with all other Project Team roles to iteratively develop:
- High quality, testable code
- Specifications, models and documents as required for the purpose of supporting the project in live use
- Testing the output of their own work prior to client acceptance
- Agreeing and adhering to technical constraints
- Adhering to Deeson’s technical implementation standards and best practice
- Participating in any quality assurance work required to ensure the delivered products are truly fit for purpose
- Reviewing pull requests
- Manual testing
- Writing suitable automated test coverage
- Identifying, recording and interpreting the detail of any of
- Changes to the detailed requirements
- Changes to the interpretation of requirements which result in re-work within the solution
- Information likely to impact on the ongoing evolution of the solution
An agile coach supports projects with detailed knowledge and experience of agile and DSDM. They act as external consultants to review project teams behaviours and practices and helps to identify weakness in process or approach on a project.
Formal recognition in this role can be achieved through certification from DSDM.
Developing skills and demonstrating ability as both Agile Coach and Delivery Lead will grow the experience required for those wanting to work towards taking on the responsibilities of a Project Lead.
- Providing detailed knowledge and experience of our Agile process, identifying where process is not being followed and supporting and encouraging its use.
- Assisting the team to tailor our Agile process to suit the individual needs of the project and its unique environment.
- Helping the team use Agile practices and helping those outside the team appreciate the Agile philosophy and values
- Helping the team work in the collaborative and cooperative way typical of DSDM and all Agile approaches.
- Building DSDM capability within the teams at all levels.