InfoQ

News

Rails diagrams made easy with RailRoad

Posted by Sebastien Auvray on Apr 10, 2007 08:00 AM

Community
Ruby
Topics
Artifacts & Tools,
Ruby on Rails
Tags
BON,
Diagramming
Rails modeling and inspection tools are rare. Based on the fact that Rdoc didn't handle the RoR models associations or "content columns" to his liking, and that other Rubyforge modeling projects don't handle complex systems, Javier Smaldone decided to do his own. He recently released RailRoad 0.3.2. It generates class diagrams from Ruby on Rails applications as DOT graphs. You'll then need tools like Graphviz, or SpringGraph to transform the DOT files into image output.

RailRoad can produce:

Model diagrams, showing both inheritance hierarchy and models associations. You can choose to show the model "content columns" and its types.
Controller diagrams, showing inheritance hierarchy. You can include the controllers' methods, grouped by its visibility (public, protected, private.)
The graphics generated don't look like UML but are closer to BON. The documentation comes with examples of complex models from Rails applications like Typo or rTPlan.

Javier is planning to add some options intended to deal with "large" applications (diagram clusters for modules, exclude some classes, etc.). It will be interesting to see how the project evolves in regard to Javier's responsiveness to feature requests.

No comments

Reply

Exclusive Content

Intentional Software - Democratizing Software Creation

Business users doing programming? Simonyi and Kolk presents how Intentional Software offers a radical new software approach that separates business knowledge from software engineering knowledge.

Getting Started with Grails

Jason Rudolph discusses Java/Grails integration, Grails plugins, creating a Grails sample application, Grails app structure, data querying and persistence, validation, controllers and tag libraries.

Creating Product Owner Success

The Scrum Product Owner role is powerful, valuable and challenging to implement. It brings healthier relationships between customers and developers, and competitive advantage - if you do it right.

Book Excerpt and Interview: Effective Java, Second Edition

Effective Java, Second Edition by Joshua Bloch is an updated version of the classic first edition, which won a 2001 Jolt Award. InfoQ asked Bloch questions about the areas that the new edition covers.

Tapestry for Nonbelievers

A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.

Pete Lacey on REST and Web Services

In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.