ebook img

Preliminary Design of ArchE: A Software Architecture Design Assistant PDF

67 Pages·2004·0.22 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Preliminary Design of ArchE: A Software Architecture Design Assistant

Preliminary Design of ArchE: A Software Architecture Design Assistant Felix Bachmann Len Bass Mark Klein September 2003 TECHNICAL REPORT CMU/SEI-2003-TR-021 ESC-TR-2003-021 Pittsburgh, PA 15213-3890 Preliminary Design of ArchE: A Software Architecture Design Assistant CMU/SEI-2003-TR-021 ESC-TR-2003-021 Felix Bachmann Len Bass Mark Klein September 2003 Architecture Tradeoff Analysis Initiative Unlimited distribution subject to the copyright. This report was prepared for the SEI Joint Program Office HQ ESC/DIB 5 Eglin Street Hanscom AFB, MA 01731-2116 The ideas and findings in this report should not be construed as an official DoD position. It is published in the interest of scientific and technical information exchange. FOR THE COMMANDER Christos Scondras Chief of Programs, XPK This work is sponsored by the U.S. Department of Defense. The Software Engineering Institute is a federally funded research and development center sponsored by the U.S. Department of Defense. Copyright 2004 by Carnegie Mellon University. NO WARRANTY THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT. Use of any trademarks in this report is not intended in any way to infringe on the rights of the trademark holder. Internal use. Permission to reproduce this document and to prepare derivative works from this document for internal use is granted, provided the copyright and "No Warranty" statements are included with all reproductions and derivative works. External use. Requests for permission to reproduce this document or prepare derivative works of this document for external and commercial use should be addressed to the SEI Licensing Agent. This work was created in the performance of Federal Government Contract Number F19628-00-C-0003 with Carnegie Mel- lon University for the operation of the Software Engineering Institute, a federally funded research and development center. The Government of the United States has a royalty-free government-purpose license to use, duplicate, or disclose the work, in whole or in part and in any manner, and to have or permit others to do so, for government purposes pursuant to the copy- right license under the clause at 252.227-7013. For information about purchasing paper copies of SEI reports, please visit the publications portion of our Web site (http://www.sei.cmu.edu/publications/pubweb.html). Table of Contents Abstract..................................................................................................................vii 1 Introduction.....................................................................................................1 2 Selection of an Expert System Platform........................................................3 2.1 Theoretical Assumptions...........................................................................3 2.2 About Expert Systems...............................................................................3 2.2.1 Logic Programming........................................................................4 2.2.2 Rule-Based Systems.....................................................................4 2.2.3 Logic Programming Vs. Rule-Based Systems................................4 2.2.4 Inference Nets...............................................................................4 2.2.5 Frames..........................................................................................4 2.2.6 Induction-Based Systems..............................................................5 2.2.7 Neural Nets....................................................................................5 2.3 ArchE as an Expert System.......................................................................5 3 Responsibilities...............................................................................................9 3.1 Decomposition of Responsibilities.............................................................9 3.2 Role of Responsibilities...........................................................................10 4 Solving Multiple Scenarios...........................................................................11 4.1 Two Scenarios in the Context of the Same Reasoning Framework..........11 4.2 Two Scenarios in the Context of Two Different Reasoning Frameworks..14 4.2.1 Interaction Among Reasoning Frameworks..................................18 5 ArchE Operation............................................................................................19 5.1 Key ArchE Data Concepts.......................................................................19 5.2 Basic Activities of ArchE..........................................................................20 5.2.1 Step 1: Acquire Requirements.....................................................20 5.2.2 Step 2: Refine Scenarios.............................................................21 5.2.3 Step 3: Choose Reasoning Framework........................................21 5.2.4 Step 4: Build Quality Attribute Models..........................................22 CMU/SEI-2003-TR-021 i 5.2.5 Step 5: Build Design....................................................................23 6 Interaction Between Key Concepts and ArchE Activities...........................25 7 User Interactions with ArchE.......................................................................27 7.1 Designer’s Interactions with ArchE..........................................................27 7.1.1 Basic Interactions........................................................................27 7.1.2 Acquire Requirements.................................................................28 7.1.3 Refine Scenarios.........................................................................28 7.1.4 Choose Reasoning Framework...................................................28 7.1.5 Build Quality Attribute Models......................................................29 7.1.6 Build Design................................................................................29 7.2 System Maintainer’s Interactions with ArchE...........................................30 8 Conclusions..................................................................................................31 Appendix: Detailed Description of ArchE............................................................33 References.............................................................................................................53 ii CMU/SEI-2003-TR-021 List of Figures Figure 1: Overall Flow of ArchE..............................................................................6 Figure 2: Key Concepts of ArchE and Their Relationships...................................19 Figure 3: Blackboard Architecture of ArchE..........................................................34 CMU/SEI-2003-TR-021 iii iv CMU/SEI-2003-TR-021 List of Tables Table 1: Key Concepts and How Activities Access Them....................................25 CMU/SEI-2003-TR-021 v vi CMU/SEI-2003-TR-021

Description:
Preliminary Design of ArchE: A Software Architecture. Design Assistant. CMU/SEI-2003-TR-021. ESC-TR-2003-021. Felix Bachmann. Len Bass.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.