Software projects are among the most expensive and high-visibility endeavors for any business, yet they are too often launched without ideal governance approaches.
The job of digital teams is to build products customers want to use. Doing so means expending valuable resources (such as time, money and knowledge) while adapting to constant changes in market conditions and customer needs.
These challenges make software development a complex undertaking, a game played on a multidimensional chess board. Winning that game requires smart, cross-functional teams empowered to break down knotty problems and iterate solutions.
Implementing the right governance strategy is a critical step to optimize software investments, ideally allowing stakeholders to enforce effective oversight while equipping teams with the freedom to take risks and innovate.
Governance works best when it unites software development teams and stakeholders in a culture of high-quality delivery and continuous improvement.
Agile Software Governance
Agile Governance is a lightweight methodology to empower self-organization and unleash creativity by elevating the focus on value.
In this way, Agile Governance shares one of the essential insights of agile practice, namely, that you can’t plan your way out of complexity. Agility begins when organizations recognize iteration as the path to improvement.
- In Agile Governance, the goal is to harmonize technical and business goals so that teams see them as two sides of the same coin.
- Agility offers flexibility, adaptability and rapid iteration of governance in response to changing expectations and feedback.
In contrast to traditional frameworks, Agile Governance provides “just enough” structure to keep teams focused on the things that matter most. Agility means avoiding a checklist approach to “doing governance for its own sake.”
|3 Key Advantages of Agile Governance
|1. Agree on shared practices.
|2. Support remote and hybrid workers.
|3. Align governance with product lifecycle.
Our Agile Governance Toolkit
At Pentalog, Agile Governance means using a toolkit of three key practices to create visibility, increase trust and optimize value delivery.
In practice, organizations may adopt some or all of these practices whether they work with Pentalog, another software company, or even if they use internal engineering teams.
- The Collaboration Framework: The Collaboration Framework is an explicit agreement that aligns software participants around project expectations, creating a baseline of rules to regulate productive collaborations.
- Maturity Models: Maturity Models are frameworks of best practices that create visibility on continuous improvement in software development, helping organizations raise competency in strategic areas that drive the business.
- Staffing Governance: Staffing Governance is a framework developed by Pentalog to extend agility into the recruitment, training and retention of engineers and digital professionals and take the guesswork out of talent management.
Practice 1: The Collaboration Framework
For nearly a decade, the Collaboration Framework has guided Pentalog’s support for software development clients around the world. Today, the idea is part of our DNA.
The Collaboration Framework serves as a “project charter” to align participants around the work. By starting from a baseline of modular rules, teams avoid reinventing the wheel and position themselves to go faster in the right direction.
At Pentalog, the rules we’ve incorporated into our Collaboration Framework have emerged from hundreds of projects delivered for clients across industry verticals, and also from insights we’ve gained from colleagues in the industry.
By working according to a Collaboration Framework, teams create visibility for themselves and stakeholders about the “reasonable expectations” for software delivery and product development. As expectations change, the rules that structure them also change.
|3 Key Advantages of the Collaboration Framework
|1. Implementing rules optimizes value.
|2. Clear rules speed onboarding.
|3. Regular inspection of rules builds trust.
Rules are the Building Blocks of Agility
By providing a scaffolding for improvement, rules play a powerful role in setting the stage for agility. Working according to defined practices helps teams identify key improvement areas and prepare for the use of Maturity Models.
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
Drawing on our own agile journey, we have also adopted a number of rules from Scrum and Kanban, which we consider to be default in building Collaboration Frameworks. These rules serve as an “operational core” for 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
Rule for Specialized Services
As software development has evolved, dozens of specialized services have sprung into being across the product life cycle. These services come with specialized rules and expectations.
From UX/UI design to cybersecurity to cloud architecture, these sophisticated services require new kinds of expertise and new frameworks to guide collaboration.
- In an Agile Governance context, specialized rules are additive, and sit on top of core rules agreed by a development team.
- For instance, adding rules about high-impact practices such as DevOps or Product Ownership should trigger a global review of rules.
- Adding specialized rules may trigger the need to consider Maturity Models related to those services, to benchmark expectations.
Regular Steering 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. Meetings should be monthly (ideally) and can be structured using web-based dashboards depicting relevant project parameters.
- Typically, attendees include the key business stakeholders, as well as Pentalog team members such as the project director, scrum master, people master or growth master.
- 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
Practice 2: Maturity Models
Maturity Models are frameworks of best practices that create visibility on continuous improvement in software development, helping organizations raise competency in areas that accelerate business value.
Used in Agile Governance, Maturity Models can serve as operational mirrors for development teams to benchmark current realities and identify areas for improvement.
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.
- 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.
|3 Key Advantages of Maturity Models
|1. Benchmark against industry practice.
|2. Identify value-adding improvement goals.
|3. A framework for informed decisions.
Rooted in Improvement
Maturity Models emerged in the 1980s as a way to improve software development. Their creation was driven by the US Department of Defense, which established the Capability Maturity Model Integration (CMMI) now widely adopted in government and 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 Shared Understanding
Maturity Models help forge a shared understanding of software development processes across an organization, the development team and stakeholders. By comparing current state to accepted standards, organizations can identify well-defined goals for improvement.
These standards typically include areas such as project management, requirements management, design, coding, testing, and maintenance. They are well-defined but not prescriptive.
- Being selective about Maturity Models and the desired level of change helps avoid the trap of governance bureaucracy.
- An iterative approach allows for investments that matter for the business, responding to ever-changing expectations.
Putting 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 Maturity Models specific to the type of collaboration, configured based on 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
Practice 3: Staffing Governance
Staffing Governance is a framework developed by Pentalog to extend agility into the recruitment, training and retention of engineers and digital professionals and take the guesswork out of talent management.
At Pentalog, Staffing Governance is used to ensure the quality, productivity and growth of the digital professionals who staff our client teams. Staffing Governance helps us to align expectations with clients before work begins, often even before contracts are signed.
Staffing Governance draws on agile methodologies to provide an iterative, full-cycle framework to identify optimal candidates for specific projects and then to speed their onboarding, reducing the cycle time for expanding and rebalancing teams.
- Using the tools of Staffing Governance helps accelerate ramp up for new teams and makes it easier to add missing specialities.
- As Staffing Governance matures, clients gain confidence with Pentalog-driven assessments, eliminating the need for redundant testing.
|4 Benefits of Deploying Staffing Governance
|1. Leverage data-driven recruitment.
|2. Customize learning for team members.
|3. Speed staffing and onboarding.
Staffing Governance Model
Implementation of 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.
- Ideal staffing governance also reduces attrition, reducing waste from poor placements or early departures of engineers and other digital professionals.
Aligning on Staffing Maturity
At Pentalog, Staffing Governance is always synchronized with client needs 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 effort needed by clients to onboard team members.
- Ultimately, Staffing Governance holds the promise of ensuring that talent needs are synchronized with the client’s roadmap.
Talent Management Processes
Central to Staffing Governance are well-defined people management processes, which may cover hiring, onboarding, training and retention strategies.
- Pentalog’s talent strategy begins with algorithmic assessment via SkillValue Insight, which helps us 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 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.
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 for Success
Staffing Governance provides a roadmap to help companies ensure that software engineer efforts are properly staffed for success. This discipline should last the duration of the project.
- 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.
- Staffing Governance allows our clients to work with top-level talent, supporting innovation, time to market and competitiveness.
Latest Insights on Agility
The Flyweight Chronicles: How to Make Your Code Weightless!
Facade Design Pattern: Streamlining Complexity in Code
Innovation in Practice: Navigating Through Proof of Concept, Prototypes, Pilots, and MVPs