1 / 18

Transformations for Rapid Prototyping of Time-Critical Applications

Transformations for Rapid Prototyping of Time-Critical Applications. Matthew McGettigan. Software Requirements. Can integrate web services, components and legacy software inot a functioning system Must be operational before deadline and remain operational until expiration time

ulric
Télécharger la présentation

Transformations for Rapid Prototyping of Time-Critical Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Transformations for Rapid Prototyping of Time-Critical Applications Matthew McGettigan

  2. Software Requirements • Can integrate web services, components and legacy software inot a functioning system • Must be operational before deadline and remain operational until expiration time • Must satisfy user-specified timing constraints

  3. What Is Rapid Prototyping? • Goal is rapid development and information feedback • Done at the expense of efficiency and completeness • Allows for making changes early in the development cycle • Expectation that the model will eventually be thrown away

  4. Application Software Approach • Objects are called Tele-Action Objects (TAO) • Each TAO is enhanced by an index cell (IC) • Objects may contain multimedia data • IC system is an active index that enhances the overall intelligence of the software

  5. Technologies Used • IC cards • IC system (active index) • Relational Mining for appropriate web services • Petri Net • Time Management techniques

  6. User/developer IC Card Management System Multimedia Knowledge Eclipse Environment IC Software Engineering Environment IC Card XMLjcc XMLjcx Code Knowledge-Base Rapid Prototyping Environment Fig 1.1

  7. IC Cards • User/developer’s specification of an active object or agent • Active objects interact with each other according to certain interaction patterns • IC Card Management System provides a way to organize and manage IC cards

  8. IC Cards Fig 2.1

  9. Sample IC Card XMLicc Schema • <icCard • icName="Patient Emergency Alert" • icDescription="Patient alerts network/database of emergency" icIntPattern="myselfwith" • icMyTask="Alert network/database of emergency" icTimeCriticalCondition="Tc+Talarm > Ts > Tc+Tnormal: Talarm=2*smallest system granularity, Tnormal=smallest system granularity" • icId="3" • icNumberCurrent="1" • icNumberTotal="1"> • <icOther icOtherName="Network/Database" • icOtherMessage="Emergency Alert" • icOtherTask="None" • icOtherId="-1" /> • </icCard>

  10. Multimedia Knowledge Eclipse Environment (MKEE) • Visual editor for the IC system • Provides modeling of multimedia applications and knowledge owned by multimedial objects • Generates XMLicx specifications of the IC system and used as the front end for the ICX compiler

  11. Index Cell Structure Fig 3.1

  12. Sample IC System Fig 3.2

  13. Sample XMLicx Schema <?xml version="1.0" encoding="UTF-8"?> <ic:icSystem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ic="http://www.mke.org/ic/"> <indexCell id="ic1" maxLifeTime="inf" name="Sensor"> <state id="state0" type="entering" name="send"/> <transition id="trans0" source="state0" target="state0" type="internal"> <message xsi:type="ic:OutputMessage" id="msg0" name="sendPatientCondtion"> <targetIC>ic2</targetIC> <parameter dataType="double" dataValue="98.6" name="condition"/> </message> </transition> </indexCell> <indexCell currentState="state1" id="ic2" maxLifeTime="inf" name="Sensor Emergency Alert"> <state id="state1" type="entering" name="listen"/> <state id="state2" type="internal" name="alert"/> <transition id="trans1" source="state1" target="state2" type="internal"> <message xsi:type="ic:OutputMessage" id="msg2" name="threashold reached"> <targetIC>ic3</targetIC> <parameter dataType="time" dataValue="getCurrentTime()" name="Tc"/> </message> <message xsi:type="ic:InputMessage" id="msg1" name="getPatientCondition"> <predicate>condition&lt; threshold</predicate> <parameter dataType="double" dataValue="98.7" name="condition"/> </message> <action body="alert Nurse" id="act1" name="emergency" target="external"/> </transition> </indexCell> <indexCell id="ic3" maxLifeTime="inf" name="Nurse"> <state id="state3" type="entering" name="listen"/> <state id="state4" type="internal" name="action"/> <transition id="trans2" source="state3" target="state4" type="internal"> <message xsi:type="ic:InputMessage" id="msg3" name="getEmergencyRequest"> <predicate>receive msg2</predicate> <parameter dataType="time" dataValue="getCurrentTime()" name="Tc"/> </message> <action body="help patient" id="act2" name="dispatch" target="external"/> </transition> </indexCell> </ic:icSystem>

  14. Mapping Between IC Cards and MKEE IC System • MKEE index cell is different from the index cell depicted by the IC card • Both can be represented by XML • Can use MTF to implement partial transformation between the two models

  15. ICX Compiler Phases • Lexical Analysis • Syntax Analysis • Semantic Analysis • Optimization • Code Generation

  16. ICX Compiler • MKEE tool outputs an XMLicx file describing the IC system • XML file is processed by the ICX compiler • Compiler checks semantics of XML file and produces a set of Java classes if semantics are valid • Each index cell is implemented as a separate Java class

  17. IC Software Engineering Environment Fig 7.1

  18. References • Chang, S.K. et. al. Transformations for Rapid Prototyping of Time-Critical Applications. • Leavenworth, B. 1992. Proxy: an interpreter for rapid prototyping. SIGPLAN Not. 27, 6 (Jun. 1992), 19-28. DOI= http://doi.acm.org/10.1145/130981.130984

More Related