Exception Handling in Component – Based Software Systems

Slides:



Advertisements
Similar presentations
Identification of Distributed Features in SOA Anis Yousefi, PhD Candidate Department of Computing and Software McMaster University July 30,
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 2.
EECE499 Computers and Nuclear Energy Electrical and Computer Eng Howard University Dr. Charles Kim Fall 2013 Webpage:
© Devon M.Simmonds, 2007 CSC 550 Graduate Course in Software Engineering ______________________ Devon M. Simmonds Computer Science Department University.
1 Reversibility for Recoverability Ivan Lanese Computer Science Department FOCUS research group University of Bologna/INRIA Bologna, Italy.
CUSTOMER FOCUS COMMITMENT QUALITY PLATINUM PARTNER 1 Click to edit Master title style rewferwfff CUSTOMER FOCUS COMMITMENT QUALITY PLATINUM PARTNER 1 Oracle.
Component-based Software Engineering Marcello Bonsangue LIACS – Leiden University Fall 2005 Component Model Comparison.
An Introduction to UML & Modeling Resources Using UML Rahul Shah EE249 Discussion Sept. 25, 2001.
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
Analyzing different protocols for E-business 1 Fatma Sayed Gad Elrab Supervisors Prof. Dr. Ezzat abd El Tawab Korany Dr. Saleh Abdel Shachour El Shehaby.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
Software Faults and Fault Injection Models --Raviteja Varanasi.
Quality Assurance for Component- Based Software Development Cai Xia (Mphil Term1) Supervisor: Prof. Michael R. Lyu 5 May, 2000.
Pattern Oriented Software Architecture for Networked Objects Based on the book By Douglas Schmidt Michael Stal Hans Roehnert Frank Buschmann.
Software Component Technology and Component Tracing CSC532 Presentation Developed & Presented by Feifei Xu.
Component Architecture (CORBA – RMI) -Shalini Pradhan.
Chapter 11: Software Prototyping Omar Meqdadi SE 273 Lecture 11 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Jon Perez, Mikel Azkarate-askasua, Antonio Perez
Control in ATLAS TDAQ Dietrich Liko on behalf of the ATLAS TDAQ Group.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Explore Patterns in Context-Aware Applications --Using Reactor Pattern to Develop In/Out Board Fall 2002 Yu Du.
Transaction Services in Component Frameworks Bruce Kessler Comp250CBS March 2, 2004.
Yuhui Chen; Romanovsky, A.; IT Professional Volume 10, Issue 3, May-June 2008 Page(s): Digital Object Identifier /MITP Improving.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
CprE 458/558: Real-Time Systems
“Dynamic fault handling mechanisms for service-oriented applications” Fabrizio Montesi, Claudio Guidi, Ivan Lanese and Gianluigi Zavattaro Department of.
Topics Covered: Software testing Software testing Levels of testing Levels of testing  Unit testing Unit testing Unit testing  Integration testing Integration.
Software Prototyping Rapid software development to validate requirements.
1 Joint work with Claudio Antares Mezzina and Jean-Bernard Stefani Controlled Reversibility and Compensations Ivan Lanese Focus research group Computer.
A Mediated Approach towards Web Service Choreography Michael Stollberg, Dumitru Roman, Juan Miguel Gomez DERI – Digital Enterprise Research Institute
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Secure middleware patterns E.B.Fernandez. Middleware security Architectures have been studied and several patterns exist Security aspects have not been.
Karlstad University Computer Science Design Contracts and Error Management External and internal errors and their contracts.
A Survey of Fault Tolerance in Distributed Systems By Szeying Tan Fall 2002 CS 633.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
Control-Theoretic Approaches for Dynamic Information Assurance George Vachtsevanos Georgia Tech Working Meeting U. C. Berkeley February 5, 2003.
An Evolutional Cooperative Computation Based on Adaptation to Environment Naoyasu UBAYASHI and Tetsuo TAMAI Graduate School of Arts and Sciences University.
Week#3 Software Quality Engineering.
ORACLE SOA 11g ONLINE TRAINING
CompSci 280 S Introduction to Software Development
J. Gutleber, L. Orsini, 2005 March 15
Software Prototyping.
An Overview of Requirements Engineering Tools and Methodologies*
Testing Tutorial 7.
Embracing Failure: A Case for Recovery-Oriented Computing
Chapter 2 Database System Concepts and Architecture
Architecture Concept Documents
The Web Application Development Process Models
Software Requirements
Rigorous Development Of a Safety-Critical System Based on Coordinated Atomic Actions By Subash M S.
Chapter 16 – Software Reuse
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
EECE 310 Software Engineering
IMPORTANT NOTICE TO STUDENTS:
Fault Tolerance Distributed Web-based Systems
UML profiles.
System Testing.
Fault Tolerance Distributed
Hardware Assisted Fault Tolerance Using Reconfigurable Logic
Quality Assurance for Component-Based Software Development
Ninth step for Learning C++ Programming
Chapter 16 – Software Reuse
Tenth step for Learning C++ Programming
Design Yaodong Bi.
Design.
CS 491z / CS 791z Topics on Software Engineering
Seminar on Enterprise Software
Model-based Adaptation for Self-Healing Systems David Garlan, Bradley Schmert ELSEVIER Sciences of Computer Programming 57 (2005) 이경렬
Presentation transcript:

