esa™ : a framework for architecture-modeling of kpi driven enterprise business applications...

17
ESA™ : A Framework for architecture- modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology Solutions

Upload: lee-albert-greene

Post on 12-Jan-2016

219 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications

Ambaprasad GudipatiPrincipal ArchitectCognizant Technology Solutions

Page 2: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

Need for ESA Framework

• Nature of KPI Driven Business applications– Organizations use KPIs to measure effectiveness and efficiency of

business processes– Some KPI measurement happens after the fact while others during the

execution of business process (to raise alarm / automatic escalations)– Organizations want to continuously fine-tune and improve the business

process in response to KPI measurements– Organizations are interested in KPIs that span multiple business

processes• Experience with current tool set

– Multiple and expensive systems (with huge integration cost) are needed to create KPI driven business applications

– Implementation of change in business process is expensive – Hosting and monitoring of business process needs specialized software

and hence huge drain on organization’s resources– Business processes that involve human activity or measuring KPIs that

span multiple business processes require special tool set

Page 3: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

Ideal framework requirements

• During development process– Simple, easy to use, flexible and free– Development in weeks and not in months– Deployment in few clicks– Cloud ready

• During Maintenance– Business analysts should be able to change business

processes – IT shouldn’t be the bottle neck– Very easy to use monitoring tools– Ability to change deployment topology in few clicks– Support human tasks in business processes with expected

natural delays – shouldn’t hold up computer resources

Page 4: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

VS 10, .net framework feature set

• .net framework 4.0– Standard , uniform WCF Services with simplified configuration– Revamped WF simplifying the development– Extensive support to Entity Framework and open data protocol

• VS 2010– Extensive support to UML 2.0 for seamless requirement

management, architecture validation and design– Simple and extensive WF designer– One click deployment onto on-premise AppFabric and cloud

• Windows Server AppFabric– Simplified hosting of WCF and WF services– Extensive and configurable Monitoring

Page 5: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Architecture Prescriptive Guidance• WF for creation of business processes

– Seamless integration and simple representation of human and machine activities– Persistence and loading / un-loading of workflows for optimum resource utilization

• WCF to expose business process as services– One uniform platform to expose data, business process and Rich UI Services– 4.0 makes configuration simpler with automatic endpoint discovery mechanism

• Message queues as information exchange mechanism– Support for asynchronous transactions and natural delays in human activities– Improves the performance, scalability and availability of the applications

• Entity Framework with REST as data platform– EF 4.0 with REST makes it easier to respond to database changes– ADO.Net dynamic data web site feature for business administration and support

• Windows AppFabric to host and monitor WCF services WF workflows– Easy to use, built-in deployment and management platform– Provides information for SLA monitoring

Page 6: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework S+S Vision compliance • Allow user experiences to span beyond a single device

– AKA “three screens- one cloud” business process services enable the User experience developers to harness the power of the device (thick client, web client or mobile client) for presentation layer development and utilize with business process services for information processing

– ASA Proposes to Expose business process capabilities as a set of WCF Services to create a loosely coupled federated enterprise

• Infrastructure services should extend from the server to the cloud– Components or set of services developed using ASA prescribed architecture can

be deployed on the cloud and can be seamlessly integrated with on-premise

• tightly coupled systems should give way to federations of cooperating systems and loosely coupled compositions– WCF, WF and MSMQ platform will ensure the same

Page 7: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework architecture blueprint extensions• Planning and Development Governance using SharePoint 2010

– Service repository, Service Description, SLAs, Development Lifecycle management, Approvals, Versioning information

• Data transformation using BizTalk Server 2009– Information exchange with LOB systems, understanding the source and

target formats, using ESB 2.0 tool kit for integration with various business systems

• Integration with third-party ESBs, monitoring systems– Organizations utilize heterogeneous platforms to realize the business

requirements. ASA framework based services can participate in orchestration on third party ESBs.

– As the services confirm to WS* standards, they can be monitored by third party monitoring mechanisms

Page 8: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA frameworkRequirements Management• Importance of modeling

– Detailed documentation of requirements is impractical as it takes time and requirements will change by the time documentation is completed

– Documentation won’t be able to convey the intent of users and hence requirements as it is tough to elaborate requirements in a set of words

– Models provide a context to conversation along with concepts and relationships that matter most to the users

• UML 2.0 with VS 2010– ASA framework recommends UML with VS 10. UML provides standard

mechanism for modeling and usage of VS10 ensures that requirements, design and code are captured in single canvas

– Using various views like use case diagrams, activity diagrams etc helps business users & designers to understand the flow of work between users & applications and hence clearly depicts the business processes

Page 9: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA frameworkChange Management• Business Dynamics

– Business Processes and their semantics do change to represent the changing business environment or as an attempt to improve KPIs

