Create new business models by inverting Conway’s law

Create new business models by inverting Conway's law
Organizations, who design systems, are constrained to produce designs which are copies of the communication structures of these organizations.

It is possible to create new business models by combining various concepts and techniques. Inverting Conway’s law, which states that organizations are designed to reflect the communication structures of the teams that build them, can be used to design organizations in a way that promotes effective communication and collaboration. The complete transaction pattern, which describes a common structure for business transactions, can be used to model events and activities within an organization. The CQRS/ES architecture pattern, which separates read and write operations in a system, can be used to improve the performance and scalability of a business solution. Additionally, using agile planning techniques can help improve the agility of the solution development process and allow the business to respond quickly to changing needs and market conditions.

Design the business model

Inverting Conway’s law involves designing organizations in a way that promotes effective communication and collaboration among teams, which can help to improve the efficiency and effectiveness of business processes. The complete transaction pattern provides a common structure for modeling business transactions, which can help to identify opportunities for improving business processes and making them more efficient. Combining these two concepts can help to create new business models that are more effective and efficient than existing models.

Design the business solution

The new business model can be used for event modeling. Event modeling involves identifying and modeling the events and activities that take place within an organization, and the new business model provides a useful starting point for this process. By identifying the key events and activities that take place within an organization, it is possible to create a model that represents the flow of information and processes within the organization, which can help to identify opportunities for improvement and optimization.

Use the CQRS/ES architectural pattern

There are several potential benefits of using the output of event modeling to create a business solution based on the CQRS/ES pattern. The CQRS/ES pattern separates read and write operations in a system, which can improve the performance and scalability of the solution. This can make it easier to handle a large volume of data and transactions. It also ensures the solution can meet the needs of the business even as it grows and evolves. Additionally, using the output of event modeling can help to ensure that the solution is designed in a way that accurately reflects the events and activities that take place within the organization, which can improve the accuracy and effectiveness of the solution.

Agile planning with the events and activities

Using the output of event modeling as part of the agile planning process for the development of a business solution can also have several benefits. Event modeling provides a detailed representation of the events and activities that take place within an organization, which can help to identify the key steps and milestones that need to be achieved to successfully develop the solution. This provides a useful framework for the agile planning process and can help to ensure that the solution is developed in a way that accurately reflects the timely needs of the business. Additionally, using event modeling can help to identify potential risks and challenges that may arise during the development process, and can help to plan for and mitigate these risks to ensure the successful development of the solution.

Addressing event modeling concerns

One potential concern of using the output of event modeling for the agile planning process is that the model may not accurately reflect the complexity and dynamics of the real-world business environment. Event modeling is based on a simplified representation of the events and activities that take place within an organization, and this representation may not capture all the nuances and details of the actual business environment. As a result, the model may not provide a complete or accurate picture of the business environment. It may not accurately reflect the needs and requirements of the business. This could lead to the development of a solution that does not adequately meet the needs of the business, which could result in reduced efficiency and effectiveness. Additionally, using the output of event modeling for agile planning may not account for changes and shifts in the business environment, which could make it difficult to adapt the solution to changing conditions and needs.

The complete transaction pattern can help to mitigate some of the concerns associated with using the output of event modeling for agile planning. The universal business information pattern provides a common structure for modeling business transactions, which can help to ensure that the model accurately reflects the flow of information and processes within an organization. This can help to improve the accuracy and completeness of the model and make it more effective for the purposes of agile planning. Additionally, the complete transaction pattern can help to account for changes and shifts in the business environment, as it provides a flexible framework for modeling business transactions that can be easily adapted to changing conditions. This can help to ensure that the model remains relevant and useful over time and make it easier to adapt the solution to changing needs and requirements.

Where to start?

The first step in this process would be to invert Conway’s law by designing the organization in a way that promotes effective communication and collaboration among teams. This would involve identifying the key teams and stakeholders within the organization, to designing the structure and communication channels within the organization in a way that supports effective collaboration among these teams. This step would lay the groundwork for the rest of the process and would help to ensure that the organization is well-equipped to take advantage of the other techniques and patterns being applied.

A scaled agile process framework can contribute to this process in several ways. A scaled agile process framework is a set of principles and practices for implementing agile software development at scale and can help to ensure that agile techniques are applied consistently and effectively across the organization. Using a scaled agile process framework can help to improve the efficiency and effectiveness of the solution development process which makes it easier to adapt the solution to changing market conditions and business needs. Additionally, a scaled agile process framework can help to align the development process with the overall business strategy and objectives of the new business model and can help to ensure that the solution being developed is aligned with the needs and goals of the business.

Step-by-Step Process

The process of creating a new business model by combining inverting Conway’s law, applying the complete transaction pattern, event modeling and using the CQRS/ES architecture pattern would involve several key steps.

  1. The process of creating a new business model by combining inverting Conway’s law, applying the complete transaction pattern, using event modeling, and the CQRS/ES architecture pattern would involve several key steps.
  2. Invert Conway’s law by designing the organization in a way that promotes effective communication and collaboration among teams. This could involve identifying the key teams and stakeholders within the organization and designing the structure and communication channels within the organization in a way that supports effective collaboration among these teams.
  3. Use the complete transaction pattern to model the events and activities that take place within the organization. This could involve identifying the key events and activities that take place within the organization and creating a model that represents the flow of information and processes within the organization.
  4. Use event modeling to further refine the model of the organization’s activities and processes. This could involve identifying the key events and activities that take place within the organization and creating a detailed model that represents the flow of information and processes within the organization.
  5. Use the CQRS/ES architecture pattern to design the business solution. This could involve separating the read and write operations in the solution, to improve its performance and scalability.
  6. Use agile planning techniques to guide the development of the solution. This could involve defining the key steps and milestones in the development process and using agile techniques such as iterative development and regular feedback and review to ensure that the solution is developed in a way that meets the needs of the business.
  7. Continuously monitor and evaluate the solution and use agile techniques such as regular feedback and review to adapt the solution to changing business needs and market conditions. This could involve using metrics and analytics to monitor the performance of the solution and using agile techniques such as regular retrospectives and continuous improvement to ensure that the solution remains effective and responsive to the needs of the business.

Conclusion

Using the process above can help to improve business agility in several ways. First, these techniques can help to identify opportunities for improving business processes and making them more efficient, which can help to increase the speed and agility of the business. Second, using the CQRS/ES pattern can improve the performance and scalability of the business solution, which can make it easier for the business to handle a large volume of data and transactions and to respond quickly to changing market conditions. Third, using agile planning techniques can help to ensure that the solution is developed in a way that accurately reflects the needs of the business, and can make it easier to adapt the solution to changing conditions and needs. Overall, these techniques can help to improve the agility of the business by making it more responsive and adaptable to changing market conditions.

References:

Universal business information pattern:

Dietz, J.L. & Mulder, H.B.F. 2020 Enterprise Ontology A Human-Centric Approach to Understanding the Essence of Organisation Springer Switzerland

Event modeling:

Dymitruk A. 2019 Event Modeling: What is it?