University of California, Irvine Enterprise Architecture Implementation: Practical Steps Using Open Source Tools Marina Arseniev Enterprise Architect, Assistant Director Administrative Computing Services, UC Irvine marsenie@uci.edu Copyright Marina Arseniev, 2004. This work is the intellectual property of the author. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the authors. To disseminate otherwise or to republish requires written permission from the author. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Agenda Challenges Enterprise Architecture - An Overview The desired result… Practical Steps – how we got to where we are today… Enterprise Architecture Framework: Zachman Framework Modeling, Knowledge Base and Ontology Tool: Protégé And more… Results CUMREC, 2004 University of California, Irvine (Administrative Computing Services) UC Irvine Campus Overview Year Founded: 1965 2004 Enrollment: 24K students Carnegie Classification: Doctoral/Research – Extensive Extramural Contracts & Grants Awarded: $235M for 2002 – 2003 Significant enrollment growth expected California State budget Administrative systems must adapt CUMREC, 2004 University of California, Irvine (Administrative Computing Services) What is EA all about? A riddle! Your IT organization a bowling alley? If the bowling pins are the IT solutions you provide for your customers, what is the ball? Hint: Objective is to knock down maximum pins with one ball... CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Our Challenges Hundreds of systems - IBM Mainframe, Solaris, Windows CICS/Cobol, Powerbuilder, Web/Java Applications, Vendor packages VSAM, DB2, Oracle and Sybase Lack of Real-time Integration based on FTP = Time lags Data inconsistency and quality issues = High technical and business labor costs for repair or reconciliation Users use disparate systems, user interfaces = Training New compliance regulations Security threats CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Our Challenges (cont’d) Sophisticated business community that understands potential of technology to make serious business improvements. Growing Increasing queue of projects. complexity and technology choices for solutions. Workflow, Complex Imaging... project management became critical to mission Project justification, selection, prioritization, sequencing Extraction of common requirements for horizontal, reusable solutions Enterprise Architecture (EA) Initiative identified CUMREC, 2004 University of California, Irvine (Administrative Computing Services) UC Irvine’s EA Objectives Improve Planning Help make more informed IT decisions Reduce Complexity Lifecycle management - To establish a process that is focused on building, maintaining, acquiring, and retiring technology Improve IT to Business alignment Facilitate the adaptation of technology to changing business needs and pressures in campus administration Which technology solutions solve which business needs, and how? CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Overview: What is EA? A blueprint of an organization to analyze and plan changes. The structure of (Enterprise) components, relationships, and principles and guidelines governing their evolution over time. A strategic asset repository which defines the current and target architecture environments. Transitional Processes that keep all aligned Business Processes and Functions Information and Data CUMREC, 2004 Technology University of California, Irvine (Administrative Computing Services) Overview: What is EA? New application? What do we have already in place? Impact? CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Enterprise Architecture at UC Irvine Desired result… “Perfect” world... goals articulated roadmap, projects linked technology linked change strategy Irvine’s model Based on Zachman Framework CUMREC, 2004 University of California, Irvine (Administrative Computing Services) EA Planning Consists of A standard methodology or framework A model A repository of knowledge (populated model) A change management process Business needs define application and required infrastructure change Project-oriented approach to EA Projects = Change CUMREC, 2004 University of California, Irvine (Administrative Computing Services) What is EA Planning all about? If the bowling pins are the IT solutions you provide for your customers, what is the ball? The ball is the project(s) that you pick strategically and organize into a roadmap for change! Objective is to knock down maximum pins with one ball... Before you can do that, you must understand your EA business processes, information/data, and technology. How? CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Steps to start with EA 1: Create a list of specific questions, focusing on critical areas. 2: Identify senior technical and business people to gather knowledge from; their roles and responsibilities in the EA process. 3: Develop change impact analysis methodology 4: Choose an Enterprise Architecture Framework CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Steps to start with EA 5: Choose a tool to model and populate Enterprise Architecture Asset Repository Goal: easily accessible and maintainable repository 6: Plan communication methods 7: Document Technical Reference Architecture 8: Principles, standards, and governance Enforce architectural control Choose key technologies and standardize. Constrain new development. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) The step that never ends… Step 9: Incremental EA model development and population Create and populate model as defined by questions Define As-is: Business model and processes. Applications, data, components. How IT systems support the business processes. Project life cycle, SDLC Identify desired enhancements to business as projects. For complex enhancements, organize projects into roadmaps. Communicate, assess and track impact of change up, down, and across. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) How were these steps handled at UC Irvine? CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 1: Specific Questions Our critical problems: Life cycle management, governance Link business goals, projects, and justification Control proliferation and retirement of technology Extraction of “Common Vision Requirements” across projects into patterns for reusable, horizontal components. Application and data security for HIPAA and California State Bill 1386 compliance. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 1: Specific questions How should we prioritize our projects and assign resources? Why are we doing project X? How can we “assemble” applications by implementing common requirements across projects into reusable, tested components? How much reuse do we have today? How many reporting tools do we own? What are they used for? What technology should I use today for a web app and database? When will it be retired from our organization? What data is subject to HIPAA or State Bill 1386 compliance? Which applications use this data and how secure are they? What technologies does this project use? What projects does this technology support? Touch points between components? CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 2: Identify owners of knowledge, roles and responsibilities Identified key IT people who also know the business. People from business units (e.g: Human Resources) Agreed on roles and responsibilities. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 3: Develop Change Impact Analysis Methodology Need a change… How do you know which one, when, and how? Analyze and articulate impact of change to business or technology. Measure impact of moving from a current to targeted practice. Freely available Sloan School of Management’s “Matrix of Change” tool. (http://ccs.mit.edu/MoC). CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Example: Establish GUI Team CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 4: Enterprise Architecture Framework Need direction and guidance? Many frameworks to choose from. Comparison at: http://www.opengroup.org/architecture/togaf8doc/arch/p4/others/others.htm Adopted the Zachman Framework (http://www.zifa.com) What is it? A language that helps people think about complex concepts and communicate in non-technical terminology. Planning tool CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Zachman Framework Intro Question What How Where Function Planner Important things Business functions Business locations People and Events and Goals and groups cycles strategy Owner Semantic model Process model Business logistics Work Flow model Designer Logical Application Distributed data model arch system Builder Physical data model System design Tech arch GUI arch Control structure Rule design Data definition Code Network arch Security arch Timing definition Rule repository Human interface Time/ Cycle Why Data CUMREC, 2004 People/ Work When View As built Network/ Node Who Master schedule Motive Business plan Processing Business structure rule model University of California, Irvine (Administrative Computing Services) Step 5: Model and Repository Management Tool How do I model and collect information for the EA? Zachman Framework - powerful thinking tool lacks technology for putting it into practice. Storing redundant lists of “stuff” in Word, Excel, Visio was difficult. Application Stanford’s lists, security information, critical business cycles Protégé Knowledgebase and Ontology Tool Auto generates forms for collecting information based on ontology and class definitions. Generates HTML output Open source at http://protege.stanford.edu/ CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 6: Plan Communication Protégé minimizes redundancy, increases consistency Meets Zachman Framework vision of storing an enterprise artifact in a single place. Protégé and Zachman Perspectives (Rows) Plug-in produces XML output. XML processed using XSLT into appropriate presentations, per Zachman Perspectives (audience). Open source XML and XSLT available as Xerxes and Xalan from http://www.apache.org CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Examples: Example of how we use Protégé to collect information for Zachman Framework. Example of how we report from Protégé using XML/XSLT. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) CUMREC, 2004 University of California, Irvine (Administrative Computing Services) CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Example: Protege CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Example: Protege CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 7: Technical Reference Architecture Documented Domains: principles, guidelines, and best practices of Architecture Common Conceptual Architectural Principles Developed Apps Vendor/ASP Apps Lifecycle Security Network Database Operations Management Adopt the “4 year/16 Quarter Sliding Window Methodology” Identifies technologies that are “Approved”, “Maintained but not Upgraded”, in “Sunset”, “Retired”, or “By Approval Only”. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 8: Enforce Architectural Control Standardized on J2EE & Expresso - an Open Source Java Application Development Framework - Apache Struts and MVC. (http://www.jcorporate.com) LDAP Directory Services (http://www.openldap.org) Open Source JA-SIG uPortal software. A Java-based portal developed by Higher-Ed for Higher-Ed. (http://www.ja-sig.org) Single sign-on based on Web-ISO and Kerberos for campus-wide web applications. Immediate benefits - reuse of components and metrics. Reduced skill sets and solution choices. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Step 9 – Putting it all together Examples of how we use Protégé Zachman Physical Perspective (Row 3) - Technology Life Cycle Alignment of IT to Business: Link from Goal to Project to Technology, justifying investment and identifying gaps. Tracking HIPAA and California State Bill 1386 Security Compliance CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Status Use Protégé to model and collect organizational information. Track security compliance. Track common requirements across projects. Justify investment decisions and vendor selection. Create links between our goals, roadmaps, projects, and technologies. Determine “touch points” between projects and technologies to assess impact of change. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Realized Value Technologies retired Database servers consolidated MS IIS Web Server (except where required by vendor) - 2003 Clipper - February, 2004 Reduced required IT skill sets Oracle DBA – due to limited resources, migrated off of Oracle Java focus Applications are database neutral (Expresso/JDBC) Reduced development costs Code reuse: Expresso objects, SSO Java lib shared between IBM, Solaris, Windows platforms, shared user objects. Common infrastructure for development: LDAP, Workflow CUMREC, 2004 University of California, Irvine (Administrative Computing Services) Enterprise Architecture at UC Irvine Desired result…the perfect world Reduce IT complexity (and cost) Reduce queue and increase timeliness of projects Facilitate a strategic road map for change with careful project selection and planning. CUMREC, 2004 University of California, Irvine (Administrative Computing Services) What is EA Planning all about? If the bowling pins are the IT solutions you provide for the customers, what is your ball? The bowling ball is the project(s) that you pick strategically and organize into a roadmap for change! Game objective: knock down maximum pins with one ball... CUMREC, 2004 University of California, Irvine (Administrative Computing Services) What is EA Planning all about? Who (or what) makes the bowling ball (your IT projects) roll at precisely the right spot in the lane and at optimal speed? Your Enterprise Architecture! Before you can bowl with projects, you must understand your EA - business processes, information/data, and technology. Using the tools shown today you can start bowling tomorrow! CUMREC, 2004 University of California, Irvine (Administrative Computing Services) UC Irvine’s EA Web Site: apps.adcom.uci.edu/EnterpriseArch Zachman Framework: www.zifa.com/ Sloan School of Management’s “Matrix of Change”: ccs.mit.edu/MoC Ontology and Knowledgebase: protege.stanford.edu/ UC Irvine’s Administrative Portal: snap.uci.edu uses JA-SIG uPortal software: www.ja-sig.org/ Reporting using XML/XSLT: www.apache.org Java Application Dev. Framework: www.jcorporate.com/ LDAP: www.openldap.org/ Q&A CUMREC, 2004