Restructure101

Overview

Simulated sandbox refactorings of your architecture let you detangle your codebase without risk, removing unnecessary complexity and dependencies.

  • Our sandbox uses Unique Levelized Structure Maps (LSMs) that let you see exactly the details you need in the context of the whole code-base.
  • Manipulate our LSMs interactively with drag-and-drop simplicity to simulate structural changes.

Upon completion of your refactoring simulations export your action list.

  • Developers see and work through the action list in their IDE.
  • Track progress of the action list on a project wide basis in our centralized web based repository, integrated seamlessly with Sonar.

Scales to the largest codebases.

Why

Clean software architecture is easier to maintain, extend and test, allowing you to deliver more in less time and at lower cost.

"I'm already impressed with Restructure101, it is a tool that a lot of people will need. Structure101 shows you your hotspots, but with Restructure101 you can dive into it and refactor your codebase virtually."

Leif Hanack, Software Architect, Hypoport

"Sometimes the developers manage to maintain this purity of design through the initial development and into the first release. More often something goes wrong. The software starts to rot like a piece of bad meat."

Uncle Bob Martin

Read from our collection of independent materials from the web on the 'whys' and 'hows' of managing software architecture.

Screencasts, Documentation

Screencasts

Restructure101 - An Introduction (12 mins)
Provides an introduction to all the features of Restructure101.

All our screen casts, demos and tutorials for all our products all in one place!

Documentation

Platforms, Languages, Tools

Platforms

Restructure101 is available for Windows, Windows64, OS X, Linux and most flavors of Unix.

Languages

Restructure101 directly supports Java and .Net.

Support for C/C++ is available through our partners Coverity and PRQA.

Restructure101 indirectly supports ActionScript, PHP, SQL, and XMI/UML via third party parser plugins to our generic Restructure101g product.

Learn more on how Restructure101 is customized for use with Java, .Net and C/C++, while our generic Restructure101g has been extended to support ActionScript, PHP, SQL, and XMI/UML.

If you are interested in developing additional parsers for languages not currently supported please ask about our Parser Plugin Development Kit.

Tools

Restructure101 currently supports integrations with Sonar, Eclipse, IntelliJ and Visual Studio.

For integration with your build/continuous integration environment, see Structure101 Build.

Pricing

Restructure101 for Java

US$900

Support

US$250

Restructure101 for .Net

US$900

Support

US$250

Restructure101g

US$150

Language Plugins*

ActionScript

US$200

Doxygen C/C++

US$500

Pascal

US$500

PHP

US$200

SQL

US$500

SysML

US$300

UML

US$200

Understand C/C++

US$500

Self-developed**

US$500

IDE Plugins

Free

Licensing and pricing is per user.

*Language plugins work with Restructure101g and Structure101g, only one purchase required per plugin per user.

**When you have prorietary data you would like to model you can build your own flavor.

Buying

When you are ready to purchase check out our purchasing options here.

Support

Support entitles you to email support Monday - Friday 09.00 - 17.30 GMT, excluding Irish public holidays. Customers with up-to-date support are entitled to all updates.

Academic, personal & open source licenses

Special discount pricing is available for academia, independent consulting organizations and personal use, and it is free for use on open source projects. To learn more contact us direct.

Download

Choose the appropriate product download from the matrix below based on your development platform, operating system and programming language.

With our free optional add-ons you can use Restructure101 with your IDE of choice.

Install via Eclipse Update Manager using this link.

Install via IntelliJ Plugin Manager.

Visual Studio Addin

Platform-independent servlet for cross project trending and reports.

* Currently parser plugins are available for ActionScript, PHP, SQL and UML, with more to follow. Parser plugins are downloaded and installed from the Flavors/Install menu.

If you wish to develop a parser plugin, just ask us about our Parser Plugin Development Kit.

Structure101

Overview

Define and communicate your architecture and layering rules to the whole team:

  • Our rich, intuitive architecture diagrams express containment, visibility and layering.
  • Map blocks in diagrams to physical code with patterns that are used by structure101 to discover and display violations.
(learn more...)

