Search-based Optimization of Cyber-Physical System Software Deployment - PowerPoint PPT Presentation

About This Presentation
Title:

Search-based Optimization of Cyber-Physical System Software Deployment

Description:

Searchbased Optimization of CyberPhysical System Software Deployment – PowerPoint PPT presentation

Number of Views:141
Avg rating:3.0/5.0
Slides: 68
Provided by: dreVand
Category:

less

Transcript and Presenter's Notes

Title: Search-based Optimization of Cyber-Physical System Software Deployment


1
Search-based Optimization of Cyber-Physical
System SoftwareDeployment Configuration
Dr. Christopher Jules White jules_at_dre.vanderbilt.
edu www.dre.vanderbilt.edu/jules/ Research
Assistant Professor Vanderbilt University
Nashville, Tennessee
Presented at the University of Alabama,
Birmingham, February 2nd, 2009
Sponsors NSF, Air Force Research Lab, Lockheed
Martin Advanced Technology Lab, Raytheon,
Siemens Corporate Research
2
Cyber-Physical Systems Quality of Service
  • A Cyber-Physical System (CPS) involves close
    coordination between the system's computational
    physical elements 
  • CPS applications areessential in mission-
    safety-critical domains, such as aerospace,
    automotive, chemical processes, civil
    infrastructure, energy, entertainment,
    healthcare, manufacturing, transportation
  • CPS applications must adhere to complex sets of
    Quality of Service (QoS) constraints, such as
    real-time scheduling, to ensure safety
    efficiency

3
QoS Constraints Make Manual CPS Design Hard
Safety Constraints
Fault-tolerance Constraints
Resource Constraints
Real-time Scheduling Constraints
Cost Constraints
  • A key problem in developing CPS systems is that
    the large number of stringent QoS constraints
    the need for optimization make it hard for
    developers to manually find valid/optimized
    design solutions
  • We need intelligent modeling automation
    techniques to help developers find solutions to
    these hard CPS design problems

4
Open Deployment Configuration Problems in CPS
Automated Software Configuration
Software Configuration Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 1 How to automate the configuration of
software components to meet resource constraints
optimize a linear function at scale? (Past Work)
5
Open Deployment Configuration Problems in CPS
Fault-tolerance Constraints
Real-time Scheduling Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 2 How can the software deployment to
processors in CPS be automated optimized at
scale? (Ongoing / Emerging Work)
6
Open Deployment Configuration Problems in CPS
Real-time Scheduling Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 3 How can the software deployment
configuration be optimized in tandem to meet
real-time scheduling, resource, fault-tolerance
constraints? (Future Work)
7
Summary of My Research Area
Search-based Automation
Software Deployment Configuration at Scale
Modeling
My work focuses on using modeling search-based
automation to decrease the complexity of CPS
software deployment configuration My work
spans the gamut of theory, tools,
experimentation at scale
8
Open Deployment Configuration Problems in CPS
Automated Software Configuration
Software Configuration Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 1 How to automate the configuration of
software components to meet resource constraints
optimize a linear function at scale? (Past Work)
9
Problem 1 Goal Roadmap
  • Goal Help designers automate the completion of
    partial software configurations for large-scale
    systems
  • Context CPS Software Product Lines

Goal
Challenges
Solution
Evaluation
CPS Configuration
10
Problem 1 Automated CPS Software Configuration
CPS Conf
CPS SPLs
Feature Models
Automated Conf.
Poor Deployment Configuration
Good Deployment Configuration
  • Key Challenges
  • CPS applications can have 100s to 1,000s of
    components constraints making finding ANY valid
    configuration hard
  • Optimization is critical, e.g., differences of a
    few can translate into millions of in
    additional costs or drastic differences in QoS
  • The configuration can have a substantial impact
    on QoS

11
Software Product-lines
CPS Conf
CPS SPLs
Feature Models
Automated Conf.
Conf. 3
Conf. 2
Software Product Line
Configuration 1
  • Software Product Lines (SPLs) create software
    that can be reconfigured for new requirement sets
  • The configuration rules for the software are
    capture in a model
  • Development is done via configuration rather than
    coding or ad hoc reuse

