Digital initiatives can be among the most expensive and high-visibility endeavors for any business, yet they are all too often launched without ideal governance approaches.
The job of digital teams is to build products customers want to use. The reality is that all important resources (such as time, money and knowledge) are limited, while conditions in the market are constantly changing.
The reality is that software development is a complex undertaking, a game taking place on an ever-changing board, with new technologies and methodologies constantly emerging and customer and market expectations constantly evolving.
Rather than worrying about each detail of the “big picture,” the idea is to start governance today based on what’s known today and to unite development teams and stakeholders in a Growth Mindset of continuous improvement.
Agile Software Governance
Agile software frameworks (the default for most companies) are grounded in the realization that you can’t plan your way out of complexity. There are too many variables at work to expect a linear path. Agile practice begins when organizations recognize that rapid iteration means continuous improvement.
- The goal is to harmonize technical and business goals by helping teams see them as the same thing.
- The approach emphasizes governance flexibility, adaptability, and rapid iteration in response to changing requirements and feedback.
Teams need to balance oversight and flexibility to open the doors of innovation. Agility lets teams lock in on value delivery and stakeholders empower them to deliver. Visibility builds trust.
- In contrast to traditional frameworks, agile governance is lightweight and “just enough” to keep teams focused on the things that matter most.
- By eschewing top-down approaches, agile governance unites participants around a culture of continuous improvement.
You’re Always Learning on the Job
Agility is Powered by a Growth Mindset. When it comes to delivering value, command-and-control can never work as well as test-and-learn. Bureaucracy is no substitute for a Growth Mindset when it comes to building great products.
- Agile governance accepts that change is the only constant and increments learning through prototypes and MVPs to harness product-market fit.
- At the same time, agile governance is always about learning, and adjusting governance expectations to align with goals and realities.
3 Key Advantages of Agile Governance
- It’s ideal for stakeholders: Agile governance serves digital project stakeholders, who typically sit outside of agile teams, by equipping them with common sense practices most likely to deliver commercial benefit.
- It’s also ideal for remote work: Agility is mandatory for success with remote teams of software engineers and digital professionals who continue to find a post-pandemic New Normal in Work from Anywhere employment.
- And it’s what’s best for the product: Agile values the relationships among collaborators for a good reason. Agility allows collaborations to organize with the goal of building software that customers want to use.
Key Practices for Agile Governance
After summarizing our approach to Agile Governance, we introduce a simple toolkit of three core practices and discuss how they work to promote a Growth Mindset and support agile governance.
In practice, organizations can adopt some or all of our practices for digital delivery whether they work with us, another software company or even internal teams.
Our Agile Governance Toolkit
- The Collaboration Framework: The Collaboration Framework provides the team with a charter around which to organize work, a set of well-defined practices which the team can evolve over time to suit its needs.
- Maturity Models: Maturity Models serve as frameworks to help organizations identify value-adding improvement areas and then take well-defined actions to improve software development and value delivery.
- Agile Staffing Governance: Agile staffing governance is a learning-oriented talent management framework that can help software companies to recruit, train, and retain top-level engineers and digital professionals.
Practice 1: The Collaboration Framework
For nearly a decade, the Collaboration Framework has guided Pentalog’s work for software development clients. Today, the idea is part of our DNA.
The name of this concept says it all. The Collaboration Framework is an agreement that serves as a kind of project charter to align participants around the work. By starting from a baseline of well-known rules, it avoids the risk of reinventing the wheel.
Go Faster in the Right Direction
Rules serve as guideposts for a team to organize itself around value delivery. They make clear the “reasonable expectations” stakeholders may have of the team building their product.
Modular rules help teams ramp up, scale and pivot with less friction.
Rules help define reasonable expectations and rules evolve over time.
5 Reasons to Use a Collaboration Framework
- Improved communication: A collaboration Framework can help establish clear lines of communication among the development team and stakeholders, increasing mutual understanding and alignment of expectations.
- Increased efficiency: By establishing a shared understanding of expectations covering processes, standards, and tools, the development team can work more efficiently and effectively on the work in progress.
- Reduced rework: Collaboration between the development team and stakeholders can help identify and resolve issues early on, after one or a few releases, reducing the need for rework later in the development process.
- Increased stakeholder engagement: A transparency and explicit Collaboration Framework will help increase stakeholder engagement in the development process, leading to a stronger sense of ownership and commitment to the product.
- Alignment with business goals: By structuring collaboration, the development team and stakeholders can align around the many touch points that will shape a product’s fitness for its business objectives.
Rules are the Building Blocks of Agility
For Pentalog, the rules of the Collaboration Framework have emerged over the course of hundreds of projects delivered for clients across industry verticals, and from learning with colleagues and peers in the industry.
- By serving as a scaffolding for improvement, rules play a powerful role in setting the stage for teams to embrace Maturity Models, helping teams identify key improvement areas and benchmarking their progress.
Basic Pentalog Collaboration Rules
- Project Director
- Steering Committee
- Visibility over Technical Debt
- Cumulative Flow Diagram
- Burn-down Chart
- Systematic Code Review
- Definitions of Ready & Done
- Explicit Cybersecurity Expectations
- Visibility over Data Governance
From our own agile journey, we have also found specific rules emerge in Scrum and Kanban methods to be considered default in building Collaboration Frameworks. These rules serve as an “operational core” for practicing agile governance.
Rules from Scrum
- Product Owner, Scrum Master & Development Team
- Sprint, Sprint Planning, Daily Scrum, Sprint Review & Sprint Retro
- Product Backlog, Sprint, Backlog & Increment
Rules from Kanban
- Visualize the Flow
- Limit the Work in Progress
- Optimize the lead time
- Explicit Policies
- Regular Feedback
- Continuous Improvement
The Centrality of DevOps
We cannot fail to add a mention of DevOps, which is a critical layer within contemporary software delivery. DevOps helps teams scale, release more frequently and test ideas with customers.
- By uniting development and operations in a CI/CD (continuous integration, continuous delivery) environment of product development, DevOps empowers teams to reduce time-to-market and boost quality.
Embracing Design Thinking
From a digital product perspective, product development growth, design thinking and its focus on user needs, prototyping and testing, have transformed how digital products are created.
- The iterative flow of design thinking helps digital teams focus on user needs, test assumptions and build meaningful solutions to problems. Design thinking improves software teams by bringing them closer to the customer.
Specialized Services, Specialized Rules
There are many kinds of digital services, each of which bring along specific rules, which may be significant and stand alongside the principles mentioned above in shaping the governance context.
- From a commercial standpoint, the density of rules is highest in a managed agile team, which may imply product ownership.
- Rules around staffing models may pertain to expectations around recruitment and retention of digital talent.
- Consulting projects may have a light set of rules and on-demand services may have none at all.
Regular Inspection Builds Trust
Regular inspection is the bedrock of trust in agile. For Pentalog, agile governance combines visibility over the rules defined in the Collaboration Framework with regular Steering Meetings among the stakeholders.
Steering meetings should take place at regular intervals to review KPIs and other topics and plan accordingly. Meetings should be monthly (ideally) and can be structured using web-based dashboards depicting relevant project parameters.
- Typically, attendees of a steering committee include the key client business stakeholders, as well as Pentalog team members such as the project director, scrum master, people master or growth master, depending on the type of project.
- Steering lets us evaluate if the rules should evolve, if new rules need to be added or others removed.
- Steering documentation should be accessible to everyone, posted to project management systems such as Confluence.
Steering Meeting Typical Agenda
- KPIs or OKRs (which may include Deliveries, Issues, Technical Debt, Code Coverage, Cycle Time, Cumulative Flow, Team Mood, Team Retention, among others)
- Maturity Models
- Data Governance
- Budget (Consumed/Forecast)
- Shared Action Plan
- Project-specific Items
From Word Docs to Pentalog Connect
At Pentalog, our implementation of Agile Governance has followed improvements in collaboration tools, as we’ve evolved from sharing electronic documents to publishing web-based dashboards.
- Originally, Collaboration Frameworks were formatted as electronic documents and presentations for clients.
- Eventually, we integrated practices in Jira and other tools. This allowed us to locate agile governance practices within day-to-day project management tools.
- Today, Pentalog Connect provides customized, self-service dashboards where customers can view performance data and manage services.
Practice 2: Maturity Models
Maturity Models in software development are frameworks for strategic continuous improvement, which should be the objective of every development team and team member.
Maturity Models serve as operational mirrors, held up to benchmark the development context (the team and its stakeholders). They provide a structured approach for evaluating current realities and identifying areas for improvement.
Increasing Team Proficiency
Maturity Models define a series of levels or stages to define the relative sophistication of a process. Each level or stage represents a higher level of proficiency, based on accepted industry practices for that domain.
- Maturity Models are used to evaluate an organization’s software development processes against a set of predefined standards or best practices.
- These standards typically include areas such as project management, requirements management, design, coding, testing, and maintenance.
Improving Development Results
For Pentalog, Maturity Models are used to create stronger collaborations and improve software development results.
- Since time and energy are limited, organizations should use models to invest in the most useful areas of improvement and avoid scattershot efforts destined for failure.
Rooted in Improvement
Maturity Models emerged in the 1980s as a way to improve software development processes and capabilities. Their creation was driven by the US Department of Defense, which established the Capability Maturity Model Integration (CMMI) framework now widely adopted in government and other commercial sectors.
- Since the introduction of the CMMI, several other models have been developed, including the ISO/IEC 15504 (also known as SPICE).
- These models are widely used in software development organizations to evaluate and improve their processes, and are often required for large-scale projects.
Forging a Shared Understanding
Maturity Models help forge a shared understanding of software development processes across an organization. By comparing current processes to defined standards, organizations identify goals for maturity and plan accordingly.
- The concept of Maturity Models is based on the idea that software development processes can be evaluated and improved in a systematic way.
- The models provide a framework for assessing and managing process improvement efforts, which may be more or less important based on the context.
No Prescriptive Approaches
At Pentalog, using Maturity Models means avoiding prescriptive approaches that may not suit a particular governance context. No organization should take a checklist approach to maturity.
- Being selective about which type of Maturity Models matter to a given development context, and also about the desired level of change helps avoid the trap of governance bureaucracy.
- An iterative approach allows for investments in governance areas that matter for the business, cognizant of the ever-changing nature of software development.
4 Key Benefits of Implementing Maturity Models
- Increased quality: Maturity Models help organizations identify and address areas where weak development processes risk negatively impacting delivery, setting the table for discussions around improved software quality.
- Improved user satisfaction: Organizations which grow maturity in key development processes are better able to sense user requirements around these expectations and respond with software that exceeds expectations.
- Increased competitiveness: Organizations that have mature software development processes are better able to compete in the marketplace, as they are able to deliver high-quality software products on time and within budget.
- Better risk management: Maturity Models help organizations identify potential risks in their development processes, and to use that better visibility to make decisions that optimize the chances for project success.
A Common Framework
For Pentalog, using Maturity Models in software development provides a trusted common framework that helps create stronger collaborations and improve software development results.
- Maturity Models are used to evaluate software development processes against a set of predefined standards or best practices.
- These standards typically include areas such as project management, requirements management, design, coding, testing, and maintenance.
Dynamic Maturity in Action
At Pentalog, we simplify the use of Maturity Models by providing web-based dashboards for clients to see and interact with collaboration-specific maturity objectives and statutes. These dashboards are available via private client accounts.
Once we begin a client collaboration, dashboards are pre-loaded with relevant Maturity Models specific to the type of collaboration, configured based on emerging alignment with customers over value-adding improvement priorities.
We Cover 9 Dimensions of Maturity by Default
- Engineering Practices
- Infrastructure & DevOps
- People pulse
Maturity is Defined by 4 Levels
- Almost Good
- Very Good
Maturity is Not a One-Shot Deal
Maturity Models provide a structured approach for improving the quality and value of software development projects. They provide a template for better software engineering collaborations.
Ultimately, Maturity Models require that teams and contributors embrace continuous improvement. A Growth Mindset opens collaborations to learn harness new approaches and respond to change by improving knowledge and practice.
- Maturity should never be a goal in and of itself and it is never fixed in time.
- Since value is always emerging with novel customer needs and expectations, Maturity models are not a one-shot deal.
Practice 3: Agile Staffing Governance
Agile Staffing Governance is a framework developed by Pentalog to extend agility into the recruitment, training and retention of software engineers and digital professionals.
At Pentalog, we use this framework to ensure the quality and productivity of the team members we provide through various outsourcing relationships. When it comes to building teams, Agile Staffing Governance helps align expectations with clients before work begins, often even before contracts are signed.
We utilize the principles of Agile Staffing Governance across 100% of our staffing footprint, covering all collaborations. We start the work of defining ideal candidate profiles as soon as we agree on the broad outlines of a new collaboration.
Rooted in Agile Frameworks
Agile Staffing Governance draws on its agile roots to emphasize flexibility, rapid iteration and continuous improvement. When applied to staffing, it provides an iterative, full-cycle framework for talent management.
- Agile Staffing Governance helps identify optimal candidates and speed ramp-up, reducing the cycle time for expanding and rebalancing teams.
Supporting Value Delivery
By focusing on agile principles, Agile Staffing Governance foregrounds governance to ensure that staffing is always aligned with the pressing business goals as well as medium- and longer-term goals.
- Agile Staffing Governance embraces “just enough” processes to promote the autonomy and flexibility engineers need to grow and excel in their roles.
- At Pentalog, Agile Staffing Governance has the primary benefit of speeding Time to Staffing for clients ramping up development teams or adding missing specialties.
4 Key Advantages of Agile Staffing Governance
- Data-driven recruitment: Agile staffing governance focuses on identifying and recruiting top talent by leveraging a combination of machine learning algorithms and face-to-face interviews to objectively assess talent.
- Customized learning plans: The framework helps to particularize training and development objectives to ensure that the new team members are able to hit the ground running. This includes providing training, mentoring, and coaching as needed.
- Positive team retention: Keeping talented engineers is essential for the success of software outsourcing. Agile Staffing Governance focuses on a work environment that fosters professional growth and satisfaction.
- Governance transparency: Staffing governance elements include monitoring recruitment, training and retention processes, and making adjustments as needed to ensure continuous, high-quality delivery.
Agile Staffing Governance Model
Implementation of Agile Software Governance can ideally be accomplished by deploying a dedicated Maturity Model. Doing so helps promote a culture of continuous learning and improvement, which is critical to attract and retain talented engineers.
- Quality measures for higher performance include staffing predictability, which allows for better synchronization of hiring based on emergent project needs.
- Higher performance manifests with the sufficiency of Pentalog-driven assessments, freeing clients from busy work.
- Ideal staffing governance also reduces attrition, reducing waste from poor placements or early departures of engineers and other digital professionals.
Aligning on Agile Staffing Governance Maturity
At Pentalog, maturity models are always synchronized with client needs (as discussed above), so that teams focus on what’s important today and avoid getting lost in the weeds.
- As staffing processes mature, we see shorter cycle times and less validation needed from clients to onboard productive team members, reducing friction and lost time.
- Ultimately, Agile Staffing Governance holds the promise of ensuring the staffing needs are synchronized with a client’s long-term roadmap.
Talent Management Processes
A central component of Agile Staffing Governance are well-defined talent management processes, which may cover hiring, onboarding, training and retention strategies.
- Pentalog’s talent strategy begins with algorithmic assessment via SkillValue Insight, a proprietary assessment algorithm created by Pentalog to identify top talent and match skills to client projects.
- We take a data-driven methodology to look deeper in technical expertise, collaboration skills, English language, and relevant experience.
- SkillValue Insight is powered by 20 years of recruitment data, more than 1 million tests and Dreyfus Matrix interviews.
Skills Visibility for Team Members
At Pentalog, we have found that providing team members with feedback that combines objective assessments with individual learning paths supports their growth as contributors and thereby supports Agile Staffing Governance, which is fundamentally a learning endeavor.
At Pentalog, we provide web-based SkillValue Insight Reports to team members that depict real-time, evolutionary timelines of improvement across 4 main categories of excellence.
- Soft Skills
- English Proficiency
- Hard Skills
Performance dashboards are available to team members via private user accounts and are updated based on new assessments completed and as experience is gained over time.
Staffing Development for Success
Agile Staffing Governance provides a roadmap to help companies ensure that software engineering efforts are properly staffed for success. This discipline should last the duration of the project.
- At Pentalog, Agile Staffing Governance is by default for all client engagements.
- By focusing on agile principles and emphasizing a Growth Mindset, the approach strengthens teams and team members, and improves project outcomes.
- For Pentalog, Agile Staffing Governance reduces the cycle times for onboarding new team members and allows our clients to work with top-level talent, which supports innovation, time to market and overall competitiveness.
Latest Insights on Agility
Women in Tech: How to Settle the Debt of Confidence?
If It’s Complex, Let’s Call the Builder: Use and Applicability of the Builder Design Pattern
6 Essential Strategies and Tactics for Stakeholder Management - Engineering Leaders Pain Points #2