XSLTC To The Rescue


Published on

Published in: Business, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

XSLTC To The Rescue

  1. 1. Enterprise Architecture Implementation: Practical Steps Using Open Source Tools Marina Arseniev Enterprise Architect, Assistant Director Administrative Computing Services, UC Irvine [email_address]
  2. 2. Agenda <ul><li>Challenges </li></ul><ul><li>Enterprise Architecture - An Overview </li></ul><ul><li>The desired result… </li></ul><ul><li>Practical Steps – how we got to where we are today… </li></ul><ul><ul><li>Enterprise Architecture Framework: Zachman Framework </li></ul></ul><ul><ul><li>Modeling, Knowledge Base and Ontology Tool: Protégé </li></ul></ul><ul><ul><li>And more… </li></ul></ul><ul><li>Results </li></ul>
  3. 3. UC Irvine Campus Overview <ul><li>Year Founded:  1965 </li></ul><ul><li>2004 Enrollment:  24K students </li></ul><ul><li>Carnegie Classification:  Doctoral/Research – Extensive </li></ul><ul><li>Extramural Contracts & Grants Awarded:  $235M for 2002 – 2003 </li></ul><ul><li>Significant enrollment growth expected </li></ul><ul><li>California State budget </li></ul><ul><li>Administrative systems must adapt </li></ul>
  4. 4. What is EA all about? A riddle! <ul><li>If the bowling pins are the IT solutions you provide for your customers, what is the ball? </li></ul><ul><ul><ul><li>Hint: Objective is to knock down maximum pins with one ball... </li></ul></ul></ul><ul><li>Your IT organization a bowling alley? </li></ul>
  5. 5. Our Challenges <ul><li>Hundreds of systems - IBM Mainframe, Solaris, Windows </li></ul><ul><ul><li>CICS/Cobol, Powerbuilder, Web/Java Applications, Vendor packages </li></ul></ul><ul><ul><li>VSAM, DB2, Oracle and Sybase </li></ul></ul><ul><li>Lack of Real-time </li></ul><ul><ul><li>Integration based on FTP = Time lags </li></ul></ul><ul><ul><li>Data inconsistency and quality issues = High technical and business labor costs for repair or reconciliation </li></ul></ul><ul><li>Users use disparate systems, user interfaces = Training </li></ul><ul><li>New compliance regulations </li></ul><ul><li>Security threats </li></ul>
  6. 6. Our Challenges (cont’d) <ul><li>Sophisticated business community that understands potential of technology to make serious business improvements. </li></ul><ul><ul><li>Growing queue of projects. </li></ul></ul><ul><li>Increasing complexity and technology choices for solutions. </li></ul><ul><ul><li>Workflow, Imaging... </li></ul></ul><ul><li>Complex project management became critical to mission </li></ul><ul><ul><li>Project justification, selection, prioritization, sequencing </li></ul></ul><ul><ul><li>Extraction of common requirements for horizontal, reusable solutions </li></ul></ul><ul><li>Enterprise Architecture (EA) Initiative identified </li></ul>
  7. 7. Our Challenges (cont’d) <ul><li>IT department of 25 programmers </li></ul><ul><ul><li>Mainframe programmers, Powerbuilder developers, Java/Web technologists, Database and System administrators. </li></ul></ul><ul><li>Resources, competency, training, governance </li></ul><ul><li>Sound familiar? </li></ul>
  8. 8. UC Irvine’s EA Objectives <ul><li>Improve Planning </li></ul><ul><ul><li>Help make more informed IT decisions </li></ul></ul><ul><li>Reduce Complexity </li></ul><ul><ul><li>Lifecycle management - To establish a process that is focused on building, maintaining, acquiring, and retiring technology </li></ul></ul><ul><li>Improve IT to Business alignment </li></ul><ul><ul><li>Facilitate the adaptation of technology to changing business needs and pressures in campus administration </li></ul></ul><ul><ul><li>Which technology solutions solve which business needs, and how? </li></ul></ul>
  9. 9. Overview: What is EA? <ul><li>A blueprint of an organization to analyze and plan changes. </li></ul><ul><li>The structure of (Enterprise) components, relationships, and principles and guidelines governing their evolution over time. </li></ul><ul><li>A strategic asset repository which defines the current and target architecture environments. </li></ul>
  10. 10. Overview: What is EA? <ul><li>New application? </li></ul><ul><li>What do we have already in place? </li></ul><ul><li>Impact? </li></ul>
  11. 11. Enterprise Architecture at UC Irvine <ul><li>Desired result… </li></ul><ul><ul><li>“ Perfect” world... </li></ul></ul><ul><ul><li>goals articulated </li></ul></ul><ul><ul><li>roadmap, projects linked </li></ul></ul><ul><ul><li>technology linked </li></ul></ul><ul><ul><li>change strategy </li></ul></ul><ul><li>Irvine’s model </li></ul><ul><ul><li>Based on Zachman Framework </li></ul></ul>
  12. 13. EA Planning Consists of <ul><li>A standard methodology or framework </li></ul><ul><li>A model </li></ul><ul><li>A repository of knowledge (populated model) </li></ul><ul><li>A change management process </li></ul><ul><ul><li>Business needs define application and required infrastructure change </li></ul></ul><ul><ul><li>Project-oriented approach to EA </li></ul></ul><ul><ul><li>Projects = Change </li></ul></ul>
  13. 14. What is EA Planning all about? <ul><li>If the bowling pins are the IT solutions you provide for your customers, what is the ball? </li></ul><ul><li>The ball is the project(s) that you pick strategically and organize into a roadmap for change! </li></ul><ul><li>Objective is to knock down maximum pins with one ball... </li></ul><ul><li>Before you can do that, you must understand your EA - business processes, information/data, and technology. </li></ul><ul><li>How? </li></ul>
  14. 15. Steps to start with EA <ul><li>1: Create a list of specific questions, focusing on critical areas. </li></ul><ul><li>2: Identify senior technical and business people to gather knowledge from; their roles and responsibilities in the EA process. </li></ul><ul><li>3: Develop change impact analysis methodology </li></ul><ul><li>4: Choose an Enterprise Architecture Framework </li></ul>
  15. 16. Steps to start with EA <ul><li>5: Choose a tool to model and populate Enterprise Architecture Asset Repository </li></ul><ul><ul><li>Goal: easily accessible and maintainable repository </li></ul></ul><ul><li>6: Plan communication methods </li></ul><ul><li>7: Document Technical Reference Architecture </li></ul><ul><ul><li>Principles, standards, and governance </li></ul></ul><ul><li>8: Enforce architectural control </li></ul><ul><ul><li>Choose key technologies and standardize. Constrain new development. </li></ul></ul>
  16. 17. The step that never ends… <ul><li>Step 9: Incremental EA model development and population </li></ul><ul><li>Create and populate model as defined by questions </li></ul><ul><li>Define As-is: </li></ul><ul><ul><li>Business model and processes. </li></ul></ul><ul><ul><li>Applications, data, components. </li></ul></ul><ul><ul><li>How IT systems support the business processes. </li></ul></ul><ul><ul><li>Project life cycle, SDLC </li></ul></ul><ul><li>Identify desired enhancements to business as projects. For complex enhancements, organize projects into roadmaps . </li></ul><ul><li>Communicate, assess and track impact of change up, down, and across. </li></ul>
  17. 18. How were these steps handled at UC Irvine?
  18. 19. Step 1: Specific Questions <ul><li>Our critical problems: </li></ul><ul><ul><li>Life cycle management , governance </li></ul></ul><ul><ul><ul><li>Link business goals, projects, and justification </li></ul></ul></ul><ul><ul><ul><li>Control proliferation and retirement of technology </li></ul></ul></ul><ul><ul><li>Extraction of “ Common Vision Requirements ” across projects into patterns for reusable, horizontal components. </li></ul></ul><ul><ul><li>Application and data security for HIPAA and California State Bill 1386 compliance. </li></ul></ul>
  19. 20. Step 1: Specific questions <ul><li>How should we prioritize our projects and assign resources? </li></ul><ul><li>How do we implement common requirements across projects into reusable, tested components? </li></ul><ul><li>How much reuse do we have today? </li></ul><ul><li>What technology should I use today for a web app and database? When will it be retired from our organization? </li></ul><ul><li>What data is subject to Federal or State Regulations? </li></ul><ul><ul><li>Which applications use this data and how secure are they? </li></ul></ul><ul><li>What technologies does this project use? What projects does this technology support? </li></ul>
  20. 21. Step 2: Identify owners of knowledge, roles and responsibilities <ul><li>Identified key IT people who also know the business. </li></ul><ul><li>People from business units (e.g: Human Resources) </li></ul><ul><li>Agreed on roles and responsibilities. </li></ul>
  21. 22. Step 3: Develop Change Impact Analysis Methodology <ul><li>Need a change… How do you know which one, when, and how? </li></ul><ul><ul><li>Analyze and articulate impact of change to business or technology. </li></ul></ul><ul><ul><li>Measure impact of moving from a current to targeted practice. </li></ul></ul><ul><li>Freely available Sloan School of Management’s “Matrix of Change” tool. ( http:// ccs . mit . edu / MoC ). </li></ul>
  22. 23. Example: Establish GUI Team
  23. 24. Step 4: Enterprise Architecture Framework <ul><li>Need direction and guidance? </li></ul><ul><li>Many frameworks to choose from. Comparison at: http://www.opengroup.org/architecture/togaf8-doc/arch/p4/others/others. htm </li></ul><ul><li>Adopted the Zachman Framework ( http://www. zifa .com ) </li></ul><ul><li>What is it? </li></ul><ul><ul><li>A language that helps people think about complex concepts and communicate in non-technical terminology. </li></ul></ul><ul><ul><li>Planning tool </li></ul></ul>
  24. 25. Zachman Framework
  25. 26. Zachman Framework Intro Question View Planner Owner Designer Builder As built What How Where Who When Why Data Function Network/ People/ Time/ Motive Node Work Cycle Rule design Business logistics Logical data model Semantic model System design Business locations Human interface Timing definition Business plan Important things Business functions People and groups Events and cycles Goals and strategy Process model Work Flow model Master schedule Application arch Distributed system Processing structure Business rule model Physical data model Tech arch GUI arch Control structure Data definition Code Network arch Security arch Rule repository
  26. 27. Zachman Framework: Columns <ul><li>Columns = questions (taken from “Software Productivity Consortium”) </li></ul><ul><li>Who : Represents the people relationships within the enterprise. The design of the enterprise organization has to do with the allocation of work and the structure of authority and responsibility. The vertical dimension represents delegation of authority, and the horizontal represents the assignment of responsibility. </li></ul><ul><li>When : Represents time, or the event relationships. This is useful for designing the master schedule, the processing architecture, control architecture, and timing devices. </li></ul><ul><li>Why : Describes the motivations of the enterprise. This reveals the enterprise goals and objectives, business plan, knowledge architecture and design. </li></ul><ul><li>What : Describes the entities involved in each perspective of the enterprise. Examples include business objects, relational tables, or field definitions. </li></ul><ul><li>How : Shows the functions within each perspective. Examples include business processes, software application function, computer hardware function, and language control loop. </li></ul><ul><li>Where : Shows locations and interconnections within the enterprise. This includes major business geographical locations, separate sections within a logistics network, allocation of system nodes, or even memory addresses within the system. </li></ul>
  27. 28. Zachman Framework: Rows <ul><li>Rows = Unique perspectives (taken from “Software Productivity Consortium”) </li></ul><ul><li>Scope : Corresponds to an executive summary for a planner who wants an estimate of the size, cost, and functionality of the system. </li></ul><ul><li>Business model : Shows all the business entities and processes and how they interact. </li></ul><ul><li>System model : Used by a systems analyst who must determine the data elements and software functions that represent the business model. </li></ul><ul><li>Technology model : Considers the constraints of tools, technology, and materials. </li></ul><ul><li>Components : Represent individual, independent modules that can be allocated to contractors for implementation. </li></ul><ul><li>Working system : Depicts the operational system as it functions. </li></ul>
  28. 29. Step 5: Model and Repository Management Tool <ul><li>How do I model and collect information for the EA? </li></ul><ul><ul><li>Zachman Framework - powerful thinking tool </li></ul></ul><ul><ul><ul><li>lacks technology for putting it into practice. </li></ul></ul></ul><ul><ul><li>Storing redundant lists of “stuff” in Word, Excel, Visio was difficult. </li></ul></ul><ul><ul><ul><li>Application lists, security information, critical business cycles </li></ul></ul></ul><ul><li>Stanford’s Protégé Knowledgebase and Ontology Tool </li></ul><ul><ul><li>Auto generates forms for collecting information based on ontology and class definitions. </li></ul></ul><ul><ul><li>Generates HTML output </li></ul></ul><ul><ul><li>Open source at http :// protege . stanford . edu / </li></ul></ul>
  29. 30. Step 6: Plan Communication <ul><li>Protégé minimizes redundancy, increases consistency </li></ul><ul><ul><li>Meets Zachman Framework vision of storing an enterprise artifact in a single place. </li></ul></ul><ul><li>Protégé and Zachman Perspectives (Rows) </li></ul><ul><ul><li>Plug-in produces XML output. </li></ul></ul><ul><ul><li>XML processed using XSLT into appropriate presentations, per Zachman Perspectives (audience). </li></ul></ul><ul><li>Open source XML and XSLT available as Xerxes and Xalan from http://www.apache.org </li></ul>
  30. 31. Examples: <ul><li>Example of how we use Protégé to collect information for Zachman Framework. </li></ul><ul><li>Example of how we report from Protégé using XML/XSLT. </li></ul>
  31. 34. Example: Protege
  32. 35. Example: Protege
  33. 36. Step 7: Technical Reference Architecture <ul><li>Documented principles, guidelines, and best practices of Architecture Domains: </li></ul><ul><li>Lifecycle Management </li></ul><ul><ul><li>Adopt the “4 year/16 Quarter Sliding Window Methodology” </li></ul></ul><ul><ul><li>Identifies technologies that are “ Approved ”, “ Maintained but not Upgraded ”, in “ Sunset ”, “ Retired ”, or “ By Approval Only ”. </li></ul></ul>
  34. 38. Example: Security Domain
  35. 39. Step 8: Enforce Architectural Control <ul><li>Standardized on </li></ul><ul><ul><li>J2EE & Expresso - an Open Source Java Application Development Framework - Apache Struts and MVC. ( http://www. jcorporate .com ) </li></ul></ul><ul><ul><li>LDAP Directory Services ( http://www. openldap .org ) </li></ul></ul><ul><ul><li>Open Source JA-SIG uPortal software. A Java-based portal developed by Higher-Ed for Higher-Ed. ( http://www.ja-sig.org ) </li></ul></ul><ul><ul><li>Single sign-on based on Web-ISO and Kerberos for campus-wide web applications. </li></ul></ul><ul><li>Immediate benefits - reuse of components and metrics. Reduced skill sets and solution choices. </li></ul>
  36. 40. Step 9 – Putting it all together <ul><li>Examples of how we use Protégé </li></ul><ul><ul><li>Zachman Physical Perspective (Row 3) - Technology Life Cycle </li></ul></ul><ul><ul><li>Alignment of IT to Business: Link from Goal to Project to Technology, justifying investment and identifying gaps. </li></ul></ul><ul><ul><li>Tracking HIPAA and California State Bill 1386 Security Compliance </li></ul></ul>
  37. 41. Status <ul><li>Use Protégé to model and collect organizational information. </li></ul><ul><li>Track security compliance. </li></ul><ul><li>Track common requirements across projects. </li></ul><ul><li>Justify investment decisions and vendor selection. </li></ul><ul><li>Create links between our goals, roadmaps, projects, and technologies. </li></ul><ul><li>Determine “touch points” between projects and technologies to assess impact of change. </li></ul>
  38. 42. Realized Value <ul><li>Technologies retired </li></ul><ul><ul><li>Database servers consolidated </li></ul></ul><ul><ul><li>MS IIS Web Server (except where required by vendor) - 2003 </li></ul></ul><ul><ul><li>Clipper - February, 2004 </li></ul></ul><ul><li>Reduced required IT skill sets </li></ul><ul><ul><li>Oracle DBA – due to limited resources, migrated off of Oracle </li></ul></ul><ul><ul><li>Java focus </li></ul></ul><ul><li>Applications are database neutral (Expresso/JDBC) </li></ul><ul><li>Reduced development costs </li></ul><ul><ul><li>Code reuse: Expresso objects, SSO Java lib shared between IBM, Solaris, Windows platforms, shared user objects. </li></ul></ul><ul><ul><li>Common infrastructure for development: LDAP, Workflow </li></ul></ul>
  39. 43. Benefits <ul><li>More responsive to customer’s needs </li></ul><ul><li>Reduced data management costs </li></ul><ul><li>Reduce complex and costly interfaces between incongruent systems </li></ul><ul><li>Management decisions in all functional areas based on more accurate and timely data </li></ul><ul><li>New systems are developed faster and at less cost due to common data, common code, and a shortened requirements phase </li></ul><ul><li>Easier to evaluate and select vendor packages </li></ul><ul><li>Source: “Enterprise Architecture Planning” </li></ul><ul><li>by Steven Spewak </li></ul><ul><ul><li>“ Projects done without architecture planning cost significantly more in the long term” (John Zachman) </li></ul></ul>
  40. 44. Enterprise Architecture at UC Irvine <ul><li>Desired result…the perfect world </li></ul><ul><ul><li>Reduce IT complexity (and cost) </li></ul></ul><ul><ul><li>Reduce queue and increase timeliness of projects </li></ul></ul><ul><li>Facilitate a strategic road map for change with careful project selection and planning. </li></ul>
  41. 45. What is EA Planning all about? <ul><li>If the bowling pins are the IT solutions you provide for the customers, what is your ball? </li></ul><ul><ul><li>The bowling ball is the project(s) that you pick strategically and organize into a roadmap for change! </li></ul></ul><ul><ul><ul><li>Game objective: knock down maximum pins with one ball... </li></ul></ul></ul>
  42. 46. What is EA Planning all about? <ul><li>Who (or what) makes </li></ul><ul><li>the bowling ball (your IT projects) </li></ul><ul><li>roll at precisely the right spot in the lane and </li></ul><ul><li>at optimal speed? </li></ul><ul><ul><li>Your Enterprise Architecture! </li></ul></ul><ul><li>Before you can bowl with projects, you must understand your EA - business processes, information/data, and technology. </li></ul><ul><li>Using the tools shown today you can start bowling tomorrow! </li></ul>
  43. 47. Q & A <ul><li>UC Irvine’s EA Web Site: apps. adcom . uci . edu / EnterpriseArch </li></ul><ul><li>Zachman Framework: www. zifa .com/ </li></ul><ul><li>Sloan School of Management’s “Matrix of Change”: ccs . mit . edu / MoC </li></ul><ul><li>Ontology and Knowledgebase: protege . stanford . edu / </li></ul><ul><li>UC Irvine’s Administrative Portal: snap. uci . edu uses JA-SIG uPortal software: www. ja -sig.org/ </li></ul><ul><li>Reporting using XML/XSLT: www.apache.org </li></ul><ul><li>Java Application Dev. Framework: www. jcorporate .com/ </li></ul><ul><li>LDAP: www. openldap .org/ </li></ul>