We’ve all heard how a substantial number of software projects fail or are cancelled routinely. For years developers have said “if only the requirements were right, the software would have worked right.” Intuitively we all understand that the better the user community (business users in many cases) can get the product defined the more likely the software will work. Agile processes and methodologies insist that the best way to do this is to show early and show often the fruits of the development labor but hold back on writing pages and pages of specifications. A new category of software, known as prototyping, application simulation, or application modeling tools, allow end users to create quick prototypes and workflows that can be handed to developers to do the actual coding. If you’re in the market for these types of tools, which can end up saving a great deal of time and effort, take a look at the following short list (many more are on the way, though).
Of all the tools, the cheapest is Axure and at almost a quarter of a million dollars the most expensive is iRise. Each tool specializes in specific areas but start with something simple like Axure and move up as you need more functionality from the more expensive tools. In any case, if you can actually get your end users or business customer helping define your custom projects using a prototyping or simulation tool almost any amount of money is worth the investment if your projects are important.