Link to home
Start Free TrialLog in
Avatar of rj2
rj2

asked on

Object oriented design question - how should business objects relate to Windows workflow foundation in n-tier solution

I'm designing an n-tier solution using a smart client (WPF) . Using Windows workflow foundation in business layer looks nice because a lot of the functionality revolves around workflow. So I'm hoping that using WF instead of rolling our own support for saving workflow to database, retrieveing workflow from database, monitor if changes in status have been made etc wil save some implementation time.

Does anyone have any info on how typical business objects should relate to workflow concerning classes?

If I want to design a sales support application for real estate agents I could have a class House. Status changes in workflow could be "waiting for assessment", "assessment done", "ready to advertise", "advertised", "offer is made","offer rejected","offer accepted","waiting for contract to be signed","contract signed","sold" etc.
Should I have a class "House" and how should it relate to workflow?
Does it make sense to use WF in this case?
Are there samples or info available that could shed some light on this?
 
ASKER CERTIFIED SOLUTION
Avatar of surajguptha
surajguptha
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Avatar of F. Dominicus
F. Dominicus
Flag of Germany image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of rj2
rj2

ASKER

>> Sales Support Application for Real Estate Agents.
The workflow of Waiting for Assessment, Assessment Done, ..... is this the only workflow in the application?

The flow can be slightly different from user to user.
For small real estate agents the flow is simple.
In larger companies there could be additional steps needed. Some steps could need approval from a supervisor before the workflow can continue.

So I would define my activities and have several different workflows and have a config where the user select which workflow best fits their needs. I would define as many workflows as needed so that everyone can find a workflow that fits their needs.
Well that makes sense. If you are going for WF you should check out the links i posted and gets some hands on for you to fully understand the implication of using WF and how you would want to package that with the solution you are trying to develop.
Avatar of rj2

ASKER

surajguptha:
The site http://wf.netfx3.com contains a lot of info. What particular info did you have in mind that would help me decide if workflow is suitable for this particular case?
I will check out the hands on lab, thanks.

fridom: I will try building a simple class and try to add workflow into it and see what comes out, thanks.
rj2, i pointed the link out just as a general reference to all WF related articles.