Title: AutoDEVS: A Methodology for Automating Systems Development
1AutoDEVS A Methodology for Automating Systems
Development
- By
- Manuel C. Salas
- Advisor Dr. Bernard P. Zeigler
- University of Arizona
- 2008
2Agenda
- Motivation
- Objectives
- Background
- Contributions
- AutoDEVS
- AutoDEVS to Autonomous Road Survey (DEMO)
- Conclusions
- Future Work
3Motivation
- Improve systems development to reduce human
effort, time constraints, and production costs. - Unify every step of development and integration
from business modeling to application
deployment. - Overcome the "incoherence problem" between
different stages of the development process. - Introduce automation in the development of
systems to increase productivity and hide
complexity.
4Objectives
- To provide a methodology to increase
productivity by automating the life cycle process
of a system. - To exploit model continuity to reduce
incoherence between development phases. - To help developers identify and focus on the
most critical parts of the system. - To provide a methodology that allows developers
to create high performance distributed real-time
systems that are extensible flexible,
interoperable, reusable, and reliable.
5Background
- Many Organizations make use of the Systems
Development Life Cycle (SDLC) methodologies.
6Background (Cont)
- Alternatives to the SDLC methodologies.
7Background (Cont)
- Pros
- Unifies the project team by providing a set of
integrated tools . - Automatic code generation to reduce development
risk. - UML model debugger
- -----------------------------------
- Cons
- Focuses on design not on requirements.
- Doesnt support concurrency in Statechart
Diagrams. - Doesnt support Activity Diagrams, i.e.
simulation, verification, test case gen.
Rational Rose Real-Time
8Contributions
- Introduce AutoDEVS as a methodology to automate
the development of complex, distributed,
real-systems. - Demonstrate that this methodology overcomes the
incoherence problem between different stages of
design thru model continuity. - Develop a distributed simulation-based system
for an autonomous robotic survey to show the
powers of AutoDEVS. - Provide a solution to automate the constant road
supervision needed to improve productivity and
reduce human efforts in a mine .
9AutoDEVS
- AutoDEVS is based on the Discrete Event
Specification System (DEVS) and SES formalism. - Provides a Methodology to
- Automate the development of DEVSJAVA models to
increase productivity and focus on the real
aspects of the system. - Exploit model continuity to reduce incoherence
between development phases by following the
Modeling-Simulation-Execution approach. - Go from a spreadsheet containing requirements
specifications to a real-time executing system. - Allow alternative models to be selected,
generated and evaluated.
10AutoDEVS GUI
11AutoDEVS Methodolgy
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
12AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
13AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
14AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (structure)
Generate DEVS Models (behavior)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
15AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
16AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
17AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
18AutoDEVSMethodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
19AutoDEVS Methodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
20AutoDEVS Methodology (Cont)
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
Manual
21AutoDEVS Methodology (Cont)
IDE
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
FD-DEVS
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
Extract Behavioral Aspects
SESBuilder
Manual
22AutoDEVS Methodolgy
SimView
Define Requirements
Capture Spreadsheet Data
Generate FD-DEVS Models (behavior)
Generate DEVS Models (structure)
Update PES
Automatic
Extract Structural Aspects
Transform PES to DEVSJAVA
Create Test Models
Verify Created Models
Simulate
DEVS/SOA
Extract Behavioral Aspects
Manual
23AutoDEVS to Autonomous Road Survey
24DEMO!
AutoDEVS to ARS (Cont)
25Conclusions
- AutoDEVS provides a methodology to automate
systems development. - AutoDEVS methodology provides a natural and
effective way to model distributed real-time
systems structure, behavior and timeliness. - AutoDEVS methodology raises the importance of
simulation to analyze and predict results before
deployment. - AutoDEVS allows developers to focus more on the
core of the system.
26Conclusions
- AutoDEVS combines DEVS and SES formalisms to
allow the creation of structured information
hierarchically and efficiently. -
- AutonomousRoadSurvey has been developed to show
how AutoDEVS overcomes incoherence problem. - AutoDEVS and ARS motivate the industry to
exploit automated systems to improve productivity
and reduce human efforts. - ARS provides a solution to automate the
supervision of roads within a mine.
27Future Work
- AutoDEVS
- - Integrate with FD-DEVS, SESBuilder and
DEVS/SOA. - - Provide more automation for the models
behavioral aspects. - - Allow updates without compromising current
models. - ARS
- - Improve algorithms to find roads.
- - Extend Runner survey information, i.e. blind
areas, quality of surface, materials found. - - Minimize downtime of operation by introducing
more Runners to the system. - - Automate the execution of Runners to
periodically update the Central System and
Supervisors.
28Questions ?
manuel.salasc_at_gmail.com