正文
“Specifically, you can take the time to develop and bring to the table an outside-in, market-centric perspective that is so compelling and so well informed that it can counterbalance the inside-out company-centric orientation of last year’s operating plan.—Geoffrey Moore, Escape Velocity”
“具体来说,您可以花时间开发并提出一种由外向内、以市场为中心的观点,这种观点包含的信息如此丰富而又令人信服,以至于可以平衡掉去年运营计划中由内向外以公司为中心的取向。”
-- 杰弗里·摩尔,《逃逸速度》
持续探索
continuous Exploration
Continuous exploration is the first element in the four-part Continuous Delivery Pipeline, preceding Continuous Integration(CI), Continuous Deployment(CD), and Release on Demand.
Continuous Exploration (CE) is the process that fosters innovation and builds alignment on what should be built by continually exploring market and Customer needs, and defining a Vision, Roadmap, and set of Features for a Solution that addresses those needs.
During CE, new ideas are raised, refined, and prepared as a list of prioritized features in the Program Backlog. They are pulled into implementation during PI Planning, which begins the continuous integration process. Thereafter, the continuous deployment cycle pulls the features into production, where they are validated and made ready for release.
Inputs to continuous exploration come from Customers, Agile Teams, Product Owners, Business Owners as well as stakeholders, and strategic portfolio concerns. Under the direction of Product and Solution Management, research and analysis activities are used to further define and evaluate the feature. The result of this process is a set of outputs, including the vision, a set of features in the backlog sufficiently defined for implementation, and a roadmap forecast of when those features might be delivered.
详述
Details
DevOps and Release on Demand is one of the five core competencies of the Lean Enterprise. It provides the enterprise with the ability to deliver increasingly valuable solutions to end users with optimal frequency. Continuous exploration is integral to that process and focuses on gaining alignment on new opportunities and what needs to be built, while understanding that all such ideas are hypotheses that need to be validated.
In place of the traditional waterfall approach, CE mitigates the more extensive, and theoretically complete, up-front definition of requirements for the work to be done. Instead, it applies a continuous exploration process, providing a consistent flow of new work that is sufficiently ready for the teams to implement. New functionality is defined and available in small batches that can travel easily through continuous integration, continuous deployment, and on to release.
持续探索的四个子维
Four Sub-dimensions of Continuous Exploration
SAFe describes four sub-dimensions of Continuous Exploration as illustrated in Figure 1:
Hypothesize – covers the skills necessary to identify ideas, and the measurements needed to validate them with customers Collaborate and research – covers the skills needed to work with customers and stakeholders to refine the understandings of potential needs Architect – covers the skills necessary to envision a technological approach that enables quick implementation, delivery and support of ongoing operations Synthesize – encompasses the skills that organize the ideas into a holistic vision, a roadmap, a prioritized program backlog, and supports final alignment during PI Planning
构建解决方案假设
Create a Solution Hypotheses
New ideas start as hypotheses—one never really knows whether they will work or not. Product and Solution Management have notions of what needs to be developed that from their understanding of the marketplace, as well as from the Strategic Themes, and Portfolio Vision and roadmap. These ideas might also be initiated by Portfolio Epics, or alternatively, they might spawn new Portfolio Epics.
Two specific skills contribute to the ability to hypothesize:
Lean startup thinking – The definition of Minimal Viable Products (MVPs) helps evaluate hypotheses quickly before too much investment has been made. The MVP is the smallest thing that can be built to evaluate whether the hypothesis is valid.
Innovation Accounting – Evaluating hypothesis requires different metrics than those used to measure end-state working solutions. Innovation Accounting focuses on how to measure the intermediate, and predictive business outcomes of the hypothesis both during initial incremental solution development and evaluation of the MVP. (Read more in the Innovation Accounting article.)
客户协作与需求研究
Collaborate and research customer needs
To create a compelling and differentiated vision, Product Management enables and facilitates a continuous and collaborative process that solicits input from a diverse group of stakeholders as Figure 2 shows. Primary sources include:
System Architects/Engineers – System Architects/Engineers have in-depth technical knowledge of the solution and are responsible for understanding it at the system level, as well as its ‘use cases’ and Nonfunctional Requirements (NFRs). Although it’s natural to view these roles as technically and internally inclined, architects should also have significant and ongoing customer engagement.
系统架构师/工程师–系统架构师/工程师对实现解决方案有深入的技术知识储备,并负责从系统层面理解它,以及它的“用例”和非功能性需求(NFRs)。虽然这些角色天然的被视作有技术和内部的倾向,但架构师在持续的客户参与中也具有重要作用。
Customers –By voting with their wallets or their feet, customers are the ultimate judge of value. They’re the most obvious and primary source of input. But a note of caution: customers motivations are often heavily bound to their current solution context, so they are often motivated only to improve things incrementally. In other words: the sum total of customer input does not a strategy make. But failing to meet real and evolving customer needs is a sure path to extinction. A sense of balance is required. As the SAFe Lean-Agile mindset says, “Producers innovate. Customers validate.”
客户——通过用钱包或脚投票,客户是价值的最终评判者。他们是最明显和最主要的信息输入来源。但需要注意的是:客户的动机通常与他们当前的解决方案环境紧密相关,所以他们提出的通常只是基于现有方案的不断改进。换句话说:客户输入信息的总和并不能组成一个策略。然而,若不能满足真实的和不断发展的客户需求,产品终将会消亡。所以找到一种平衡感很重要。正如规模化敏捷框架中的精益敏捷思维模式所说,“生产者创新,客户验证。”
Business Owners and stakeholders –Business Owners have the business and market knowledge needed to set the mission and vision. They also have specific responsibilities throughout the development process. A solution that doesn’t meet their expectations is probably no solution at all.
业务负责人和利益相关方——业务负责人具备设定产品使命和产品愿景所需的业务及市场知识。他们在整个研发过程中也有特定的职责。不符合他们期望的解决方案可能根本就不是解决方案。
POs and teams–Product Owners and teams have some of the foremost expertise in the domain. In most cases, they developed the existing solution and are closest to both technical and user concerns. Their input is integral and invaluable.
产品负责人和交付团队——产品负责人和交付团队在拥有一些该领域最重要的专业知识。在大多数情况下,他们研发了现有的解决方案,并且最关心技术和用户问题。他们所输入的信息是不可或缺的,也是无价的。
Figure 2. Product Management collaborates with multiples stakeholders to refine requirements
Six specific skills help drive collaboration and research:
Lean UX thinking –Lean UX [5] is a collaborative process of working with stakeholders to define Minimal Marketable Features (MMFs) and validate them quickly with customers. (The Lean UX article provides more information about this process.) Customer visits – There’s no substitute for first-person observation of the daily activities of the people doing the work. Whether structured or informal, Product Managers and Product Owners are responsible for understanding how people actually use systems in their actual work environments. They can’t do that at their desk, so there is no substitute for observing users in their specific Solution Context. Gemba walks – Many times, customers are the internal people who implement the operational values streams that our development systems support. The Gemba walk (‘Gemba’ is the place where the work is performed [2]) can be used by developers to observe how these stakeholders execute the steps and specific activities in their operational value streams. Elicitation – There are a variety of structured elicitation techniques that Product Management and Product Owner professionals use to generate input and prioritize user needs. These include research methods such as interviews and surveys, brainstorming and idea reduction, questionnaires, and competitive analysis. Other techniques include requirements workshops, user experience mock-ups, user personas, review of customer requests, and use-case modeling. [3, 4] Trade studies – Product Owners and Product Managers often engage in trade studies to determine the most practical characteristics of a solution. They review numerous solutions to a technical problem, as well as vendor-provided products and services that address the subject area or an adjacent need. Solution alternatives are then evaluated against the benefit hypothesis to determine which ones are the most effective for a particular context. Market research – To broaden their thinking, Product Owners and Product Managers also conduct original market research, analyze secondary research and market/industry trends, identify emerging customer segments, interview industry analysts, and review competitive solutions.
解决方案架构设计
Architect the solution
Architects on all levels play an important role in understanding how the architecture drives and enables the continuous delivery pipeline, and in guiding Agile Teams in the design process that will support this. Five skills support this effort:
Architecting for releasability – Different parts of the solution require different release strategies. The solution must be designed to enable various incremental release strategies and shift them over time based on business demand. Architecting for testability – Systems that can’t be easily tested can’t be readily changed. Systems which are designed and architected in a modular way enable continuous testing. Separating deploy and release – In order to continuously deploy, the ability to release may need to be separate from the work of deploying to production. This separation requires architectural enablers that will allow functionality to be in production but hidden from Customers. Architecting for operations – Operational needs must be considered. Build telemetry and logging capabilities into every application and into the solution as a whole. Allow services to be downgraded or even removed in times of high loads or in response to incidents. Build capabilities for fast recovery and for fix-forward. Threat modeling – Information security consideration should start early, identifying threats to proposed architecture, infrastructure, and applications.
同步产品愿景,产品路线图以及项目群待办工作列表
Synthesize the vision, roadmap, and program backlog
The most critical alignment activity in SAFe is PI Planning. The inputs to PI Planning are a vision, a roadmap, and a prioritized backlog of features. The synthesis sub-dimension is all about getting these assets ready for PI planning. To accomplish this, six skills are needed:
Creating the solution vision – The vision serves as the cornerstone for teams to understand the why for the features being developed. Maintaining the solution roadmap – The solution roadmap provides a view into the near future for the ART. It helps Product Management prioritize the work, enables System Architects to prioritize the runway, and provides visibility for Business Owners. Writing clear features – Defining clear features that fit in a PI is critical for ARTs to align on what is needed and for teams to be able to plan. Behavior-driven development (BDD) – BDD fosters collaboration between Product Management, Product Owners, and Agile Teams which clarifies requirements by adding acceptance criteria. Economic prioritization – Features must be prioritized for development to be effective. The budget guardrails of capacity allocation, investment horizons, and continuous Business Owners engagement are critical in prioritization. PI Planning – This is the culmination of the exploration work as the ART comes together to plan the next PI and gain alignment on what should be done in the next program increment.
When the ART is aligned with what needs to be built, the features move smoothly to the continuous integration segment of the continuous delivery pipeline. However, this does not mean that exploration is over. Feedback is constantly flowing back from developed, deployed, and released features. This feedback informs new decisions about what the ART should work on next and is integral to the CE process.
后 记
在SAFe 最新发布的4.6版本中,与时俱进,新增加了对企业DevOps能力的支持,因为对于多团队协作而言,没有持续交付DevOps的支撑,协作将会是非常痛苦的,发布速度也很难提升上去!所以,SAFe把“DevOps按需发布能力”作为精益企业的五大核心能力之一!