Solved

Implementing Class Diagram  and design pattern for new module

Posted on 2010-08-26
6
535 Views
Last Modified: 2013-11-12
Hi,
Requirement :
------------
I have an asp.net web application that have a datagrid. Now the users wants a functionality exporting this grid to excel template. We will define the excel template. Once the grid is exported to the excel, the user can make changes to the numbers. Once done with the changes, the user will import back this excel sheet to the web app using the web app import screen. This import screen will have browse button and upload button. Once the import button is clicked, the import manager should first validate the template and start the rows import. Once improt is done the user should be prompted a message. If the import is unsuccessful, then the message box should tell user what all rows caused issues.

I have to come up with a quality class diagram as many senior architects will be reviewing this. Can any exprience architect review this and let me know his thoughts.
This is what all classes my attachment has
- DataManager - Abstract Class
 - DataExportManager - Derived class from DataManager
 - DataImportManager - Derived Class from DataManager
   - ExcelImportManager - Derived class from DataImportManager
   - XMLImportManager - Derived class from DataImportManager
***Wanted to make something like factory pattern
- DataImportUI
Please have a look at the attached document
Can anyone help me in building quality static diagram for this.

Thanks, DataManger-ClassDiag.docx
0
Comment
Question by:aspnetdev
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 15

Expert Comment

by:David L. Hansen
ID: 33559935
There are many ways to skin a cat....this seems like one of the more difficult ways of doing it.  Really, spreadsheets are so often misused that it is frightening.  Your clients want to be able to view some data, make changes to that data and have the system remember the changes.  The fact that they want to do this through Excel concerns me.  I would present the user with a form, let them make changes in the form, then submit those changes.  They can always download the data in a spreadsheet format to view/analyze, but that should not be the default method of allowing the user to update or input data.  That being said, I understand why the clients want it that way...they are comfortable with Excel and they are the ones holding the money.  So, if you can't convince them to change their minds, I'd give your Class Diagram my stamp of approval, with one suggestion.  Add another class which inherits from DataExportManager named ExcelExportManager.
0
 

Author Comment

by:aspnetdev
ID: 33561653
Thanks for your comments. I have modified the class diagram, let me know your comments on this.

DataManger-ClassDiag.docx
0
 
LVL 15

Accepted Solution

by:
David L. Hansen earned 250 total points
ID: 33562310
I'd say you have a pretty good diagram.  Good luck with it.  If you've worked with VB to/from Excel a lot then you'll have a big project ahead of you but I think you'll be ok.  If, however, you have not programmed VB to/from Excel ever before then seriously consider doing the job another way.  Not only will you need to navigate the muddy waters of writing to excel but you'll also need to *guess* at what the user did to the data and format which you didn't expect.  Bottom line: the user will have too much flexibility and that will cause you a lot of headaches (just speaking from experience).
0
Enroll in June's Course of the Month

June’s Course of the Month is now available! Experts Exchange’s Premium Members, Team Accounts, and Qualified Experts have access to a complimentary course each month as part of their membership—an extra way to sharpen your skills and increase training.

 

Author Comment

by:aspnetdev
ID: 33562889
Actually i have another ASP.NET web app where we implemented this functionality. I do acknowledge your concern but i think this is what business want. Also, i will be adding more classes for validation. Thanks for your comment though :) .
I am trying to master the art of UML and OOAD and i dont find many people with good sense of it. Everyone knows how to implement this way or the other but very few know how to design it right.

I will grant you the points.
Thanks,
0
 
LVL 15

Expert Comment

by:David L. Hansen
ID: 33562967
Yes, it IS an art -- that's for sure.  As far as mastering the implementation of UML/OOAD I'd just say this: Be a minimalist. At least while you are learning.  Beginners in UML tend to over do it.  For example, don't become "design patterns happy" treat them like perfume...use what you need and no more.
0
 

Author Closing Comment

by:aspnetdev
ID: 33599334
Useful feed back but not that much of helpful
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Author Note: Since this E-E article was originally written, years ago, formal testing has come into common use in the world of PHP.  PHPUnit (http://en.wikipedia.org/wiki/PHPUnit) and similar technologies have enjoyed wide adoption, making it possib…
Introduction Many of the most common information processing tasks require sorting data sets.  For example, you may want to find the largest or smallest value in a collection.  Or you may want to order the data set in numeric or alphabetical order. …
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…

690 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question