Главная
АИ #41 (171)
Статьи журнала АИ #41 (171)
Business invariants as non-negotiable constraints in enterprise architecture

10.51635/AI-41-171_4ZsPc

Business invariants as non-negotiable constraints in enterprise architecture

Автор:

11 октября 2023

Цитирование

Hincu V.. Business invariants as non-negotiable constraints in enterprise architecture // Актуальные исследования. 2023. №41 (171). URL: https://apni.ru/article/7172-business-invariants-as-non-negotiable-constraints-in-enterprise-architecture

Аннотация статьи

The article examines the concept of business invariants as a specific class of irreducible constraints in enterprise architecture. It is argued that the traditional representation of architectural requirements as a system of quality attributes is not fully aligned with a business's economic logic. The paper presents an original methodology for identifying business invariants. The results of its validation demonstrate that business invariants significantly narrow the space of feasible architectural solutions and enable the elimination of inherently unviable architectural configurations at early stages. Taking business invariants into account increases the validity of architectural design decisions, reduces the risk of late-stage rework, and enhances consistency among requirements.

Текст статьи

The current stage in the development of corporate information systems is characterized by a simultaneous increase in the complexity of the technological stack alongside a qualitative shift in the principles of software architecture design. In particular, whereas architectural discussions were previously structured primarily around trade-offs among performance, scalability, maintainability, security, and total cost of ownership, it is increasingly evident that this perspective does not encompass the full spectrum of requirements that determine the viability of the resulting software solution. In the context of digital transformation, architecture is increasingly functioning as a mechanism for reproducing commercial principles while also establishing normative and operational constraints on software behavior, influenced by market dynamics, among other factors.

In classical works on software architecture, requirements are typically considered in terms of a set of quality attributes, against which the developer balances, taking into account the project context and stakeholder expectations [1, 5]. However, in corporate practice, not all requirements are subject to trade-offs, as some determine not the quality of the system per se but the very possibility of its alignment with business needs. At the enterprise architecture level, an architectural decision must not only satisfy technical criteria but also align with strategy, business processes, and organizational constraints [8, 9, 13]. At the same time, the expansion of contemporary approaches (cloud-native, microservices, event-driven models, etc.) has increased the risk of substituting the analysis of business constraints with adherence to technological trends [6, p. 22-30]. In this context, the concept of business invariants becomes particularly significant, i.e., requirements that must be satisfied unconditionally and define the boundaries of admissible architectural solutions.

The study aims to elaborate on the content of business invariants as a distinct class of architectural requirements.

The methodological foundation of the article is conceptual and analytical. It is based on a comparison of two approaches to interpreting architectural requirements, namely: (1) as a set of quality attributes subject to coordination and optimization, and (2) as a system of rigid constraints, the violation of which renders a solution inapplicable. Works in software architecture, requirements engineering, constraint-based design, and enterprise architecture form the theoretical basis. At the same time, the empirical illustration is provided by applied architectural solutions in the domains of retail, financial platforms, and medical data. As a conceptual foundation, the distinction between soft goals in the tradition of NFR Engineering and hard constraints in the context of constraint satisfaction is employed, thereby demonstrating the inadequacy of interpreting all non-functional requirements as subject only to partial satisfaction [2, 10]. In the study, methods of theoretical analysis, comparison, typologization, structural-logical modeling, and interpretation are applied to identify the limits of the classical approach, substantiate the specificity of business invariants, and reconstruct the procedure for their identification in the context of architectural decision-making.

Thus, the central element of the methodological framework is a four-stage procedure for identifying business invariants, which includes the analysis of the consequences of requirement violation, the mapping of regulatory constraints, the examination of the business model economics, and the identification of the system’s operational constraints (fig. 1). This procedure makes it possible to move from describing a requirement as a desirable property to assessing its status as a mandatory condition for the admissibility of an architectural solution.

image.png

Fig. 1. Four-stage methodology for the systematic identification of business invariants

At the same time, in the first stage, particular importance is attached to the principles and consequences of violations of requirements. For this reason, a decision tree is employed, which enables the classification of a requirement based on the actual nature of the business consequences of its non-compliance (ranging from inconvenience and localized losses to the cessation of operations, loss of the right to conduct activities, or the disruption of the business model economics, as illustrated in fig. 2). Thus, the process of identifying architectural constraints can be made more reproducible and transparent from an analytical perspective.

image.png

Fig. 2. Decision tree for classifying requirements as business invariants or quality attributes based on the analysis of violation consequences

