Solved

Implementing Class Diagram  and design pattern for new module

Posted on 2010-08-26
6
524 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
  • 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
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

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

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Suggested Solutions

Pretext and Context In previous  (http://www.experts-exchange.com/Programming/Theory/Software-Design/A_4457-System-Data-Modeling-Series-Identity-Management-System-Basic-System.html)article, I designed the data model of a basic Identity Management…
Introduction A frequently used term in Object-Oriented design is "SOLID" which is a mnemonic acronym that covers five principles of OO design.  These principles do not stand alone; there is interplay among them.  And they are not laws, merely princ…
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …

863 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

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now