IEEE 1471
   HOME

TheInfoList



OR:

IEEE 1471 is a superseded
IEEE standard The Institute of Electrical and Electronics Engineers Standards Association (IEEE SA) is an operating unit within IEEE that develops global standards in a broad range of industries, including: power and energy, artificial intelligence systems, ...
for describing the architecture of a "software-intensive system", also known as
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. ...
. In 2011 it was superseded by ISO/IEC/IEEE 42010, ''Systems and software engineering — Architecture description''.


Overview

IEEE 1471 is the short name for a standard formally known as ANSI/IEEE 1471-2000, ''Recommended Practice for Architecture Description of Software-Intensive Systems.'' Within Institute of Electrical and Electronics Engineers (IEEE) parlance, this is a "recommended practice", the least normative of its standards. In 2007 this standard was adopted by
ISO/IEC ISO/IEC JTC 1, entitled "Information technology", is a joint technical committee (JTC) of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC). Its purpose is to develop, maintain and p ...
JTC1/SC7 as ISO/IEC 42010:2007, ''Systems and Software Engineering -- Recommended practice for architectural description of software-intensive systems''.ISO/IEC 42010:2007, Systems and Software Engineering -- Architecture Description
/ref> It has long been recognized that "architecture" has a strong influence over the life cycle of a system. However, until relatively recently, hardware issues have tended to dominate architectural thinking, and software aspects, when considered at all, were often the first to be compromised under the pressures of development. IEEE 1471 was created to provide a basis for thinking about the architecture of software-intensive systems. IEEE 1471's contributions can be summarised as follows (in this list, items in ''italics'' are terms defined by and used in the standard): * It provides definitions and a meta-model for the description of ''
architecture Architecture is the art and technique of designing and building, as distinguished from the skills associated with construction. It is both the process and the product of sketching, conceiving, planning, designing, and constructing building ...
'' * It states that an ''architecture'' should address a system's '' stakeholders'' ''concerns'' * It asserts that ''architecture description''s are inherently multi-view, no single ''view'' adequately captures all stakeholder concerns * It specifies the notions of '' view'' and '' viewpoint,'' where a ''viewpoint'' identifies the set of ''concerns'' and the ''representations''/''modeling techniques'', etc. used to describe the ''architecture'' to address those ''concerns'' and a ''view'' is the result of applying a viewpoint to a particular system. * It establishes content requirements for architecture descriptions and the idea that a ''conforming architecture description'' has a 1-to-1 correspondence between its ''viewpoints'' and its ''views''. * It provides guidance for capturing ''architecture rationale'' and identifying inconsistencies/unresolved issues between the ''views'' within an ''architecture description'' IEEE 1471 provides informative annexes that relate its concepts to architecture concepts in other standards, including
RM-ODP Reference Model of Open Distributed Processing (RM-ODP) is a reference model in computer science, which provides a co-ordinating framework for the standardization of open distributed processing (ODP). It supports distribution, interworking, plat ...
and
IEEE 12207 ISO/IEC/IEEE 12207 ''Systems and software engineering – Software life cycle processes'' is an international standard for software lifecycle processes. First introduced in 1995, it aims to be a primary standard that defines all the processes requi ...
.


History

In August 1995, the IEEE Software Engineering Standards Committee (SESC) chartered an IEEE Architecture Planning Group (APG) to set direction for incorporating architectural thinking into IEEE standards. In April 1996, the Architecture Working Group (AWG) was created to implement the recommendations made by APG to the SESC. The AWG was chaired by Basil Sherlund, vice-chairs Ronald Wade, David Emery, the specification was edited by Rich Hilliard. The AWG had 25 members. Drafts of the specification were balloted and commented on by 130 international reviewers. In September 2000, the IEEE-SA Standards Board approved the specification as IEEE Std 1471-2000. In 2006, ISO/IEC Joint Technical Committee 1 (JTC1), Information technology/Subcommittee SC 7, Software and systems engineering, adopted the specification as ISO/IEC 42010, under a special "fast-track procedure", in parallel with its approval by national bodies of ISO and IEC. A coordinated revision of this standard by ISO/IEC JTC1/SC7/WG42 and IEEE CS commenced in 2006, following the successful ISO/IEC fast-track ballot and in line with the IEEE standard 5-year review of the standard. In November 2011,ISO/IEC/IEEE 42010:2011, Systems and software engineering — Architecture description, the latest edition of the original IEEE Std 1471:2000, last update 5 February 2014
/ref> IEEE 1471-2000 and ISO/IEC 42010:2007 was superseded by ISO/IEC/IEEE 42010:2011, ''Systems and software engineering — Architecture description''.


