280 likes | 300 Views
This paper presents the AutoDEVS methodology, a methodology for automating systems development. The objective is to reduce human effort, time constraints, and production costs by unifying every step of development and integration. The paper explores the motivation, objectives, background, and contributions of AutoDEVS, and showcases a demo of AutoDEVS in the context of autonomous road survey. Conclusions and future work are also discussed.
E N D
AutoDEVS: A Methodology for Automating Systems Development By Manuel C. Salas Advisor: Dr. Bernard P. Zeigler University of Arizona 2008
Agenda Motivation Objectives Background Contributions AutoDEVS AutoDEVS to Autonomous Road Survey (DEMO) Conclusions Future Work
Motivation 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.
Objectives 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.
Background Many Organizations make use of the Systems Development Life Cycle (SDLC) methodologies.
Background (Cont) Alternatives to the SDLC methodologies.
Background (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. • Doesn’t support concurrency in Statechart Diagrams. • Doesn’t support Activity Diagrams, i.e. simulation, verification, test case gen. Rational Rose Real-Time M & S Development Tools:
Contributions 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 .
AutoDEVS 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.
AutoDEVS Methodolgy Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (structure) Generate DEVS Models (behavior) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVSMethodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVS Methodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVS Methodology (Cont) Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects Manual
AutoDEVS 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 Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA Extract Behavioral Aspects SESBuilder Manual
AutoDEVS Methodolgy SimView: Define Requirements Capture Spreadsheet Data Generate FD-DEVS Models (behavior) Generate DEVS Models (structure) Update PES Automatic Extract Structural Aspects Simulate Verify Created Models Create Test Models Transform PES to DEVSJAVA DEVS/SOA: Extract Behavioral Aspects Manual
AutoDEVS to ARS (Cont) DEMO!
Conclusions 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.
Conclusions 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.
Future Work AutoDEVS: - Integrate with FD-DEVS, SESBuilder and DEVS/SOA. - Provide more automation for the model’s 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.
Questions ? manuel.salasc@gmail.com