Seventh International Conference on Composition-Based Software Systems

The Method Framework for Engineering System Architectures (MFESA): A Practical Way to Generate Effective and Efficient Project-Specific System Architecture Engineering Methods Donald G. Firesmith Software Engineering Institute [email protected] difficulty is one of many reasons why the architecture engineering method intended to be used and the actual architecture engineering process performed in practice have often differed greatly and have both had limited success in effectively and efficiently developing and maintaining a optimal system architecture and associated architectural representations.

Abstract This 1/2 day tutorial presents a new proposed method framework and associated repository of reusable method components for creating appropriate project-specific methods for engineering system architectures. Several MFESA tasks directly involve component-based software-intensive systems in that they involve the identification and analysis of potential reusable architectural work products including patterns, models, and architectural components.

2. MFESA Overview MFESA takes a different approach. Because of the vast potential variability of system engineering projects, MFESA assumes that no previously existing architectural engineering method will optimally meet the specific needs of the project. Because the necessary amount of tailoring is often so large, MFESA also assumes that tailoring an existing method is not always the optimal way to achieve the necessary flexibility while retaining the benefits of standardization. MFESA therefore embraces the idea of situational method engineering, which is the generation of an appropriate project-specific method by: • Selecting suitable method components from a repository containing a consistent class library of pre-existing reusable method components, • Tailoring these selected method components (if necessary), and • Integrating the selected tailored method components to create the actual method to be used. This is the reason why this quick reference guide does not document and recommend any one method for engineering system architectures. As illustrated in Figure 1 below, the quick reference guide instead describes a method framework – Method Framework for Engineering System Architecture (MFESA)1, which consists of the following four parts:

1. Introduction Historically, most projects that have an architecture engineering method have used a previously existing architecture engineering method. This method is often (1) an organizational standard method, (2) a method largely based on an international or military standard, (3) an industry domain specific method, (4) a method drawn from a book, article, or conference paper or tutorial on architecture engineering, or (5) a method that the chief architect was familiar with because he or she had used it on one or more previous projects. However, each project is unique. Systems vary widely in terms of size, complexity, requirements, and application domains, while development organizations vary widely in terms of size, expertise, experience, and geographical distribution. Differences in contracts also affect the system architecture. Therefore, no single method or standard for engineering system architectures is sufficiently flexible to effectively and efficiently engineer all system architectures. Most architecture teams have had to tailor the previously existing method to meet the needs of the endeavor. Unfortunately, the variability of architecture engineering efforts has been so great that it has often been very difficult to choose the reusable architecture engineering methods and properly tailor it to meet the specific needs of the endeavor. This

0-7695-3091-5/08 $25.00 © 2008 IEEE DOI 10.1109/ICCBSS.2008.41

1

MFESA is pronounced as you-mesa.

8

Authorized licensed use limited to: Carnegie Mellon Libraries. Downloaded on December 2, 2009 at 21:23 from IEEE Xplore. Restrictions apply.









and/or allocated to their system or subsystem and categorize them into a set of architectural concerns. 3. Create Initial Architectural Models Create a consistent set of initial partial draft logical and physical static and dynamic models of the system or subsystem based on the architectural drivers, the associated architectural concerns, and the opportunities for reuse. 4. Identify Opportunities for the Reuse of Architectural Elements Identify and initially analyze potential opportunities for the reuse architectural decisions and inventions such as styles, patterns, and relevant parts of existing architectural structures. 5. Create Candidate Architectural Visions Use the initial architectural models to create a set of competing candidate architectural visions for their system or subsystem that support meeting the derived and allocated architectural drivers and associated architectural concerns. 6. Analyze Reusable Components and their Sources Identify and evaluate potentially reusable physical architectural components and their sources for reuse within candidate architectural visions. 7. Select or Create Most Suitable Architectural Vision Select the most suitable architectural vision for the system or subsystem from the competing candidate architectural visions. If combining consistent components from multiple competing candidate architectural visions would yield an even more suitable architectural vision, then do so to obtain the single new architectural vision. 8. Complete and Maintain the Architecture Complete and maintain the architectural models and other architectural descriptions of their system or subsystem architecture based upon the architectural vision selected. 9. Evaluate and Accept the Architecture Evaluate the quality of the system or subsystem architecture so that architectural risks can be managed, compliance with architecturally significant requirements can be determined, and the architecture can be accepted by its authoritative stakeholders. 10. Ensure Architectural Integrity Ensure that the integrity of the system architecture does not degrade over time.

