this presentation
-
Upload
aamir97 -
Category
Technology
-
view
244 -
download
3
Transcript of this presentation
![Page 1: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/1.jpg)
Enterprise ArchitectureEnterprise Architectureusing the using the Zachman FrameworkZachman Framework
A A Model-DrivenModel-Driven Approach Approach
Ali Fatolahi
School of Information Technology and Engineering
University of Ottawa
Graduate Seminar
![Page 2: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/2.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
2
AgendaAgenda
Enterprise Architecture (EA)The Zachman Framework (ZF)Model-Driven Architecture (MDA)Problem Statement
– Related Work
![Page 3: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/3.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
3
Agenda Agenda (Contd.)(Contd.)
MDA vs. Zachman– Separation of Concerns– Modeling Coverage– Meta-Data Language
• Meta-Object Facility vs. Conceptual Graphs
– Meta-ModelingDiscussion & Conclusion
![Page 4: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/4.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
4
Enterprise Architecture (EA)Enterprise Architecture (EA)
A Set of Models and DocumentsFor the entire business & all systemsAlignment of IT with Business
– Strategy, Process, Regulations, …EA governs Systems Lifecycle
– Planning, Development, MaintenanceA collection of tools & methods
![Page 5: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/5.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
5
Enterprise Architecture Enterprise Architecture (Contd.)(Contd.)
Motivations– Reduce maintenance costs– Ensure systems in accordance
business– Guarantee an integrated IT environment
• consistent, accurate, correct
– Prevent redundancy– Interoperability, Flexibility, …ilities!
![Page 6: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/6.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
6
The Zachman Framework (ZF)The Zachman Framework (ZF)
EA is like a jungle of models– Maps are required to not get lost!
ZF is such a map for this jungleOne of the origins of EAThe most used framework for EA and
related arenasFOR MORE INFO...
EA Survey Trends 2005 Results: www.enterprise-architecture.info/Images/EA Survey/Enterprise Architecture Survey 2005 IFEAD v10.pdf
![Page 7: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/7.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
7
The Zachman FrameworkThe Zachman Framework
Scope(Contextual)Planner
Business(Conceptual)Owner
System(Logical)Designer
Technology(Physical)Builder
Components(Detailed)Sub-Contractor
Enterprise
Data What Function How Network where People Who Time When Motivation Why
Subject: ScopeSubject: ScopeContent: (Contextual)Content: (Contextual)Stakeholder: PlannerStakeholder: Planner
Subject: BusinessSubject: BusinessContent: (Conceptual)Content: (Conceptual)Stakeholder: OwnerStakeholder: Owner
Subject: SystemSubject: SystemContent: (Logical)Content: (Logical)Stakeholder: DesignerStakeholder: Designer
Subject: TechnologySubject: TechnologyContent: (Physical)Content: (Physical)Stakeholder: BuilderStakeholder: Builder
Subject: ComponentsSubject: ComponentsContent: (Detailed)Content: (Detailed)Stakeholder: Sub-ContractorStakeholder: Sub-Contractor
Subject: Real Working EnterpriseSubject: Real Working Enterprise
![Page 8: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/8.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
8
Challenges of using ZFChallenges of using ZF
Engineering and reengineering perspectives from each other
Different languages and standards coming from different sources
Works have been done on:– Applying UML to ZF– Assigning MDA-based models to ZF
![Page 9: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/9.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
9
Our ApproachOur Approach
MDA as a modeling source for ZF– Strong in model transformation– Well-Defined family of modeling tools,
standards and methods– Similar approaches to:
• Meta-modeling• Separation of concerns
– Popularity
![Page 10: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/10.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
10
Model-Driven ArchitectureModel-Driven Architecture (MDA)(MDA)
Models are assets not costMore modeling, less coding(Automatic) Model Transformation
– From requirements to code• Not so fast!
Model reusabilityDesign-time interoperability
![Page 11: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/11.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
11
MDA MDA (Contd.)(Contd.)
Computation-Independent Modeling(CIM)
Platform-Independent Modeling(PIM)
Platform-Specific Modeling(PSM)
Transformation RulesTransformation
Transformation
Inform the Client
Email the Client
Java.SMTP.Compose
![Page 12: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/12.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
12
MDA vs. ZF: Separation of ConcernsMDA vs. ZF: Separation of Concerns
FOR MORE INFO...http://www.omg.org/mda/mda_files/09-03-WP_Mapping_MDA_to_Zachman_Framework1.pdf
![Page 13: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/13.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
13
MDA vs. ZF: Modeling CoverageMDA vs. ZF: Modeling Coverage
FOR MORE INFO...http://www.omg.org/mda/mda_files/09-03-WP_Mapping_MDA_to_Zachman_Framework1.pdf
![Page 14: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/14.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
14
Meta-Object Facility (MOF)Meta-Object Facility (MOF)
Meta-Data Language of MDAA means of defining new languagesVery simple but strongTwo levels of languages
– MOF-based languages: UML, CWM, …– UML Profiles
UML Notation is usually used
![Page 15: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/15.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
15
FOR MORE INFO...
http://conceptualgraphs.org/
Conceptual Graphs (CG)Conceptual Graphs (CG)
A Conceptual Graph is a set of– Concepts– Relations– Example CG: A cat is on a mat.
MatCat OnConcept 2RelationConcept 1
![Page 16: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/16.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
16
Conceptual Graphs Conceptual Graphs vs. MOFvs. MOF
CG– Meta-Data language of ZF– Integrity of the ZF
Could MDA preserves the integrity?– Yes, if MOF could define CGs
Could an MDA be seen as ZF-based EA?– Yes, if CGs could define MOF
![Page 17: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/17.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
17
MOF Meta-ModelMOF Meta-Modelfor CGfor CG
QuantifierConcept
Conceptual Graph
Relation
Conceptual Relation
1..n
1
1..n
1
1
1
1
1
Quantified Concept
0..1
1
0..1
1
1
1
1
1
1..n
1
1..n
+sourceConcept
1
1..n
11
1..n+targetConcept
![Page 18: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/18.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
18
Synthesis of a CG with MOFSynthesis of a CG with MOF
matcat ona
Concept
Quantifier
Relation
Quantified Concept
a cat a mat
Target ConceptSource Concept
A cat is on a mat
Conceptual Graph
A cat on a mat
Conceptual Relation
![Page 19: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/19.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
19
CG Meta-Model for MOFCG Meta-Model for MOF
Association
Classifier
Property
Operation
Class
0..1
n
0..1
n
n
0..1
n
0..1
n+superClass
n
+class
+ownedOperation
+ownedAttribute
+class
Class
Classifier meta
Association
Attribute: {*}
owns
Operation: {*}
T: {*} owns
![Page 20: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/20.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
20
Meta-Modeling in ZFMeta-Modeling in ZF
ProductProduct FrameworkFramework
EnterpriseEnterprise FrameworkFramework
Enterprise EngineeringEnterprise Engineering
FrameworkFramework
RepositoryRepository FrameworkFramework
realizes
instantiates
uses
supplies
engineers
produces
![Page 21: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/21.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
21
Meta-Modeling in MDAMeta-Modeling in MDA
M3: Meta-Meta-Model– MOF
M2: Meta-Model– UML, CWM, UML Profiles, …
M1: User Model– Instances of UML, …
M0: Runtime Model– Runtime Objects
![Page 22: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/22.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
22
MDA vs. ZFMDA vs. ZFMeta-ModelingMeta-Modeling
ProductProduct FrameworkFramework
EnterpriseEnterprise FrameworkFramework
Enterprise EngineeringEnterprise Engineering
FrameworkFramework
RepositoryRepository FrameworkFramework
realizes
instantiates
uses
supplies
engineers
produces
M0
M1
M2
M3
![Page 23: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/23.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
23
DiscussionDiscussion
There are still problems:– Platform or Technology
• ZF– Technology-Independence– Equal to Platform-Independence
• MDA– Platform-independence– Is not equal to Technology-Independence
– ZF is recursive but not MDA
![Page 24: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/24.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
24
Discussion Discussion (Contd.)(Contd.)
A Possible Solution:– Consider each technological platform
as a member of a single column– Isolate that column– Restrict the concept of platform
• A Platform-Specific Model
– Iterate the process for other columns
![Page 25: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/25.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
25
In ZF:– Technology Independent
• DB2 and Struts Independent
In MDA– Depends on Platform
• If Platform=DB2– Platform-Independent
• DB2-Independent• Not Struts-Independent
Discussion Discussion (Contd.)(Contd.)
Data What People Who
DB2 Struts
TechnologyIndependent
Area
DB2
Technology and PlatformIndependent
Area
![Page 26: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/26.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
26
ConclusionConclusion
MDA Provides ZF with:– Perspective Transformation Facilities– Modeling Languages and Standards
MDA Adapts to ZF in terms of:– Separation of Concerns– Meta-Data Language– Meta-Modeling Scheme
![Page 27: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/27.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
27
Further WorkFurther Work
Transformation Functions– Input: High-Level Requirements
• e.g. Use Case
– Output: Low-Level Design Models • e.g. Executable State-Machine
– PIM to PSM Transformation– ZF Coverage
• Row 2 (and/or 3) to Row 3 (and/or 4)
![Page 28: this presentation](https://reader033.fdocuments.in/reader033/viewer/2022052904/557cf5afd8b42a071b8b481b/html5/thumbnails/28.jpg)
May 2007 http://www.site.uottawa.ca/~afato092
28
Thank you …Thank you …
FOR MORE INFO...
Read my paper in the proceedings of the upcoming IRMA 2007 Conference in Vancouver!