Font Size: a A A

Control Flow Analysis Of UML2.0 Sequence Diagrams Based On Concurrency Semantics

Posted on:2007-08-01Degree:MasterType:Thesis
Country:ChinaCandidate:L WangFull Text:PDF
GTID:2178360182496024Subject:Software
Abstract/Summary:PDF Full Text Request
The Unified Modeling Language(UML) is the dominant modeling language inobject-oriented modeling,which is a graphical language forvisualizing,specifying,constructing,and documenting the artifacts of asoftware-intensive system. It contains several kinds of diagrams which providemultiple perspectives of the system under analysis or development.These modelssupport the whole developing process from request extracting to coding.As the wide application of UML,the promulgation of the new version UML2.0,and the maturity of the Model-Driven Architecture(MDA),more and more peoplehave been researched on the Model-based Control Flow Analysis(MBCFA). MBCFAcan be useful in the context of MDA including the testing phase of the MDA softwaredevelopment life cycle and also model compilation,comprehension,execution andmost of the existing SD-based testing techniques.Our major work is to define thesequential relationships between the actions of sending and receiving messages basedon the concurrency semantics of messages in UML 2.0 Sequence Diagrams(SDs),andthen by mapping these relationships to the corresponding messages,to define thesequential relationships between messages according to that between actions,andbecause of UML 2.0 Activity Diagrams(ADs) being good at describing concurrency,toselect them to represent the concurrent control flow of SD,and then to define theconsistency mapping rules between a SD and a AD based on the sequentialrelationships between messages with which we can derive the Concurrent ControlFlow Paths(CCFPs) from a SD.UML SD is a kind of interaction diagrams which shows the explicit sequenceof communications and the dynamic interaction relationships between the objects.Itemphasizes the sequence of message interchanging between a number of lifelines. It'snot straight-forward to derive the sequence of messages from a SD due toasynchronous messages and par interaction operator which can cause concurrency orparallelism.Therefore,under the inspiration of J.Cardoso's "causality flows",we firstanalyzed various situations according to different location relationships betweenactions in a SD, and then defined two relationships between actions —Asynchronous-Succeed Relationship,and Causality Relationship.One action will beexecuted following another if they accord with any one of these two relationships,andthey correspond to different messages.According to these two relationships of actions,we further defined SuccessionRelationship between messages based on these two relationships between actions.AsUML Activity Diagrams are good at describing concurrent activities,we used AD torepresent the concurrent control flow.Then we designed the consistency mappingrules based on the Succession Relationships between messages which supportconcurrency,loop,condition,ref construct,and synchronization of concurrent messages.With the Succession relationships,developers will be able to obtain thecorresponding AD and CCFPs of SD with our formal definition of the consistencymapping rules.We also described the "combined fragment" in UML 2.0 SD in our mappingrules.A combined fragment defines an expression of interaction fragments.It isdefined by an interaction operator and corresponding interaction operands.We alsoexplained how to schedule the messages both within and outside a combinedfragment,and we did the same to the "ref"construct.In our paper we offered an algorithm to extract interesting information from the*.xmi document of a SD and to obtain all the Succession relationships betweenmessages with the gained information.To validate the feasibility of our approach,wedesigned a simple instance of SD called Boiler Control System.Our entire approachwas applied to the instance.We show in detail the procedure according to which onecan derive CCFPs from a SD.In contrary to V.Garousi's method,ours has the following properties:derivingCCFPs from the Succession relationships between messages based on the concurrentsemantics of messages and the definitions of actions sending or receivingmessages;using UML 2.0 Activity Diagrams as the Control Flow Model;defining thetransformation rules based on the Succession relationships between differentmessages;can obtain a concurrent control flow with more degree ofconcurrency;presenting the algorithm for implementing our approach.Finally,we discussed what we can do to improve our approach, including addingrules for "coregion area","interaction constraints", "continuation", and"polymorphism" to the mapping rules, providing a formalism for CCFPs,automatingthe CCFPs derivation process,etc..
Keywords/Search Tags:Concurrency
PDF Full Text Request
Related items