MFESA Ontology of Concepts and Terminology An information model defining a consistent set of interrelated concepts and terms underlying system architecture engineering MFESA Metamodel A model of the types of method components (see Figure 1) in the repository of reusable method components (i.e., architectural work products, architectural work units, and architectural workers) MFESA Repository of Reusable Method Components A repository containing a consistent class library of reusable components for creating projectspecific methods for engineering system architectures MFESA Metamethod A method for creating effective and efficient project-specific methods for engineering system architectures (i.e., a method for creating methods) MFESA

MFESA Ontology defines the terms in the

MFESA Metamodel defines the types of and relationships between the

MFESA Reusable Method Components

Method Engineering Framework

MFESA Repository

stores the

tailored

MFESA Metamethod describes how to engineer project-specific

MFESA Reusable Architecture Engineering Methods

Figure 1: The components of MFESA

4. MFESA Tasks As illustrated in Figure 2, the MFESA method consists of the following tasks, typically performed in a highly iterative, incremental, parallel, and time-boxed manner. Members of the architecture team(s): 1. Plan and Resource Architecture Engineering Effort Plan the overall architecture engineering effort and obtain the necessary resources to engineer the system architecture. 2. Identify the Architectural Drivers Identify the architecturally significant product and process requirements that have been derived for

9

Authorized licensed use limited to: Carnegie Mellon Libraries. Downloaded on December 2, 2009 at 21:23 from IEEE Xplore. Restrictions apply.

The 10 tasks of system architecture engineering

Candidate Reusable Architectural Elements, Risks, and Concerns Competing Candidate Architectural Visions

Potential Reusable Components and Sources Task

T8: Complete and Maintain the Architecture

T10: Ensure Architectural Integrity

WP

T9: Evaluate and Accept the Architecture

Completed and Documented Architecture Architectural Analyses, Risks, Recommendations, and Approvals

WP

Task

Task

Figure 2: MFESA Tasks

T8: Complete and Maintain the Architecture

Task

T10: Ensure Architectural Integrity

WP

T7: Select or Create Most Suitable Architectural Vision Most Suitable Architectural Vision

T9: Evaluate and Accept the Architecture

WP

T6: Analyze Reusable Components and Sources

Initial Architecture Models including Views and Focus Areas

WP

T5: Create Candidate Architectural Visions

Architecturally-Significant Requirements and Architectural Concerns

WP

T4: Identify Opportunities for Reuse of Architectural Elements

Architecture Engineering Plan, Procedures, and Schedule

WP

T3: Create Initial Architectural Models

Work Products repeat for system and each subsystem

WP

Task

T7: Select or Create Most Suitable Architectural Vision

Task

T6: Analyze Reusable Components and Sources

T2: Identify the Architectural Drivers

Task

T5: Create Candidate Architectural Visions

T4: Identify Opportunities for Reuse of Architectural Elements

Task

T3: Create Initial Architectural Models

T1: Plan and Resource Architecture Engineering Effort

Task

T2: Identify the Architectural Drivers

Task

Tasks

WP



T1: Plan and Resource Architecture Engineering Effort

Figure 3: MFESA Tasks and Work Products

As illustrated in Figure 3, the work products produced by the MFESA tasks are typically used as inputs to logically subsequent tasks.

5. Conclusion The tutorial is from the draft manuscript of The Method Framework for Engineering System Architectures (MFESA) [1] to be published by Auerbach Publications in 2008.

5. Tutorial Agenda This ½ day tutorial introduces the attendee to both system architecture engineering and the MFESA method framework by covering the following topics: • An ontology of system architecture engineering concepts and terminology • Current challenges facing system architecture engineering • The foundational principles underlying MFESA • An overview of the MFESA method framework including the primary goals, inputs, tasks, outputs, and assumptions • An overview of architects and architecture teams

6. References [1] Donald, D.G., et al., The Method Framework for Engineering System Architectures (MFESA): A Practical Way to Generate Effective and Efficient Project-Specific System Architecture Engineering Methods, Auerbach Publications, New York, New York, 2008.

10

Authorized licensed use limited to: Carnegie Mellon Libraries. Downloaded on December 2, 2009 at 21:23 from IEEE Xplore. Restrictions apply.

