Jan 06, 2008 in Software
This is just a short notice about a new release of jMango. The model outline has been highly improved and the flap mechanism now hopefully works 100% according to the consuming and producing terminology. I am in the final stage of writing my master thesis and therefore have no time to update the manual, so you have to find out the new feature and behaviours on yourself
Changes:
- Feature: New Model-Outline view with hide and filter functionality
- Feature: Nodes display how many layers of subnodes they have and to which depth they assume these layers are shown
- Feature: Nodes display if they have no subnodes
- Changed: The last selected node is set to be root automatically
- Changed: Setting the root sets all subnodes to the perspective the root dependency path requires
- Fixed: The algorithm for determining subnodes now functions properly according to the terminology
- Fixed: Interface and Implementation description are sorted by their content
You can download the new version from the here.
No Comments »
Nov 28, 2007 in C&P-Terminology
“Using a television for the first time is an easy task. Even if you do not know what such a thing is good for, it is probably very easy for you to find out just by using the remote control. There are direct responses to one’s interaction, like changing channels or increasing volume. It is unlikely that anyone would try to discover functionality just by looking into its electronic components. There are many assemblies inside required, e.g. for receiving a signal or transforming line voltage, which are not of any interest for the TV watcher. Usage seems to be an effective way to gather information about functions of devices. This is what we call consuming: Learning by using. In some cases users might not even realize this learning process. Using or consuming something is an everyday job.
Building a television for the first time is a difficult task. If you are not a genius inventor developing it from scratch, you have to know everything about the internal workings of such a device. You have to study the functions of its electronic components, the format of the audio and video signal and so on. Besides possessing the technical skills required to fulfill this task, you have to take a closer look at implementations of similar machineries and read engineering specifications. Building something typically creates a greater understanding. This is what we call producing: Learning by building.”
This is the beginning of a position paper from my tutor, Axel Schmolitzky, and me that was accepted at the Eleventh Workshop on Pedagogies and Tools for the Teaching and Learning of Object Oriented Concept at the European Conference on Object-Oriented Programming 2007 in Berlin. You can find the full paper in my download section.
This was our first try to describe the consuming and producing metaphor and to visualize objects and their dependencies. So if you are interested in the grounding theory, this software project is all about, this is the right starting point
One of our examples from computer science 1 course is this one:
“Consuming objects before producing them. BlueJ is an IDE which enables an Objects First approach (..). It allows students to start out, in the first week of semester one, with an object “system” with just one class. They interactively use instances of this class, consuming the notion of interacting with an object via its interface. More knowledge about class internals is required though to produce the possibility of interaction with an object (constructing just one class). Thus this should be done after the principles of interaction with objects are well understood. We start with constructing new classes in week 3 of semester one.”
We are using the metaphor to argue for first teaching the interface and afterwards going into details with the implementation. Further we describe that concepts require other concepts. These dependencies build up trails that help structuring contents of courses and lead to a specific order in teaching oo concepts:

This paper was the beginning of my master thesis
No Comments »
Nov 27, 2007 in Software
This is a little notification about a new version with some smaller changes, only.
What’s new?
- Fixed Bug: Hitting some special keys (like the windows key) causes an exception
- Changed: Show interface before implementation description
- Changed: Setting the root does not make all referenced nodes visible
- Changed: Scrolling with mouse wheel when root is set makes next nodes visible, but does not unhide previous nodes
No Comments »
Nov 24, 2007 in Software
Today I released jMango 0.1.3. I added some display functionalities for classifying Java classes and their dependencies and integrated some feedback from my tutor about the usability model. Further comments are appreciated
If you upgrade from a previous version, just copy the workspace directory from your older installation into your new software folder.

Screenshot: Java class dependencies with new color codification for use, implement and extend
What’s new?
- Fixed bug: Short keys does not function when switching between different open editors.
- Fixed bug: Interface and implementation descriptions are shown as part of the title in the model outline
- Fixed bug (partial): Selections are lost when switching tool
- Fixed bug: Scrolling with mouse wheel when root is set has no effect, when root is not selected
- Added: Dialog for project name
- Imported Java applications:
- Added: Display type classification: class (C), abstract class (A), enum (E), interface (I).
- Added: Display visibility property for types: public (+), protected (#), default (~), private (-).
- Added: Display reference classifications: use (yellow dot), implement (pink dot), extend (purple dot), cross package (slash)
No Comments »
Nov 15, 2007 in C&P-Terminology, Software
- What is this blog about?
- Who is this guy?
- Why should you trust him?
I found those questions somewhere and thought: “Yes, that’s what my visitors will probably ask.” So here are my answers.
What is my blog about?
This blog is about the “Consuming and Producing Model” and jMango, my show case.
Consuming and producing is a metaphor used at my university to help structure contents of computer science one and two courses. These terms distinguish dependencies between concepts, classes in OOP or whatever. My tutor, Axel Schmolitzky, and I try to visualize these perspectives on objects. The outcome is jMango, an eclipse RCP software you can download from this website.
These two screenshots should give you a short preview:

Screenshot 1: Collection concept and its dependencies

Screenshot 2: Java class dependencies
All in all this blog is about the master thesis I am writing right now.
Who am I?
Hello, my name is Christian Späh and I am a student of information systems at the University of Hamburg. Beside my course of study my mayor fields of interest are software engineering and didactics of teaching. With my master thesis I want to combine these topics.
Why should you trust me?
Why should you trust somebody who writes something down somewhere in the world/internet at all?
I wouldn’t trust me at this moment! If I stumbled over this website and found the topic this guy was talking about interesting I would give his software a try, but thats all. Trust needs time.
Perhaps you will download my software (because you like to download something thats free, like I do) and run it on a machine no longer needed for something else. At best you like jMango, come back, download a newer version, make some comments and ask some questions.
That’s what I hope for 
No Comments »