- 1. Enterprise Architecture Implementation:Practical Steps Using
Open Source Tools Marina Arseniev Enterprise Architect, Assistant
Director Administrative Computing Services, UC Irvine
[email_address]
2. Agenda
- Enterprise Architecture - An Overview
- Practical Steps how we got to where we are today
-
- Enterprise Architecture Framework: Zachman Framework
-
- Modeling, Knowledge Base and Ontology Tool:Protg
3. UC Irvine Campus Overview
- 2004 Enrollment: 24K students
- Carnegie Classification: Doctoral/Research Extensive
- Extramural Contracts & Grants Awarded: $235M for 2002
2003
- Significant enrollment growth expected
- Administrative systems must adapt
4. What is EA all about? A riddle!
- 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...
- Your IT organization a bowling alley?
5. Our Challenges
- Hundreds of systems - IBM Mainframe, Solaris, Windows
-
- CICS/Cobol, Powerbuilder, Web/Java Applications, Vendor
packages
-
- VSAM, DB2, Oracle and Sybase
-
- 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
6. Our Challenges (contd)
- Sophisticated business community that understands potential of
technology to make serious business improvements.
-
- Growing queue of projects.
- Increasing complexity and technology choices for
solutions.
- Complex project management became critical to mission
-
- Project justification, selection, prioritization,
sequencing
-
- Extraction of common requirements for horizontal, reusable
solutions
- Enterprise Architecture (EA) Initiative identified
7. Our Challenges (contd)
- IT department of 25 programmers
-
- Mainframe programmers, Powerbuilder developers, Java/Web
technologists, Database and System administrators.
- Resources, competency, training, governance
8. UC Irvines EA Objectives
-
- Help make more informed IT decisions
-
- 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?
9. 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.
10. Overview: What is EA?
- What do we have already in place?
11. Enterprise Architectureat UC Irvine
-
- Based on Zachman Framework
12. 13. EAPlanning Consists of
- A standard methodology or framework
- A repository of knowledge (populated model)
- A change management process
-
- Business needs define application and required infrastructure
change
-
- Project-oriented approach to EA
14. 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.
15. 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
16. 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
-
- Principles, standards, and governance
- 8:Enforce architectural control
-
- Choose key technologies and standardize. Constrain new
development.
17. The step that never ends
- Step 9:Incremental EA model development and population
- Create and populate model as defined by questions
-
- Business model and processes.
-
- Applications, data, components.
-
- How IT systems support the business processes.
- 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.
18. How were these steps handledat UC Irvine? 19. Step 1:
Specific Questions
-
- 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 datasecurityfor HIPAA and California State Bill
1386 compliance.
20. Step 1: Specific questions
- How should we prioritize our projects and assign
resources?
- How do we implement common requirements across projects into
reusable, tested components?
- How much reuse do we have today?
- 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 Federal or State Regulations?
-
- Which applications use this data and how secure are they?
- What technologies does this project use?What projects does this
technology support?
21. Step 2: Identify owners of knowledge, roles and
responsibilities
- Identified key IT people who also know the business.
- People from business units (e.g: HumanResources)
- Agreed on roles and responsibilities.
22. 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 Managements Matrix of Change
tool. ( http:// ccs . mit . edu / MoC ).
23. Example:Establish GUI Team 24. Step 4: Enterprise
Architecture Framework
- Need direction and guidance?
- Many frameworks to choose from. Comparison
at:http://www.opengroup.org/architecture/togaf8-doc/arch/p4/others/others.
htm
- Adopted the Zachman Framework ( http://www. zifa .com )
-
- A language that helps people think about complex concepts and
communicate in non-technical terminology.
25. Zachman Framework 26. Zachman Framework Intro Question View
Planner Owner Designer Builder As built WhatHowWhereWhoWhenWhy
DataFunctionNetwork/People/Time/Motive NodeWorkCycleRule 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 Applicationarch 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 27. Zachman Framework:Columns
- Columns = questions (taken from Software Productivity
Consortium)
- 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.
- When :Represents time, or the event relationships. This is
useful for designing the master schedule, the processing
architecture, control architecture, and timing devices.
- Why :Describes the motivations of the enterprise. This reveals
the enterprise goals and objectives, business plan, knowledge
architecture and design.
- What :Describes the entities involved in each perspective of
the enterprise. Examples include business objects, relational
tables, or field definitions.
- How :Shows the functions within each perspective. Examples
include business processes, software application function, computer
hardware function, and language control loop.
- 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.
28. Zachman Framework:Rows
- Rows = Unique perspectives (taken from Software Productivity
Consortium)
- Scope :Corresponds to an executive summary for a planner who
wants an estimate of the size, cost, and functionality of the
system.
- Business model :Shows all the business entities and processes
and how they interact.
- System model :Used by a systems analyst who must determine the
data elements and software functions that represent the business
model.
- Technology model :Considers the constraints of tools,
technology, and materials.
- Components :Represent individual, independent modules that can
be allocated to contractors for implementation.
- Working system :Depicts the operational system as it
functions.
29. 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 lists, security information, critical business
cycles
- Stanfords Protg Knowledgebase and Ontology Tool
-
- Auto generates forms for collecting information based on
ontology and class definitions.
-
- Open source athttp :// protege . stanford . edu /
30. Step 6:Plan Communication
- Protg minimizes redundancy, increases consistency
-
- Meets Zachman Framework vision of storing an enterprise
artifact in a single place.
- Protg 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
fromhttp://www.apache.org
31. Examples:
- Example of how we use Protg to collect information for Zachman
Framework.
- Example of how we report from Protg using XML/XSLT.
32. 33. 34. Example:Protege 35. Example:Protege 36. Step 7:
Technical Reference Architecture
- Documented principles, guidelines, and best practices of
Architecture Domains:
-
- 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 .
37. 38. Example:Security Domain 39. Step8: Enforce Architectural
Control
-
- 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.
40. Step 9 Putting it all together
- Examples of how we use Protg
-
- 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
41. Status
- Use Protg 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.
42. Realized Value
-
- Database servers consolidated
-
- MS IIS Web Server (except where required by vendor) - 2003
- Reduced required IT skill sets
-
- Oracle DBA due to limited resources, migrated off of
Oracle
- 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
43. Benefits
- More responsive to customers needs
- Reduced data management costs
- Reduce complex and costly interfaces between incongruent
systems
- Management decisions in all functional areas based on more
accurate and timely data
- New systems are developed faster and at less cost due to common
data, common code, and a shortened requirements phase
- Easier to evaluate and select vendor packages
- Source: Enterprise Architecture Planning
-
- Projects done without architecture planning cost significantly
more in the long term (John Zachman)
44. Enterprise Architectureat UC Irvine
- Desired resultthe 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.
45. 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...
46. What is EA Planning all about?
- the bowling ball (your IT projects)
- roll at precisely the right spot in the lane and
-
- 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!
47. Q & A
- UC Irvines EA Web Site:apps. adcom . uci . edu /
EnterpriseArch
- Zachman Framework:www. zifa .com/
- Sloan School of Managements Matrix of Change:ccs . mit . edu /
MoC
- Ontology and Knowledgebase:protege . stanford . edu /
- UC Irvines Administrative Portal:snap. uci . eduuses JA-SIG
uPortal software:www. ja -sig.org/
- Reporting using XML/XSLT:www.apache.org
- Java Application Dev. Framework:www. jcorporate .com/