Normative vs. Rational vs. Participative vs. Heuristic Methods
Architecting is, predominantly, an eclectic mix of rational and heuristic engineering.
Eberhardt Rechtin and Mark W. Maier, in their latest book, The Art of Systems Architecting, identified normative, rational, participative, and heuristic approaches as the four most important categories of systems architecture methodologies. While working on different project phases, on different domains, and on different modules, architects and designers might apply all four approaches within the scope of the same project.
- If a solution implements a standard, one would use a normative approach (e.g. an implementation of a JSR specification).
- Using platforms and frameworks for integration, mediation, coordination, or data access represent examples of a rational approach.
- Presenting design alternatives to, discussing, negotiating, and reaching consensus with project stakeholders and obtaining their approval—these activities happen during participative design.
- The application of best practices, empirical principles, and lessons learned implies a heuristic method.
UOA creates digital constructs that provide interactional and operational support to organizational units. An organizational unit is a social system, which represents a social technology phenomenon programmed to some purpose(s).
UOA views the organization as an implementation of the Composite design pattern with every node treated either as a Composite (control unit) or a Leaf (functional unit).
Unit software must be as comfortable to an organizational unit as a house is to a family, a space station to an astronaut crew, or a battle tank to a fighting crew.
Each unit must have a formal [software] boundary, which represents a contract between the unit and other entities inside and outside of the organization.
Each unit runs its own operations implemented as executable business processes. Every process in the organization is owned by exactly one unit. A unit might engage another unit or organization to perform a task within the context of the process it owns.
UOA places a special emphasis on control units, which today often consist of just one or a few people, have inadequate information support, and, therefore, have become the weakest links in modern organizations.
UOA uses Systems Thinking for defining the problem, Organization Design for configuring both an enterprise and a composite unit, SOA for constructing unit boundaries, EDA for inter-unit communication, BPM for defining unit operations, and Business Rules for governance.