1 / 38

Application Architecture

Application Architecture. T H E S O C R A T E S G R O U P, I N C. Application Architecture. Application Architecture (Logical computing view). Middleware Architecture (distributed computing connectivity). Distributed Data Architecture (distributed data access). Technology Architecture

liko
Download Presentation

Application Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ApplicationArchitecture T H E S O C R A T E S G R O U P, I N C.

  2. Application Architecture Application Architecture (Logical computing view) Middleware Architecture (distributed computing connectivity) Distributed Data Architecture (distributed data access) Technology Architecture (Physical computing view)

  3. Tool-Based Architecture C++ PowerBuilder SQL VAX C Oracle 3090 COBOL Sybase Smalltalk • Lots of tools with no clear way of making them work together... Security? Location? Communications?

  4. Application Architecture • Business applications reside & execute within the Application Architecture • Business application developer needs to make fewer choices • Application Architecture provides a clear set of rules to decide what goes where • Business applications can be developed independent of network specifics

  5. Mainframe Architecture • Put all your eggs in one basket • Watch that basket very closely • Change is the enemy

  6. Mainframe Application Architecture Presentation Services Transaction Services Business Services Data Management Services Generic Service Example Desktop Terminals Mainframe CICS COBOL Applications IMS, DB/2, VSAM

  7. Splitting the Application Desktop Presentation Services Transaction Services Network Application Program Server Application Program Data Management Services

  8. A More Probable Split Desktop Presentation Services Network Application Program Server Transaction Services Application Program Data Management Services

  9. Multi-Tier Split Desktop Presentation Services Network Application Program Business Process Server Transaction Services Application Program Database Server Data Management Services

  10. Client/Server Application Architecture User InterfaceServices BusinessProcess Services Data Access Services

  11. User Interface Services User InterfaceServices BusinessProcess Services Data Access Services • Graphical or character-based • Presumption today is GUI • Visual presentation & navigation • Data input & validation • Initiates requests for remote services • Includes everything that executes on the desktop: • Personal productivity tools • Data access tools • Client applications • Development tools

  12. Business Process Services User InterfaceServices BusinessProcess Services Data Access Services • Accepts requests for business services • Common business processing logic • Data integrity • Defines transaction boundaries • Makes requests for data access/update

  13. Data Access Services User InterfaceServices BusinessProcess Services Data Access Services • Accesses data • Updates data • Data may be: • Local to this computer • Stored in remote computer(s) • Many forms of data: • Databases • File systems • Remote data feeds

  14. The Services Model™ User User InterfaceServices BusinessProcess Services Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services

  15. Enterprise Connectivity Services User UI Services Business Process Svcs Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services • Primary Service: • Inter-Process Communication • (i.e. messages)

  16. Operating Platform Services User UI Services Business Process Svcs Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services • Primary Services: • Program Execution services • Device & File I/O

  17. Data Management Services User UI Services Business Process Svcs Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services • Primary Services: • Complex data access & update • Data integrity • Distributed datasynchronization

  18. Enabling Layers User UI Services Business Process Svcs Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services • The bottom three layers enable the execution of distributed applications Enabling Layers

  19. Solution Layers User UI Services Business Process Svcs Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services • The top three layers enable the creation of distributed applications Solution Layers

  20. The Glue Between The Layers UIS Glue Layer BPS Glue Layer DAS Glue Layer DMS NOS LAN • Distribution models all imply ability to break application processing into multiple distributed processes. • Glue layers allow process distribution. • To work effectively, the glue must be very simple to apply

  21. Glue Allows Process Distribution UIS Glue Layer BPS Glue Layer DAS Glue Layer DMS DMS NOS NOS NOS NOS LAN LAN LAN LAN

  22. Glue is called “Middleware” User User InterfaceServices BusinessProcess Services Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services Glue Layers

  23. Distributed Layers • The enabling layers must be present on all participating systems • The expressive layers may be distributed to two or three tiers • Six models to consider: • Stand-Alone • Remote Terminal • Remote File • Remote Data • Remote Process • Distributed Process Tier 1 Tier 2 Tier 3 UIS BPS DAS DMS DMS DMS OPS OPS OPS ECS ECS ECS

  24. Exercise—Model the Models • The next six pages of your notes contain models of various application architectures • Break into small groups and take 1/2 of a sticky wall • Use the sticky wall, the index cards and the marker pens to create each of these models on a sticky wall • Give examples of this model • Discuss & identify the strengths and weaknesses of each of these models • Use the notes page below the model to record the strengths and weaknesses of each model

  25. Stand-Alone Model • No remote processing or access • Stand-Alone OpSys has no remote capabilities UIS BPS DAS DMS SAOS none

  26. Remote Terminal Model • Centralized processing managed by multi-user OpSys • All access by remote terminals • No processing done at terminals UIS BPS DAS DMS MUOS Term

  27. Remote File Model • All application processing performed locally • File I/O performed remotely by Network OpSys UIS BPS DAS DMS NOS NOS LAN LAN

  28. Remote Data Model • User interface, business process and data access logic performed locally • Some data access may be performed close to database • e.g. Database procedures • Data management performed remotely • Also known as “Fat Client” model UIS Optional BPS DAS DAS DMS NOS NOS LAN LAN

  29. Remote Process Model • BPS and DAS performed on same server as DMS • Implies heavy use of Database Procedures layer • Also known as “Fat Server” model UIS BPS DAS DMS NOS NOS LAN LAN

  30. Distributed Process Model • Business processes performed on middle tier • Data access can be performed on 2nd or 3rd tier • DMS can be on any server… even one with no BPS UIS BPS DAS DAS DMS DMS DMS NOS NOS NOS NOS LAN LAN LAN LAN

  31. Discussion Each small group: • Give examples of each model • Describe the strengths & weaknesses of each model • Compare the models • What did you learn from this exercise?

  32. Data Validation vs. Integrity Checking • What is the difference between: • Data input and validation rules • Business process & data integrity rules • Why must we distinguish between them? • Why will some rules be implemented twice?

  33. Where Does Validation Belong? UIS UIS UIS BPS BPS BPS DAS DAS DAS DAS DMS DMS DAS DMS Fat Client Fat Server Distributed Process Desktop Desktop Desktop Server Server Server Server Server Where does validation logic belong in each of these models?

  34. The Rules! • Code in the UIS layer exists only to enhance user productivity • Rules which must be true about the data reside in the Data Access Services layer(s) • Rules which express decisions made as a part of performing business transactions reside in the Business Process Services layer(s) • DAS rules have precedence over BPS rules • BPS & DAS rules have precedence over UIS rules

  35. Abstract Architecture Power-Builder Smalltalk C C++ COBOL SQL Sybase Oracle 3090 VAX • An architecture provides the conceptual framework that holds everything together.

  36. Enterprise API • The enterprise API is the collection of all SI’s which provide business services • Enterprise API is about the server API Client Applications Employee Inventory Accounting Sales SI: Emp SI: GL SI: AR SI: AP SI: Inv SI: AR SI: Inv SI: Sales SI: Emp GL AR AP Inv Sales Emp Reusable, redundant BPS and DAS services located on servers

  37. Building The Enterprise API • The Enterprise API is: • The foundation for user’s applications • The repository for business services and data ApplicationSoftware Glue User Interface Svcs Business Process Services Infrastructure Data Access Services Data Management Services Operating Platform Services Enterprise Connectivity Services

  38. Application Architecture Summary • Having an Application Architecture simplifies client/server development • Determines what code performs which services • Facilitates business process reuse • Simplifies client application development • Assures data integrity • Reduces risk of project failure

More Related