12
Feature Model Configuration Grammar
CPS Conf
CPS SPLs
Feature Models
Automated Conf.
Automobile Variability in a Feature Model
  • Feature Models have become a widely accepted
    modeling standard to specify SPL configuration
    rules
  • Software variabilities increments of
    functionality are modeled as features
  • Feature models are a tree-like arrangement of
    features constraints between features
  • Configurations of SPL variants are described as
    feature selections

13
Goal Helping Designers via Configuration
Automation
CPS Conf
CPS SPLs
Feature Models
Automated Conf.
Goal
  • User manually selects desired features
  • User specifies key constraints that must be
    adhered to, such as resource limits
  • Intelligent automation determines how to optimize
    the selection of the remaining features adhere
    to constraints

Automation selects the remaining 980 features
The user selects the 20 important features
14
Problem 1 Challenge Roadmap
  • Challenges
  • Configuration scale
  • Multiple models
  • Mixed resource configuration constraints
  • Limitations of Existing Solutions

Goal
Challenges
Solution
Evaluation
15
Challenge 1.1 Scalable Automated Configuration
Automobile feature model has 1,000s of features
memory cost constraints
Automobile Software 5K Features
  • Selecting a valid set of features that satisfies
    a resource constraint is NP-Hard
  • It is estimated that current cell phones have 1
    million lines of code
  • Automobiles are estimated to have 100s of
    millions of lines of codes
  • Defense system software repositories are also
    growing dramatically

Large-scale problems most need automation to
reduce complexity!
16
Challenge 1.2 Multi-model Automated Configuration
..
Brake Controller
GPS Navigation
  • In production CPS environments, the problem is
    even harder
  • We have multiple independent applications sharing
    the same resources, such as memory
  • Each application is represented by an independent
    feature model
  • The feature selections across all feature models
    must satisfy the resource constraints

17
Challenge 1.3 Mixed Resource/Configuration
  • Can we just turn this into a knapsack problem?
  • or bin-packing?
  • Feature selection with resource constraints is
    NP-hard

Knapsack
18
Existing Work CSP-based Automated Configuration
CSP Solver
Existing Approaches
  • Feature models mapped to Constraint Satisfaction
    Problems (CSPs)
  • Partial configurations represented as a partial
    labeling of the CSP variables
  • A CSP solver is used to autonom-ously complete
    partial configuration
  1. Jules White et al., Constraint-based Model
    Weaving, Springer Transactions on Aspect-Oriented
    Programming Special Issue on Aspects
    Model-Driven Engineering, 39pgs., (to appear)
  2. Jules White et al., Automated Diagnosis of
    Product-line Configuration Errors in Feature
    Models, Software Product Lines Conference (SPLC),
    10pgs., September, 2008, Limmerick, Ireland (30
    Acceptance Rate), Received the Best Paper
    Award

Automated Configuration Choices
19
CSP Approaches Dont Scale to Emerging CPS
CSP approaches can top out around 150 features
for tough configuration problems with resource
constraints We want techniques to handle
1,000s of features!
CSP
There are 100,000,000,000,000 possible
configurations for this example
20
Problem 1 Solution Roadmap
  • Solution Approach Transform feature
    configuration problems with resource constraints
    into multi-dimensional multiplechoice knapsack
    problems
  • Benefits Ability to apply scalable
    polynomial-time heuristic algorithms aggregate
    sets for multiple models

Goal
Challenges
Solution
Evaluation
Set Population
FCF Alg.
21
Solution Approach Filtered Cartesian Flattening
Set Population
FCF Alg.
  • Our solution approach is called Filtered
    Cartesian Flattening (FCF)
  • We reduce the feature model to the less
    constrained Multidimensional Multiple-choice
    Knapsack Problem (MMKP)
  • We use an MMKP heuristic algorithm to solve
  • We translate the MMKP solution into a feature
    model configuration

22
Overview of MMKP
Set Population
FCF Alg.
  • Divides items into sets requires choosing
    exactly one item from each set
  • Challenge 1 Solution ? There are excellent
    polynomial-time MMKP algs
  • Challenge 2 Solution ? MMKP mixes resource
    configuration constraints

