Challenges Ahead 1 Middleware: State of the Art and Challenges Ahead  Changing environment  Enterprise application integration: formerly independent.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Distributed Systems Architectures Slide 1 1 Chapter 9 Distributed Systems Architectures.
Advertisements

Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Software Reuse SEII-Lecture 28
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
Distributed components
6/4/2015Page 1 Enterprise Service Bus (ESB) B. Ramamurthy.
Technical Architectures
Distributed Systems Architectures
1 Quality Objects: Advanced Middleware for Wide Area Distributed Applications Rick Schantz Quality Objects: Advanced Middleware for Large Scale Wide Area.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
DARPA Dr. Douglas C. Schmidt DARPA/ITO Towards Adaptive & Reflective Middleware for Combat Systems Wednesday, June 24, 2015 Authorized.
- 1 - Component Based Development R&D SDM Theo Schouten.
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Reuse Activities Selecting Design Patterns and Components
26th May, Middleware or Simulator for Autonomic Communications Yang Qiu Networking Laboratory Helsinki University of Technology
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
23 September 2004 Evaluating Adaptive Middleware Load Balancing Strategies for Middleware Systems Department of Electrical Engineering & Computer Science.
Enterprise Resource Planning
QoS-enabled middleware by Saltanat Mashirova. Distributed applications Distributed applications have distinctly different characteristics than conventional.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Quality Assurance for Component- Based Software Development Cai Xia (Mphil Term1) Supervisor: Prof. Michael R. Lyu 5 May, 2000.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Univ. Notre Dame, September 25, 2003 Support for Run-Time Adaptation in RAPIDware Philip K. McKinley Software Engineering and Networking Systems Laboratory.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
1 소프트웨어공학 강좌 Chap 9. Distributed Systems Architectures - Architectural design for software that executes on more than one processor -
B.Ramamurthy9/19/20151 Operating Systems u Bina Ramamurthy CS421.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Composing Adaptive Software Authors Philip K. McKinley, Seyed Masoud Sadjadi, Eric P. Kasten, Betty H.C. Cheng Presented by Ana Rodriguez June 21, 2006.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
Service Oriented Architectures Presentation By: Clifton Sweeney November 3 rd 2008.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Introduction Infrastructure for pervasive computing has many challenges: 1)pervasive computing is a large aspect which includes hardware side (mobile phones,portable.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Investigating Survivability Strategies for Ultra-Large Scale (ULS) Systems Vanderbilt University Nashville, Tennessee Institute for Software Integrated.
Cracow Grid Workshop ‘06 17 October 2006 Execution Management and SLA Enforcement in Akogrimo Antonios Litke Antonios Litke, Kleopatra Konstanteli, Vassiliki.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
CORBA1 Distributed Software Systems Any software system can be physically distributed By distributed coupling we get the following:  Improved performance.
Dynamic Synthesis of Mediators in Pervasive Environments Amel Bennaceur supervised by Valérie Issarny ARLES 14 February 2012, Junior Seminar, INRIA.
Group member: Kai Hu Weili Yin Xingyu Wu Yinhao Nie Xiaoxue Liu Date:2015/10/
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Towards a Holistic Approach for Integrating Middleware with Software Product Lines Research Institute for Software Integrated Systems Dept of EECS, Vanderbilt.
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Lecture 21: Component-Based Software Engineering
Enterprise Computing Distribution and components.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
©Ian Sommerville 2000, Tom Dietterich 2001 Slide 1 Distributed Systems Architectures l Architectural design for software that executes on more than one.
Problem On a regular basis we use: –Java applets –JavaScript –ActiveX –Shockwave Notion of ubiquitous computing.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distribution and components
Inventory of Distributed Computing Concepts and Web services
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
Service Oriented Architecture (SOA)
Introduction to SOA and Web Services
In Distributed Systems
Presentation transcript:

Challenges Ahead 1 Middleware: State of the Art and Challenges Ahead  Changing environment  Enterprise application integration: formerly independent applications must interaction to access and share functions and data store in heterogeneous DB  Internet applications  The number of users may fluctuate and be unpredictable  A stateful user session ins harder to maintain  Interacting parties belong to independent autonomous organizations that do not necessarily trust each other; insecure medium;  Communication infrastructure does not provide QoS guarantees  Open environment, need common ontologies  New application interoperate seamlessly with legacy applications  QoS  Nomadic mobility  Ubiquitous computing

Challenges Ahead 2 Middleware: State of the Art and Challenges Ahead  Programming models  Client-Server???  Asynchronous interaction  Shared memory  Mobile code and mobile agents  Architecture  Distribution transparency ???  Layering ???  Monolithic architectures (no adaptation, customization)  Dynamic Configuration  Disconnected operation  Adaptive applications  Ad hoc organization  intermediaries

Challenges Ahead 3 Middleware: State of the Art and Challenges Ahead  Middleware  Shield software developers from low-level details  Amortize software lifecycle, providing reusable framework  Provide a consistent set of higher-level network-oriented abstractions  Provide a wide array of reusable services  Layered structure of middleware  Host infrastructure middleware  Distribution middleware  Common middleware services  Domain-specific middleware services

Challenges Ahead 4 Host infrastructure middleware  Encapsulates and enhances native OS communication and concurrency mechanisms to create reusable network programming components.  Java Virtual Machine .Net  ACE

Challenges Ahead 5 Distribution Middleware  Enable clients to program distributed application much like stand-alone applications by invoking operation son target objects without hard-coding dependencies of their location, programming language, OS platform, …  CORBA  RMI  DCOM  SOAP

Challenges Ahead 6 Common Middleware Services  Augment distribution middleware by defining higher-level domain-independent services that allow application developers to concentrate on programming business logic, without the need to write the “plumbing” code required to develop distributed applications by using lower-level middleware  CORBA common object services, event notification, transaction, etc.,  J2EE .Net Web Service

Challenges Ahead 7 Domain-Specific Middleware Services  Service targeted at vertical markets, such as telecom, e- commerce, healthcare  The Siemens Medical Engineering Group: Syngo  The Boeing Bold Stroke architecture uses COTS hardware and middleware to produce a non-proprietary, standards-based component architecture for military avionic mission computing capabilities

Challenges Ahead 8 Areas of Focus  Growing focus on integration rather than on programming  Next generation applications will increasingly be assembled by modeling, integrating, and scripting domain-specific and common service components, rather than by being programmed either entirely from scratch or requiring significant customization or augmentation to off-the-shelf component implementations.  Increased viability of open systems architectures and open- source availability  Standard interfaces  Increased leverage for disruptive technologies leading to increased global competition  Growing focus on real-time embedded environments integrating computational and real world physical assets

Challenges Ahead 9 Research Challenges and Strategies  Cause of complexity  Discrete platforms must be scaled to provide seamless end-to-end solutions  Components are heterogeneous yet they need to be integrated seamlessly  Most failures are only partial in that they effect subsets of the distributed components  Operating environments and configurations are dynamically changing  large-scale systems must operate continuously, even during upgrades  End-to-end properties must be satisfied in time and resource constrained environments  Maintaining system-wide QoS concerns is expected

Challenges Ahead 10 Quality Object (QuO)  The QuO architecture decouples DOC middleware and applications along the following two dimensions:  Functional path:  Flows of information between client and remote server applications.  The middleware ensures that this information is exchanged efficiently, etc.  Information is largely application-specific and determined by the functionality being provided.  QoS attribute path:  Responsible for determining how well the functional interactions behave end-to- end with respect to key distributed system QoS properties  The middleware is responsible for collecting, organizing, and disseminating QoS- related meta-information that is needed to monitor and manage how well the functional interaction occur, and enable the adaptive and reflective decision-making needed to support QoS attribute properties in the face of rapidly changing environmental conditions.

Challenges Ahead 11 Systems of Systems  Desired properties:  Predictability, controllability, and adaptability of operating characteristics for applications with respect to such features as time, quantity of information, accuracy, confidence, and synchronization.

Challenges Ahead 12 Specific R&D Challenges  Providing end-to-end QoS support, not just component-level QoS  Adaptive and reflective solutions that handle both variability and control  Adaptive middleware is software whose functional and QoS-related properties can be modified either statically, or dynamically  Reflective middleware permits automated examination of the capabilities it offers and permits automated adjustment to optimize those capabilities.  Reflective middleware supports more advanced adaptive behavior and more dynamic strategies keyed to current circumstances, ie.., necessary adaptations can be performed autonomously based on conditions within the system, in the system’s environment or in system QoS policies defined by end-user

Challenges Ahead 13 Specific R&D Challenges  Combining model-integrated computing with DOC middleware  Toward more universal use of standard middleware  Leveraging and extending the installed base

Challenges Ahead 14 Fundamental Research Concepts  Contracts and adaptive meta-programming  Graceful degradation  Multiple behaviors are both feasible and desirable  Feedback loops so that the application services can degrade gracefully as condition change  Prioritization and physical world constrained load invariant performance  Higher level design approaches, abstractions, and software development tools

Challenges Ahead 15 Promising Research Strategies  Individual QoS requirements  Translation of requests for service among and between the various entities on the distributed end-to-end path  Managing the definition and selection of appropriate applicati0n functionality and system resource tradeoffs with a “fuzzy” environment and  Maintaining the appropriate behavior under composability  Runtime requirements  Addresses the need for run-time monitoring, feedback and transition mechanisms to change application and system behavior, e.e., through dynamic reconfiguration, orchestrating degraded behavior or even off-line recompilation.

Challenges Ahead 16 Promising Research Strategies  Aggregate Requirements  Addresses the system view of collecting necessary information over the set of resources across the system and providing resource management mechanisms and policies that are aligned with the goals of the system as a whole.  Reservations  Admission control mechanisms  Enforcement mechanism with appropriate scale, granularity and performance  Coordinated strategies and policies to allocate distributed resources that optimize various properties  Integration Requirements  Address the need to develop interfaces with key building blocks used for system construction, including the OS, network management, etc..

Challenges Ahead 17 Promising Research Strategies  Adaptivity requirements  Changes beneath the applications to continue to meet the required service levels despite changes in resource availability;  Changes at the application level to either react to currently available levels of service or request new ones under changed circumstances  System Engineering Methodologies and Tools  View-oriented or aspect-oriented programming techniques to support the isolation and the composition  Design time tools and model-integrated computing technologies to assist system developers in understanding their designs  Interactive tuning tools to overcome the challenges associated with the need for individual pieces of the system to work together in a seamless manner  Composability tools to analyze resulting QoS from combining two or more individual components  Modeling tools for developing system performance model  Debugging tools

Challenges Ahead 18 Promising Research Strategies  Adaptivity requirements  Changes beneath the applications to continue to meet the required service levels despite changes in resource availability;  Changes at the application level to either react to currently available levels of service or request new ones under changed circumstances  System Engineering Methodologies and Tools  View-oriented or aspect-oriented programming techniques to support the isolation and the composition  Design time tools and model-integrated computing technologies to assist system developers in understanding their designs  Interactive tuning tools to overcome the challenges associated with the need for individual pieces of the system to work together in a seamless manner  Composability tools to analyze resulting QoS from combining two or more individual components  Modeling tools for developing system performance model  Debugging tools