Papyrus IFI UML

Papyrus IFI UML
Me
• Rayner Vintervoll
• Current integrator/maintainer of the Papyrus IFI UML
tool.
• [email protected]
• Bugs/problems/questions/suggestions?
• E-mail me
4. september 2008
2
Papyrus IFI UML
• Get it from:
• http://www.uio.no/studier/emner/matnat/ifi/INF5150/h0
8/undervisningsmateriale/papyrus-ifi-uml/
• PapyrusIFIUML-1101.zip
• Extract & Run!
• Also download:
• ICU0.di2 and ICU0.uml
4. september 2008
3
Papyrus IFI UML
• Papyrus (papyrus-uml.org)
• Open-source tool for modeling with UML2
• Eclipse-based
• Developed by CEA (the French Atomic Energy
Commision)
• Consists of several plugins, with one plugin for each
UML diagram type.
• Except for a (stable) sequence diagram editor plugin (
which is quite important in this course)
4. september 2008
4
Papyrus IFI UML
• The IFI UML part
• Consists of several additonal plugins that expand
upon the Papyrus tool.
• The current version online consits of these extra
plugins made here at IFI:
• JavaFrame Transformation
• Creates executable code from your UML-models.
• SeDi
• A sequence diagram editor
• Already semi-implemented in the Papyrus tool, but
temporarily replaced by us (ours has more stable
functionality at this point)
• Subclipse (SVN-client for Eclipse)
4. september 2008
5
Papyrus IFI UML
• Project work :
• Using Papyrus IFI UML for agile, model-driven
development of reactive systems
• Executable models!
• Automatic code generation (not just skeleton
structures but actual functionality)
• Only basic programming knowledge required.
• More plugins under development that will make
life/development easier (JavaFrame debugger,
consistency checker)
4. september 2008
6
Papyrus IFI UML
• Papyrus IFI UML is a comprehensive tool
• And there are some bugs...
• If you find any not mentioned in the documentation let us
know.
4. september 2008
7
Papyrus IFI UML
• Strategies to combat the unstability:
• Use SVN (Subversion, Software Code Chanage
Management System)
• By using Subclipse (integrated) or a SVN-client of your
choice (TortoiseSVN etc.)
• If you are familiar with SVN you may start using a repository
at once
• If not guides will be posted later
• Alternatively you may also backup your files any way you
wish:
• The important thing to remember then is to backup both
the DI2 (defines the diagrams) and UML (defines the
model) files.
4. september 2008
8
Papyrus IFI UML
• Important:
• Read the documentation available @
• http://www.uio.no/studier/emner/matnat/ifi/INF5150/h08/unde
rvisningsmateriale/papyrus-ifi-uml/docs/
• Bugs and tips for avoiding/fixing bugs will be posted there
• Tool updates will be posted @
• http://www.uio.no/studier/emner/matnat/ifi/INF5150/h08/unde
rvisningsmateriale/papyrus-ifi-uml/papyrus-ifi-uml-updatesite/
4. september 2008
9
Assignment
• Crash-course in service development
• Specify and implement a new ”service” in ICU0.
• Specify the new service in ICUcontext
• Make a new sequence diagram for a service ”getpos”:
• A user sends a message ”stud1 konto abc getpos” to our system
• The system positions the user and returns a message e.g.
• ”Your position is: E1023032, N5945834”
• Use the sequence diagram KMLfile as a reference
• Implement the service in ICUsystem
• Add a new command to the Statemachine diagram ICUProcess
• Ask PATS for the postion etc.
• Use the activity diagram WriteKML-file as a reference to see how to extract
the position and return it to the user.
• Transform your model and Execute/Test your new service by
using FakePATS ;)
4. september 2008
10