Presentation is loading. Please wait.

Presentation is loading. Please wait.

Architecting Real-World Enterprise Application. Agenda CPR - Background Challenges in the Architecture Architecture Details Q & A Summary.

Similar presentations


Presentation on theme: "Architecting Real-World Enterprise Application. Agenda CPR - Background Challenges in the Architecture Architecture Details Q & A Summary."— Presentation transcript:

1 Architecting Real-World Enterprise Application

2 Agenda CPR - Background Challenges in the Architecture Architecture Details Q & A Summary

3 Background CPR – Computerized Patient Record Manages all the medical information of soldiers First version introduced at 2001  Based on RDS, VB6, Oracle Current version is 5.1.3

4 Background The medical info is organized in “Meetings” Implements the full medical cycle of IDF units doctors Supports various processes

5 Background A rewrite to.NET is required  Support for VB6 is over  Improving performance A good chance to improve current processes

6 Challenges Network – The network is very tight, from 64Kb. – The network has “hiccups”. Performance – Current application is very slow. Flexibility – Changes can take long time to be executed. – Deployment of a new version is slow.

7 UI Platform Zero Deployment Familiar Environment No Hardware Reqs Much Better UI Behavior Network Utilization Offline Support And The Winner Is… – Network bandwidth is one of the challenges – Offline support is crucial – Developers familiar with windows forms programming

8 Data Access Our strategy:  Use DTO Entity-only classes, roaming between layers  Use DAO Strongly typed data retrieval / update layer  Use DBAL Generic, DB-centric layer BLBL DTODTO DAODAO DB Access Layer

9 Data Access We Looked at 4 alternatives:  Generic Dataset  Typed Dataset  Entity Framework  3 rd party ORM

10 Choosing The Right DAL We defined our key considerations:  Strongly typed interface  State Management  Network optimization  Learning curve

11 Data Access AltsStrongly Typed NetworkConcur.State Mgmt Data Contract SQL Flex.Dev Quantity Tool Support SupportLearning Curve Gen. Dataset XXVVXVXVVV Typed Dataset VVXVVXVXVVV EFVVXXVVXV VX 3 rd ORMVVXVX V XX The Typed dataset is less-risky, more flexible and more supported Need a solution to its network and interoperability problems

12 Tweaking the Dataset Typed DataSet XMLXMLDTODTO New Record Updated Record Deleted Record DTO

13 Tweaking the Dataset The results of the POC:

14 Enterprise Library

15 The Problem – System-wide logging – Flexible – Multiple outputs – Externally configured The Solution – Logging Application Block ?

16 Enterprise Library The Problem – Validation should be performed on the client & the server – Should be managed externally – Validation logic can change frequently The Solution – Validation Application Block With custom validation rules ?

17 Enterprise Library The Problem – Cross-cutting concerns should be separated from code – Should be managed externally The Solution – Policy Injection Application Block With custom handlers ?

18 Enterprise Library The Problem – Classes dependency is hard-coded – Should be managed externally The Solution – Unity ?

19 Offline Offline scenarios  Network Hiccups  Lack of network connectivity for mobile units Offline main challenges  Developing one system that supports online & offline  Supporting as much as possible “online functionality”  Security  Synchronizing Data

20 Offline Solution ?

21 Q & A

22 Related Sessions DEV314: Design Patterns – Learn From the Experience of Others Avi Rot

23

24 Summary CPR - Background Challenges in the Architecture Architecture Details

25 © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Architecting Real-World Enterprise Application. Agenda CPR - Background Challenges in the Architecture Architecture Details Q & A Summary."

Similar presentations


Ads by Google