Codstruction is a 3D interactive software visualization tool built as eclipse plugin using jMonkey engine, inspired by Codecity. It aims to provide better and easier comprehension of java code. Codstruction is still in early-stage of development a try-out version is available for download. > Download

Controls

Zoom in/out – Mouse wheel

Pan – Hold  down left mouse button and drag

Rotate – Hold down (middle mouse / mouse wheel) and drag

Go to particular source code – Double-click on class block

Current Features

Mouse over to display object name.

– Classes hierarchy viewed as blocks .

– Height of building is proportional to number of methods of class. Width is a indication of how many subclasses there are.

– Packages arranged as district.

Planned Feature List

– Methods form floors of class building block. Able to view which method is a overridden method. eg. Super class block becomes translucent and method which is overridden by the selected subclass is highlighted.

– Selective views, able to bookmark this view for later viewing.

– Layered customization. Eg. different profile of customization and priority.

– Representing call hierarchy as pipes from floor of building to another floor of another/same building.

– View interfaces that a class extend as a different type of building at base of class building.

– Building positioned based on dependencies between them.

– Searching. Matching objects will be highlighted.

– Overview, mini-map of current visualization.

– Multiple views

Your views

Your view is important for the continual development and improvement of this project. Let me know about the usefulness of the additional feature list or the tool in general by leaving your views as comments below.

codstructionOverall
Screenshot of prototype

6 Responses to “About”

  1. lttlflla Says:

    Right now there are minor differences. One observable difference is that Codstruction also maps class hierarchy metrics. Functionality wise, you can mouse over to see the object name. Codstruction also supports major OS – windows, linux and MacOS. Citiylyzer requires additional plugins while codstruction is standalone plugin. And I am not sure how large the additional plugins are.

    Another version with minimap will be out soon.

    There are many features still in development. Check out the planned feature list above, although it is hard to visualize what they are.

  2. Stampie Says:

    Is it possible to add multiple projects to a single visualisation?

    It would make sense for me to visualise some modules (Eclipse plug-ins) together as the program consists of several cooperating modules.

    • lttlflla Says:

      Yes, you can visualize multiple projects. Holding down shift and select the projects you want to visualize. Then right click on any of the projects and choose “Visualize with Codstruction”, still holding down shift.

  3. count Says:

    This tool is very usefull for doing code reviews. With this I have a quick overview of the complexity.

  4. Erwin Mueller Says:

    Really nice project. I use it all the time to visualize my projects.

    Where is the VCS for this project, there are only zip files to download?

    How are the packages related? I have multiple blocks for the same package but with different classes inside.

    The call hierarchy as pipes would be pretty awesome. Right now we can only see which class is too complex, but not the dependencies of each class to other classes.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: