Flowdown Tool
Screenshots:
Click on any of the images below to see a larger view.
No. of Users:
1,000 +
Summary
This tool was designed with a Six Sigma project that started with an idea on improving productivity by streamlining and standardizing the front-end to one of our key business processes.
Challenge
The job of a flowdown is basically to break a complex task into simpler more manageable sub-tasks.
An example task could be "Save $1,000,000 dollars". This may be broken down into sub-tasks to define the specific tasks that need to take place in order to complete the main task. Tasks can also have metrics associated with them (for use in the example above) as well as a Responsible Person and Completion Date.
The three key aims of the system were to create an application that is:
- More secure - intranet-based and secured utilising SecurID*
- Easier to use – view, edit, and save all of your flowdowns in one place. No need to think about which software to use
- Easy to share – you can print hardcopies, automatically generate PowerPoint charts, send link via email, or publish flowdown as template.
Approach
Several manually created flowdowns were analyzed and a data model was formulated that would be robust enough to store the data as well as provide the flexibility to allow reporting in a usable format. Security was also considered at this point and it was decided that flowdown level security would be sufficient. Administrator functions were defined as well as the features that would be available to the average end user.
Technology
SQL Server 2000 was used to as the data primary backend source and an ASP.Net 1.1 website was developed to provide the user interface and business logic to support the app.
A page templating system was developed that allowed all pages to share a custom look and feel. An object oriented analysis and design approach was used to maximise code re-usability across the different pages in the site.
A flowdown object was developed which encapsulated the functionality required to load and save flowdowns to and from the db, and to view/print/export the flowdowns. Business logic was also built in to the component to validate data and provide comprehensive logging. The flowdown component is utilised on almost every page in the site and provides huge benefits. By abstracting all of the code into a class and re-using in this way, bugs are reduced, code is cleaner and testing is much easier.
Results
So far over 800 people have registered to use the application and 300 have created flowdowns.
It is expected that the user base will increase as more and more people become familiar with the system.
What I Learned
The hierarchical nature of the data stored in the database proved challenging when it came to reporting because a flowdown can be potentially N levels deep.
To tackle this problem, a third party Tree-View component was used. The component provided an easy way to populate a windows explorer tree-view style control to provide a logical way of interacting with the flowdown.This worked very well.
The component also provided an object model for traversing the nodes in the flowdown which as well as proving invaluable, saved a lot of time and effort (and debugging!).
