Click here to Skip to main content
15,889,868 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello,

I have two products which have the same business functionality, however both products use a different "theme" or user interface. My problem is based on time we needed to create two separate products in a matter of weeks.

The issue here is maintenance and deployment. We make a change to one and have to make a change to the other manually. There are too many hard coded values in the HTML and a lot of the IDs are named the same (too long of a story to how we got here; outsourcing mean anything).

Anyhow I'm now creating a single UI project solution where I want to store the HTML tags that will differentiate product types in either a database or XML based on the domain that is entered. I can then determine which CSS/Images/HTML tags etc. to pull from the database to render the UI.

My question is how do I set this up to be scaleable; easy to manage; and easier to deployed. I'm not using the MVP pattern yet. I want to do one step at a time.

I would appreciate any help on this.

Thank You,
Posted

So basically, you have built up a technological debt and are now trying to pay it off. Sorry, but if I knew an easy solution to this I wouldn't tell you!

But, from what you've said so far, you might like to look at ASP.NET Themes.

You would have to merge the html and then use the resources ( images and css ) from each theme to present the two UIs.

Without looking at your code, I don't know if this is the best solution for you. I just thought I'd mention it in case you haven't considered it.

Good luck :)

Nick
 
Share this answer
 
Hi,

Thanks for the response. A couple of things I already have them separated out. The issue is the UI (for now). I have two separate UI projects that I need to consolidate into one. I have all this HTML code that has a lot of hard codes and my goal is to make this UI generic where the UI functionality is the same in both products but with different color schemes and images.

What is the best way of handling this?

Thanks,
 
Share this answer
 
Separate the functions into layers, the usual UI, business logic, and data access layers being one old but still excellent model. Keep on building your common UI, retain the existing (and presumed functional) business logic layer, and construct two data access layers to accomodate the two different systems. It's going to be a lot of work, but in the end you'll only have to maintain different codebases for the two data access layers.
 
Share this answer
 
I'm not looking for a direct answer but rather an idea or direction or ideas. I realized that this was not the best approach, but when you're trying to stay in business there are certain risks you must take. Thanks for the direction in using ASP.NET themes.

Thank You,
 
Share this answer
 
Toli, It's not an answer. Please try reading the response carefully. I already had accepted the answer from Nick.

Thank You
 
Share this answer
 
Comments
Pete O'Hanlon 13-Nov-10 18:36pm    
I deleted his comment because it was abusive. I also balanced out his 1 vote.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900