1 Rajeev R. Raje Andrew M. Olson Barrett R. Bryant Carol C. Burt Mikhail Auguston funded by the DoD and Office of Naval Research under the CIP/SW Program.

Slides:



Advertisements
Similar presentations
Web Services Architecture An interoperability architecture for the World Wide Service Network.
Advertisements

Web Service Architecture
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Service-Based Paradigm Anchoring the Indefinable Field Of Pervasive Computing Presenter: Vijay Dheap.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
From Natural Language Requirements to Executable Models of Software Components.
OASIS Reference Model for Service Oriented Architecture 1.0
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
A Grammatical Approach to Quality of Service Requirements Analysis for Distributed Real-Time and Embedded Systems Shih-Hsi Liu 1, Fei Cao 1, Barrett R.
Architecture-driven Modeling and Analysis By David Garlan and Bradley Schmerl Presented by Charita Feldman.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
A Model-Driven Framework for Architectural Evaluation of Mobile Software Systems George Edwards Dr. Nenad Medvidovic Center.
SIMULATING ERRORS IN WEB SERVICES International Journal of Simulation: Systems, Sciences and Technology 2004 Nik Looker, Malcolm Munro and Jie Xu.
Software Process and Product Metrics
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Web Service What exactly are Web Services? To put it quite simply, they are yet another distributed computing technology (like CORBA, RMI, EJB, etc.).
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
Chapter 7: The Object-Oriented Approach to Requirements
Formal Specification of Non-Functional Aspects in Two-Level Grammar Chunmin Yang, Beum-Seuk Lee, Barrett Bryant, Carol Burt University of Alabama at Birmingham.
UML - Development Process 1 Software Development Process Using UML (2)
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Web Services Mohamed Fahmy Dr. Sherif Aly Hussein.
A Generative and Model Driven Framework for Automated Software Product Generation Wei Zhao Advisor: Dr. Barrett Bryant Computer and Information Sciences.
1 Dr. Markus Hillenbrand, ICSY Lab, University of Kaiserslautern, Germany A Generic Database Web Service for the Venice Service Grid Michael Koch, Markus.
Web services: Why and How OOPSLA 2001 F. Curbera, W.Nagy, S.Weerawarana Nclab, Jungsook Kim.
Managing Service Metadata as Context The 2005 Istanbul International Computational Science & Engineering Conference (ICCSE2005) Mehmet S. Aktas
The UniFrame QoS (UQOS) Framework M.S. Thesis Defense, IUPUI, December Girish Brahnmath Funded by U.S. Department of Defense and the U.S. Office.
Introduction to MDA (Model Driven Architecture) CYT.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Architecting Web Services Unit – II – PART - III.
Introduction To System Analysis and Design
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
SOFTWARE DESIGN.
AMPol-Q: Adaptive Middleware Policy to support QoS Raja Afandi, Jianqing Zhang, Carl A. Gunter Computer Science Department, University of Illinois Urbana-Champaign.
Drexel University CS 451 Software Engineering Winter Yuanfang Cai Room 104, University Crossings
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
XML Web Services Architecture Siddharth Ruchandani CS 6362 – SW Architecture & Design Summer /11/05.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Independent Insight for Service Oriented Practice Summary: Service Reference Architecture and Planning David Sprott.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
IBM Software Group ® Managing Reusable Assets Using Rational Suite Shimon Nir.
1 Unified Modeling Language, Version 2.0 Chapter 2.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Lecture 21: Component-Based Software Engineering
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
DEVELOPING WEB SERVICES WITH JAVA DESIGN WEB SERVICE ENDPOINT.
A service Oriented Architecture & Web Service Technology.
 System Requirement Specification and System Planning.
TOTAL QUALITY MANAGEMENT
Chapter 1: Introduction to Systems Analysis and Design
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
XML Based Interoperability Components
The OMG Approach (continued)
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
Inventory of Distributed Computing Concepts
Tools for Composing and Deploying Grid Middleware Web Services
Baisc Of Software Testing
Quality Assurance for Component-Based Software Development
Chapter 1: Introduction to Systems Analysis and Design
From Use Cases to Implementation
Presentation transcript:

