For the past 2+ years I have been working with different aspects of Web Application design, primarily using ASP.net 1.1 and SQL Server 2000. I have been involved in different parts of the process: Documentation, User Interface Design, System Architecture, Coding, Testing, QA, Release. Worked on a few internal products for my old company (ranging from 1-10,000+ users).
Now for the first time I will be working in Desktop development. My old company wants to upgrade their old desktop software to bring it up to date (it was written in VB6 about 10 years ago). The good part about it is that the program is basically going to be a desktop version of the web application we released earlier this year (that is the 10,000+ user webapp that I spoke about before). Using the .Net Framework 2.0 with C#. Similar spec, look & feel, user experience. Of all the people on the team, I probably have the most domain knowledge relating to the intricacies of the web application, user experience, and the way that the Desktop will work.
However, in some other aspects this is going to be a pretty complex program. Here are some of the messier requirements:
- Synchronization of information (for authorized users) between the web application and the desktop application
- Support different user modes (with different levels of functionality for different types of users, as well as different sections of the program)
- Use a Vector Graphing tool to provide custom on-the-spot graphics for use throughout the program. (This has to work perfectly, as one of the graphs in question is the main feature of the program)
- Support exports to image formats, RTF, PDF
- Allow different types of imports and exports, covering different generations of formats, making sure that the data stays secure and is mapped over properly from old formats to new (and vice versa)
- Kind of complex UI: 4-5 main panes, each with its own specific functionality, all of which must interact together
- User authentication, for both online and offline users
So, its going to be fun.
I am right now in the middle of writing the scope and functional specification documents (yup, I am doing that as well). Over the next 6-12 months (projected duration of the project, as of now) I hope to provide updates on how things are going, specifically focusing on the transition from developing ASP.net web apps to Windows Forms apps in C#.