The Method Framework for Engineering System Architectures (MFESA ...

Project-Specific System Architecture Engineering Methods. Donald G. Firesmith ... Seventh International Conference on Composition-Based Software Systems.

212KB Sizes 0 Downloads 126 Views

Recommend Documents

Method Framework for Engineering System Architectures (MFESA ...
Aircraft System. Ground Support System. Training System. Maintenance System. Airframe. Segment. Interiors. Segment. Propulsion. Segment. Vehicle. Segment.

Method Framework for Engineering System Architectures
Apr 5, 2010 - Introduce attendees to the Method Framework for Engineering System .... Degree of centralized/distributed governance: .... Date in Years.

Method Framework for Engineering System Architectures
Apr 4, 2011 - Introduce you to the Method Framework for Engineering System. Architectures (MFESA):. • MFESA .... Specialty engineering areas (such as safety and security) .... Authority (requirements, funding, policy, … ) Accessibility of ...

Transceiver Architectures - UCLA Electrical Engineering
up to the point where signal compression occurs. ... Each mixing operation convolves the signal and the interferers with ... Perform detection in digital domain.

Designing Modular Architectures in the Framework AKIRA
Nov 23, 2006 - AKIRA is an open source framework designed for parallel, asynchro- ... connectionist feature of the modules, their energy (computed by a connectionist ..... This is an alternative way to conceive “arbitration” between possible.

Handover method for mobile radio system
Jan 11, 1999 - IEEE Transaction on Vehicular Technology, vol. VT—19, No. 4,955,082 A ... Nakajirna, A., Advanced Mobile Communication Network. 5,452,473 A. 9/1995 ... Wireless Communications Research Institute, Ulm (Ger many), pp.

System and method for multicurrency transactions
Mar 18, 2003 - operator of server 100 and the currency broker or brokers. ..... lar mail, email, etc. .... rency or currencies from the list of convertible currencies.

Method and system for image processing
Jul 13, 2006 - US RE43,747 E. 0 .File Edi! Monan Palette Llybul. 09 Fib Edit Malian PM L. II I ... image editing packages (e.g. MacIntosh or Windows types), manipulates a copy of ...... ¢iY):ai(X>Y)¢ii1(X>Y)+[1_ai(X>Y)l'C. As there is no ...

Method and system for image processing
Jul 13, 2006 - images,” Brochure by Avelem: Mastery of Images, Gargilesse,. France. Porter et al. ..... known image processing techniques is that the image editing effects are applied ..... 6iA schematic illustration of the FITS reduction. FIG.

System and method for multicurrency transactions
Mar 18, 2003 - (73) Assignees: PayPal, Inc., San Jose, CA (US);. PayPal International .... network (such as the Internet) and wherein the customer pays for a ...

Method for controlling home network system
Jan 24, 2011 - Thus, a standard for a high-speed communication with a large amount of data is ... appliances or the Internet can be performed using a network.

Handover method for mobile radio system
Jan 11, 1999 - Nakajirna, A., Advanced Mobile Communication Network. 5,452,473 A .... is, inter alia, to enable the degree of coverage to be made greater Without the ...... ters BM and Bnb Which has the best radio transmission conditions ...

System and method for controlled directional drilling
May 23, 1989 - [73] Assignee: Smith International, Inc., Houston,. Ten. ... Step”; Canadian Petroleum; Feb. 1966. ...... being i of a day ahead of schedule.

System and method for protecting a computer system from malicious ...
Nov 7, 2010 - so often in order to take advantage of neW virus detection techniques (e. g. .... and wireless Personal Communications Systems (PCS) devices ...

Electrosurgery system and method
Dec 19, 2002 - FOREIGN PATENT DOCUMENTS. (22) Filed: Dec. ... US PATENT DOCUMENTS pulsed r.f. ...... voltage detector by the doctor. 4. A generator ...

System and method for protecting a computer system from malicious ...
Nov 7, 2010 - ABSTRACT. In a computer system, a ?rst electronic data processor is .... 2005/0240810 A1 10/2005 Safford et al. 6,505,300 ... 6,633,963 B1 10/2003 Ellison et a1' ...... top computers, laptop computers, hand-held computers,.

The Viable System Model as a Framework for Understanding ...
The Viable System Model as a Framework for Understanding Organizations.pdf. The Viable System Model as a Framework for Understanding Organizations.pdf.

System-Level Integrated Server Architectures for Scale ...
Dec 7, 2011 - datacenters grow larger and cloud computing scale-out work- ... technology-level effects of SoC integration for datacen- ter servers. We identify ...

Revealing Method for the Intrusion Detection System
Detection System. M.Sadiq Ali Khan. Abstract—The goal of an Intrusion Detection is inadequate to detect errors and unusual activity on a network or on the hosts belonging to a local network .... present in both Windows and Unix operating systems. A

Method and apparatus for driving the display device, display system ...
Feb 5, 1998 - 345/206. THE DISPLAY DEVICE, DISPLAY SYSTEM,. 5,251,051 A * 10/1993 Fujiiyoshi et a1. .. 345/100. AND DATA PROCESSING DEVICE.

Method and apparatus for driving the display device, display system ...
Feb 5, 1998 - 345/100. AND DATA PROCESSING DEVICE. 5,604,511 A ... Foreign Application Priority Data. It is an object to .... DATA DRIVER. I l. 'IIII'IIIII'I IJ.