The Unified Modeling Language is widely used as a design tool for modeling a software system via a set of diagrams providing both static and dynamic views of the system. However, the applications of UML have many problems, namely model inconsistent behaviors, model misconception, and mistake interpretation. The notations are used in different definitions that may not conform to the UML specification. This paper thus present a semantic approach to verifying UML activity diagrams with a domain specific language called Action Description Language (ADL). The method would facilitate the in-spection of activity diagrams for the conformance to UML specification, result-ing in better quality of design blueprints that would lead to quality software systems.
Unleash Your Potential - Namagunga Girls Coding Club
Semantic Approach to Verifying Activity Diagrams with a Domain Specific Language
1. Semantic Approach to Verifying
Activity Diagrams with a
Domain Specific Language
Chinnapat Kaewchinporn and Yachai Limpiyakorn
Kaewchinporn.C@gmail.com Yachai.L@gmail.com
Department of Computer Engineering, Chulalongkorn University
Bangkok 10330, Thailand
2. Research Problem
2
image-source : https://www.google.co.th/search?q=uml
• Unified Modeling Language (UML) is widely used as a design
tool.
• However, the applications of UML have many problems:
o Model inconsistent behaviors
o Model misconception
o Mistake interpretation
3. Research Contribution
• Semantic approach to verifying activity diagrams with a
domain specific language called Action Description
Language (ADL)
• The inspection will be carried out to examine the
conformance to UML Specification version 2.4.1
• This results in better quality of design blueprints that would
lead to quality software systems
3
4. Research Methodology
4
Activity Diagram
in XMI Format
Mapping rules
Standardize XMI-formatted
Activity Diagram with
Mapping rules
Standardized XMI-formatted
Activity Diagram
Generate ADL Script
Transform ADL Script to
Activity Diagram
Semantic model
Compare Model for
Difference and Generate
Result
Process of activity diagram verification
5. Standardize XMI-formatted Activity
Diagram with mapping rules
5
Activity Diagram
in XMI Format
Mapping rules
Standardize XMI-formatted
Activity Diagram with
Mapping rules
Standardized XMI-formatted
Activity Diagram
Generate ADL Script
Transform ADL Script to
Activity Diagram
Semantic model
Compare Model for
Difference and Generate
Result
6. Standardize XMI-formatted Activity
Diagram with mapping rules
6
• Initially, the XMI standard converter will be invoked to
transform the source activity diagram in XMI format into
the defined standard XMI format using mapping rules.
• The mapping rules contained in the individual XMI standard
converter is particularly defined for a certain UML CASE
Tool.
• Currently, the mapping rules only support ArgoUML,
Modelio and Jbuilder.
11. Generate ADL Script
11
Activity Diagram
in XMI Format
Mapping rules
Standardize XMI-formatted
Activity Diagram with
Mapping rules
Standardized XMI-formatted
Activity Diagram
Generate ADL Script
Transform ADL Script to
Activity Diagram
Semantic model
Compare Model for
Difference and Generate
Result
12. Generate ADL Script
12
• The second step is to transform the XMI standard
document obtained from the previous step into the ADL
script.
• The method is to reverse the approach presented in [1].
• If the resulting ADL script fails during the verification in the
next step, it can be accessed and revised.
[1] Narkngam C., Limpiyakorn Y.: Rendering UML Activity Diagrams as a Domain Specific Language
- ADL. In: th International Conference on Software Engineering and Knowledge Engineering,
pp. 724--729, San Francisco Bay (2012)
13. Action Description Language (ADL)
13
• Action Description Language is a domain specific language
used for creating activity diagrams that conforms to UML
specification.
• The ADL metamodel consists of Element, Object, Relation,
Guard and Action.
• The syntax of ADL is defined for an action, a sequence of
actions, and a decision.
• The grammar of iteration is not defined as a loop can be
directly derived from object relations.
• The controls can be automatically detected from its
individual pattern
18. Transform ADL Script to Activity
Diagram Semantic Model
18
Activity Diagram
in XMI Format
Mapping rules
Standardize XMI-formatted
Activity Diagram with
Mapping rules
Standardized XMI-formatted
Activity Diagram
Generate ADL Script
Transform ADL Script to
Activity Diagram
Semantic model
Compare Model for
Difference and Generate
Result
19. Transform ADL Script to Activity
Diagram Semantic Model
19
• The third step is to generate activity diagram semantic
model.
• The step use transformation technique by adapting the
approach of generating activity diagrams semantic model
from ADL scripts presented in [1].
• The resulting activity diagram semantic model consists of
nodes, object evidence, guard condition objects, and
relationship.
[1] Narkngam C., Limpiyakorn Y.: Rendering UML Activity Diagrams as a Domain Specific Language
- ADL. In: th International Conference on Software Engineering and Knowledge Engineering,
pp. 724--729, San Francisco Bay (2012)
20. Compare Model for Difference and
Generate result
20
Activity Diagram
in XMI Format
Mapping rules
Standardize XMI-formatted
Activity Diagram with
Mapping rules
Standardized XMI-formatted
Activity Diagram
Generate ADL Script
Transform ADL Script to
Activity Diagram
Semantic model
Compare Model for
Difference and Generate
Result
21. Compare Model for Difference and
Generate result
21
• The final step is to verify the standardized XMI-formatted
activity diagram against the activity diagram semantic
model.
• The output of inspection result and error report will be
generated.
22. Compare Model for Difference and
Generate result
22
Inspection result and error report of example activity diagram
23. Future Plan
23
UML Diagram
in XMI Format
Standardized
XMI-formatted
UML Diagram
ADL Script
Inspection
result and
error report
“Expand from Activity diagram to UML diagram”
24. Future Plan
24
UML Diagram
in XMI Format
Standardized
XMI-formatted
UML Diagram
ADL Script
Inspection
result and
error report
“Test case for reduce useless processes”
Test case for
reduce useless
processes
25. Future Plan
25
UML Diagram
in XMI Format
Standardized
XMI-formatted
UML Diagram
ADL Script
Inspection
result and
error report
“Automatic Document Generation”
Test case for
reduce useless
processes
Automatic
Document
Generation
26. Future Plan
26
UML Diagram
in XMI Format
Standardized
XMI-formatted
UML Diagram
ADL Script
Inspection
result and
error report
“Integrate to Eclipse Modeling Framework (EMF)”
Test case for
reduce useless
processes
Automatic
Document
Generation
UML Diagram in
EMF XML Format
EMF Model
Standardized
UML
UML Diagram in
Java Format
Good Afternoon, Lady and gentlemenToday I am talking about the topic “Semantic Approach to Verifying Activity Diagrams with a Domain Specific Language” My name isChinnapat Kaewchinporn.Come fromDepartment of Computer Engineering,Chulalongkorn University, Bangkok,Thailand.
The first section is aboutresearch problem. The Unified Modeling Language or UML is widely used as a design tool for describing the system behaviors via a set of diagrams, which carry out the interpretation of the various components within the system, describe the behavior and functionality of objects within the system, and indicate the relationships between objects and other objects within or outside the system. For quality and standardization in the design, the UML Specification has been defined by Object Management Group or OMG for controlling the semantics and notation of UML. How ever, the applications of UML have many problems though, for example, model inconsistent behaviors, model misconception, and mistake interpretation. This results in the incomplete system, reengineering, or project failure.
Research ContributionWepresents a Semantic approach to verifying activity diagrams with a domain specific language called Action Description Language or ADLThe inspection will be carried out to examine the conformance to UML Specification version 2.4.1 , Theresulting in better quality of design blueprints that would lead to quality software systems.
The process of activity diagram verification consists of four main steps at the pictureThe first step called Standardize XMI-formatted Activity Diagram with Mapping rules The second step calledGenerate ADL ScriptThe third step calledTransform ADL Script to Activity Diagram Semantic modelAnd Thefinal step calledCompare Model for Difference and Generate Result
First stepis called Standardize XMI-formatted Activity Diagram with Mapping rules.
Initially, the XMI standard converterwill be invoked to transform the source activity diagram in XMI format into the defined standard XMI format using mapping rules. The mapping rules contained in the individual XMI standard converter is particularly defined for a certain UML CASE Tool. Currently, the mapping rules only support ArgoUML, Modelio and Jbuilder.
The example activity diagram created with ArgoUML v0.34 as shown in Figure.The diagram consists of six actions, a fork node, a join node, and a decision node. It was converted into the XMI format by select the export XMI menu in application
The result of XML show in Figure.You are see the code has long and hard to understand.In figure, The code are shown 1 in 4 code only.
Example of mapping rules is shown in Figure. The rule has 5 important components, reference hash code, type, name, incoming or input and outgoing or output.The result of the XMI standard document associated with the activity diagram in before Figure is shown in next Figure.
The code are short and easy to understand and conform to XMI Standard.
The second step is calledGenerate ADL Script
The step is to transform the XMI standard document obtained from the previous step into the ADL script. The method is to reverse the approach presented in researchRendering UML Activity Diagrams as a Domain Specific Language - ADL. If the resulting ADL script fails during the verification in the next step, it can be accessed and revised.
Action Description Language is a domain specific language used for creating activity diagrams that conforms to UML specification. The ADL metamodel consists of Element, Object, Relation, Guard and Action. The syntax of ADL is defined for an action, a sequence of actions, and a decision. The grammar of iteration is not defined as a loop can be directly derived from object relations. The controls can be automatically detected from its individual patternThe ADL metamodel is shown in the figure.
Example application of ADLThe activity diagram consist of three actions and two objects.I am writing the code follow Figure with start of diagram keyword and name Afterward, I am declare action of Action Name 1 and Action Name 2Final, I am writing link nodes. actionName1 to actionName2 to actionName3 The objects are shown automatic in output activity diagram image.
The other example - application of ADL I can using decision, fork, join and merge node in activity diagram.
The resulting ADL script generated from the source activity diagram is shown in Figure.
The third step iscalled Transform ADL Script to Activity Diagram Semantic model
The step is to generate activity diagram semantic model using transformation technique by adapting the approach of generating activity diagrams semantic model from ADL scripts presented in Rendering UML Activity Diagrams as a Domain Specific Language - ADL.The resulting activity diagram semantic model consists of nodes, object evidence, guard condition objects, and relationship.
The final step is called Compare Model for Difference and Generate Result
The step is to verify the standardized XMI-formatted activity diagram against the activity diagram semantic model. The output of inspection result and error report will be generated.
Inspection result and error report of example activity diagram shown in Figure
Future plan work could be the enhancement of mapping rules to the framework that supports the standardization of various XMI formats.“Expand from Activity diagram to UML diagram”
And We are present “Test case for reduce useless processes”
And We are present “Automatic Document Generation”
Final,We are present “Integrate to Eclipse Modeling Framework (EMF)”
Thank you very much for your paying attention. Do you have any question.