CaCORE Training: UML-based Metadata Curation Session 1 Course Number:1071 Date:September 15, 2009 Duration: 90 Minutes Trainer: Becky Angeles

Slides:



Advertisements
Similar presentations
Introduction The cancerGrid metadata registry (cgMDR) has proved effective as a lightweight, desktop solution, interoperable with caDSR, targeted at the.
Advertisements

CACORE TOOLS FEATURES. caCORE SDK Features caCORE Workbench Plugin EA/ArgoUML Plug-in development Integrated support of semantic integration in the plugin.
HELP GUIDE NEW USER REGISTRATION (SLIDE 2) TAKING A QUIZ (SLIDE 8) REVIEWING A QUIZ (SLIDE 17) GROUP MEMBERSHIP (SLIDE 26) CREATING QUIZZES (SLIDE 31)
1 © 2006 by Smiths Group: Proprietary Data Smiths Group Online Performance Review Tool Training.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
1 of 6 Parts of Your Notebook Below is a graphic overview of the different parts of a OneNote 2007 notebook. Microsoft ® OneNote ® 2007 notebooks are digital.
Best Practices for Including Enumerated Value Domains in UML Models What are the mechanics of creating CDEs associated with enumerated value domains in.
Disclaimer This presentation is the property of MarketLinx Solutions™ and is intended for the exclusive use of NTREIS and may not be distributed, copied.
UNIT-V The MVC architecture and Struts Framework.
Form Builder Iteration 2 User Acceptance Testing (UAT) Denise Warzel Semantic Infrastructure Operations Team Presented to caDSR Curation Team March.
CSE314 Database Systems Data Modeling Using the Entity- Relationship (ER) Model Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson Ed Slide Set.
OpenMDR: Generating Semantically Annotated Grid Services Rakesh Dhaval Shannon Hastings.
Department of Biomedical Informatics Development of Ontology-anchored Grid-based Data Services to Facilitate Integrative Clinical and Translational Science.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
DRAFT 02-Feb-07 1 caAdapter Model Mapping Service Hands-On Training (Course# 2040) Session Date: TBD Session Length: 90 minutes Target Audience:caCORE.
OpenMDR: Alternative Methods for Generating Semantically Annotated Grid Services Rakesh Dhaval Shannon Hastings.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
Lead Management Tool Partner User Guide March 15, 2013
Using the Open Metadata Registry (openMDR) to create Data Sharing Interfaces October 14 th, 2010 David Ervin & Rakesh Dhaval, Center for IT Innovations.
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
Selected Topics in Software Engineering - Distributed Software Development.
 Whether using paper forms or forms on the web, forms are used for gathering information. User enter information into designated areas, or fields. Forms.
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
Methodology - Conceptual Database Design
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
PearsonAccess April 14, PearsonAccess – Agenda Order Tracking Additional Orders Student Data Upload (SDU) files New Student Wizard Online Testing.
CaCORE Software Development Kit George Komatsoulis 25-Feb-2005.
CSC 131 Fall 2006 Lecture # 5 UML Use Cases. UML The UML is a graphical language for  specifying  visualizing  constructing  documenting the artifacts.
CaDSR Software Users Meeting 3.1 Requirements Review 9/19/2005 caDSR Software Team Host: Denise Warzel NCICB, Assistant Director, caDSR.
1 ECCF Training 2.0 Implemental Perspective (IP) ECCF Training Working Group January 2011.
CaIntegrator2 – Part 1: Create a Study with Clinical Data Fan Lin, Ph. D Molecular Analysis Tools Knowledge Center Columbia University and The Broad Institute.
1 Service Creation, Advertisement and Discovery Including caCORE SDK and ISO21090 William Stephens Operations Manager caGrid Knowledge Center February.
Introduction to KE EMu
What is NCIA? National Cancer Imaging Archive Searchable repository of in vivo cancer images in DICOM format Publicly available at no cost over the Internet.
Vendor Bid System (VBS) Seminar. Agenda Vendor Bid System Overview Step-by-Step Advertisement Posting Editing Active Advertisements Recommended Practices.
May 2007 Registration Status Small Group Meeting 1: August 24, 2009.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
Patterns in caBIG Baris E. Suzek 12/21/2009. What is a Pattern? Design pattern “A general reusable solution to a commonly occurring problem in software.
© 2013 Molex Incorporated. All Rights Reserved. 1.
HEI/OCAN College Access Program Data Submissions.
Compatibility Review System 3.0 Robert Freimuth October 28, 2008 Overview.
SNG via Webinar. Where’s Webinar??  Double click Aflac 2000 folder  Highlight “SNGWebCommunicator”  Right Click and “Send To - Desktop”
CaBIG ™ is an initiative of the National Cancer Institute, NIH, DHHS Semantic Integration Workbench (SIW) v3.1 and UML Model Browser v.5  Session Date:
Modeling Your Application, Data or Service Creating Your UML Model.
Course Number: 1080 Session Length:60 Minutes Target Audience:caDSR Users and Metadata Consumers Trainer: Jennifer Brush NCICB Liaison.
NIMAC for Accessible Media Producers: February 2013 NIMAC 2.0 for AMPs.
CaCORE In Action: An Introduction to caDSR and EVS Browsers for End Users A Tool Demonstration from caBIG™ caCORE (Common Ontologic Representation Environment)
American Diploma Project Administrative Site Training.
National Cancer Institute caDSR Briefing for Small Scale Harmonication Project Denise Warzel Associate Director, Core Infrastructure caCORE Product Line.
Create your Domain Model. Session Outline caCORE Build Process Review of UML Modeling Lesson 1: Model a Data Service Lesson 2: Create a UML Model for.
Semantic Interoperability: caCORE and the Cancer Data Standards Repository (caDSR)  Jennifer Brush.
American Diploma Project Administrative Site Training New Jersey.
Exploring Taverna 2 Katy Wolstencroft myGrid University of Manchester.
GOVT. ENGINEERING COLLEGE, AJMER. A SEMINAR PRESENTATION ON UNIFIED MODELING LANGUAGE(UML) SUBMITTED TO:-PRESENTED BY:- Dr. REENA DADHICHPALLAVI VASHISTHA.
Data Modeling Using the Entity- Relationship (ER) Model
NCI Center for Biomedical Informatics and Information Technology (CBIIT) The CBIIT is the NCI’s strategic and tactical arm for research information management.
Unified Modeling Language
Core LIMS Training: Advanced Administration
ERO Portal Overview & CFR Tool Training
Students Welcome to “Students” training module..
To the ETS – Encumbrance Online Training Course
Training course Part 2: Administration tasks
Online Training Course
Welcome to WebEx Thanks to the NHS Institute for Innovation & Improvement for their contribution to this document.
To the ETS – Encumbrance Online Training Course
Presentation transcript:

caCORE Training: UML-based Metadata Curation Session 1 Course Number:1071 Date:September 15, 2009 Duration: 90 Minutes Trainer: Becky Angeles NCICB Liaison:Dianne Reeves

Session Details: UML-based Metadata Session 1 Online Training Environment: Centra… Use these buttons (or choose from the Actions menu) to communicate with the trainer and other attendees. Example: Raise your hand to ask a question.

Session Details: UML-based Metadata Session 1 Online Training Environment: Centra You can adjust what you see on screen by choosing from the View menu or by scrolling.

Session Details: UML-based Metadata Session 1 Online Training Etiquette Be an active learner Ask lots of questions Avoid the temptation to multi-task Please keep your phone on MUTE Please do not put your phone on HOLD - disconnect from the teleconference to take another call Please state your name when asking a question or making a comment

Session Details: UML-based Metadata Session 1 Audience This session is targeted for: Application Developers caBIG Developers VCDE Mentors Compatibility Reviewers Metadata Curators - curating from a UML-based perspective caBIG caDSR

Session Details: UML Derived Metadata Part 1 Course Outline Learning Objectives Lesson 1: Introduction to UML Modeling Lesson 2: Decomposing UML Class Diagrams into Metadata Lesson 3: Semantic Integration and caBIG Compatibility Lesson 4: caCORE Build Process Workflow Lesson 5: Using the Semantic Integration Workbench (SIW)

Session Details: UML Derived Metadata Part 1 Learning Objectives When you complete this training, you will be able to: Discuss the benefits of UML modeling Identify three components of a UML Class Diagram Decompose a UML class and its attributes into caDSR metadata List the seven User Modes (Options) of the Semantic Integration Workbench (SIW) List the major steps in the UML Model Semantic Integration and caDSR loading process

Lesson 1: Introduction to Unified Modeling Language (UML) When you complete Lesson 1 you will be able to: Define the 4 ways UML represents the artifacts of a software system Discuss the role UML plays within the caDSR Identify 3 components of a UML Class Diagram Discuss the difference between a Class and an Object

Lesson 1: Introduction to UML Modeling What is UML? Definition: Unified Modeling Language (UML) is a language used to visualize, specify, construct and document the artifacts of a software system. Visualize Use the same language to facilitate communication about the software system Reveals previously unknown details about the software system Specify Models are precise, unambiguous and complete Many UML Diagram Types caCORE SDK uses only the UML Class Diagram Construct Supports many programming languages. (Java, C++, Visual Basic, etc.) Permits forward and reverse engineering Document UML allows you to document the system architecture, requirements, tests, project planning, and release management

Lesson 1: Introduction to UML Modeling UML Roles Role of UML in the caDSR A UML Class Diagram is used to transform the classes and attributes of a software system or data set into caDSR metadata. This process is called “Semantic Integration” Role of UML in the caCORE Build Process The same UML Class Diagram used for “Semantic Integration” is also used to generate code for a complete software system This process is called “Code Generation”

Lesson 1: Introduction to UML Modeling UML Diagram Types Actor A Use Case 1 Use Case 2 Use Case 3 Actor B Sequence Diagram user mainWndfileMgr : FileMgr repositorydocument : Document gFile 1: Doc view request ( ) 2: fetchDoc( ) 3: create ( ) 4: create ( ) 5: readDoc ( ) 6: fillDocument ( ) 7: readFile ( ) 8: fillFile ( ) 9: sortByName ( ) ƯÁ¤¹®¼­¿¡ ´ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. È­ÀÏ°ü¸®ÀÚ´Â Àоî¿Â ¹®¼­ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼­ °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. È­¸é °´Ã¼´Â ÀоîµéÀÎ °´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î Á¤·ÄÀ» ½ÃÄÑ È­¸é¿¡ º¸¿©ÁØ´Ù. Deployment Diagram Window95 ¹®¼­°ü¸® Ŭ¶óÀ̾ðÆ®.EXE Windows NT ¹®¼­°ü¸® ¿£Áø.EXE Windows NT Windows95 Solaris ÀÀ¿ë¼­¹ö.EXE Alpha UNIX IBM Mainframe µ¥ÀÌŸº£À̽º¼­¹ö Windows95 ¹®¼­°ü¸® ¾ÖÇø´ ºÐ»ê ȯ°æÀÇ Çϵå¿þ¾î¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðµ¨ - À©µµ¿ì 95 : Ŭ¶óÀ̾ðÆ® - À©µµ¿ì NT: ÀÀ¿ë¼­¹ö - À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼­¹ö ¹× µ¥ÀÌŸ ¼­¹ö, Åë½Å ¼­¹ö - IBM ¸ÞÀÎÇÁ·¹ÀÓ: µ¥ÀÌŸ ¼­¹ö, Åë½Å ¼­¹ö Class Diagram Use Case Diagram

Lesson 1: Introduction to UML Modeling UML Class Diagram A Class Diagram depicts a logical grouping of classes Example: Simple Class Diagram 2 Classes 1 association (“relationship”) Course - name: String - location: String - daysOffered: String - creditHours: Integer - startDate: Date - endDate: Date Student - name: String - address: String - studentID: Integer - dateOfBirth: Date Add Student () Drop Student () Provide list of Courses taken () 1..*0..*

Lesson 1: Introduction to UML Modeling UML Class Diagram A Class Diagram depicts a logical grouping of classes Example: Simple Class Diagram 2 Classes 1 association (“relationship”) Course - name: String - location: String - daysOffered: String - creditHours: Integer - startDate: Date - endDate: Date Student - name: String - address: String - studentID: Integer - dateOfBirth: Date Add Student () Drop Student () Provide list of Courses taken () 1..*0..* class association (“relationship”)

Lesson 1: Introduction to UML Modeling UML Class A class is a description of a set of objects that share the same attributes, operations, relationships, and semantics Course - name: String - location: String - daysOffered: String - creditHours: Integer - startDate: Date - endDate: Date Student - name: String - address: String - studentID: Integer - dateOfBirth: Date Add Student () Drop Student () Provide list of Courses taken () 1..*0..* class class name attributes methods/ operations association (“relationship”) data type

Lesson 1: Introduction to UML Modeling Class Attribute An attribute is a property of a class Attributes are named Attributes describe the range of values that instances of the property may hold. A class may have any number of attributes Course - name: String - location: String - daysOffered: String - creditHours: Integer - startTime: Date - endTime: Date Student - name: String - address: String - studentID: Integer - dateOfBirth: Date Add Student () Drop Student () Provide list of Courses taken () 1..*0..* attributes

Lesson 1: Introduction to UML Modeling Attribute Data Types Each attribute has a datatype (or “representation”) Course - name: String - location: String - daysOffered: String - creditHours: Integer - startTime: Date - endTime: Date Student - name: String - address: String - studentID: Integer - dateOfBirth: Date Add Student () Drop Student () Provide list of Courses taken () 1..*0..* attribute data type

Lesson 1: Introduction to UML Modeling Classes and Objects - Clarification Classes and Objects are not the same thing An Object is an instance of a Class :Course - name = “Introduction to UML” - location = “online” - daysOffered = “Tuesday” - creditHours = “1” - startDate = “02/12/2008” - endDate = “03/04/2008” object Course - name: String - location: String - daysOffered: String - creditHours: Integer - startDate: Date - endDate: Date Add Student () Drop Student () class ≠

Lesson 1: Introduction to UML Modeling Review What You’ve Learned UML is used to visualize, specify, construct and document the artifacts of a software system. The role of UML in the caDSR is to transform the classes and attributes of a software system or data set into caDSR metadata (semantic integration) A Class Diagram is a logical grouping of classes A Class is the description of a set of objects that share the same attributes, operations, relationships, and semantics Classes contain attributes that describe the properties of the class Each attribute has a data type that specifies how that piece of information should be represented

Lesson 1: Introduction to UML Modeling Apply What You’ve Learned What is the name of this class? What is the name of the attribute used to describe a person’s address information? What is the data type for the “name” attribute? Person - birthDate: Date - educationLevel: Character - ethnicGroup: Character - gender: Character - maritalStatus: Character - name: String - postalAddress: String Example Class

Lesson 1: Introduction to UML Modeling Apply What You’ve Learned What is the name of this class? Answer: Person What is the name of the attribute used to describe a person’s address information? Answer: postalAddress What is the data type for the “name” attribute? Answer: String Person - birthDate: Date - educationLevel: Character - ethnicGroup: Character - gender: Character - maritalStatus: Character - name: String - postalAddress: String Example Class

Lesson 2: Decomposing UML Class Diagrams into Metadata When you complete Lesson 2, you will be able to: Compare a class diagram to caDSR Metadata Determine how many Data Elements will be formed from a UML Class, its attributes and data types

Lesson 2: Decomposing UML Class Diagrams into Metadata Where we are in the caCORE Build Process

Creating your UML Model is the first step in the caCORE Build Process 1.Design system and draw model (with a UML tool) 2.Perform Semantic Integration (with the SIW – Semantic Integration Workbench) 3.Register Metadata (with the UML Loader) 4.Generate Code (with the Code Generator) 5.Silver Level Compatibility Review and Deploy caGrid Service

UML Class Diagrams form the basis for creating and registering caDSR metadata In the caDSR, a Data Element corresponds to the combination of a class, a single attribute, and its data type. UML ClasscaDSR Data Element ClassObject Class AttributeProperty Datatype (of the attribute)Representation Term Data Element Concept Value Domain Lesson 2: Decomposing UML Class Diagrams into Metadata Class Diagram to Data Element

Class Name - attribute: Data type Lesson 2: Decomposing UML Class Diagrams into Metadata Class Diagram to Data Element Data Element Data Element Concept Value Domain Property Object Class Representation UML ClasscaDSR Data Element

Lesson 2: Decomposing UML Class Diagrams into Metadata Class Diagram to Data Element Data Element Data Element Concept Value Domain Property Object Class Representation Example UML Class caDSR Data Element Person - name: String

Person - name: String Lesson 2: Decomposing UML Class Diagrams into Metadata Class Diagram to Data Element Person Name java.lang.String Person Name java.lang.String Name Person String Example UML Class caDSR Data Element

Lesson 2: Decomposing UML Class Diagrams into Metadata Apply What You’ve Learned How many attributes does this class have? How many Data Elements are created from this one class? Person - birthDate: Date - educationLevel: Character - ethnicGroup: Character - gender: Character - maritalStatus: Character - name: String - postalAddress: String Example Class

Lesson 2: Decomposing UML Class Diagrams into Metadata Apply What You’ve Learned How many attributes does this class have? Answer: 7 How many Data Elements can be created from this one class? Answer: 7 Person - birthDate: Date - educationLevel: Character - ethnicGroup: Character - gender: Character - maritalStatus: Character - name: String - postalAddress: String Example Class

Lesson 2: Decomposing UML Class Diagrams into Metadata Apply What You’ve Learned 1.A UML Class corresponds to a _____________ in caDSR Metadata 2.A UML Attribute corresponds to a ______________ in caDSR Metadata 3.A UML Datatype corresponds to a ______________ in caDSR Metadata

Lesson 2: Decomposing UML Class Diagrams into Metadata Apply What You’ve Learned 1.A UML Class corresponds to a Object Class in caDSR Metadata 2.A UML Attribute corresponds to a Property in caDSR Metadata 3.A UML Data type corresponds to a Representation Term in caDSR Metadata

Lesson 3: Semantic Integration and caBIG ® Compatibility When you finish Lesson 3, you will be able to: Discuss the definition and importance of Semantic Integration List the 3 levels of caBIG ® Compatibility Discuss the requirements for caBIG ® Silver Level Compatibility

Lesson 3: Semantic Integration and caBIG ® Compatibility Where we are in the caCORE Build Process Semantic integration is the second step in the caCORE Build Process 1.Design system and draw model (with a UML tool) 2.Perform Semantic Integration (with the SIW – Semantic Integration Workbench) 3.Register Metadata (with the UML Loader) 4.Generate Code (with the Code Generator) 5.Silver Level Compatibility Review and Deploy caGrid Service

Semantic Integration is the series of steps taken to map UML classes and attributes to EVS concept codes These concepts are used to build caDSR Data Elements Goal: Semantic Interoperability This association between metadata and controlled vocabularies permits unambiguous interpretation of UML model objects and mapping between those objects in different domains. Resulting metadata is more sharable and interoperable. For example, the UML Class named Agent is mapped to C1708 (Agent) – if other models with an Agent class are mapped to C1708, semantic integration is achieved – both classes mean the same thing Lesson 3: Semantic Integration and caBIG ® Compatibility Semantic Integration Overview

Share Metadata Expose Data Share Data on Grid Participant wants to… Manual Process caCORE Build Process Manual Process caCORE Build Process UML Model Semantic Integration Bronze SilverGold Lesson 3: Semantic Integration and caBIG ® Compatibility Achieving Semantic Interoperability Manual Process caCORE Build Process Manual System Generation UML Model Semantic Integration Curation UML Model Semantic Integration Code Generation Curation “caCORE-like” System Manual System Generation Custom GRID Adapter UML Model Semantic Integration Curation UML Model GRID Node Semantic Integration Code Generation Curation

Absolute: Data Element metadata is recorded in the caDSR Data Elements are associated with a unique pairing of a Data Element Concept and Value Domain Data Elements MUST have names, definitions, and data types Data Element Concepts (DECs) and Value Domains (VDs) must be built from EVS concepts DECs are associated with a Conceptual Domain and have Object Class and Property assigned from EVS Value Domains have data types Enumerated Value Domains have a representation assigned from EVS If Permissible Values are used, there must be actual values in the value name and paired with a value meaning or reference a repository Lesson 3: Semantic Integration and caBIG ® Compatibility Achieving caBIG ® Silver-Level Compatibility (Absolute)

Required: No unexplained errors should be seen in the SIW Data Systems should use publicly accessible controlled vocabularies as well as local terminologies Reuse existing CDEs All Data Elements names, definitions, data types, and permissible values have unambiguous meanings (concepts) Permissible Value enumerations should be listed in the UML model Suggested: If Permissible Values are used, the value meaning should have an attached concept code and value meaning definition Lesson 3: Semantic Integration and caBIG ® Compatibility Achieving caBIG ® Silver-Level Compatibility (Required/Suggested)

Lesson 3: Semantic Integration and caBIG ® Compatibility Review What You’ve Learned In Lesson 3, you have learned: Semantic Integration is the series of steps taken to map UML classes and attributes to EVS concept codes The association between metadata and controlled vocabularies permits unambiguous interpretation of UML model objects - therefore making data more re-usable and sharable

Lesson 3: Semantic Integration and caBIG ® Compatibility Apply What You’ve Learned 1.There are _________ levels of caBIG ® Compatibility. 2._______________ ________________ is the series of steps taken to map UML classes and attributes to EVS concept codes. 3.Data Element Concepts and Value Domains must be built from EVS ____________ for caBIG Silver-Level Compatibility.

Lesson 3: Semantic Integration and caBIG Compatibility Apply What You’ve Learned (Answers) 1.There are 3 levels of caBIG ® Compatibility. 2.Semantic Integration is the series of steps taken to map UML classes and attributes to EVS concept codes. 3.Data Element Concepts and Value Domains must be built from EVS concepts for caBIG ® Silver-Level Compatibility.

Lesson 4: caCORE Build Process Workflow Overview When you complete this Lesson, you will be able to: Identify the 5 steps involved in the caCORE Build Process Workflow Name the tool used to perform semantic integration within the caCORE Build Process Workflow Discuss the format in which to export a UML model before the model is loaded to caDSR

Lesson 4: caCORE Build Process Workflow Overview caCORE Build Process 1.Design system and draw model (with a UML tool) 2.Perform Semantic Integration (with the SIW – Semantic Integration Workbench) 3.Register Metadata (with the UML Loader) 4.Generate Code (with the Code Generator) 5.Pass Silver Level Compatibility Review and Deploy caGrid Service

Lesson 4: caCORE Build Process Workflow Overview caCORE Build Process Workflow 1.Design System & Draw Model a.Export the Class Diagram as an XMI file (Enterprise Architect) or save as a UML file (ArgoUML v0.24 or v0.26 only) 2.Perform Semantic Integration a.Use the Semantic Integration Workbench (SIW) tool b.Annotate every class and attribute in XMI/UML file (class diagram) with vocabulary identifiers 3.Register Metadata a.NCI CBIIT loads XMI file (class diagram) into the caDSR Sandbox database b.Review metadata in the caDSR Sandbox database c.NCI CBIIT loads reviewed XMI file (class diagram) into the caDSR Production database 4.Generate Code a.Use the SDK Code Generator 5.Silver Level Compatibility Review and Deploy caGrid Service a.Pass the Compatibility Review b.Use caGrid Introduce Toolkit to deploy caGrid Service

Lesson 4: caCORE Build Process Workflow Overview 1. Design System & Draw Model Create your system/project model in UML “Logical View” model describes your domain Includes classes, attributes, data types, relationships Use Recommended Naming Conventions Conform to Java naming conventions and terminology standards Use clear Package, Class and Attribute names Use Standard Vocabulary (EVS) Class/attribute need at least one concept from a vocabulary Create Class and Attribute Definitions as Tagged Values Class and attribute tagged value = “CADSR_Description” Class Associations Must be named with associated class names Multiplicity and direction must be defined Attribute Data Types must already exist in caDSR

Lesson 4: caCORE Build Process Workflow Overview caCORE Tools Modeling Constraints Ignored UML Elements – operations and methods Attribute Types – each attribute must have a type (Java primitive data type or Java wrapper class defined in model) Recognized Relationships – associations and generalizations(inheritance); aggregations and compositions are treated as simple associations Association End Role Names –source and a target (class name) defined Association End Multiplicity – must be specified at both ends Association End Navigability (directionality) – must be specified Packages and the Logical Model – model should be placed in the Logical Model package of a modeling tool. Classes should be placed in a “domain” package in the “Logical Model” package. Package names must conform to java package limitations. UML Descriptions – all classes and attributes must have a “CADSR_Description” tag containing a concise definition Java Limitations – avoid using Java reserved words as class/attribute names – avoid hyphens, angle brackets or other reserved characters

Lesson 4: caCORE Build Process Workflow Overview 1. Design System & Draw Model – prior to Export Class and Attribute names, definitions and data types must be frozen caBIG participants should work with their VCDE metadata mentors throughout this process Export the UML Class Diagram to an XMI file (EA) or.uml (ArgoUML) using the guidelines described in the caCORE SIW and UML Loader Technical Guide Export from the top package “Logical View” Right click to export from this package Includes model for API Review (caBIG Compatibility) Includes model for VCDE Review (caBIG Compatibility)

Lesson 4: caCORE Build Process Workflow Overview 1. Design System & Draw Model – Export (EA only) Recommended settings in Enterprise Architect when you export your UML model as an XMI file: Enable full EA Roundtrip XMI version 1.1 and UML version 1.3 Ensure “Use DTD” is NOT CHECKED For those using ArgoUML – save model as a.uml file.

Lesson 4: caCORE Build Process Workflow Overview 2. Perform Semantic Integration - SIW Start the Semantic Integration Workbench (SIW) Review your Un-Annotated Model (SIW Step 1) Run the “Semantic Connector Report” (SIW Step 3) Send the Model Submission Package to NCICB Application Support: submission package info: oup_id=64&selected_doc_group_id=184&langu age_id=1 Work with NCI’s terminology experts as they annotate every class and attribute in your XMI file (class diagram) with vocabulary identifiers Verify all annotations by checking the “Model Owner Verified” box (SIW Step 5)

Lesson 4: caCORE Build Process Workflow Overview 3. Load and Review Model NCICB uses the UML Loader to load (“transform”) the XMI file into caDSR metadata Review your caDSR Metadata in the caDSR Sandbox database Once reviewed, NCICB will load the model into the caDSR Production database Work with your preceptor or VCDE mentor to make any necessary edits to the metadata

Lesson 4: caCORE Build Process Workflow Overview 4. Generate Code Generate Code Code Generator creates the caCORE- compatible software system. Generates Java-beans Generates the Object Managers and Data Access Objects Generates an XML Schema and corresponding Castor XML Mapping files Creates a Web Services Deployment Descriptor (WSDD) file

Lesson 4: caCORE Build Process Workflow Overview 5. Silver Review / Deploy caGrid Service Pass the Silver Level Compatibility Review Assemble Project and Institution Information Deploy caGrid Service Use the caGrid Introduce Toolkit Index Service Global Model Exchange

Lesson 4: caCORE Build Process Workflow Overview Apply What You’ve Learned 1.In what format do you export your UML Class Diagram so that it can be used in the Semantic Integration process? 2.What is the name of the tool where you perform Semantic Integration (mapping individual classes and attributes to standard vocabulary concepts)?

Lesson 4: caCORE Build Process Workflow Overview Review Questions 1.In what format do you export your UML Class Diagram so that it can be used in the Semantic Integration process? Answer: XMI 2.What is the name of the tool where you perform Semantic Integration (mapping individual classes and attributes to standard vocabulary concepts)? Answer: SIW (Semantic Integration Workbench)

Lesson 5: Overview of the Semantic Integration Workbench (SIW) When you complete Lesson 5, you will be able to: Identify at least 3 benefits of using the Semantic Integration Workbench (SIW) List the seven (7) modes of the SIW Identify which SIW mode is NOT performed by the model owner Discuss validations that the SIW performs in relation to the UML Model

Lesson 5: Overview of the SIW Details of the SIW Use: Perform the tasks associated with semantic annotation and review for loading of UML Models into caDSR Audience: UML Model developers/users performing semantic annotation Technology: Java application - downloaded and installed on user’s desktop Benefits: Facilitates the semantic integration process Removes the requirement that users should understand ISO/IEC and the mapping between ISO and caDSR Users select NCI Thesaurus concepts for model annotation Simplifies editing, eliminates ‘cut and paste’ and typographical errors Identifies and facilitates correction of missing data and data type errors Provides the ability to generate and remove default GME tags

Lesson 5: Overview of the SIW Launching the SIW To Launch the SIW for the first time: Download Java JRE: ( Open the SIW URL ( Once Java SE is downloaded to your machine, you only need to navigate to the SIW URL to start the tool

Lesson 5: Overview of the SIW SIW User Modes The SIW Welcome panel includes seven (7) options for SIW use, listed in the order of their use in the SIW Workflow.

Lesson 5: Overview of the SIW Review Un-Annotated XMI File Performed by: Model Owner Do this step first Easy way to check for missing tags for classes and attributes Missing tags are flagged in the Errors tab Input: UML Model in XMI or UML format Output: UML Model in XMI or UML format

Lesson 5: Overview of the SIW Review Un-Annotated XMI File – Trouble-shooting Can’t find the.XMI files? Files are created in the same root directory as the input file Note the location of your.XMI input file Error message displays or first run does not complete Confirm your.XMI file is in the expected format Check.XMI export settings in EA Contact NCICB Application Support

Lesson 5: Overview of the SIW Perform XMI Roundtrip Performed by: Model Owner Annotates model with existing caDSR CDEs Launched by entering the Project Name, (Classification Scheme Long Name) and Version Input: XMI or UML file Output: Roundtrip XMI or UML file A partially annotated XMI file. The file is annotated with caDSR public IDs rather than EVS concepts. After performing this step, the model owner should review the mapping in the XMI Review mode (Step 5)

Lesson 5: Overview of the SIW Run Semantic Connector Performed by: Model Owner Performs an EVS search for each element in the UML Model and attaches one or more EVS concepts per element Input: UML Model in XMI or UML format (original or Roundtrip) Output: Saved XMI or UML files This file is sent to EVS curation team for review and insertion of new concepts to match the UML class and attribute entities

Lesson 5: Overview of the SIW Next Steps for Model Owner (1) If you want the EVS team to complete the concept mappings for you: NCICB Application Support with the Semantic Integration Submission Template located in the “Docs” section of the UML Model project on the NCICB GForge site: 84&language_id=1 84&language_id=1.EAP or.UML file ${filename}.xmi or ${filename}.uml FirstPass_${filename}.xmi or FirstPass_${filename}.uml Documentation file from EA (or other UML Tool) NCICB Application Support will conduct a review of all files to verify completeness

Lesson 5: Overview of the SIW Next Steps (2) If you wish to map classes and attributes in your model to existing CDEs in caDSR AND NCIt concepts: 1.Run Option 2: Perform XMI Roundtrip to map CDEs (optional) 2.Run Option 3: Run Semantic Connector to map concepts to any classes and attributes not mapped to a CDE 3.Run Option 5: Review Annotated XMI File to edit the concept mappings in the classes and attributes for which you know the semantics 4.Check each class and attribute that you map as Model Owner Verified, to indicate to the EVS team that you have intentionally selected these concepts 5.Submit your model and required files to Application Support

Lesson 5: Overview of the SIW Curate XMI File Performed by: EVS Concept Curation Team EVS curation team adds and removes concepts and indicates recommended semantic mappings. Can be an iterative process New or existing EVS concepts can be utilized for annotating the model Input: First Pass XMI or UML file Output: Annotated First Pass XMI or UML file referred to as the “Curated XMI File” EVS Concept Curation Team will be in contact with the model owner if they have questions.

Lesson 5: Overview of the SIW Review Annotated XMI File Performed by: Model Owner or Reviewer SIW performs a number of validation checks to ensure the XMI file will be correctly transformed into caDSR metadata Users review concept mapping and association details between a specific class or attribute and EVS concept Input: Annotated First Pass XMI or UML file Output: Approved Annotated First Pass XMI or UML file

Lesson 5: Overview of the SIW Review Annotated XMI File - Validation For each UML Class and Attribute, SIW checks for the presence of at least one: Concept code Concept name Concept definition Concept definition source Valid data type Verifies that no two classes have identical concept mappings Verifies that no two attributes have the same concept annotations within a class Inheritance A child class cannot have attributes that are also defined in the parent class. Associations All associations should be present (not ‘unspecified’) All associations should have a role name

Lesson 5: Overview of the SIW Generate Default GME Tags Performed by: Model Owner or Reviewer Generates GME tags to model elements Can be run anytime throughout the semantic annotation process Input: XMI or UML file Output: GMEDefault XMI or UML file

Lesson 5: Overview of the SIW GME Cleanup Performed by: Model Owner Removes all GME tagged values from an XMI file Useful when an XMI file is fully annotated with GME tags, but the user wishes to replace those tags or let SIW regenerate default values. Input: GME Annotated XMI or UML file Output: GMECleanup XMI or UML file

Lesson 5: Overview of the SIW Review what you have Learned Benefits for using the SIW to perform semantic integration include: (Select the best answer) A.Simplifies editing B.Eliminates ‘cut and paste’ and typographical errors C.Removes the requirement that users should understand ISO/IEC D.All of the Above There are ___ user modes in the Semantic Integration Workbench A.3 B.4 C.7 As a model owner, you will only ever perform ____ of those modes A.3 B.2 C.4

Lesson 5: Overview of the SIW Review what you have Learned Benefits for using the SIW to perform semantic integration include: (Select the best answer) D.All of the Above There are ___ user modes in the Semantic Integration Workbench C.7 As a model owner, you will only ever perform ____ of the SIW modes C.4

Session Review Questions What is the only kind of UML diagram that the caCORE Build process supports? What naming conventions should you follow when naming your UML entities? What components of a Data Element do a UML Class and Attribute relate to? True or False: Proper semantic integration requires that each class and class attribute from your model be mapped to appropriate metadata.

Session Review Questions What is the only kind of UML diagram that the caCORE Build process supports? Class Diagram What naming conventions should you follow when naming your UML entities? Java What components of a Data Element do a UML Class and Attribute relate to? Object Class and Property True or False: Proper semantic integration requires that each class and class attribute from your model be mapped to appropriate metadata. True

Contact Information Contact: Becky Angeles Jennifer Brush Dianne Reeves caCORE SIW and UML Loader v4.0 Technical Guide: UMLLoader_v40_TechnicalGuide.pdf UMLLoader_v40_TechnicalGuide.pdf caCORE SDK v4.1 Programmer’s Guide: grammersGuide.pdf caCORE SDK v4.0 Developer’s Guide: 0%20Developer%27s%20Guide_ pdf caCORE Training Wiki: caCORE Training Home Page: caDSR Home Page: