Achieving 2X in Speed To Market Using Agile Platforms

Wenger Giant Swiss Army Knife
Developing extendable technology  platforms is what makes agile teams and agile businesses nimble. For simplicity I'm going to call a platform as any single or stack of technologies that are leveraged in more than one product or business process. Since a product or business process is somewhat fungible, what I really mean is more than one application developed for more than one target user group.

It's actually easy to see the economics. Consider all the startup costs from selecting a technology, physical installation, configuration, integration, training, and developing support processes that are all overhead above developing applications. Even if your technology is SaaS or cloud deployed, it only addresses some of these startup costs.

What is difficult to understand or estimate is the benefit when individuals and teams develop an expertise with the platform. In addition to better productivity, the team develops better expertise in guiding the business on capabilities and feasibilities. Strong teams will develop reusable components and services that factor into both speed and quality.

Achieving 2X in Speed To Market Using Agile Platforms

Let's assume you take out the overhead of selection, installation, training, etc. and only compare the time and cost to develop product #1 versus product #2? Obviously I have to assume these products are somewhat equal in size and complexity, but take a guess how much more efficient a team will be developing that second product? From my experience, it's 2x which means either they can complete the second product in half the time, or build the second product with a 2x in functionality or complexity. Yes, I have working examples from multiple points in my career leveraging different teams and agile platforms that have achieved this 2x.

This is the final ingredient in Shifting to a Market, Program, and Platform Organization. Once you know your target audiences (markets) and develop running programs using agile planning and development processes, it's the expertise around a platform of technologies that makes the team truly nimble.
continue reading "Achieving 2X in Speed To Market Using Agile Platforms"

Simple Agile Product Development

I firmly believe the best products are simple.

What does simple mean? Simple to use, simple to understand, simple to sell, simple to market, simple to engineer, simple to test, simple to deploy.

Simplicity comes from design patterns, reuse, and focus. User interfaces need to be easily understood. Our brains understand patterns; color schemes, design elements, navigation, messages, interoperability of core functions. Reuse simplifies construction, testing, and ongoing maintenance of the application. Focus requires a disciplined approach to prioritize the top features that deliver the highest value.

So what goes wrong?
Complexity comes from trying to do everything. Too many features implemented too quickly. Or features that provide little value. It comes from overly thinking use cases and boundary conditions instead of making things work for the 80% majority. It comes from customizations. It comes from designing intricate tightly controlled workflows. It comes from designing or developing things without consideration of standards or by developing standards when needed. It comes when quality and acceptance criteria isn't well defined. It comes from deviations in process.

Why things go wrong
There are six key people that need to be on the same page in product development. The Product Owner truly must articulate priorities and a minimal feature set to drive value. The Designer must understand or establish repeatable design elements and user interface components. The Business Analyst has to flush out requirements and drive them to patterns. The Technical Lead needs to consult on feasibility, discuss estimates, and define the application architecture. The Quality Assurance Analyst must comprehend the full scope to help define the testing approach. These five individuals often benefit from a sixth, the Project Manager, who orchestrates this conversation and has the role to drive the team to a shared understanding of the priorities, feasibility, and approach. The Project Manager needs a point of escalation if he/she believes the team isn't closing in on a shared understanding.

Things go wrong when this team is not in balance. The Product Owner may not be prioritizing (e.g. asking for everything) or sharing the rationale (e.g. the business value) behind priorities. The Designer may have conceptualized a full scoped user experience and can't easily scale back based on shifting priorities. The Business Analyst may not see the big picture and isn't help the Technical Lead to propose design patterns. The QA Analyst may have trouble keeping up with the sprint's pace. The Project Manager may be having trouble getting the team together or asking questions based on all the activity.

Making this work
These six individuals need to meet regularly. More than once/sprint. For a 2-week sprint, I would recommend as frequent as four times. They must ask questions and challenge assumptions. When the team reaches a shared understanding, then they can meet less frequently. User stories and other documentation is the byproduct of these sessions.

The team has to review the state of the product and the state of the backlog, prioritize stores, and discuss at a high level aspects of these stories. If there is an ongoing UAT (User Acceptance Testing) or Beta process, this team should review feedback. The team should also review completed stories. Are the acceptance criteria correct and sufficient? Does the estimate look accurate? Are dependencies properly accounted for in other stories?

The Simple Product

The simple product is achieved when these team members are in sync on this "simple" strategy. Target simple features that have high business value. Use "simple" as a guiding principal when considering user experience, functionality, and application architecture. Use "simple" as an  uber test for completed functionality. Keep it simple.


continue reading "Simple Agile Product Development"
Share

About Isaac Sacolick

Isaac Sacolick is President of StarCIO, a technology leadership company that guides organizations on building digital transformation core competencies. He is the author of Digital Trailblazer and the Amazon bestseller Driving Digital and speaks about agile planning, devops, data science, product management, and other digital transformation best practices. Sacolick is a recognized top social CIO, a digital transformation influencer, and has over 900 articles published at InfoWorld, CIO.com, his blog Social, Agile, and Transformation, and other sites. You can find him sharing new insights @NYIke on Twitter, his Driving Digital Standup YouTube channel, or during the Coffee with Digital Trailblazers.