Purpose

According to IEEE 1471Architecture and Change
an architecture description can be used for the following: * Expression of the system and its evolution * Communication among the system stakeholders * Evaluation and comparison of architectures in a consistent manner * Planning, managing, and executing the activities of system development * Expression of the persistent characteristics and supporting principles of a system to guide acceptable change * Verification of a system implementation’s compliance with an architectural description * Recording contributions to the body of knowledge of software-intensive systems architecture


Terminology

According to IEEE Standard Glossary of Software Engineering Terminology the following definitions are used: * ''architect'': The person, team, or organization responsible for designing systems architecture. * ''architectural description'' (AD): A collection of products to document an architecture. * ''architecture'': The fundamental organization of a system embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution. * ''designing'': The activities of defining, documenting, maintaining, improving, and certifying proper implementation of an architecture. * ''system'': A collection of components organized to accomplish a specific function or set of functions. The term ''system'' encompasses individual applications, systems in the traditional sense, subsystems, systems of systems, product lines, product families, whole enterprises, and other aggregations of interest. * ''system stakeholder'': An individual, team, or organization (or classes thereof) with interests in, or concerns relative to, a system. * ''view'': A representation of a whole system from the perspective of a related set of concerns. * ''viewpoint'': A specification of the conventions for constructing and using a view. A pattern or template from which to develop individual views by establishing the purposes and audience for a view and the techniques for its creation and analysis.


Conceptual framework

IEEE 1471 uses the following conceptual framework.IEEE 1471 Conceptual Framework
/ref> # A system’s environment, or ''context'', can influence that system. The environment can include other systems that interact with the system of interest, either directly via interfaces or indirectly in other ways. The environment determines the boundaries that define the ''scope'' of the system of interest relative to other systems. #A system has one or more ''stakeholders''. Each stakeholder typically has interests in, or concerns relative to, that system. #''Concerns'' are those interests which pertain to the system’s development, its operation or any other aspects that are critical or otherwise important to one or more stakeholders. Concerns include system considerations such as performance, reliability, security, distribution, and evolvability. #A system exists to fulfill one or more ''missions'' in its environment. A ''mission'' is a use or operation for which a system is intended by one or more stakeholders to meet some set of ''objectives''. #Every system has an ''architecture'', whether understood or not; whether recorded or conceptual. An architecture can be recorded by an ''architectural description''. #An architectural description is organized into one or more constituents called (architectural) ''views''. Each ''view'' addresses one or more of the concerns of the system stakeholders. A ''view'' is a partial expression of a system’s architecture with respect to a particular ''viewpoint''. #A ''viewpoint'' establishes the conventions by which a view is created, depicted and analyzed. In this way, a view ''conforms'' to a viewpoint. The viewpoint determines the languages (including notations, model, or product types) to be used to describe the view, and any associated modeling methods or analysis techniques to be applied to these representations of the view. These languages and techniques are used to yield results relevant to the concerns addressed by the viewpoint. #An architectural description ''selects'' one or more viewpoints for use. The ''selection of viewpoints'' is typically based on consideration of the stakeholders to whom the AD is addressed and their concerns. A ''viewpoint definition'' may originate with an AD, or it may have been defined elsewhere (a ''library viewpoint''). #A view may consist of one or more ''architectural models''. Each such architectural model is developed using the methods established by its associated architectural viewpoint. An architectural model may participate in more than one view.


Conformance

IEEE 1471 defines a set of normative requirements for conforming architecture descriptions, including the following: * AD identification, version, and overview information (clause 5.1) * Identification of the system stakeholders and their concerns judged to be relevant to the architecture (clause 5.2) * Specifications of each viewpoint that has been selected to organize the representation of the architecture and the rationale for those selections (clause 5.3) * One or more architectural views (clause 5.4) * A record of all known inconsistencies among the architectural description’s required constituents (clause 5.5) * A rationale for selection of the architecture (clause 5.6)


See also

* Software architecture views *
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 struct ...
*
View model A view model or viewpoints framework in systems engineering, software engineering, and enterprise engineering is a framework which defines a coherent set of ''views'' to be used in the construction of a system architecture, software architectur ...


References

*


External links


IEEE 1471 website

MEGAF
is an infrastructure for realizing architecture frameworks that conform to the definition of architecture framework provided in the ISO/IEC 42010 standard. {{DEFAULTSORT:Ieee 1471 IEEE standards Software architecture