I spent a afternoon with a good friend of mine who was having a hard time turning application requirements to a detailed design (I’m sure he is not the only one with this issue). We reviewed an example Software Requirements Specification that we use and once we were on the same page as to what the application was intended to do I started up Visio to start working through the design elements. What I found amusing was that he was shocked that I was going to do this in Visio. Don’t you use a tool? Uh, yes it’s called Visio. I think he might of thought that there is some secret tool to application design that made it all possible. Many of our clients use tools in the application development process i.e Doors, Rational Rose, Clear case etc., not that there is anything wrong with these tools but I don’t think an analyst specifically needs them. Honestly a good analyst should be ok with pen and paper. Sure I agree that if I am dealing with 1000’s of requirements I need some way to manage them because of the number but do I need a specialized tool?? Nope. Does it help ? Sure.
So my favorite tool for Analysis and design is (drum roll please) Visio. I hope that all BA’s know that Visio provides fairly robust UML , screen modeling and database modeling templates that coupled with word will give you everything needed to design a application(s). The benefits of using Visio include :
- Almost any BA / Programmer has used and or has Visio
- Because it is an office product more then likely the user can figure out how to represent a design artifact (of course if a template doesn’t exist).
- We work with many clients and although almost any tool will allow a printout and or creation of a pdf of a design document, sometimes our customers like to have a copy of the original document to maintain as the application evolves over time. They would not be able to do this if we had developed it in a external application, unless of course if they purchased it themselves.
If your just getting started with Visio for Analysis and Design I suggest, first start with the standard templates (UML is one of the best) they should cover almost all of your needs and lets you focus on the design and not the tool. When your ready for more functionality, if your an advanced user create your own templates to duplicate some of the functionality provided by standard Visio templates, why do this? The UML template is actually an Add-on solution for Visio, it does not have a published automation model or API, because of this using VBA is not an option, so forget thinking I you can just write a cool VBA macro, you can’t. That is the reason I suggest your own design template. Not to mention those of us performing design work for SAP applications will start to develop useful custom shapes for use in SAP specific design.
What do you use for your design artifacts ?
As for my friend still a work in process.
For more information on the Visio suggestion See http://blogs.msdn.com/mailant/archive/2004/10/11/240618.aspx