EntArchReviewer (Midterms) PDF
Document Details
Tags
Summary
This document contains information on Enterprise Architecture Languages, focusing specifically on Business Process Modeling Notation (BPMN) and Unified Modeling Language (UML), including their concepts and diagrams. It outlines the different types of diagrams and their purposes. This document will be useful for students in computer science and related fields.
Full Transcript
Enterprise Architecture Languages Business Process Modeling Notation (BPMN) / Business Process Model and Notation Originally developed by the Business Process Management Initiative (BPMI). In 2005, the Object Management Group took over. Goal of BPMN - support business process modeli...
Enterprise Architecture Languages Business Process Modeling Notation (BPMN) / Business Process Model and Notation Originally developed by the Business Process Management Initiative (BPMI). In 2005, the Object Management Group took over. Goal of BPMN - support business process modeling by providing a comprehensive standard notation to business users, while representing the complex process semantics for technical users. Intended to be used by stakeholders who design, manage, and realize business processes. Easy to use flowchart-like notation. Creates a bridge between business process design and process implementation. Helps with communication leading to Extensible Markup Language (XML). Element Types in Business Process Diagrams Flow Objects: Event - trigger that starts, modifies, or completes a process. - Can be classified as either throwing/catching. - event types: message, timer, error, compensation, signal, cancel, escalation, link, etc. Activity - a task performed by a person/system. - Can have sub-processes, loops, multiple loops, and compensation. Gateway - decision point that adjusts the path based on conditions/event. - Can be exclusive/inclusive, parallel, complex, or based on data/event. Connecting Objects: Sequence flow - shows order of activities to be performed. Message flow - depicts messages that flow across pools/organization boundaries (like departments). - should not connect events/activities within a pool. Association - associates an artifact/text to an event, activity, or a gateway. Swimlanes: Pool - represents major participants in a process. - different pool may be in a diff. company or department, but is still in the process. Lane - sub-part of a pool. - shows activities and flow for a role/participant, defining the accountability. Artifacts: Data object - shows necessary data for an activity. Group - shows a logical grouping of activities, does not change diagram flow. Annotation - provides further explanation to a part of the diagram. Sub-Models Within a BPMN Diagram Private BP - involves internal processes to a specific organization. - does not cross pools/organizational boundaries. Abstract BP - occurs between a private BP and an external participant/process. - does not show the private BP itself. Collaborative BP - shows the interaction between two or more business entities. Unified Modeling Language (UML) Created to establish common, semantic, and syntactical visual modeling language for architecture, design, and implementation of complex software systems. Currently the industry-standard language for specifying, visualizing, constructing, and documenting software systems. Emerges from combining three existing practices: Booch Method, Object-Modeling Technique (OMT), and Objectory. Commonly used by programmers, not by database developers. Overseen by the Object Management Group (OMG), allowing use of one language for different purposes throughout the software lifecycle. Modeling Concepts Specified By UML Functional: Use case diagrams describe system functionality from a user's perspective. Object: Class diagrams describe system structure in terms of objects, attributes, associations, and operations. Dynamic: Interaction diagrams, state machine diagrams, and activity diagrams describe internal system behavior. Types of UML Diagrams Structural UML Diagrams Class diagram: Defines static system structure. Package diagram: Organizes system elements into related groups. Object diagram: Defines system's static structure at a specific time. Component diagram: Organizes physical software components. Composite structure diagram: Shows internal parts of a class. Deployment diagram: Depicts physical system resources. Behavioral UML Diagrams · Activity diagram: Models the flow of control between activities in a system. · Communication diagram: Describes interactions among classes through message exchanges over time. · Use case diagram: Models system functionalities using actors and use cases, representing a simplified collaboration diagram. · State machine diagram: Describes a system's dynamic behavior in response to external events. · Sequence diagram: Models the interactions between objects in a sequential order. · Interaction overview diagram: Combines activity and sequence diagrams to model complex interactions. · Timing diagram: Focuses on processes over a specific period of time, with time increasing from left to right. Architecture Description Language (ADL) General term for formal languages used to formalize, describe, and model software architectures. A good ADL must provide adequate abstractions for large systems. Various ADLs exist, differing in concepts, mainly for users with technical backgrounds. Examples: UniCon, Wright, Acme. Important Properties of ADLs · Represent components with property assertions, interfaces, and implementations. · Represent connectors with protocols, property assertions, and implementations. · Component and communication abstraction and encapsulation. · Open accommodation of analysis tools. · Limit communication to architecturally connected components. · Model dynamic architectures. · Reason about causality and time. · Support hierarchical refinement. · Check conformance. Enterprise Architecture Layer Concepts Motivation Concepts - Used to model the enthusiasm and reasons driving the design or change of an enterprise architecture. - Influence, guide, and constrain the enterprise architecture design process. Terms Related to Motivation Concepts: Stakeholder: Represents interest in the architecture outcome. Driver: Internal/external condition motivating organizational goals and change. Assessment: Result of analyzing a business issue in relation to drivers. Goal: High-level statement of intent or desired end state for the organization. Requirement: Specific need that the architecture must meet. Constraint: Factor that prevents or hinders the realization of goals. Principle: Qualitative statement of intent linked to goals and requirements. Outcome: Achieved result. Value: Worth or importance of a core element or outcome. Meaning: Knowledge or expertise of a business object in a specific context. Strategy Concepts Course of Action Represents the decision or plan an enterprise follows to achieve its goals, configuring capabilities and resources accordingly. Capabilities Key building blocks of a business, unique and stable over time. Aimed at achieving goals or delivering value by realizing outcomes. Abilities possessed by an active structure element (e.g., organization, person, system). Resources Assets owned or controlled by an individual or organization. Structured elements assigned to capabilities. Business Layer Business Structure Concepts Business Actor: A business entity capable of performing behavior. Business Role: Responsibility for performing specific behavior, assigned to an actor. Business Collaboration: Aggregate of two or more active internal business structure elements working together for collective behavior. Business Interface: Point of access where a business service is made available to the environment. Business Object: Models an object type with multiple instances in an organization, representing important information or conceptual elements within a business domain. Representation: Perceptible form of the information carried by a business object. Business Behavior Concepts Business Service: Explicitly defined perceptible business behavior used to manifest business functionality to the environment. Business Process: Sequence of business behaviors achieving a specific outcome, such as a defined set of products and services. Business Function: Collection of business behaviors based on criteria aligned with an organization but not explicitly governed by it. Business Interaction: Unit of collective business behavior collaboratively performed by two or more business roles. Business Event: Denotes an organizational state change, instantaneous and without a specific duration. Higher-Level Business Concepts Product: Coherent collection of services and/or passive structure elements, offered as a whole to customers, accompanied by a contract or agreements. Contract: Formal or informal specification of an agreement between provider and consumer, detailing rights, obligations, and functional/non-functional parameters for interaction. Application Layer Application Structure Concepts Application Component: Encapsulation of an application’s functionality aligned with the implementation structure; modular and replaceable. Application Collaboration: Aggregate of two or more application components working together to perform collective application behavior. Application Interface: Point of access where an application service is made available to users, another application component, or a node. Data Object: Structured data for automated processing. Application Behavior Concepts Application Service: Explicitly defined and visible application behavior used to specify services provided by the business. Application Function: Automated behavior that can be performed by an application component. Application Process: Sequence of application behaviors that realizes a specific outcome. Application Interaction: Unit of collective application behavior collaboratively performed by two or more application components. Application Event: Application behavior that denotes a state of change. Technology Layer Technology Structure Concepts Node: A computational or physical resource that hosts, manipulates, or interacts with other resources. Technology Collaboration: Aggregate of two or more nodes working together to perform collective behavior. Technology Interface: Point of access where technological services offered by a node can be accessed. Device: A physical IT resource for deploying system software and artifacts for execution. System Software: Software supporting a business environment in storing, executing, and utilizing applications and data. Path: Link between two or more nodes for the exchange of data or materials. Communication Network: Set of structures connecting computer systems or electronic devices for data transmission, routing, and reception. Artefact: Piece of data used and/or produced in software development or system deployment and operation. Technology Behavior Concepts Technology Service: External visible unit of functionality provided by one or more nodes, accessible through well-defined interfaces. Technology Function: Behavior element grouping infrastructural behavior performed by a node. Technology Process: Sequence of technological behavior achieving a specific outcome. Technology Interaction: Unit of collective technology behavior collaboratively performed by two or more nodes. Technology Event: Technology behavior element denoting a state change. Physical Concepts Equipment: Physical machine, tool, or instrument that can create, use, store, move, or transform materials. Facility: Physical structure or environment interconnected by distribution networks. Distribution Network: Physical network used to transport materials, data, or information. Material: Tangible matter or physical element accessible by equipment. Implementation and Migration Concepts Implementation-Related Concepts Work Package: Series of actions designed to achieve a specific goal or result within defined beginning and end dates and resource constraints. Implementation Event: Behavior element denoting a state of change related to implementation or migration, possibly with a time attribute. Deliverable: Precisely defined outcome of a work package. Migration Planning Concepts Plateau: Relatively stable state of enterprise architecture existing during a specific period. Gap: Statement of difference between two plateaus. ArchiMate Business Layer Notations ArchiMate Application Layer Notations ArchiMate Technology Layer Notations ArchiMate Physical Elements’ Notations ArchiMate Strategy Elements’ Notations ArchiMate Implementation and Migration Elements’ Notations ArchiMate Motivation Elements' Notations ArchiMate Relationship Summary