1 / 41

Practical Architecting Solutions Using TOGAF Frameworks 1.5

This presentation covers practical aspects of architecting with TOGAF framework, focusing on the decisions a Solution Architect must make when planning for overall Enterprise Architecture. Topics include Application Integration, Web Services, Network Architecture, and more.

geraldinec
Download Presentation

Practical Architecting Solutions Using TOGAF Frameworks 1.5

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. Author : James james_smith73@yahoo.com Architecting SolutionsTOGAF Frameworks Version 1.5 – Updated Date 28th Sept 2007 My Technical Group - http://tech.groups.yahoo.com/group/james_smithjava/

  2. Dear Friends Welcome for a “Technical Treat on Architecting” this presentation covers most appreciated framework of our times “TOGAF”. I have tried to make it as practical as I could understand and use less theory (that’s been my writing technique). I have not tried to restrict this presentation to just frame work explanation, which one can get from its official web site too, this presentation is more inclined towards the various decisions a Solution Architect has to make while planning for over all Enterprise Architecture, so topics like Application Integration EAI, EDI, Web Services, Network Architecture, Linux Clustering for Load Balancing, Fail over hardware concepts, Layer to Layer Data Communication etc are also presented here, may be there could have been a separate document but I decided to pack them into one and share the knowledge with my colleagues and like minded friends. I work at HCL Technologies as a Associate Technical Manager / Technical Architect and also I lead a Java User Group of 750+ friends at my Yahoo Group http://tech.groups.yahoo.com/group/james_smithjava/ Your Suggestions and Ratings would really help in increasing the scope of this document, you might as well blog on this document at Java User Group Thanks and Regards James [james_smith73@yahoo.com]

  3. Table of Content References - http://www.opengroup.org/togaf/ , http://www.zifa.com/

  4. Common Ownership • Geographically Distributed Business • Multiple Divisions , Departments. • Global Business Partners Enterprise Business

  5. Definition of Architecture • Detailed plan of the system at component level to guide its implementation • Structure of components, their inter-relationships, and the principles and guidelines governing their design

  6. Definition of Enterprise Architecture • Support the business by providing the fundamental technology and process structure for an IT strategy • Advantages of Good Enterprise Architecture • Lower software development, support, and maintenance costs • Increased portability of applications • Improved interoperability and easier system and network management • Improved ability to address critical enterprise-wide issues like security • Easier upgrade and exchange of system components • Maximum return on investment in existing IT infrastructure • The flexibility to make, buy, or out-source IT solutions • Reduced risk overall in new investment, and the costs of IT ownership

  7. Architectural Framework • Architecture framework will speed up and simplify architecture development • Ensure more complete coverage of the designed solution • Make certain that the architecture selected allows for future growth in response to the needs of the business • Reliable, proven method for developing an IT enterprise architecture that meets the needs of business • Some of the Standard frameworks are TOGAF, ZACKMAN, DODAF

  8. Stakeholders • They are the key people who have concerns that need to be addressed by the IT systems within the organization • They can be CEO, CTO, IT Manager, Technical , HR , Finance Manager etc

  9. ADMArchitecture Development Method Framework & Principles • Framework and Principles • Identify the framework to be used such as TOGAF / ZACHMAN/ DODAF • Identify Architects, work locations, and their responsibilities • To define the scope and assumptions • Identify all the stakeholders to the Architectural Process • Understand and document each stakeholders Concerns, Goals and Objectives • Evaluating architecture tools , repositories. • Repository management processes to capture and maintain architecture docs • Identify Business Strategy, Principles, Goals and business driverswhich can influence Architectural Principles • Architecture Principles are general rules and guidelines, and seldom amended • Architecture principles are a subset of IT principles that relate to architecture • Each of these principles must follow the standard template such as • Name, Statement, Rationale, Implications • Architecture Principles are sub-divided into following • Business Principles • Data Principles • Technology Principles • Business Principles • Business Principles, Example below • Name: “Information Management is Everybody's Business” • Statement: “All organizations in the enterprise participate in information management decisions needed to accomplish business objectives” • Rationale ( Basis ): In order to ensure information management is aligned with the business, all organizations in the enterprise must be involved in all aspects of the information environment. The business experts from across the enterprise and the technical staff responsible for developing and sustaining the information environment need to come together as a team to jointly define the goals and objectives of IT • Implication ( Suggestion ) : work as a team every stakeholder, or customer, will need to accept responsibility for developing the information environment • Business Continuity • Common Use Applications • Compliance with Law • Protection of Intellectual Property • Data Principles • Data is an Asset • Data is shared • Data is Accessible • Common Vocabulary and Data Definitions • Data Security • Application Principles • Technology Independence, • Application Ease of Usage • Technology Principles • Change in Technology only based on change in Business. • Responsive Change Management • Control on Technological Diversity • Interoperability for data, Applications and Technology

  10. Maximize Benefit to the Enterprise Information Management is Everybody's Business SummaryArchitecture Principles Ensure Business Continuity, Compliance with Law Protection of Intellectual Property Data is Shared Asset, Accessible, Secure Technology Independence, Application Ease-of-Use, Requirements-Based Change, Control Technical Diversity Responsive Change Management Interoperability

  11. ADMArchitecture Development Method • Architecture Vision • Objectives are • To ensure the architecture development cycle has proper recognition , support and commitment of the necessary people management • Define the scope of, and to identify and prioritize the components of, the Baseline Architecture • Define the relevant stakeholders, and their concerns and objectives • To define the key business requirements to be addressed in this architecture effort, and the constraints that must be dealt with. • Secure formal approval to proceed • To understand the impact on, and of, other enterprise architecture development cycles ongoing in parallel • Inputs are • Request for Architecture Work • Business strategy, business goals, and business drivers • Outputs are • Approved Statement of Architecture Work • Refined statements of business goals and strategic drivers • Baseline Architecture Framework & Principles Architecture Vision

  12. Establish the Project Identify Business Goals and Business Drivers Architecture VisionPhases Review Architecture Principles, including Business Principles Define Scope Define Out of Scope Define Constraints Identify Stakeholders and Concerns Identify Business Requirements, and Architecture Vision Develop Statement of Architecture Work and Secure Approval

  13. Business Concept ( Source IBM Research ) Business Situation Motivates Business Purpose Fulfills Motivates Business Commitment Business Outcome Produces Binds Governs Consumes Business Role Player Business Resources Defines Performs Business Behavior Enables Houses Invokes Business Function Business Location Houses

  14. Business to IT Concept Mapping ( Source IBM Research ) God God Business Situation Domain Business Purpose Deployment Unit Business Function Interface Business Behavior Collaboration Business Commitment Component Business Outcome Interaction Business Role Player Walk Through Business Resources Connection Business Location Node Business Architecture Concepts IT System Architecture Concepts

  15. ADMArchitecture Development Method • Business Architecture • Objectives are • Business Architecture is a means of demonstrating the business value of Technical Architecture work to key stakeholders • Return on investment to those stakeholders from supporting and participating in the subsequent work • Need to verify and update the currently documented business strategy and plans Framework & Principles • Business Modeling • Business Process Modeling: They capture the activities performed in a business process, and the ICOM ‘s (inputs, controls, outputs, and mechanisms/resources used) of those activities • Use Case Models: They describe the business processes of an enterprise in terms of use-cases and actors corresponding to business processes and organizational participants (people, organizations, etc.) • Node Connectivity Diagram: A node can represent a role (e.g., a CIO); an organizational unit; a business location or facility and so on. An arrow indicating the direction of information flow is annotated to describe the characteristics of the data or information • Information Exchange Matrix: They identify who exchanges what information with whom, why the information is necessary, and in what manner. Architecture Vision Business Architecture

  16. Improve Business Process Performance Decrease Costs, Improve Management Efficacy Sample Business – IT – Goals Reduce Risk, Improve Security Improve Effectiveness of IT Organization Improve User Productivity Improve Portability and Scalability Improve Interoperability Increase Vendor Independence Reduce Lifecycle Costs

  17. ADMArchitecture Development Method • Information System Architecture • Information Systems Architecture is the group within the Information Technology division concerned with the "middleware" software layer between applications and key data services. The most familiar of these responsibilities are the online directory service LDAP, MS Active Directory. Web Single Sign on techniques, Access Control Mechanism, etc. • ERP, CRM, Payroll, HR Management etc. - often provide the integration issues and pose a challenge for Information System Architecture • The information system architecture supports the design of the applications (software and data) of the (automated) information system. • The information system is specifically designed to support the business of a company. Information system architecture differs from software architecture. Information system architecture focuses on the role of applications in the business processes. The information system architecture is function-oriented • Expert opinion is software architecture is a subset of the information system architecture. The software architecture focuses on the construction of applications from software components. The software architecture is construction-oriented. Framework & Principles Architecture Vision Business Architecture Information System Architecture

  18. Technology Architecture ( Source USA. GOV ) Application Technology Data Technology System Management Integration Collaboration Security Networks Platforms • Data Technology • Identifies technical tools (software) that enable information (Data) storage, retrieval, management, and analysis. Typically this includes database management systems. • System Management • Identifies technical tools for monitoring and collecting data on client system performance to enable better availability, performance, and reliability from the IT environment. • Integration • Identifies the technologies, products, and mechanisms that enable applications to communicate with each other effectively while preserving information and data integrity. • Networks • Consists of the major technical elements required to provide data and Internet communications between Customer locations around the globe, as well as communications with business partner sites. • Collaboration • Includes technologies and tools that enable IT users to access vital information resources, share information, and work and communicate effectively and efficiently with peers, customers, and the public independent of geography. • Application Technology • Identifies the IT tools (hardware and software) that enable the development of applications, wich automate specific business tasks. Examples of applications technologies include application development languages, application development patterns, and application servers. • Platforms • Identifies the underlying hardware and software that determine an information system’s operations, functions, and specialization. • Security • Describes a set of standards to follow and products that have been shown to work well when developing security solutions, with the objective of maintaining the confidentiality, integrity, and availability such that the level of protection is adequately risk free.

  19. ADMArchitecture Development Method • Technology Architecture • The Technology Architecture describes current and future technical infrastructure and specific hardware and software technologies that support information systems. • It provides guidance and principles for implementing technologies that are proven to work well with existing and planned technologies. • Identify and document Technology Architecture Building Blocks (potential re-usable assets) • Draft the Technology Architecture Baseline (Current Architecture) report • Summarize key findings and conclusions, developing suitable graphics and schematics to illustrate baseline configuration (s) • Moving from product documentation to a service-oriented description • Develop Target Technology Architecture (New Architecture) • Identify list of approved suppliers/products for that organization • Collect data on current system, Document all constraints • Review and validate the set of Technology Architecture principles • Analyze relationships between groupings • Identify interfaces between existing and new systems Framework & Principles Architecture Vision Business Architecture Information System Architecture Technology Architecture

  20. Coexistence Problems between New and Old IT Systems • User interfaces: combining user interfaces to the old and new applications in a single unit on the users' desks can be difficult, if not impossible. • Access to data: often the new applications need to share some data with the old applications, and some kind of data sharing must be established. This can be difficult unless the old and new systems use the same database technology. • Connectivity: this may involve expenditure on software and gateway equipment. In difficult cases, equipment simply may not be available in a useful timescale. Often this happens because the old system is simply too out-of-date for connectivity solutions to be still on the market. • The most successful strategy is to focus on projects that will deliver short-term pay-offs and so create an impetus for proceeding with longer-term projects.

  21. Technology Architecture HTTP Request / Response Presentation Tier Reusable Components Validator Rendering Kit Session Mgmt JSF Controller Managed Bean Backing Bean Service Locator Business Delegator RMI IIOP EAI Business Tier Legacy Systems Data Access Tier • Presentation Tier Responsible For : • Presentation Tier can use JSF & Ajax Technologies • Main Tasks are to Process incoming Requests • Validating and Filtering user inputs • Rendering the Response back to Client • User Web Session Management • Conversions and Data Formatting • More .. SOAP B2B Portal J2EE Container ( OC4J) E-Directory DB Server File System

  22. Technology Architecture HTTP Request / Response Presentation Tier Reusable Components RMI IIOP EAI Business Tier Legacy Systems Business Object Façade Factory Session Facade Business Controller Value Object Data Transfer Obj Business Rules DAL Delegator Data Access Tier Business Objects [Design Patterns] are POJO ’s & doesn’t depend on any container technology, they just represent business entities and implement business rules. • DAL Delegator hides the implementation of data access logics [ Design Pattern ] • This reduces the number of changes that must be made in business layers when the data access API or its underlying implementation changes • Reduces the coupling between BL and DAL SOAP Façade Factory is Responsible for creation and initialization of Session Facade B2B Portal • Session Façade is Stateless Session Bean [Design Pattern] • Invokes multiple BO’s for Single Business Request • Low Network Traffic • Local Calls to Entity Beans with in Single Transaction • Should use Container Managed Transaction • Business Controller [Design Pattern] is a single centralized Business Controller • Receives all business processing request • Implements security before passing request to session facade • Decides on which session facade to pass request Transaction Mgmt Session Mgmt Cache Mgmt Lazy Loading E-Directory DB Server File System

  23. Technology Architecture HTTP Request / Response Presentation Tier Reusable Components Validator Rendering Kit Session Mgmt JSF Controller Conversions Managed Bean Backing Bean Service Locator Business Delegator Formatting RMI IIOP Mailing & Fax EAI Business Tier Logging Legacy Systems Business Object Façade Factory Session Facade Business Controller Exception Value Object Data Transfer Obj Business Rules DAL Delegator Auditing Data Access Tier Authentication Value Object Data Transfer Obj EJB 3 JPA DAL Controller SOAP Utilities Concurrency Ctrl Adapters B2B Portal Multi Lingual Transaction Mgmt Session Mgmt Cache Mgmt Lazy Loading E-Directory DB Server File System

  24. Technology Architecture [ App Specific Ex Content Management System ] HTTP Request / Response Presentation Tier Reusable Components Validator Rendering Kit Session Mgmt JSF Controller Conversions Managed Bean Backing Bean Service Locator Business Delegator Formatting EAI RMI IIOP Mailing & Fax Business Tier Application Tier Services Application Tier Components Logging HRMS Software Authorization Folder Management Business Rules Façade Factory Version Controlling Indexing Documents Data Transfer Obj Session Facade Exception Work Flow Engine Searching Documents Business Object Business Controller Auto Categorization Profile Management Value Object DAL Delegator Auditing Data Access Tier Authentication User Profile Table Menu Master Transaction Mgmt Concurrency Ctrl User Rights Table Document Keywords Session Mgmt Adapters Utilities Work Flow Table Department Master Cache Mgmt EJB 3 JPA Document Search Categories Master Location Master Lazy Loading DAL Controller Multi Lingual E-Directory SOAP DB Server File System

  25. Inter Layer Communication Web Server App Server RMI IIOP Protocol Transferred Objects need to be Serialized Distributed Exception Handling Support Packaging of Transferred Objects Loose Coupling & Tight Cohesion

  26. LAMPTechnology (LINUX, APACHE,MYSQL, PHP) Model View Controller Using Smarty Templates of PHP Low BudgetPower of Open Source Support for Caching and Role based Security Configuration Files based Templates, High Usability Data is Shared Asset, Accessible, Secure Easy to Use and Maintain for Web page designers Variable Modifiers, Request Response Filters Templates Resources and Handlers Plug-in & Add-ons, Debugging, Compiling, High Performance

  27. ADMArchitecture Development Method • Opportunities and Solutions • Identifies the parameters of change, the major phases along the way, and the top-level projects to be undertaken in moving from the current environment to the target. • This phase also attempts to identify new business opportunities arising from the architecture work in previous phases. • Iteration must be limited by time or money to avoid wasting effort in the search for a perfect architecture. • Do gap analysis on the business functions between the old environment and the new, • Any functions appearing as "new" items will have to be implemented (developed or purchased and deployed). • It is important to note that the ensuing development process must include recognition of dependencies and boundaries for functions and should take account of what products are available in the marketplace. Framework & Principles Architecture Vision Business Architecture Information System Architecture Technology Architecture Opportunities and Solutions

  28. Migration Planning • Many organizations face the problem of having to modernize their existing software systems by migrating to more capable systems. Modernizing legacy software systems is a complex engineering problem that includes most aspects of traditional software development with more constraints . A successful migration effort requires both a sound development plan and a sound migration plan. • A development plan addresses the selection of the appropriate software processes, methods, tools, and hardware and software platforms. A migration plan created in conjunction with the development plan is necessary to help ensure that the operational transition to the new system goes smoothly. • A good migration plan should weigh programmatic and technical drivers for system development against customer priorities. Because of this, the plan may impact system development and certainly should impact system deployment. Iteration among the key stakeholders is necessary for an effective migration effort. Like development, migration planning involves tradeoffs among cost, schedule, risk, and resources.

  29. Inputs for Migration Planning • organization’s goals and objectives • • customer priorities and user needs • • technical approach • • available funding and resources • • functionality of systems/products • • non-functional requirements (performance, security, interoperability) • • relevant regulations, policies, standards, and business rules/doctrines • • user manuals and training aids describing legacy system capabilities Questions for Migration Planning 1. What are the major issues that are likely to occur during the transition period? 2. What are the customer priorities and user needs? 3. Will the user interface be compatible, including inputs and outputs, reports and databases, and files that users depend on to perform their job responsibilities? 5. Who are the specific customers, and what are products and services that are to be supported by the new system? Who are the specific customers, and what are products and services that will not be supported? 6. Is there a need to support overlapping operations between the legacy systems and the new system? For how long? 7. Are the target system databases compatible with existing legacy databases? 8. Is there a need for software utilities for converting existing legacy databases? 9. What is the ability of target system interfaces to support existing legacy system interfaces with other external systems? What training and operational assistance will the users require? 10. What is the general level of migration support that will be required by the user community to ensure a successful migration? 11. How will user “buy-in” and target system acceptance be achieved? 12. How will unavoidable changes in legacy systems/products features and services be communicated to the user community? Framework & Principles Architecture Vision Business Architecture Information System Architecture Migration Planning Technology Architecture Opportunities and Solutions

  30. Prioritize projects Estimate resource requirements and availability Migration PlanningPhase Perform cost/benefit assessment of the various migration projects Perform risk assessment Generate implementation roadmap (time lined) Document the Migration Plan

  31. Implementation Governance What Architects Designed ! What Investors Envisioned ! What Managers Implemented !

  32. ADMArchitecture Development Method • Implementation Governance • Implementation governance is closely allied to overall architecture governance • customer priorities and user needs • • A key aspect this phase is ensuring compliance with the defined architecture (s), not only by the implementation projects, but also by other ongoing projects within the enterprise. • Document scope of individual project in Impact Analysis • Document strategic requirements (from the architectural perspective) in Impact Analysis • Document change requests (such as support for a standard interface) in Impact Analysis • Document rules for conformance in Impact Analysis • Document timeline requirements from roadmap in Impact Analysis • Review Ongoing Implementation Governance and Architecture Compliance Framework & Principles Architecture Vision Business Architecture Information System Architecture Implementation Governance Migration Planning Technology Architecture Opportunities and Solutions

  33. Change Management What Architects Designed ! What was finally Implemented ?

  34. ADMArchitecture Development Method • Change Management • The goal of an architecture change management process is to ensure that changes to the architecture are managed in a cohesive and architected way, and to establish and support the implemented enterprise architecture as a dynamic architecture; that is, one having the flexibility to evolve rapidly in response to changes in the technology and business environment • The Drivers for Change in Architecture • - New technology reports, • - Asset management cost reductions, • - Technology withdrawal, Standards initiatives • In addition there are business drivers for architecture change, including: • - Business exceptions • - Business innovations • - Business technology innovations • - Strategic change Framework & Principles Architecture Vision Change Management Business Architecture Implementation Governance Information System Architecture Migration Planning Technology Architecture Opportunities and Solutions

  35. Change Management Process Determine whether a change is simplification (which can normally be handled via change management techniques ) , incremental (An incremental change may be capable of being handled via change management techniques, or it may require partial re-architecting), or re-architecting (A re-architecting change requires putting the whole architecture through the architecture development cycle again), the following activities are undertaken:- Registration of all events that may impact the architecture - Resource allocation and management for architecture tasks - The process or role responsible for architecture resources has to make assessment of what should be done - Evaluation of impacts Designed

  36. Guidelines for Maintenance v / s Architecture Redesign If the impact is significant for the business strategy, then there may be a need to redo the whole enterprise architecture - thus a re-architecting approach. If a new technology or standards emerge, then there may be a need to refresh the Technology Architecture, but not the whole enterprise architecture - thus an incremental change. If the change is at an infrastructure level - for example, ten systems reduced or changed to one system - this may not change the architecture above the physical layer, but it will change the Baseline Description of the Technology Architecture. This would be a simplification change handled via change management techniques. In particular, a refreshment cycle (partial or complete re-architecting) may be required if: The Foundation Architecture needs to re-aligned with the business strategy. Substantial change is required to components and guidelines for use in deployment of the architecture. Significant standards used in the product architecture are changed which have significant end-user impact.

  37. ADMArchitecture Development Method Architecture Requirements Management Dynamic process whereby requirements for enterprise architecture and subsequent changes to those requirements are identified, stored, and fed into and out of the relevant ADM phases. Framework & Principles Architecture Vision Change Management Business Architecture Requirement Management Implementation Governance Information System Architecture Migration Planning Technology Architecture Opportunities and Solutions

  38. Identify/document requirements - use business scenarios Baseline requirements by determining priorities and Confirm with stakeholder Monitor baseline requirements. Identify changed requirement, re-assess priorities and Confirm with stakeholder Assess impact of changed requirements on current phase & on previous phases. assess timescale for change management implementation. Issue Requirements Impact Statement. The architecture can be changed through its lifecycle by the architecture change management phase Requirement Management Update the requirements repository with information relating to the changes requested, including stakeholder views affected . Implement change in the current phase. Assess & revise gap analysis for past phases. “gap in requirement & architecture"

  39. ADMArchitecture Development Method Framework & Principles Architecture Vision Change Management Business Architecture Requirement Management Implementation Governance Information System Architecture Migration Planning Technology Architecture Opportunities and Solutions

  40. Technology Architecture Architectural Governance Application Architecture SOW Data Architecture Business Architecture ChangeManagement

  41. Thank You !and mail me with your inputs so that this can be updatedjames_smith73@yahoo.com My Technical Group - http://tech.groups.yahoo.com/group/james_smithjava/

More Related