Consider the design you created in Homework exercise 3, about the architecture of a chat application. Make an implementation of your design using Visual Studio Express edition (downloadable for free) and a UPnP framework like CyberGarage, http://www.cybergarage.org/twiki/bin/view/Main/CyberLinkForCC. You also use other frameworks, see e.g. http://upnp.org/sdcps-and-certification/resources/sdks/ but the ones with Visual Studio support seem limited (Platinum is the other one).

 

a.       Adjust your architecture to conform to the style of UPnP and of the framework.

b.      Define clearly the services and interfaces you use, such that it is possible (in principle) that clients and servers are developed independently.

c.       Report on specializations of your architecture: design choices and required deviations, perhaps mismatches, and lessons learned.

d.      In your submission, include the code you made. Let it be self-documenting.