170 likes | 287 Views
Steve Rose Solution Architect, Rose Solutions Pty Ltd President, Canberra .Net Developers User Group msug@rosesolutions.com. Architecture Guidance From Microsoft. In the beginning. Circa 1997
E N D
Steve Rose Solution Architect, Rose Solutions Pty Ltd President, Canberra .Net Developers User Group msug@rosesolutions.com Architecture Guidance From Microsoft
In the beginning • Circa 1997 • Introducing Windows DNA: Framework for a New Generation of Computing Solutions <http://msdn.microsoft.com/library/en-us/dndna/html/dnasolutions.asp?frame=true> • Windows DNA: Building Windows Applications for the Internet Age <http://msdn.microsoft.com/library/en-us/dndna/html/msdn_windnapps.asp?frame=true> • Building Windows DNA Applications <http://msdn.microsoft.com/library/en-us/dndna/html/windnadesign.asp?frame=true> • Circa 2000 • Frequently Asked Questions about Windows DNA <http://msdn.microsoft.com/library/en-us/dndna/html/dnafaq.asp?frame=true> • Top Windows DNA Performance Mistakes and How to Prevent Them <http://msdn.microsoft.com/library/en-us/dndna/html/windnamistakes.asp?frame=true>
The .Net Story • Masses of material being generated by a new team within “patterns and practices” • Microsoft's Version of SOA (Service-Orientated-Architecture) <http://www.microsoft.com/windowsserversystem/content/WhtPaper_WSS_Integration_and_Evolution.doc> • Architecture and Design of Distributed .NET Applications <http://msdn.microsoft.com/library/en-us/dnbda/html/distapp.asp?frame=true> • Enterprise Solution Patterns Using Microsoft .NET <http://msdn.microsoft.com/practices/type/Patterns/Enterprise/default.asp>
Teaser #1 • Microsoft's Version of SOA (Service-Orientated-Architecture) • http://www.microsoft.com/windowsserversystem/content/WhtPaper_WSS_Integration_and_Evolution.doc • 25 pages essay by Pat Helland
How does the business capability interact with the outside? • Browser-based interaction • N-tier client/server • “The technique is challenging because it involves synchronous calls that lock up the client. Although the platform supports it, it is not the strategic choice for new business capabilities in Windows Server System.” • Service-oriented architecture (SOA)
Teaser #2 • Architecture and Design of Distributed .NET Applications • http://msdn.microsoft.com/library/en-us/dnbda/html/distapp.asp?frame=true • 166 pages led by Ed Jezierski
Designing business comp’s • Rely on message-based communication • Exposed processes must be idempotent • Choose transaction boundaries carefully (retries, composition) • Run in the context of any service • Consistent data format (such as XML, DataSet, and so on) for input parameters and return values • Set transaction isolation levels appropriately
Teaser #3 • Enterprise Solution Patterns Using Microsoft .NET • http://msdn.microsoft.com/practices/type/Patterns/Enterprise/default.asp • 367 pages, from the Prescriptive Architecture Guidence Team
Service Interface Pattern Includes sample code, test harnesses, benefits/liabilities, etc
My Special Notes • Use of Office • As a presentation layer UI • Office Document as a message format • “…recommended that you avoid designs requiring you to transfer data in a custom object-oriented format, because doing so requires custom serialization implementation and can create a performance overhead. Generally, you should use a more data-centric format, such as a DataSet, to pass the data from the data access logic components to the business layers, and then use it to hydrate a custom business entity if you want to work with the data in an object-oriented fashion. In many cases, though, it will be simpler just to work with the business data in a DataSet.”