Exception Handling in Component – Based Software Systems TERM PAPER (CSC 532:Adv. Topics in Software Engineering; Fall – 2003) - By Rahul Goutham Gundala. Louisiana Tech University

Introduction What is Component Based Software Development? The problems of CBSD. Proposed Solution.

Frame Work Create wrappers that perform local error detection and exception handling. Identify atomic actions in which components take part and configure the system. Design action level exception handling for integrated system.

Exception Handling Exception: An unusual event in the program. Exception handling: Structuring mechanism to distinguish b/n normal and abnormal behavior in system. Two types: Internal and External.

Local Error Detection and Exception Handling Designed for each component in the system. Looks as follows: W  Wrapper C  Component Incorporate damage assessment. Try to handle exception locally at the standard interface. Signal all exceptions in a unified manner to the environment.

Atomic Actions Are structuring units which hide intermediate steps of state and behavior changes. They create the dynamic system behavior. Actions can be nested so that they structure recursive systems. No information is allowed outside the action boundary. They provide fault tolerance for handling hardware faults, design faults, transient faults and environment faults.

Integrated System from Atomic Actions Atomic actions form sound basis for integrated system as they support recursion. Several participants enter and leave actions as below: If local handling does not succeed then the exception is propagated to the Action level from the inner components.

Action oriented Exception Handling Several components can be combined as below to form actions: When an error is detected all participants are involved in the action level exception handling as the local exception handling cannot resolve the problem. Action level recovery suits well to recovering component systems because the component results are usually committed and it is not always possible to abort them, so there is a need in using system level compensation.

Proposed Implementation Local error detection and handling are implemented as component wrappers. The wrapping technologies are termed interceptors in CORBA and DCOM+, and proxies in CORBA3 and Enterprise JavaBeans. …contd

Proposed Implementation In CORBA the integrated system can be designed as follows: Many other languages like Ada, Java, CSP, OCCAM also support the implementation of wrappers.

Conclusion Describes about a framework for embedding structured exception handling into component-based system development that relies on two level exception handling: the component level and the integrated system level. Highlights local error detection as a part of the framework and discusses the specific sources of errors to help in developing software to perform this functionality. Proposes an idea of developing local error detection and local exception handling using the existing wrapper techniques. ...contd

Conclusion Outlines a schematic approach to designing wrappers incorporating local error detection and exception handling. Advises of using the well-established concept of atomic actions to structure integrated systems and to incorporate exception handling at the system level in a disciplined and systematic way. Emphasizes possible approaches to implementing the framework support within the standard component technologies.

References R.H. Campbell, B. Randell. Error Recovery in Asynchronous Systems. IEEE TSE-12, 8 (1986) 811-826. A.Romanovsky, A.F. Zorzo. On Distribution of Coordinated Atomic Actions. ACM Operating Systems Review, 31, 5 (1997) 70-78. F. Cristian. Exception Handling and Tolerance of Software Faults. In Software Fault Tolerance, Lyu, M. (ed.). Wiley (1995) 81-107. Romanovsky, A., Exception handling in Component Based systems., 2001, University of New Castle, UK . http://www.csr.ncl.ac.uk