Enforce complexity and architecture constraints.

  • Warn developers at compile-time when a code change violates the architecture (learn more...)
  • Compare current vs previous build(s) for rule violations, new dependencies and complexity metrics. (learn more...)

Improve your understanding of your codebase from several perspectives with our comprehensive visualization tools.

  • Ensure developers know where to extend the code.
  • Comprehensive impact analysis when changes are required to the code, so you know exactly where and what to test.
(learn more...)

Define and then monitor complexity limits at any level: design, package or namespace, class, method.

(learn more...)

A web based management console for tracking quality metrics for your software architecture as it evolves over time (including integration with Sonar). (learn more...)

Why

A common language for developers, architects and managers to keep your architecture under control.

"Structure101 reduced the overall schedule of one of our projects from 6 months to 3-4 weeks."

Dr. Frank Griffel, Head of Development, Techniker Krankenkasse

"80% of an architect's job is communication."

Andres Kutt, Architect and Evangelist, Skype

Read from our collection of independent materials from the web on the 'whys' and 'hows' of managing software architecture.

Screencasts, Documentation

Overview Screencasts

Define and communicate architecture (4 mins)
Structure101's architecture diagrams provide a visual and intuitive means to define dependency and layering rules that can be communicated to the whole team via our free IDE plugins, ensuring the whole team has a common understanding of the desired architecture.

Measure and control complexity (7 mins)
Structure101 includes a simple and actionable measurement framework that allows you to quantify overall complexity debt, identify hotspots, and progressively simplify over time.

Visualization and understanding (5 mins)
Structure101 provides a rich set of visualization tools that will help improve your understanding of your architecture.

User Guide Screencasts

Architecture Diagrams (13 mins)
Everything you ever wanted to know about Structure101 architecture diagrams but were afraid to ask.

Understanding Tangles (14 mins)
Illustrates how to use "slices" and "tagging" to gain a deeper understanding of cyclic dependencies.

Understanding Collaborations (no audio)
Shows how the Collaboration Perspective allows you to discover exactly how any item is used by, or uses, other items. An example of planning the replacement of a 3rd-party library is given.

Principles and Rationale Screencasts

Hierarchy 101 (16 mins)
This session illustrates how hierarchy is central to everything Structure101 is and does. It also illustrates the hierarchy switching capabilities in the Java version, and how transformations can be used to manipulate the default views.

Ideal Structure (17 mins)
This session discusses the notion of ideally structured code, and introduces the XS measurement framework as an objective measure of the distance of a code-base from that ideal.

C/C++ Screencasts

Please note Structure101 for C/C++ is currently only available through our partners Coverity and PRQA.

Getting Started with Structure101 for C/C++ (13 mins)
Outlines the C/C++ specific aspects of the product with a view to getting new users up and running. Does not discuss product rationale - see Nutshell links above.

C/C++ Model Options (23 mins)
Discusses the key language-specific aspects of Structure101 for C/C++, in particular the Source, Linker and Compiler model options.

File Merging in Structure101 for C/C++ (19 mins)
Explains the mechanics of file merging in Structure101 for C/C++ (typically to merge .h files to .c or vice versa).

Structure101g Screencasts

Structure101g - Graphviz on Steroids (17 mins)
Discusses Structure101g in the context of GraphViz, demostrating how it is used to understand complex aribitary domains and how you can build a Structure101g flavor to model a domain not currently supported.

All our screen casts, demos and tutorials for all our products all in one place!

Documentation

Platforms, Languages, Tools

Platforms

Structure101 is available for Windows, Windows64, OS X, Linux and most flavors of Unix.

Languages

Structure101 directly supports Java and .Net.

Support for C/C++ is available through our partners Coverity and PRQA.

Structure101 indirectly supports ActionScript, PHP, SQL, and XMI/UML via third party parser plugins to our generic Structure101g product.

Learn more on how Structure101 is customized for use with Java, .Net and C/C++, while our generic Structure101g has been extended to support ActionScript, PHP, SQL, and XMI/UML.

If you are interested in developing additional parsers for languages not currently supported please ask about our Parser Plugin Development Kit.

