4.3 Team Structure
Changing an organization’s approach to software development doesn’t happen on its own. It creates discomfort because people are no longer doing things the way they’ve always been done. Therefore, there needs to be strong influence to push change across the BES organization. Without this influence, also known as an Agile adoption team, the smallest setback can result in an entire program being scrapped. The Agile adoption team is composed of a few key roles to champion Low-Code adoption across a BES PMO organization. A BES Executive Sponsor is needed to support No-Code adoption from the very top.
An executive sponsor, who can articulate a compelling vision and provide the necessary funding, is an essential ingredient of any Low-Code change program. A BES PMO Adoption Champion needs to be selected to drive the success of the program, build consensus and run the Low-Code development projects. Enthusiasm and resilience are required traits. A No-Code Subject Matter Expert (SME) is needed to provide the BES PMO adoption champion the needed guidance from an expert who has successfully guided No-Code development projects and can provide valuable advice and direction. Working hand in hand with the BES PMO adoption champion, the adoption expert’s experience and support ensures unwelcome surprises are avoided.
Organizations go through three distinct stages of Low-Code maturity. At the foundation level, the focus is on enabling the first BES PMO and contractor app development team and delivering the first successful Low-Code project within one BES line of business. At the center of excellence stage, the BES opens Low-Code development to multiple PMO and contractor teams within the line of business and creates a self-sustaining Low-Code development platform, agile processes, Application Lifecycle Management (ALM) and DevSecOps tools. Then the BES, as a full-fledged digital business organization, scales the Low-Code capability across multiple lines of business.
Organizations adopting Low-Code development start small with the smallest Low-Code agile development team. Small agile teams have their own unique structure, since there are common functions involved in the delivery of No-Code software that can be broken down into six distinct areas: line of business domain, requirements and governance, development, architecture, user experience and operations. Since building an app at the foundation stage involves a single team, the starting point for a Low-Code agile development is the successful delivery of the first App. This is assured when the following recommendations on a small team structure are followed.
On the Government team, the BES PMO Product Owner, representing the line of business domain users, is the BES PMO’s proxy between the business users and the development team. The product owner works with the business users, who form the stakeholders that provide the requirements, to frame the requirements in terms of Epics, Features and User Stories for the development team. The BES PMO contracts with the app development contractor and provides project oversight.
On the contractor team, the project team consists of a Tech Lead who addresses the architectural and operational tasks, even though they are generally limited at this stage, since the selected Low-Code development platform provides all the architecture and infrastructure features needed for low code development, deployment and operations. Tech leads have the expertise to understand: (1) how technical features map to business requirements, (2) design an app-level architecture, and (3) manage the work effort in an agile work management system (i.e. Jira and Confluence). Low-Code developers configure the Low-Code platform to implement the user stories and control code quality with automated testing.
Formal project management practices are minimal at this stage, since business user stakeholders are more likely to be directly involved with the product owner and development team and the Tech Lead provides contractor project management using the Jira work management tool. Using Low-Code, an agile development team of just three people (product owner, team lead and No-Code developer) is typically able to deliver six (6) new internal business apps or one major app release in a year. It takes only three (3) weeks to get this team up and running.
For a more sophisticated business App with improved digital experience goals, the foundation stage requires additional resources. To focus on the business user’s needs, it is important for the product owner to identify and include key user stakeholders throughout the design and development process to understand their mindset and to ask for their comments and opinions as new App solutions are delivered. At this point, the team structure needs to change to include more roles related to making sure the App is intuitive, comfortable, and exceptionally easy to use for the business users. A User Experience/User Interface (UX/UI) Designer is added to the team to enable understanding the needs of the business user, ensure their needs are being considered in the solution and the resulting UX/UI experience exceeds their expectations. The process of creating an exceptional digital experience can also benefit from having a dedicated Front-End Developer on the team. While Low-Code platforms make it much easier for any No-Code developer on the team to build sophisticated user experiences, there is no replacement for a deliberate focus on business user needs, their experiences, and the attention to detail that is part of this process.
In addition, a Tester is added to the team to ensure performance and cross-device (desktop/laptops, tablet, notebook, smart phone mobile devices) functional testing activities are planned for, since first impressions can make the difference between success and failure for an App. A knowledgeable testing resource and the right automated tools ensure App operations success. Closing the loop, the Service Desk team (or Help Desk) needs be ready to deliver excellent support as part of the rollout of a new business App operations solution. User Help App modules may need to be created and/or on-line training modules may be needed to support roll out of the new app UX/UI experiences to business users.
The Developer and Tech lead skills necessary for starting Low-Code development projects are likely to already exist on current BES PMO contractor teams, either on existing contracts or available as reach back capabilities. In addition, Low-Code development platform vendors generally provide online learning materials to get Low-Code agile development teams up to speed in just a few weeks. Low-Code vendors also have support programs to ensure the necessary vendor technical support is available. By taking advantage of these resources and the fact that it takes less time to learn Low-Code technology, Low-Code agile development teams often begin delivering business apps in a matter of weeks. The foundational small team resource skill set profiles are described in Figure 3.
Figure 3. Foundation Small Team Skill Sets Profile.
As organizations move to creating exceptional digital experiences, the UX/UI Developer, Front-End Developer, and Tester roles are added to the contractor project team to ensure new digital experiences are robust and make an exceptional first impression on business users. A BES PMO’s contractor organization may already have people with these skills, which means they can be transferred to Low-Code, however, the BES PMO needs to be vigilant to ensure contractors having developers on the team try to fill multiple roles. The additional roles should be fully resourced and focused on the digital experience tasks. These UX/UI Developer, Front-End Developer, and Tester roles are best handled by people with the right background and skill sets. Figure 4 presents the profiles of the No-Code agile team member roles that the BES PMOs needs to look for on a contractor’s project team developing Apps with exceptional digital experiences.
Figure 4. Foundation Digital Experience Team Skill Sets Profile.