1 Rajeev R. Raje Andrew M. Olson Barrett R. Bryant Carol C. Burt Mikhail Auguston funded by the DoD and Office of Naval Research under the CIP/SW Program

2 Overview (SERC Showcase, Dec. 6, 7, 2001) Objective UniFrame Approach Parts of UniFrame UMM Standards and OMG QoS Summary

3 Objective To create a unified framework (UniFrame) that will allow a seamless integration of heterogeneous and distributed software components To create a unified framework (UniFrame) that will allow a seamless integration of heterogeneous and distributed software components

4 Sounds like“Web Services”! Service Broker Service Provider Service Requestor PublishBind Find Web Services focus is on using the Internet protocols for a messaging (SOAP/HTTP and XML), and a UDDI directory for locating services defined in WSDL

5 That leaves a lot of interesting problems… Need for a component meta-model in support of generative techniques for mappings to existing components models Need for multi-approach highly intelligent location services QoS instrumentation and metrics Unified approach to using generative techniques with strict QoS requirements Validation of dynamic system compositions

6

7 UniFrame Approach UMM Components, QoS, Infrastructure GDM Domain model, Composition/Decomposition Rules, Generative Programming TLG Formalism based two-level grammars Process For integration

8 Unified Meta-Model (UMM) Component Autonomous and non-uniform Service and its guarantees Offered by each component with QoS Infrastructure Environment –Headhunters –Internet Component Broker

9 Aspects of Components Computational Reflects the tasks carried out by an object Cooperative Expected collaborators Auxiliary Mobility, Security, Fault-tolerance

10 Service and Guarantees Each component must specify its QoS and ensure it QoS Parameter Catalog static – design oriented dynamic – run-time oriented QoS of a component/integrated DCS based on “event traces”

11 Infrastructure Head-hunters Pro-active discovery of new component Multi-level and multi-approach Internet Component Broker Allows heterogeneous components talk to one another Analogous to Object Request Broker Generated adapter technology Instrumentation as a part of the architecture

12 Architecture For Component Discovery Head-hunter S2 S4 S3 S1 RMI Registry RMI Model S6 S5 S7 S8 ORB CORBA Model S5 EJB Container EJB Model Meta-Registry Client 5 2 Domain Security Manager 5 5 Search Engine ICB Client

13 Component Development and Deployment Process TranslatorIGImpQV Domain KB UMM Spec TLG Component Implementation Satisfy? Yes NoRefine Specifications/implementations Deploy Interface Generator QoS validation

14 System Integration Query Processor System Generator Iterative Experiments UMM TLG Domain KB Query Satisfy? Yes No Refine Query Deploy HHs GDM Generative Rules Select Another option QoS Constraints

15 Leverage & Drive OMG work Infrastructure & Interoperability CORBA, CORBA Services, CCM, IIOP, COM/CORBA, SOAP/CORBA, CSIv2, Head-hunters, Internet Component Broker Validation Metrics / Instrumentation Model Driven Architecture PIM to PSM mapping Consistent with our Meta-model approach Concept of a QoS Catalog & Interface generation

16 Interoperability & Infrastructure Internet Component Broker Leverage “lessons learned” in development of orbs – standard protocol, standard component mappings & portable component adapters Leverage SOAP/CORBA and XML valuetypes Native protocol? Headhunter Use Naming/Trading, Interface Repository Need Standard Implementation Repository? Federation, Native protocol, API?

17 Model Driven Architecture We need a standard QoS catalog for Model Driven Architectures Static – design oriented Dynamic – runtime oriented We need to standardize the way that QoS parameters are used to generate interfaces (static QoS) We need to standardize how QoS parameters are used for generated instrumentation (dynamic QoS)

18 Quality of Service Reference Model A general categorization of different kinds of QoS; including QoS that are fixed at design time as well as ones that are managed dynamically Identification of the basic conceptual elements involved in QoS and their mutual relationships. This involves the ability to associate QoS parameters to model elements (specification)