23
Simplify by Converting FM to MMKP Sets/Items
Set Population
FCF Alg.
  • We simplify the configuration problem by
    converting to an MMKP
  • To convert to MMKP, we create a series of MMKP
    sets, such that
  • The items in the sets represent partial feature
    model configurations
  • The partial configurations are divided into sets
    such that choosing one configuration from each
    set always results in a complete valid
    configuration

24
Flattening/Filtering (Compilation)
Set Population
FCF Alg.
Set (Euclidean,PCA,Face..), (MahCosine,PCA,Face
..), (IdaSoft,LDA,Face..), .
  • We create the items sets by enumerating the
    possible configurations of subtrees
  • A state explosion occurs as we flatten the
    subtrees by enumerating the configurations
  • We bound the number of items per set
  • A heuristic (filter) is used to select items when
    the bound is exceeded
  • We calculated value/resource consumption
    took the top 2,000
    partial configurations

25
Simplify Multi-Model Configuration with MMKP
Set Population
FCF Alg.
..
Brake Controller
Infotainment System
GPS Navigation
  • Challenge 3 Solution ? Multiple feature models
    can be merged into the same MMKP problem by
    collecting their MMKP sets

26
Problem 1 Evaluation
  • Evaluation Empirically demonstrate that FCF can
    configure feature models far beyond the scale of
    standard CSP techniques

Goal
Challenges
Solution
Evaluation
27
FCF Scalability Validation
CSP technique
FCF can scale up to problems CSP cant handle
is fast (10s ms)
28
FCF Scales to Models with 1,000 Features
Models with 1,000 features configured in 1s
29
FCF Scales to Models with 10,000 Features
Models with 10,000 features configured in 1-12s
30
FCF Provides Configuration Assistant
Results
  • A developer can use FCF to rapidly analyze
    different configuration alternatives
  • What configuration minimizes memory while adding
    infotainment capabilities?
  • Is it possible to find a configuration that
    includes ABS Brake Controllers for less than X?
  • Software configurations are generated in seconds
    rather than hours, days, etc.

The FCF automation acts as a design assistant for
the developer
31
FCF Provides Configuration Assistant
  • Publications
  • Jules White et al, Using Filtered Cartesian
    Flattening Microrebooting to Build Enterprise
    Applications with Self-adaptive Healing, Software
    Engineering for Self-Adaptive Systems, 2009 (to
    appear)
  • Jules White et al, Filtered Cartesian Flattening
    An Approximation Technique for Optimally
    Selecting Features while Adhering to Resource
    Constraints, First International Workshop on
    Analyses of Software Product Lines at the 12th
    International Software Product Line Conference,
    Limerick, Ireland, September 12, 2008
  • Jules White et al, Selecting Highly Optimal
    Architectural Feature Sets with Filtered
    Cartesian Flattening, Journal of Software
    Systems Special Issue on Design Decisions
    Design Rationale in Software Architecture
    (Submitted)

The FCF automation acts as a design assistant for
the developer
32
Open Deployment Configuration Problems in CPS
Fault-tolerance Constraints
Real-time Scheduling Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 2 How can the software deployment to
processors in CPS be automated optimized at
scale? (Ongoing / Emerging Work)
33
Problem 2 Goal
  • Goal Help designers automate the deployment of
    software to hardware processors to minimize
    hardware footprint network bandwidth
    consumption
  • Impact Reduced cost, power consumption, weight,
    maintenance

Goal
Challenges
Solution
Evaluation
34
Goal Optimized Software Deployment
How do we minimize hardware infrastructure needed
to support software configuration?
  • Goal
  • Find a deployment that minimizes the number of
    required processors
  • In planes, each 1lb of processing infrastructure
    adds 4lbs of supporting infrastructure as well as
    power, cost, maintenance complexity to the
    system
  • Find a deployment of the software to hardware
    that minimizes network load

35
Problem 2 Challenge Roadmap
  • Challenges
  • Multiple constraint types
  • Need for network bandwidth optimization
  • Limitations of Existing Solutions