Thus, the results of the analysis allow us to assert that business invariants constitute a distinct layer of architectural requirements that cannot be reduced to either functional requirements or the standard set of non-functional characteristics. The fundamental distinction of business invariants lies in the fact that they define the boundaries of admissibility rather than the direction of improvement; that is, while quality attributes address the question of how a system should operate better, faster, more reliably, or more flexibly, business invariants establish the conditions under which, if violated, the system ceases to be acceptable as a means of implementing a specific business model.

Such a distinction can be represented through five parameters: the degree of admissibility of compromise, the source of the requirement, the method of its measurement, the possibility of modification, and the consequences of violation. In the case of a business invariant, compromise is inadmissible; its source lies in a business or regulatory reality external to the architecture; its compliance is assessed in binary terms; the possibility of arbitrary modification is absent; and its violation leads to the rejection of the architectural solution as such (fig. 3). In contrast, quality metrics imply the existence of a space for variation, may be interpreted as an object of prioritization, and their non-compliance typically results in a decrease in system efficiency rather than in its complete unacceptability.

image.png

Fig. 3. Comparison of Business Invariants and Quality Attributes across five dimensions

In the context of enterprise architecture, such a framing of the issue is fundamental, as architecture itself represents a set of design decisions made under constraints and with responsibility for their consequences. Therefore, the architectural process should begin with identifying the boundaries within which a solution can, in principle, be considered admissible. Accordingly, business invariants should be interpreted as a primary filter of architectural design, which, among other aspects, distinguishes them from yet another category of requirements [4, p. 1-10].

The practical significance of the proposed approach is particularly evident in situations where the architectural landscape is subject to strong pressure from established technological styles and patterns. Architectural styles, design patterns, and object models indeed facilitate the systematization of design decisions and accelerate engineering thinking; however, their application proves effective only when validated for compatibility with domain constraints. Otherwise, the pattern becomes a source of methodological errors, as the architecture begins to adapt the business to the technology rather than the other way around [7, p. 43-52].

The proposed methodology for identifying business invariants makes it possible to avoid such substitution and consists of the following stages:

  1. Analysis of the consequences of requirement violation, which makes it possible to assess its nature through the outcome of non-compliance. If a violation leads only to inconvenience or reduced efficiency, it is most likely a quality attribute. If, however, it results in the cessation of operations, customer refusal, prohibition of activities, or the disruption of process economics, the requirement constitutes an invariant.
  2. Regulatory mapping, which demonstrates that the regulatory environment determines a significant portion of invariants and cannot be subject to engineering trade-offs.
  3. Examination of the business model economics, as part of invariants, is determined by threshold values for profitability, conversion, throughput, or the execution time of critical operations.
  4. Identification of operational constraints (operating conditions, network instability, characteristics of equipment and personnel), which do not depend on technical choices but determine the viability of the architecture in operation.

The application of this approach across three applied domains reveals that business invariants differ not only in their origins but also in how they constrain the architectural space (fig. 4).

image.png

Fig. 4. The impact of business invariants on constraining the architectural space across different applied domains [12, p. 795-820]

Naturally, the sources of invariants may vary (operational, economic, or regulatory); however, their architectural effect is similar in all cases, as they constrain the space of admissible solutions before the architect begins optimizing performance, cost, modularity, or system evolvability. This comparative dimension is particularly evident in the visual juxtaposition of architectures that are excluded by invariants and those that remain compatible with domain conditions (fig. 5).

image.png

Fig. 5. Comparison of architectures excluded by business invariants and those compatible with them across the study cases

Additional value is provided by the aggregated grouping of identified invariants by source, which shows which constraint types dominate in different industry environments (fig. 6).

image.png

Fig. 6. Summary of identified business invariants across the cases, grouped by their sources of origin

The results also clarify the role of the concept of business invariants within the broader context of architectural design, as they provide a necessary foundation for considering architecture as a process of sequentially eliminating inadmissible solutions. Second, by applying the concept of business invariants, the discussion of requirements shifts from the language of preferences to that of obligations. Third, this strengthens the link between architectural design and the system of accountability, as it becomes possible to explicitly demonstrate the consequences of violating particular constraints.

From a practical perspective, such changes reduce the risk of having to modify the architecture at later stages of the project lifecycle. The reason is that if invariants are not identified early, they are typically discovered only during testing, in operation, or even after deployment. In such cases, architectural changes require reworking fundamental decisions, such as the data model, service placement approach, integration schemes, consistency principles, security subsystems, and so on. Conversely, the explicit identification of business invariants at an early stage makes architectural decisions more reproducible. It provides a basis for formal documentation using architecture decision records (ADRs), under which any significant decision point must be aligned with the constraints it must satisfy [12, p. 795-820].

