1 Toward a Modeling Theory for Predictable Complex Software Designs by Levent Yilmaz Auburn Modeling and Simulation Laboratory Department of Computer Science.

Slides:



Advertisements
Similar presentations
Architecture-based Evolution of Software Systems José Luiz Fiadeiro Architecture-based Evolution of Software Systems Luís Andrade João Gouveia Georgios.
Advertisements

The Adaptive Agent Model Liang Xiao and Des Greer School of Computer Science, Queen's University Belfast, Northern Ireland, UK Software Adaptivity through.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Agent-Based Modeling PSC 120 Jeff Schank. Agent-Based Modeling What Phenomena are Agent-Based Models Good for? What is Agent-Based Modeling (ABM)? What.
Architecture Representation
Kellan Hilscher. Definition Different perspectives on the components, behavioral specifications, and interactions that make up a software system Importance.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 43 Introduction to Software Engineering.
April “ Despite the increasing importance of mathematics to the progress of our economy and society, enrollment in mathematics programs has been.
Zach Ramaekers Computer Science University of Nebraska at Omaha Advisor: Dr. Raj Dasgupta 1.
Network Morphospace Andrea Avena-Koenigsberger, Joaquin Goni Ricard Sole, Olaf Sporns Tung Hoang Spring 2015.
Π-Method: A Model-Driven Formal Method for Architecture- Centric Software Engineering By Flavio Oquendo Presented by: Sajith Wickramaratne.
21-February-2003cse Architecture © 2003 University of Washington1 Architecture CSE 403, Winter 2003 Software Engineering
Modeling and Validation Victor R. Basili University of Maryland 27 September 1999.
Simulation Models as a Research Method Professor Alexander Settles.
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
Strategic Directions in Real- Time & Embedded Systems Aatash Patel 18 th September, 2001.
Software Architecture in Practice
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Department of Computer Science & Engineering College of Engineering Dr. Betty H.C. Cheng, Laura A. Campbell, Sascha Konrad The demand for distributed real-time.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Architectural Design.
Using Runtime Information for Adapting Enterprise Java Beans Application Servers Mircea Trofin *, John Murphy ** Performance Engineering Laboratory * DCU,
Introduction to Discrete Event Simulation Customer population Service system Served customers Waiting line Priority rule Service facilities Figure C.1.
P systems: A Modelling Language Marian Gheorghe Department of Computer Science University of Sheffield Unconventional Programming Paradigms; Sept’04.
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
© Yilmaz “Agent-Directed Simulation – Course Outline” 1 Course Outline Dr. Levent Yilmaz M&SNet: Auburn M&S Laboratory Computer Science &
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
Basic Concepts Software Architecture. What is Software Architecture? Definition: – A software architecture is the set of principal design decisions about.
Future & Emerging Technologies in the Information Society Technologies programme of European Commission Future & Emerging Technologies in the Information.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Emergent Robustness in Software Systems through Decentralized Adaptation: an Ecologically-Inspired ALife Approach Franck Fleurey, Benoit Baudry, Benoit.
1 SAM ‘08 © 2008, Dewayne E PerryICSE ’08 – Leipzig, Germany Composable Context-Aware Architectural Connectors Christine Julien Dewayne Perry.
1 Introduction to Software Engineering Lecture 1.
Combining Theory and Systems Building Experiences and Challenges Sotirios Terzis University of Strathclyde.
Systems Biology ___ Toward System-level Understanding of Biological Systems Hou-Haifeng.
Team TFY (Think For You).  Problems we want to solve  What we showed last time  Our new solutions now  Our feature list  Issues identified so far.
Understanding and using patterns in software development EEL 6883 Software Engineering Vol. 1 Chapter 4 pp Presenter: Sorosh Olamaei.
Formal Specification and Analysis of Software Architectures Using the Chemical Abstract Machine Model CS 5381 Juan C. González Authors: Paola Inverardi.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Software Architecture in the Future 1960s. Assembly languages, subroutines, semicolon as connectors 1970s. Structuring of programs to achieve qualities.
09/30/08www.rapid-innovation.com1 Lead thru Nemetics (Modeling) Leveraging ‘Wicked’ Problems to Improve Performance dibyendu An Approach.
Basic Concepts and Definitions
Dynamics of Competition Between Incumbent and Emerging Network Technologies Youngmi Jin (Penn) Soumya Sen (Penn) Prof. Roch Guerin (Penn) Prof. Kartik.
Systems Architectures System Integration & Architecture.
Getting the Architecture Right Jeffrey D. Taft, PhD Chief Architect for Electric Grid Transformation Pacific Northwest National Laboratory March 17, 2016.
Basic Concepts of Software Architecture. What is Software Architecture? Definition: – A software system’s architecture is the set of principal design.
Chapter 9 Architectural Design. Why Architecture? The architecture is not the operational software. Rather, it is a representation that enables a software.
Agent-Based Modeling ANB 218a Jeff Schank.
Luca Pazzi, Marco Pradelli University of Modena and Reggio Emilia
UML Diagrams By Daniel Damaris Novarianto S..
The Object-Oriented Database System Manifesto
Chapter 13 Architectural Design
Presented by Munezero Immaculee Joselyne PhD in Software Engineering
Chapter 13 Architectural Design
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Model-Driven Analysis Frameworks for Embedded Systems
Software Connectors – A Taxonomy Approach
Jian Huang, Matthew Parris, Jooheung Lee, and Ronald F. DeMara
Chapter 9 Architectural Design
Student Awards and Pi Mu Epsilon Ceremony
Christophe Dubach, Timothy M. Jones and Michael F.P. O’Boyle
What would be our focus ? Geometry deals with Declarative or “What is” knowledge. Computer Science deals with Imperative or “How to” knowledge 12/25/2018.
Architecture Description Languages
An Introduction to Software Architecture
Chapter 9 Architectural Design.
What would be our focus ? Geometry deals with Declarative or “What is” knowledge. Computer Science deals with Imperative or “How to” knowledge 2/23/2019.
Automated Analysis and Code Generation for Domain-Specific Models
Presented By: Darlene Banta
Presentation transcript:

1 Toward a Modeling Theory for Predictable Complex Software Designs by Levent Yilmaz Auburn Modeling and Simulation Laboratory Department of Computer Science & Engineering Auburn University Auburn, AL 36849

2  Predictability: Toward a Modeling Theory for Predictable Complex System Designs  Off-Line Prediction with Model-Based Reasoning  On-Line Prediction: Exploratory Multisimulation of Alternative Designs with On-line Model Recommenders

3 Predicting the Behavior of “Possible” Systems using Simulation Modeling Motivation: Large complex systems constantly evolve and their maintenance involves predicting and reasoning about the behavioral impacts of changes (i.e., substitutions) and alternative design organizations. –The Need: Need to compare design alternatives by analyzing the options of many possible systems, for which simulations may or may not yet have been built; hence may not be empirically studied. Problem: Can simulation modeling excite an emerging prospect for developing a software design theory that supports off-line, as well as on-line exploration and reasoning about the behavior of “possible” systems? Proposed Strategy: A hybrid approach that combines model-based reasoning with dynamic exploratory multisimulations to facilitate “effective” analysis for predictable design evolution.

4 Off-Line Prediction: Modular Reasoning about Complex Software-Intensive Systems Designing systems as assemblies of standard component models whose behaviors are already understood in isolation. System’s behavior must be understood using the component models and their local interconnections. Approach: –Describe the behavior of each simulation model component in isolation using a mathematical model. –Use the connections among components that depict the composition style and mathematical models of model components to derive a mathematical model of the behavior of the system as a whole. –Enforce the property that mathematical model of the behavior of the system involves modular composition of the mathematical models of components.

5 Component-Connector Approaches At best an ad-hoc, non-uniform framework for composition rule and behavioral reasoning. Computed properties are features of the global system. No leverage for “effective” modular reasoning.

6 A Different Taxonomy: Reexamining the System Entity-Structure/MB Framework P2P2 P1P1 P2P2 AABA B A B P1P1 AABA B Develop a mathematical model that captures system properties of interest. Determine components (operands) and operators. Syntax rule: Bind actual parameters to formal parameters. Behavioral rule: Templates are functions applied to mathematical model of components. AA P1P1 P1P1 P1P1 P1P1 P1P1 P1P1

7 Parametric Simulation with DEVS Templates L AA S S B S A B A2B1A1A3 L S S S S1 LL1 L2 Simulation Templates Concrete components B2 simulates Abstract Template Abstract Component simulates

8 On-Line Prediction: Multisimulation of Alternative Design Configurations with Model Recommenders Multisimulation is dynamic, exploratory, and simultaneous experimentation with alternative design configurations. Given that complex, dynamically reconfigurable, distributed systems that operate in unpredictable context are common in today’s component-based mission-critical systems, Multisimulation with model recommenders can be useful in at least two ways: Design Time: Simultaneous run-time exploration of the utility and effectiveness of alternative design decisions (i.e., configurations) under emerging conditions. After Deployment: Symbiotic simulation to support making recommendations on possible system configurations that help achieve or optimize quality objectives of interest.

9 Thank you