Goal
Challenges
Solution
Evaluation
36
Challenge 2.1 Mixed Constraint Bin-packing
  • Most resource constrained deployment problems are
    modeled as bin-packing problems
  • Bin-packing algorithms do not simultaneously
    handle real-time scheduling, co-location, bin
    restriction, resource constraints
  • Existing Approaches
  • Bin-packing for multiprocessor scheduling
    (real-time scheduling resource constraints)
  • Bin-packing for memory constraints (resource
    constraints)
  • CSP deployment models (exponential algorithms)

Bin-packing models CPUs as bins but cannot handle
all constraint types
Multiple Constraints
Network Opt.
37
Challenge 2.2 Network Bandwidth Optimization
Multiple Constraints
Network Opt.
Bin-packing does not optimize for network
bandwidth usage
  • Bin-packing algorithms do not perform network
    bandwidth optimization
  • Existing Approaches
  • Bin-packing with partitioning (subdivides
    components for network optimization different
    problem)
  • Mapping Task-Graphs using Integer Programming
    (exponential algorithms)
  • CSP deployment models (exponential algorithms)

Network
38
Problem 2 Solution Roadmap
  • Solution Approach Combine hybrid heuristic
    bin-packing with particle swarm optimization
  • Benefits Reduced weight, cost, power
    consumption, fuel consumption, etc. for CPS

Goal
Challenges
Solution
Evaluation
PSO Seeding
39
2.1 Approach Black Box Bin-packing
New Bin-packing
An item fits into a bin if it is schedulable
using response time analysis or Liu Layland,
does not exceed resource limits, does not
violate constraints in the constraint network
  • We developed a first-fit hybrid bin-packing
    constraint propagation algorithm
  • Solution Approach
  • fits is a pluggable black box function
  • Items are sorted in increasing order according to
    the number of bins they will fit into
  • Items are placed using a first-fit policy
  • Remaining items are resorted after each item
    placement
  • Publications
  • Brian Dougherty, Jules White, Jaiganesh
    Balasubramanian, Chris Thompson, and Douglas C.
    Schmidt, Deployment Automation with BLITZ, 31st
    International Conference on Software Engineering,
    May 16-24, 2009 Vancouver, Canada

40
Bin-packer Constraint Extensibility
New Bin-packing
Fits can be modified to use domain-specific
constraints like it fits if the processor is 21
inches from the perimeter of the car
  • Solution Approach
  • fits is a pluggable black box function
  • The bin-packing heuristic is based on
  • A first-fit packing policy
  • Sorting items based on the number of available
    bins they could fit into
  • fits can be modified to incorporate new
    constraint types without affecting the core
    heuristics

41
2.2 Approach ? Swarm Intelligence
New Bin-packing
  • Existing techniques werent designed to handle
    network bandwidth minimization a combination of
    real-time scheduling, memory, co-location
    constraints
  • Solution Approach
  • Leverage evolutionary algorithms to explore the
    design space for deployment plans that minimize
    bandwidth
  • Competing deployment plans are evolved over a
    series of generations to find an optimized
    solution
  • Best deployment plan(s) is presented to the
    developer

Particle Swarm Optimization (PSO)
Genetic Optimization
42
Overview of Particle Swarm Optimization (PSO)
New Bin-packing
Particles Personal Best
Current Global Best
Possible Flight Path
Each particle is pulled towards a combination
of its personal best solution the global best
solution Velocity Calculation Formula

Particle
43
Challenges Applying PSO
New Bin-packing
  • Challenges Applying PSO
  • How do you represent deployment plans as particle
    positions?
  • How do you randomly generate valid initial
    deployment plans?
  • How do you modify the particle flight plans to
    adhere to deployment constraints use heuristic
    information?
  • PSO degenerates to random search for many
    problems!!!

44
Particle Position Approach Deployment Vectors
New Bin-packing
Node 1
Node 2
Deployment topologies are represented as
vectors Example 1, 2, 1
45
Permuting Deployment Plans
New Bin-packing
Design at Step i 1
Design at Step i
Node 1
Node 2
Node 1
Node 2
2, 1, 2
Velocity 1, -1, 0
1, 2, 2
46
Poor Results with Random Particle Generation
New Bin-packing
Relatively Sparse Valid Solution Population
X
Invalid Solutions Dominate Space
  • Most of the solution space represents
    invalid solutions
  • The evolutionary swarm intelligence algorithms
    degenerate into random searches with poor results!