– Complete base-lining of business requirements at the starting of development with a rigid change management process limits the usage of the developed system

• UML 2.0 with VS 10– ASA framework advocates progressive elaboration of requirements and

modeling the same using various UML views.– Usage of EF framework, loosely federated services model, workflows

representing business processes with declarative rule management inherently supports changes to the requirements and business processes

– Quite a few number of changes can be done by the business users themselves with little support from IT and with no re-compile

Page 10: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Design Blue Print• Component diagrams to define the interfaces

– Interface first development ensures that the services and their contracts are defined and published.

– Component diagrams will also depict the major parts of the system.

• Drag interfaces and create classes for interface realization– Classes implement the operation contracts and represent the business entities

• Interaction diagrams show message flow among methods– Services use messages to exchange information. Sequence of exchange of

information with exception flows among various methods represent the business processes

• Classes use semantic services for persistence and DB design– Classes do represent business entities and database will be used to persist the

information collected. Methods of these classes will perform CRUD operations– Classes will be the starting point for the model first database design and their

representation will be expanded to ensure that the resulting elements follow relational principles.

Page 11: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Development Blue Print• Use MSMQ binding for WCF services

– Usage of asynchronous with “fire and forget” mode improves the scalability and availability of the system (ACID versus BASE)

• Use Workflows to code the business processes– Take advantage of simple, graphical and declarative representation of code in workflows– Creation of activities for common tasks promote reuse– While dormant, workflows persist themselves and free up the resources which inherently

improves the scalability of the system

• Expose workflows as WCF services and host them in AppFabric– Windows Server AppFabric will be the container for workflows and WCF services and frees

the developers from instrumentation code. Utilize ETW and generate appropriate messages for SLA monitoring and for KPI inputs

• Leverage REST and EF to minimize the DAL code– REST provides standard mechanism for database access. Coupled with LINQ and open

data protocol, helps developers to create DAL CRUD layer very fast– Use ASP.Net dynamic data entities application template to create Help desk / business

user administration interfaces

Page 12: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Service Adaptability Tool Kit (ESB)• Why this tool kit?

– Tool kits accelerate the development process. Provides prescriptive guidance, solution tactics, reference implementation , bench marks and code components

– This tool kit provides information on how to develop WCF based services

• Prescriptive Guidance : – When to use what type of security– when to use eager and lazy loading– When to use what type of binding

• Solution Tactic – How to use ETW for exception and logging– How to develop discoverable services– How to do service versioning and routing

• Code Components– CRUD operations using ADO.Net Data Services (using REST / open data protocol)– Business administration / Help Desk screens using Dynamic Data web sites

Page 13: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Process Adaptability Tool Kit (BPM)• Why this tool kit?

– Tool kits accelerate the development process. Provides prescriptive guidance, solution tactics, reference implementation , bench marks and code components

– This tool kit provides information on how to develop WF based workflows

• Prescriptive Guidance : – When to use variables, arguments and expressions in workflows

• Solution Tactic – How to use ETW for exception and logging– How to configure and use Message Queues

• Code Components– How to call external methods in WF– CRUD operations in MSMQ– How to handle collections in workflow– How to do designer re-hosting

• Tools– How to extract and store information from ETW

Page 14: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Service Monitoring Tool Kit• Why this tool kit?

– Tool kits accelerate the development process. Provides prescriptive guidance, solution tactics, reference implementation , bench marks and code components

– This tool kit provides information on how to host and monitor workflows and services

• Solution Tactic – How to install and commission AppFabric– How to host WCF and WF in AppFabirc– How to manage scalability of services

• Tools– Service registration and versioning report– SLA deviation or accordance report– Service consumption report

Page 15: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

ASA framework Benefits• Comprehensive Guidance on developing KPI Driven business applications• Promotes one canvas – many views – one system where business analysts,

architects, designers, developers, testers and project managers will use only Visual Studio 2010

• Common convention – no confusion when UML 2.0 is used for all the views• Source code is always in synch with design as VS 2010 supports reverse

engineering• Can validate code against the architecture• Architecture blue print inherently promotes code re-use. Minimal amount

of configuration and instrumentation coding• Architecture blue print is extensible and can preserve existing customer

investments• Tool kits provide prescriptive guidance and tactics for common tasks and

hence reduces the amount of code• Architecture is inherently cloud ready

Page 16: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

Conclusion• VS 2010, .net framework 4.0 and AppFabric opens up

opportunities for development of loosely coupled federated systems

• Usage of various patterns, techniques and frameworks reduces the amount of programming and time to market

• Good architecture promotes reuse and will be resilient to the changes in business requirements

• Lets use 2010 in 2010

Page 17: ESA™ : A Framework for architecture-modeling of KPI driven enterprise business applications Ambaprasad Gudipati Principal Architect Cognizant Technology

© 2009 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.