HOME

TheInfoList



OR:

A reference architecture in the field of
software architecture Software architecture is the fundamental structure of a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations. ...
or enterprise architecture provides a template solution for an architecture for a particular domain. It also provides a common vocabulary with which to discuss
implementation Implementation is the realization of an application, or execution of a plan, idea, model, design, specification, standard, algorithm, or policy. Industry-specific definitions Computer science In computer science, an implementation is a real ...
s, often with the aim to stress commonality. A software reference architecture is a
software architecture Software architecture is the fundamental structure of a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations. ...
where the structures and respective elements and relations provide templates for concrete architectures in a particular domain or in a family of
software system A software system is a system of intercommunicating components based on software forming part of a computer system (a combination of hardware and software). It "consists of a number of separate programs, configuration files, which are used to s ...
s. A reference architecture often consists of a list of functions and some indication of their interfaces (or APIs) and interactions with each other and with functions located outside of the scope of the reference architecture. Reference architectures can be defined at different levels of abstraction. A highly abstract one might show different pieces of equipment on a
communications network A telecommunications network is a group of nodes interconnected by telecommunications links that are used to exchange messages between the nodes. The links may use a variety of technologies based on the methodologies of circuit switching, mes ...
, each providing different functions. A lower level one might demonstrate the interactions of procedures (or methods) within a computer program defined to perform a very specific task. A reference architecture provides a template, often based on the generalization of a set of solutions. These solutions may have been generalized and structured for the depiction of one or more architecture structures based on the harvesting of a set of patterns that have been observed in a number of successful implementations. Further it shows how to compose these parts together into a solution. Reference Architectures will be instantiated for a particular domain or for specific projects. Adopting a reference architecture within an organization accelerates delivery through the re-use of an effective solution and provides a basis for governance to ensure the consistency and applicability of technology use within an organization. In the field of software architecture, many empirical studies have shown the following common benefits and drawbacks from adopting a software reference architecture within organizations: (a) improvement of the
interoperability Interoperability is a characteristic of a product or system to work with other products or systems. While the term was initially defined for information technology or systems engineering services to allow for information exchange, a broader def ...
of the software systems by establishing a standard solution and common mechanisms for information exchange; (b) reduction of the development costs of software projects through the reuse of common assets; (c) improvement of the communication inside the organization because stakeholders share the same architectural mindset; and, (d) influencing the
learning curve A learning curve is a graphical representation of the relationship between how proficient people are at a task and the amount of experience they have. Proficiency (measured on the vertical axis) usually increases with increased experience (the ...
of developers due to the need of learning its features.


Examples

* The Java Platform, Enterprise Edition (
Java EE Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web se ...
) architecture is a layered reference architecture which provides a template solution for many enterprise systems developed in Java. * The IBM Insurance Application Architecture is a reference architecture for the Insurance domain. * AUTOSAR is a component-based reference architecture for automotive software architectures. * Eulynx is a reference architecture for railway signalling systems. * The Health Enterprise Reference Architecture (HERA), currently under development by
The Open Group The Open Group is a global consortium that seeks to "enable the achievement of business objectives" by developing "open, vendor-neutral technology standards and certifications." It has over 840 member organizations and provides a number of servi ...
, is a reference architecture for the health care domainHealthcare Enterprise Reference Architecture (HERA)
/ref>


See also

* Business reference model *
Enterprise architecture framework An enterprise architecture framework (EA framework) defines how to create and use an enterprise architecture. An architecture framework provides principles and practices for creating and using the architecture description of a system. It struc ...
* Generalised Enterprise Reference Architecture and Methodology (GERAM) * Reference model


References

Software architecture Enterprise architecture {{soft-eng-stub