47
Random Deployment Plan Approach Semi-random
Bin-packing
New Bin-packing
By starting most of the particles on valid
solution points, we can help focus the search to
valid points
48
Random Deployment Plan Generation
A Particle Represents A Deployment Topology
  • We used our hybrid first-fit heuristic
    bin-packing algorithm with randomization to
    generate the initial particle positions
  • Bin-packer is forced to deploy a random subset of
    the components first
  • Bin-packer is forced to use a random ordering for
    those components
  • Remaining components are deployed normally with
    the bin-packer

New Bin-packing
Particle Seeding
Semi-Randomized Bin-Packing
Particle Swarm
49
Constrained Flight Path Approach Packing Order
Positions
New Bin-packing
In the process of flying towards a more optimal
solution, a particle may fly out of the valid
solution space
50
Approach Add Guardrail to Solution Space
New Bin-packing
Our next approach was to try add a guardrail
to do a better job of restricting the search to
valid solutions
51
Guardrail Packing Order Vectors
New Bin-packing
Changed vectors to represent bin-packing
orderings Example pack C3, C1, then C2
3, 1, 2
Node 1
Node 2
Bin-Packer
Deployment Topology
52
Problem 1 Solution Roadmap
  • Evaluation Mission avionics system data from
    Lockheed Martin comprising 41 processors, 41
    software components, 150 real-time tasks,
    14,000 component interactions

Goal
Challenges
Solution
Evaluation
53
Validation Results Mission Avionics
Solution Approach PSO
Research Adapter
Aeronautics Deployment Problem
Solution Approach Genetic Opt.
  • Avionics Experiment Setup
  • Mission avionics system data from Lockheed Martin
    comprising 41 processors, 41 software components,
    150 real-time tasks, 14,000 component
    interactions
  • Attempted to minimize total processors used
  • Attempted to minimize total network bandwidth
    consumed

54
Results on Avionics Example
6 processor reduction 13.9 X 107 Bytes 24
reduction in network bandwidth Solution found in
an average of 9s
55
Best Results with State as Packing Order
4 X increase in the number of optimal solutions
produced
Solutions Solved with Given Optimality
Results comparing solutions from 100 invocations
of the algorithms using deployment vectors vs.
packing order vectors
56
Evolutionary Deployment Automation
Results
  • Developers can rapidly generate highly optimized
    deployment configurations
  • The intelligent techniques improved the manually
    created design of a large-scale avionics system
  • Improved deployment design reduces
  • Hardware cost
  • Power consumption
  • Fuel consumption
  • Network load

Evolutionary algorithms can improve manually
produced deployments are generate new ones
57
Deployment Ongoing Future Work
80 Core Processors
80 Embedded Processors
The hard deployment problems now, may become the
standard in a few years
5 years
Now
  • To make chips more power efficient, multicore
    designs are being used
  • In 2007, Intel produced a demonstration processor
    with 80 cores
  • CELL processor have between 5 9 cores
  • If we are writing applications for 80 core
    processors in 5 years, we are going to be facing
    similar deployment problems to what we have in
    CPS
  • How do we adapt these techniques for multicore?

58
Ongoing Future Work
Real-time Scheduling Constraints
Resource Constraints
Cost Constraints
Problem 1
Problem 2
Problem 3
Problem 3 How can software deployments
configurations be optimized in tandem to meet
real-time scheduling, resource, fault-tolerance
constraints?
59
Configuration Ongoing Future Work
Unexpected good combination of deployment
configuration
  • Currently, we separate the deployment
    configuration phases
  • Extend techniques to optimize configuration
    deployment simultaneously similar to
    hardware/software co-design. e.g.
    configuration/deployment co-design
  • Optimization is done via scoring of solutions.
    Extend techniques to allow developers to define
    scoring functions in models
  • Extend techniques to include cache effects in
    optimization analysis

