Topics

Featured in Development

Understandability is the concept that a system should be presented so that an engineer can easily comprehend it. The more understandable a system is, the easier it will be for engineers to change it in a predictable and safe manner. A system is understandable if it meets the following criteria: complete, concise, clear, and organized.

Featured in Architecture & Design

Sonali Sharma and Shriya Arora describe how Netflix solved a complex join of two high-volume event streams using Flink. They also talk about managing out of order events and processing late arriving data, exploring keyed state for maintaining large state, fault tolerance of a stateful application, strategies for failure recovery, data validation batch vs streaming, and more.

Featured in Culture & Methods

Tim Cochran presents research gathered from ThoughtWorks' varied clients and projects, and shows some of the metrics their teams have identified as guides to creating the platform and the culture for high performing teams.

SAFe framework recently introduced the concepts of CapEx and OpEx of Agile budgeting and capitalization. This recent update of SAFe framework, explains some strategies that SAFe enterprises can use to categories labor costs in Agile development, some of which may be subject to Capital Expense (CapEx) treatment.

As per SAFe framework, to support business valued development of the technical solutions enterprises provide funding to a SAFe portfolio. Within portfolio, allocation of funding to individual value streams is under the auspices of Program Portfolio Management, who allocate the funding necessary for each value stream in a portfolio. These budgets may include CapEx and Operating Expense (OpEx) elements.

In Agile, requirements and design emerge continuously, so there is no formal gate to serve as an official prelude to capitalization in contrast to waterfall projects. Therefore, authors mention that capitalization in SAFe, can be done based on value streams and agile release trains.

Following diagram shows how various types of requirements, for instance, innovation spikes, new features, maintenance work are capitalized in release trains using portfolio kanban and program increments.

Authors explain how user stories can be applied to CapEx and OpEx as follows:

Most stories contribute directly to new functionality of the feature; the effort for those stories may be subject to CapEx treatment. Below table indicates three of the possible mechanisms for calculating the percentage of work that may be a candidate for CapEx treatment.