19 Qualify of Service Parameters These are parameters that describe the fundamental aspects of the various specific kinds of QoS based on the QoS categorization identified in the reference model. This includes but is not limited to the following: time-related characteristics (delays, freshness) importance-related characteristics (priority, precedence) capacity-related characteristics (throughput, capacity) integrity related characteristics (accuracy) safety-related characteristics availability and reliability characteristics

20 QoS Catalog Motivation: Creation of a QoS Catalog for Software Components would help the component developer by: Acting as a reference manual for incorporating QoS attributes into the components being developed Allowing him to enhance the performance of his component in an iterative fashion by being able to quantify their QoS attributes Enable him to advertise the Quality of his components by utilizing the QoS metrics.

21 QoS Catalog The system developer by Enabling him to specify the QoS requirements of the components that are incorporated into his system Allowing him to verify and validate the claims of the component developer Allowing him to make an objective comparison of Quality of components having the same functionality Empower him with the means to choose the best suited components for his system

22 QoS Catalog The catalog is broadly based upon the software patterns catalog. The catalog follows the following format: Name Intent Description Motivation Applicability Model Used Metrics Used Error Situation Aliases Influencing Factors Evaluation Procedure Evaluation Formulae Result Type Static / Dynamic Consequence Related Parameters Domain of Usage Resources

23 QoS Catalog Incorporation of methodologies into the catalog is made based on their: Reproducibility Indicativeness (capability to identify parts of the component which need to be improved) Correctness Objectivity Precision Meaningfulness of measure Suitability to the component framework Error Situation Aliases Resources

24 QoS Catalog Name: DEPENDABILTY Intent: It is a measure of confidence that the component is free from errors. Description: It is defined as the probability that the component is defect free. Motivation: It allows an evaluation of degree of Dependability of a given component. It allows Dependability of different components to be compared. It allows for modifications to a component to increase its Dependability. Applicability: Can be used in any system, which requires its components to offer a specific level of dependability. Using the model, the Dependability of a given component can be calculated before being incorporated into the system. Model Used: Dependability model by Jeffrey Voas Metrics used: Testability Score, Dependability Score Testability is a measure of the likely hood that a particular statement in a component will hide a defect during testing.

25 QoS Catalog Influencing Factors: 1.Degree of testing 2.Fault hiding ability of the code 3.The likelihood that a statement in a component is executed 4.The likelihood that a mutated statement will infect the component’s state 5.The likelihood that a corrupted state will propagate and cause the component output to be mutated Evaluation Procedure: 1.Perform Execution Analysis on the component 2.Perform Propagation Analysis on the component 3.Calculate the Testability value of each statement in the component 4.From the Testability scores of each statement of the component; Select the lowest score as the Testability score of the component 5.Calculate the Dependability Score of the Component

26 QoS Catalog Evaluation Formulae:  T = E * P T  Testability Score E  Execution Estimate P  Propagation Estimate  D = 1-(1-T) N D  Dependability Score N  Number of successful tests Result Type: Floating Point Value between 0 to 1 Static/Dynamic: Static Consequence: 1.Greater amounts of testing and greater Testability scores result in greater Dependability 2.Lower amounts of testing and lower Testability scores result in lesser Dependability 3.Doing additional testing can improve a poor score

27 QoS Catalog 4.Lesser amount of testing is required to provide a fixed dependability score for higher Testability Scores Related Parameters: Availability, Error Rate, Stability Domain of Usage: Domain Independent Error Situation: Low dependability results in: 1. Unreliable component behavior. 2. Improper execution/termination. 3. Erroneous results. Aliases: Maturity, Fault Hiding Ability, Degree of Testing

28 Summary of Approach Address key issues that need to be resolved to assist organizations to manage their distributed software systems Meta-model allows a seamless integration of heterogeneous components Formal specifications assist in automated construction and verification of parts and the whole of a distributed computing system (DCS) Support a unified approach to iterative as a pragmatic solution for software development of DCS Incorporation and validation of QoS implies the creation of more reliable DCS Interactions with the industry and standards organizations provide practical feedback and enable proliferation of research results in a timely manner

29 Salient Features A meta-model and a unified approach QoS-based generative process Generation based on distributed resources in the form of components – use of HHs Event grammars for dynamic QoS metrics Automation (to the extent feasible) for system generation

30 Webpage