120 likes | 218 Views
Milestones: mythical signals in UML to analyze and monitor progress. Richard Sanders , SINTEF Øystein Haugen, SINTEF / University of Oslo. Milestones - a means for depicting progress in behaviours. Semantics defined by mythical signals
E N D
Milestones: mythical signals in UML to analyze and monitor progress Richard Sanders, SINTEF Øystein Haugen, SINTEF / University of Oslo
Milestones - a means for depicting progress in behaviours • Semantics defined by mythical signals • a conceptual signal that is sent from the behaviour every time one of the associated milestones is passed during execution • sent to a conceptual observer outside the system • can be omitted in implemented systems • Modeled by specialized UML Comments in SoaML • Embedded in ordinary UML models • Used to understand, analyze and monitor service behavior • Particularly useful for behaviours that are long lasting
Buyers Seller Example: a bidding service Bidding service • What are the steps of a bidding process? • Which buyers behave properly? • How far has a bidding session come?
BiddingService seller:Seller[1] buyer:Buyer[1..*] «ServiceInterface» «ServiceInterface» SoaML: Service modelled as a collaboration «ServiceContract»
«milestone» Buy <Prospect received> Steps expressed using milestones
s:Seller GUI «milestone» Buy <Prospect received> «milestone» Buy <Won bid> Specification of interface behaviour b:Buyer
b1:SimpleBuyer GUI s:Seller GUI b2:SeriousBuyer GUI Analysis of progress in interactions
sm SimpleBuyer prospect / ^display(prospect) advertisement / ^interest Idle Awaiting Prospect Buyer that is safe but of little use / ^display(prospect) Interface behaviour • Milestone Buy <Prospect received> can be reached • No bid is ever sent • Milestone Buy <Bid acknowledged> cannot be reached
Monitoring behaviour Buy <…> Sell <…> • Monitor Buy and Sell signals
Metamodel for Milestones in SoaML • Milestone is a “mythical” signal sent when milestone is passed • Not necessarily present in implementation • progress tells relative degree of progress • value: signal data when the milestone is passed
Support for milestones • SoaML – UML profile for Services • Tool support for design time validation of progress • EU IST FP6 SIMS (Semantic Interfaces for Mobile Service) • www.ist-sims.org: tools available for beta testing • Future work • End-user composition of services based on milestones • uComp – proposal for Call 5 in November 2009