Particular attention should be given to the relationship between business invariants and domain-driven design (DDD). Within DDD, a domain is described through bounded contexts, within which distinct models, rules, and conventions are formed locally. However, business invariants often transcend individual contexts and serve as cross-domain constraints that are mandatory for the architecture as a whole. In other words, they do not negate contextual modeling but establish the upper bounds of admissibility within which such modeling can be implemented; therefore, it is appropriate to consider them as cross-cutting conditions [3]. Accordingly, business invariants should be interpreted as a critical element that precedes the selection of technology, patterns, and even the definition of architectural decomposition boundaries.

Thus, the analysis demonstrates that within enterprise architecture, there exists a class of requirements that cannot be reduced to quality attributes, as they are not subject to optimization or partial satisfaction but instead function as irreducible constraints that determine the very admissibility of an architectural solution within a specific business domain. The concept of business invariants enables refining the design methodology and aligning it more closely with the actual nature of requirements. It is established that invariants arise from the regulatory environment, the economics of the business model, and operational conditions; in all cases, they constrain the space of admissible solutions before optimization. Therefore, it is more appropriate to begin architectural design by identifying the boundaries of admissibility.

Список литературы

  1. Bass L., Clements P., Kazman R. Software Architecture in Practice. 4th ed. Boston, MA: Addison-Wesley Professional, 2021. 464 p.
  2. Chung L., Nixon B.A., Yu E., Mylopoulos J. Non-Functional Requirements in Software Engineering. Boston, MA: Springer, 2000. 17 p.
  3. Evans E. Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston, MA: Addison-Wesley Professional, 2003. 560 p.
  4. Jansen A., Bosch J. Software Architecture as a Set of Architectural Design Decisions // 5th IEEE/IFIP Working Conference on Software Architecture. 2005. P. 1-10. DOI:10.1109/WICSA.2005.61
  5. Kazman R., Klein M., Clements P. ATAM: Method for Architecture Evaluation. CMU/SEI-2000-TR-004. Pittsburgh: Software Engineering Institute, 2000. 71 p.
  6. Kruchten P., Obbink H., Stafford J. The Past, Present, and Future for Software Architecture // IEEE Software. 2006. Vol. 23, No. 2. P. 22-30. DOI:10.1109/MS.2006.59 
  7. Monroe R.T., Kompanek A., Melton R., Garlan D. Architectural Styles, Design Patterns, and Objects // IEEE Software. 1997. Vol. 14, No. 1. P. 43-52. https://doi.org/10.1109/52.56642.
  8. Ross J.W., Weill P., Robertson D.C. Enterprise Architecture as Strategy: Creating a Foundation for Business Execution. Boston, MA: Harvard Business School Press, 2006. 130 p.
  9. The Open Group. TOGAF Standard, Version 9.2. Zaltbommel: Van Haren Publishing, 2018. 532 p.
  10. Tsang E. Foundations of Constraint Satisfaction. London: Academic Press, 1993. 421 p.
  11. U.S. Department of Health and Human Services. HIPAA Administrative Simplification Regulation Text. Washington, DC: HHS Office for Civil Rights, 2013. https://www.hhs.gov/sites/default/files/hipaa-simplification-201303.pdf.
  12. van Heesch U., Avgeriou P., Hilliard R. A Documentation Framework for Architecture Decisions // Journal of Systems and Software. 2012. Vol. 85, No. 4. P. 795-820. DOI:10.1016/j.jss.2011.10.017.
  13. Zachman J.A. The Zachman Framework for Enterprise Architecture: A Primer for Enterprise Engineering and Manufacturing. Zachman International: Monument, CO, USA, 2003. Vol. 128. 15 p.

Поделиться

Обнаружили грубую ошибку (плагиат, фальсифицированные данные или иные нарушения научно-издательской этики)? Напишите письмо в редакцию журнала: info@apni.ru

Похожие статьи

Другие статьи из раздела «Информационные технологии»

Все статьи выпуска
Актуальные исследования

#16 (302)

Прием материалов

11 апреля - 17 апреля

осталось 5 дней

Размещение PDF-версии журнала

22 апреля

Размещение электронной версии статьи

сразу после оплаты

Рассылка печатных экземпляров

6 мая