Tools

Structure101 currently supports integrations with Sonar, Eclipse, IntelliJ and Visual Studio.

For integration with your build/continuous integration environment, see Structure101 Build.

Pricing

Structure101 for Java

US$600

Support

US$200

Structure101 for .Net

US$600

Support

US$200

Structure101g

US$100

Language Plugins*

ActionScript

US$200

Doxygen C/C++

US$500

Pascal

US$500

PHP

US$200

SQL

US$500

SysML

US$300

UML

US$200

Understand C/C++

US$500

Self-developed**

US$500

IDE Plugins

Free

Licensing and pricing is per user.

*Language plugins work with Restructure101g and Structure101g, only one purchase required per plugin per user.

**When you have prorietary data you would like to model you can build your own flavor.

Buying

When you are ready to purchase check out our purchasing options here.

Support

Support entitles you to email support Monday - Friday 09.00 - 17.30 GMT, excluding Irish public holidays. Customers with up-to-date support are entitled to all updates.

Academic, personal & open source licenses

Special discount pricing is available for academia, independent consulting organizations and personal use, and it is free for use on open source projects. To learn more contact us direct.

Download

Choose the appropriate product download from the matrix below based on your development platform, operating system and programming language.

With our free optional add-ons you can use Restructure101 with your IDE of choice.

Install via Eclipse Update Manager using this link.

Install via IntelliJ Plugin Manager.

Visual Studio Addin

Platform-independent servlet for cross project trending and reports.

* Currently parser plugins are available for ActionScript, PHP, SQL and UML, with more to follow. Parser plugins are downloaded and installed from the Flavors/Install menu.

If you wish to develop a parser plugin, just ask us about our Parser Plugin Development Kit.

Structure101 Build

Overview

Decide which complexity thresholds and architecture rules will not be violated.

Break the build and notify when structural constraints are crossed.

Automate the recording and tracking of architecture, violations, and complexity debt over time with the Structure101 web application and/or our Sonar plugin.

Integrates seamlessly with continuous integration and build environments such as Hudson, Maven, Ant, TeamCity and MS Build.

(more details...)

Note:Structure101 Build is included as part of all Structure101 Installers and is not required to be downloaded separately. It is licensed separately.

Why

Guarantee the ongoing structural integrity of your software architecture.

"The guys at headwaysoftware.com are awesome; how many companies mail you back on a Saturday?"

Bill de hOra, Newbay

"Complexity kills. It sucks the life out of developers, it makes products difficult to plan, build and test ... Each of us should ... explore and embrace techniques to reduce complexity."

Ray Ozzie, ex-CTO, Microsoft

Read from our collection of independent materials from the web on the 'whys' and 'hows' of managing software architecture.

Screencasts, Documentation

Screencasts

No screencasts currently available for Structure101 Build.

All our screen casts, demos and tutorials for all our products all in one place!

Platforms, Languages, Tools

Platforms

Structure101 Build is available for Windows, Windows64, OS X, Linux and most flavors of Unix.

Languages

Structure101 Build is available for Java and .Net.

Support for C/C++ is available through our partners Coverity and PRQA.

Tools

Structure101 Build will work with most continuous integration and build tools, including Ant, Hudson, Maven, MS Build and TeamCity.

Structure101 Build integrates with Sonar.

Pricing

Structure101 Build for Java

US$1500

Support

US$300

Structure101 Build for .Net

US$1500

Support

US$300

Structure101g Build

US$1500

Support

US$300

Licensing and pricing is per server.

Buying

When you are ready to purchase check out our purchasing options here.

Support

Support entitles you to email support Monday - Friday 09.00 - 17.30 GMT, excluding Irish public holidays. Customers with up-to-date support are entitled to all updates.

Academic, personal & open source licenses

Special discount pricing is available for academia, independent consulting organizations and personal use, and it is free for use on open source projects. To learn more contact us direct.

Download

Structure101 Build is included as part of all Structure101 Installers and is not required to be downloaded separately. It is, however, licensed seperately.

Our 30 day trial license keys enable all functionality for Structure101, Structure101 Build and Restructure101.