60
Summary of Publications, Tutorials, Talks
  • Journal Publications
  • Jules White, James Hill, Jeff Gray, Sumant Tambe,
    Douglas C. Schmidt, Anirrudha Gokhale, Improving
    Domain-specific Language Reuse through Software
    Product-line Configuration Techniques, IEEE
    Software Special Issue on Domain-Specific
    Languages Modeling (to appear)
  • J. White, Jeff Gray, D. Schmidt, Constraint-based
    Model Weaving, IEEE Transactions on
    Aspect-Oriented Programming
  • J. White, H. Strowd, D. Schmidt, Creating
    Self-healing Service Compositions with Feature
    Models Microrebooting, International Journal of
    Business Process Integration Management (to
    appear)
  • J. White, D. Schmidt, Automating Deployment
    Planning with an Aspect Weaver, IET Software
    Special Issue on Domain-specific Modeling
    Languages for Aspect-Oriented Programming
  • J. White, D. Schmidt, A. Nechypurenko, E.
    Wuchner, Model Intelligence an Approach to
    Modeling Guidance, UPGRADE Journal (to appear)
  • J. White, D. Schmidt, E. Wuchner, A.
    Nechypurenko, Automatically Composing Reusable
    Software Components for Mobile Devices, Journal
    of the Brazilian Computer Society Special Issue
    on Software Reuse, SciELO Brasil, Volume 14,
    Number 1, pgs. 25-44, March, 2008
  • J. White, D. Schmidt, A. Gokahle, Simplifying
    Autonomic Enterprise Java Bean Applications via
    Model-driven Engineering Simulation, Journal of
    Software Systems Modeling, Springer, Volume 7,
    Number 1, pgs. 3-23, May, 2007

