Software Architecture Description
   HOME
*





Software Architecture Description
Software architecture description is the set of practices for expressing, communicating and analysing software architectures (also called architectural rendering), and the result of applying such practices through a work product expressing a software architecture ( ISO/IEC/IEEE 42010). Architecture descriptions (ADs) are also sometimes referred to as ''architecture representations'', ''architecture specifications''Perry, D. E.; Wolf, A. L. (1992). "Foundations for the study of software architecture". ACM SIGSOFT Software Engineering Notes 17 (4): 40. doi:10.1145/141874.141884 or ''software architecture documentation''. Concepts Architecture description defines the practices, techniques and types of representations used by software architects to record a software architecture. Architecture description is largely a modeling activity ( Software architectural model). Architecture models can take various forms, including text, informal drawings, diagrams or other formalisms (modelin ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

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. The ''architecture'' of a software system is a metaphor, analogous to the architecture of a building. It functions as a blueprint for the system and the developing project, which project management can later use to extrapolate the tasks necessary to be executed by the teams and people involved. Software architecture is about making fundamental structural choices that are costly to change once implemented. Software architecture choices include specific structural options from possibilities in the design of the software. For example, the systems that controlled the Space Shuttle launch vehicle had the requirement of being very fast and very reliable. Therefore, an appropriate real-time computing language would need to be chosen. Addition ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Darwin (ADL)
Darwin is an architecture description language (ADL). It can be used in a software engineering context to describe the organisation of a piece of software in terms of components, their interfaces and the bindings between components. Darwin encourages a component Circuit Component may refer to: •Are devices that perform functions when they are connected in a circuit.   In engineering, science, and technology Generic systems * System components, an entity with discrete structure, such as an assem ...- or object-based approach to program structuring in which the unit of structure (the component) hides its behaviour behind a well-defined interface. Programs are constructed by creating instances of component types and binding their interfaces together. Darwin considers such compositions also to be types and hence encourages hierarchical composition. The general form of a Darwin program is therefore the tree in which the root and all intermediate nodes are composite component ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Concern (computer Science)
In computer science, a concern is a particular set of information that has an effect on the code of a computer program. A concern can be as general as the details of database interaction or as specific as performing a primitive calculation, depending on the level of conversation between developers and the program being discussed. IBM uses the term ''concern space'' to describe the sectioning of conceptual information. Overview Usually the code can be separated into logical sections, each addressing separate concerns, and so it hides the need for a given section to know particular information addressed by a different section. This leads to a modular program. Edsger W. Dijkstra coined the term "separation of concerns" to describe the mentality behind this modularization, which allows the programmer to reduce the complexity of the system being designed. Two different concerns that intermingle in the same section of code are called " highly coupled". Sometimes the chosen module divis ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Core Concern
Core or cores may refer to: Science and technology * Core (anatomy), everything except the appendages * Core (manufacturing), used in casting and molding * Core (optical fiber), the signal-carrying portion of an optical fiber * Core, the central part of a fruit * Hydrophobic core, the interior zone of a protein * Nuclear reactor core, a portion containing the fuel components * Pit (nuclear weapon) or core, the fissile material in a nuclear weapon * Semiconductor intellectual property core (IP core), is a unit of design in ASIC/FPGA electronics and IC manufacturing * Atomic core, an atom with no valence electrons Geology and astrophysics * Core sample, in Earth science, a sample obtained by coring ** Ice core * Core, the central part of a galaxy; see Mass deficit * Core (anticline), the central part of an anticline or syncline * Planetary core, the center of a planet ** Earth's inner core ** Earth's outer core * Stellar core, the region of a star where nuclear fusion takes place ** ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Separation Of Concerns
In computer science, separation of concerns is a design principle for separating a computer program into distinct sections. Each section addresses a separate '' concern'', a set of information that affects the code of a computer program. A concern can be as general as "the details of the hardware for an application", or as specific as "the name of which class to instantiate". A program that embodies SoC well is called a modular program. Modularity, and hence separation of concerns, is achieved by encapsulating information inside a section of code that has a well-defined interface. Encapsulation is a means of information hiding. Layered designs in information systems are another embodiment of separation of concerns (e.g., presentation layer, business logic layer, data access layer, persistence layer). Separation of concerns results in more degrees of freedom for some aspect of the program's design, deployment, or usage. Common among these is increased freedom for simplification and ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Architecture Framework
The ISO/IEC/IEEE 42010 Conceptual Model of Architecture Description defines the term architecture framework within systems engineering and software development as: "An architecture framework establishes a common practice for creating, interpreting, analyzing and using architecture descriptions within a particular domain of application or stakeholder community. Examples of Architecture Frameworks: MODAF, TOGAF, Kruchten's 4+1 view model, RM-ODP." Especially the domain within a company or other organization is covered by 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 ...s. The Survey of Architecture Frameworks
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Architecture Description Language
Architecture description languages (ADLs) are used in several disciplines: system engineering, software engineering, and enterprise modelling and engineering. The system engineering community uses an architecture description language as a language and/or a conceptual model to describe and represent system architectures. The software engineering community uses an architecture description language as a computer language to create a description of a software architecture. In the case of a so-called technical architecture, the architecture must be communicated to software developers; a functional architecture is communicated to various stakeholders and users. Some ADLs that have been developed are: Acme (developed by CMU), AADL (standardized by the SAE), C2 (developed by UCI), SBC-ADL (developed by National Sun Yat-Sen University), Darwin (developed by Imperial College London), and Wright (developed by CMU). Overview The ISO/IEC/IEEE 42010 document, ''Systems and software e ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


IEEE 1471
IEEE 1471 is a superseded IEEE standard for describing the architecture of a "software-intensive system", also known as software architecture. 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 JTC1/SC7 as ISO/IEC 42010:2007, ''Systems and Software Engineering -- Recommended practice for architectural description of software-intensive systems''. 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 so ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

4+1 Architectural View Model
4+1 is a view model used for "describing the architecture of software-intensive systems, based on the use of multiple, concurrent views".Kruchten, Philippe (1995, November)Architectural Blueprints — The “4+1” View Model of Software Architecture.IEEE Software 12 (6), pp. 42-50. The views are used to describe the system from the viewpoint of different stakeholders, such as end-users, developers, system engineers, and project managers. The four views of the model are logical, development, process and physical view. In addition, selected use cases or scenarios are used to illustrate the architecture serving as the 'plus one' view. Hence, the model contains 4+1 views: * ''Logical view'': The logical view is concerned with the functionality that the system provides to end-users. UML diagrams are used to represent the logical view, and include class diagrams, and state diagrams.Mikko Kontio (2008, JulyArchitectural manifesto: Designing software architectures, Part 5/ref> * ''Proce ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

TOGAF
The Open Group Architecture Framework (TOGAF) is the most used framework for enterprise architecture as of 2020 that provides an approach for designing, planning, implementing, and governing an enterprise information technology architecture. TOGAF is a high-level approach to design. It is typically modeled at four levels: Business, Application, Data, and Technology. It relies heavily on modularization, standardization, and already existing, proven technologies and products. TOGAF was developed starting 1995 by The Open Group, based on United States Department of Defense's TAFIM and Capgemini's Integrated Architecture Framework (IAF). As of 2016, The Open Group claims that TOGAF is employed by 80% of Global 50 companies and 60% of Fortune 500 companies. Overview An architecture framework is a set of tools which can be used for developing a broad range of different architectures. It should: * describe a method for defining an information system in terms of a set of building bl ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

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, platform and technology independence, and portability, together with an enterprise architecture framework for the specification of ODP systems. RM-ODP, also named ''ITU-T Rec. X.901-X.904'' and ''ISO/IEC 10746'', is a joint effort by the International Organization for Standardization (ISO), the International Electrotechnical Commission (IEC) and the Telecommunication Standardization Sector (ITU-T). Overview The RM-ODP is a reference model based on precise concepts derived from current distributed processing developments and, as far as possible, on the use of formal description techniques for specification of the architecture. Many RM-ODP concepts, possibly under different names, have been around for a long time and have been rigorousl ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Architecture Framework
The ISO/IEC/IEEE 42010 Conceptual Model of Architecture Description defines the term architecture framework within systems engineering and software development as: "An architecture framework establishes a common practice for creating, interpreting, analyzing and using architecture descriptions within a particular domain of application or stakeholder community. Examples of Architecture Frameworks: MODAF, TOGAF, Kruchten's 4+1 view model, RM-ODP." Especially the domain within a company or other organization is covered by 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 ...s. The Survey of Architecture Frameworks
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]