120 likes | 223 Vues
Explore how mythical signals in UML are used to monitor progress in service behaviors, depicted through milestones passed during execution. This concept, embedded in UML models, aids in analyzing and understanding long-lasting service behaviors. Learn how to monitor interactions and progression using these specialized 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