fujaba
I used Fujaba (from UML to Java and back again) for a lot of projects in my research and nowadays a lot in my teaching. Here is a 32-bit archive including eclipse for windows, you can try out. Attention, don't believe any documentation on Fujaba.de - it's hopelessly outdated. I have used Fujaba, Object Games, and the Objects First development Method successfully in the following courses:
-
2010 fall term
Lecture: Systems Modeling: MTAT.03.083 (6CP)
-
2009 fall term
Lecture: Software Engineering: Software Engineering Lecture: MTAT.03.094 (6CP)
-
2009 spring term
Lecture: Systems Modeling: MTAT.03.083 (4AP,6CP) -- A full course project on designing Software for my elevator simulator. Also here we had very successful strict Objects First design.
-
2008 spring term
Seminar: Software Engineering in Distributed Systems, MTAT.08.017 (4AP,6CP)
-
2007 fall term
Lecture: Software Engineering: I took over two sessions of the Software Engineering Lecture: 6 and 21, MTAT.03.094 (4AP,6CP) -- starting to specialize on the Objects First method
-
2007 spring term
Lecture: Software Architecture, MTAT.03.209 (4AP,6CP) -- This was the biggest Fujaba project I did in teaching so far, we developed a whole game in the course. We used Object Games in eDOBS and the Object Firsts development mehtod. THe results were impressive and the feedback of the students very positive.
I am also an active support of the Object Game (more on it in the German PhD-thesis of Ira Diethelm) and the Objects First Development Method. I am currently writing a textbook on "Modeling with Objects" with Prof. Albert Zündorf, Prof. Ira Diethelm, Ruben Jubeh, and Leif Geiger. The tool employed in this book is Fujaba4Eclipse. Me and Artjom will provide here some screencasts and missing documentation to work with Fujaba4Eclipse:
Changing the memory of the Fujaba virtual machine. It makes sense to have more than 1024MB available. Screencast.
Special parameter in eclipse, to collapse the Fujaba menu and have some more memory in the Java stack. Screencast.
Adding user libraries. Screencast.
Use user libraries. Screencast.
Create a new Fujaba project and fix options and pathes. Screencast. Ignore the fixing of the path. It is not necessary.
Storyboards, Junit tests, and more build path fixes. Screencast.
Run tests and eDobs. Screencast.
Becoming faster: The Alternate Editing Mode. Screencast.
Getting started with activity diagrams. Screencast.
Activity diagram modeling in lecture for Study Right with Assignments. Screencast.
Singleton in Java and Fujaba Screencast, Screencast.
Simple Hanoi (activities): hanoi-simple01.mp4, hanoi-simple02.mp4, hanoi-simple03.mp4, hanoi-simple04.mp4
Little Howto: little-howto.mp4 - sorry audio missing in second half
Distributed Modeling: coobra.mp4, script for diff-mark removal - teaching/sysmod/fall2010/crt_resolve_conflict.py
Vistorpattern (and delegating file) for Filetree in Fujaba: here. Attention, there is a small mistake in this screencast. In the constructor constructor(AbstractFile) I got mixed up with the corresponding getter and return a value (null or jfile.getName()). Please refer to this ctr for the right constructor.
Here you can see, how you can catch an exception (the exception must be declared as areference in the class diagram). exception_demo.png
The online versions of these screencasts is available here. Here is also some audio missing. Refer to the final ctr first and look up the critical construction parts in the screencast. Emergency Fujaba (for too fast growing files and corrupt files). Unpack this version, load the ctr file (ignore errors, if they arise). Save the ctr file with the extension fpr.gz. Close the project. Close Fujaba. Load Fujaba. Make sure project is closed. Load the fpr.gz-file. Save as new ctr-version. To load Fujaba execute java -Xmx1g -jar fujaba.jar