First Author
Second Author
61
Summary of Publications, Tutorials, Talks
Conference Publications
  1. Jules White, Douglas C. Schmidt, David Benavides,
    Pablo Trinidad, Antonio Ruiz-Cortez, Automated
    Diagnosis of Product-line Configuration Errors in
    Feature Models, Software Product Lines Conference
    (SPLC), 10pgs., September, 2008, Limmerick,
    Ireland (30 Acceptance Rate), Received the
    Best Paper Award
  2. Brian Dougherty, Jules White, Jaiganesh
    Balasubramanian, Chris Thompson, and Douglas C.
    Schmidt, Deployment Automation with BLITZ, 31st
    International Conference on Software Engineering,
    May 16-24, 2009 Vancouver, Canada
  3. Brian Dougherty, Jules White, Chris Thompson,
    Douglas C. Schmidt, Automating Hardware
    Software Evolution Analysis, 16th Annual IEEE
    International Conference Workshop on the
    Engineering of Computer Based Systems (ECBS),
    April 13-16, 2009 San Francisco, CA USA.
  4. J. White D. Schmidt, Model-Driven Product-Line
    Architectures for Mobile Devices, Proceedings of
    the 17th Conference of the International
    Federation of Automatic Control, Seoul, Korea,
    July 6-11, 2008.
  5. J. White D. Schmidt, Automated Configuration of
    Component-based Distributed Real-time Embedded
    Systems from Feature Models, Proceedings of the
    17th Conference of the International Federation
    of Automatic Control, Seoul, Korea, July 6-11,
    2008.
  6. J. White, K. Czarnecki, D. Schmidt, G. Lenz, C.
    Wienands, E. Wuchner, Ludger Fiege, Automated
    Model-based Configuration of Enterprise Java
    Applications, EDOC 2007, October, 2007,
    Annapolis, Maryland
  • J. White, D. Schmidt, E. Wuchner, A.
    Nechypurenko, Optimizing Automating
    Product-Line Variant Selection for Mobile
    Devices, 11th Annual Software Product Line
    Conference (SPLC), Sept. 10-14, 2007, Kyoto,
    Japan
  • A. Nechypurenko, E. Wuchner, J. White, D.
    Schmidt, Application of Aspect-based Modeling
    Weaving for Complexity Reduction in the
    Development of Automotive Distributed Realtime
    Embedded Systems, Proceedings of the Sixth
    International Conference on Aspect-Oriented
    Software Development, Vancouver, British
    Columbia, March 12-16, 2007.
  • J. White D. Schmidt, Reducing Enterprise
    Product Line Architecture Deployment Costs via
    Model-Driven Deployment Configuration Testing,
    13th Annual IEEE International Conference
    Workshop on the Engineering of Computer Based
    Systems (ECBS '06), March 27th-30th, 2006,
    Potsdam, Germany.
  • J. White, D. Schmidt, A. Gokahle, Simplifying
    Autonomic Enterprise Java Bean Applications via
    Model-driven Development a Case Study,
    Proceedings of MODELS 2005, ACM/IEEE 8th
    International Conference on Model Driven
    Engineering Languages Systems, Half Moon
    Resort, Montego Bay, Jamaica, October 5-7, 2005.
    (Selected as a best paper)
  • J. White, D. Schmidt, A. Gokahle, The J3
    Process for Building Autonomic Enterprise Java
    Bean Systems, Proceedings of the International
    Conference on Autonomic Computing (ICAC 2005),
    Seattle, WA, June 2005 (short paper).
  • Jules White, Boris Kolpackov, Balachandran
    Natarajan, and Douglas C. Schmidt, Reducing Code
    Complexity With Vocabulary-Specific XML Language
    Bindings,Proceedings of the 43nd ACM Southeastern
    Conference, 7pgs., Atlanta, GA, March 2005.

First Author
Second Author
62
Summary of Publications, Tutorials, Talks
  • Conference Best Paper Award
  • Jules White, Douglas C. Schmidt, David
    Benavides, Pablo Trinidad, Antonio
    Ruiz-Cortez, Automated Diagnosis of Product-line
    Configuration Errors in Feature Models, Software
    Product Lines Conference (SPLC), 10pgs.,
    September, 2008, Limmerick, Ireland
  • Book Chapters
  • J. White, A. Nechypurenko, E. Wuchner, D.
    Schmidt, Reducing the Complexity of Designing
    Optimizing Large-scale Systems by Integrating
    Constraint Solvers with Graphical Modeling Tools,
    Designing Software-Intensive Systems Methods
    Principles, edited by Dr. Pierre F. Tiako,
    Langston University, Oklahoma, USA, (to appear)
  • Jules White, Brian Doughtery, Harrison Strowd,
    Douglas C. Schmidt, Using Filtered Cartesian
    Flattening Microrebooting to Build Enterprise
    Applications with Self-adaptive Healing, Software
    Engineering for Self-Adaptive Systems, edited by
    Betty H. C. Cheng, Rogerio de Lemos, Holger
    Giese, Paola Inverardi, Jeff Magee (to appear)
  • Workshop Publications
  • Jules White, Douglas C. Schmidt, Filtered
    Cartesian Flattening An Approximation Technique
    for Optimally Selecting Features while Adhering
    to Resource Constraints, First International
    Workshop on Analyses of Software Product Lines at
    the 12th International Software Product Line
    Conference, Limerick, Ireland, September 12, 2008
  • James Hill, Jules White, Sean Eade, Douglas C.
    Schmidt, Towards a Solution for Synchronizing
    Disparate Models of Ultra-Large-Scale
    Systems, Proceedings of the 2nd International
    Workshop on Ultra-Large-Scale Software-Intensive
    Systems at the 30th IEEE/ACM International
    Conference on Software Engineering, May 10-11,
    2008, Leipzig, Germany.
  • J. White, D. Schmidt, Sean Mulligan, The Generic
    Eclipse Modeling System, Model-Driven Development
    Tool Implementer's Forum, TOOLS '07, June, 2007,
    Zurich Switzerland
  • A. Nechypurenko, J. White, E. Wuchner, D.
    Schmidt, Applying Model Intelligence Frameworks
    for Deployment Problem in Real-time Embedded
    Systems, Proceedings of MARTES Modeling
    Analysis of Real-Time Embedded Systems to be
    held on October 2, 2006 in Genova, Italy in
    conjunction with the 9th International Conference
    on Model Driven Engineering Languages Systems,
    MoDELS/UML 2006.
  • J. White, A. Nechypurenko, E. Wuchner, D.
    Schmidt, Intelligence Frameworks for Assisting
    Modelers in Combinatorically Challenging Domains,
    Proceedings of the Workshop on Generative
    Programming Component Engineering for QoS
    Provisioning in Distributed Systems, October 23,
    2006, Portland, Oregon.
  • J. White D. Schmidt, Simplifying the
    Development of Product-line Customization Tools
    via Model Driven Development, MODELS 2005
    workshop on MDD for Software Product-lines Fact
    or Fiction?, October 2, 2005, Jamaica.
  • Submitted Papers
  • Jules White, Brian Doughtery, Douglas C.
    Schmidt, ASCENT An Algorithmic Technique for
    Designing Hardware Software in Tandem, IEEE
    Transactions on Software Engineering Special
    Issue on Search-based Software Engineering
  • Jules White, Brian Doughtery, Douglas C.
    Schmidt, Selecting Highly Optimal Architectural
    Feature Sets with Filtered Cartesian Flattening,
    Journal of Software Systems Special Issue on
    Design Decisions Design Rationale in Software
    Architecture

63
Other Impact
  • Generic Eclipse Modeling System (GEMS)
  • The Generic Eclipse Modeling System (GEMS) has
    been incorporated into the Eclipse Foundation
    is distributed by over 45 mirrors in North
    America, Europe, Asia, South America
  • Articles on GEMS have been written in both
    English
    German published in key trade

    publications, such as Eclipse magazine

    OBJEKT Spektrum
  • I have also presented tutorials on GEMS at

    OOPSLA, ICSE, OOP, MODELS
  • Teaching as Research Grant
  • Received a Vanderbilt Teaching as

    Research grant to
    introduce my research

    on modeling topics to undergraduates
  • Undergraduate Graduate Involvement
  • Mentored 4 undergraduate students on GEMS
    research
    projects that resulted in 4 publications

    (including a journal paper a book chapter)
  • Graduate research projects using GEMS at UAB,
    Vanderbilt, University of Innsbruck

64
Other Impact
  • Eclipse Model OptimizatiON (MOON) Project
  • I am currently co-leading a project with Patrick
    Albert, a co-founder of ILOG, to generalize these
    modeling guidance techniques to any Eclipse
    Modeling Framework (EMF) model
  • ILOG is the leading producer of rule engine,
    constraint solver, configuration software
  • Research work for MOON is going to be in
    collaboration with Jean Bezivin Frederic
    Jouault at the University of Nantes

65
Concluding Remarks
  • Intelligent search-based automation techniques
    can help designers find solutions to complex CPS
    design problems.
  • Many of these real-world design problems require
    new theoretical tooling advances to work at
    scale with CPS constraint types
  • Scale is major challenge in current future
    systems, but automation can help significantly
  • Good tooling is critical for transitioning the
    theoretical advances to CPS system designers
    teaching the techniques to students
  • The ASCENT Design Studio is a collection of
    design tools that includes my deployment
    configuration research
  • Two undergraduates one graduate student are
    also involved in its development
  • http//code.google.com/p/ascent-design-studio/
  • GEMS is available through the Eclipse Foundation
    at
  • http//www.eclipse.org/gmt/gems

66
Creating Sets Tree Slicing/Dicing
Slice
Slice
Set 1
Set 3
Set 2
  • We traverse the feature model tree split it
    into subtrees
  • Where there is a point of variability (XOR,
    Optional, etc.) that does not have any ancestor
    points of variability
  • Each subtree will eventually produce one set for
    the MMKP problem

67
Software/Hardware Design Productivity Gap
Complexity Current CPS Tools Can Handle
Emerging CPS Complexity
  • The 1999 International Technology Roadmap for
    Semiconductors estimated that design complexity
    is increasing at 58 per year, while designer
    productivity is trailing at 21
  • The difference between these is the design
    productivity gap
  • Something similar is happening in software
  • e.g., BMW estimates that software development now
    accounts for 20-28 of the cost of a car
  • We need scalable design tools techniques to
    close this gap
  • We need tools that can do smart analysis
    optimization for designers
Write a Comment
User Comments (0)
About PowerShow.com