Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering
All of the following tasks can be done with Topcased (which includes OAW). In case you weren't present in the introduction, refer to the description in our wiki.
1. Create a EMOF-based meta model for simplified UML state diagrams. Following concepts of a state diagram need to be present:
For details on EMOF classes you may use in meta-model see:
EMOF Classes:
UML Core::Basic Types Diagram:
This task will introduce you to the Topcased UML environment and the OpenArchtectureWare framework.
Eclipse→Preferences-General→Workspace→Text file encoding
Now execute the workflow
/bst.oaw/src/generator.oaw
It generates the file:
/bst.oaw/src-gen/bst_report.txt
Your task is to extend the report's template
/bst.oaw/src/templates/Root.xpt
so that under each node item all names of correlated associations (BSTRelations) and the referenced node names appear. E.g.
* Node: Node1 * LessEqualRelation: lesser1 (Node2) * MoreRelation: more1 (Node3)
Tip: The stereotype Node extends uml::class which defines the method getAssociations()
The last chapter in the lecture atsc-2008-08-mda-II contains a
short introduction to the Xpand template language.
If this is not enough the openArchitectureWare-4.3-Reference is even more detailed.
For the following tasks, you need to check out the projects
To get an overview what the application does, read IAI_VZ_OAW/doc/oaw-IAI_VZ_Architecture_Meta_Model_And_Platform.pdf.
After the code was generated with the workflow file IAI_VZ_OAW/generator.oaw it can started by running IAI_VZ_Gen/src/main/java/org/iai/vz/Test_IAI_VZ.java.
This will launch a local webserver on port 8080. Open a browser and open the URL http://localhost:8080/. Enter the credentials of one of the users from Test_IAI_VZ.java, e.g. user: “u”, pwd: “p”.
java.net.BindException: Address already in use: JVM_Bind: The jetty web server is already running. Go to the eclipse/topcased console locate the small monitor icon with an arrow to its right and select the console of the still running innstance. Stop it with the red square.
It may happen that the webserver (Jetty) displays quite intimitating error messages. In these cases check the eclipse console and/or if you have compiled your project with errors(topcased's default configuration doesn't display awarning dialog if you try to compile an erroneous projects)
Follow the following steps to understand how to add new components to the model.
Your new page should now show up at the right place and allow for editing the comment.
If you have trouble finding the right elements in the UML editor, look at these pictures:
There is a file normalize.ext in oaw/m2m. Find out what it what it does. Write down your explanation as a comment in the file.
Right-click on the profile root node in the outline and select define profile
Either in the context-menu of the model’s root node in the outline or Via the properties view
a) Extend the Meta-Model to support the following feature:
How can this be modelled?
Propose an extension to the Meta-Model (some stereotypes) and illustrate how to use them in a reference model.
You can make a copy of the EditDetailsActivity.umldi and EditDetailsActivity.uml (the second is the abstract model, the first the graphical representation)
to illustrate the use of your extension.
If you're interested try to extend to generator code to support the new feature. This will need detailed knowledge of the Apache Wicket framework and we do not expect you to have it.
In (the likely) case that no team provides a generator implementation we will pick “the best” solution for this task and provide an implementation as a reference for all teams.
Good luck!