NIEM 101 Technical Introduction to NIEM 101 TRAINING

  • Slides: 40
Download presentation
NIEM 101 Technical Introduction to NIEM 101 TRAINING

NIEM 101 Technical Introduction to NIEM 101 TRAINING

SEMINAR DETAILS This course is designed to introduce National Information Exchange Model (NIEM) technical

SEMINAR DETAILS This course is designed to introduce National Information Exchange Model (NIEM) technical concepts. An overview of data model components as well as the development of NIEM-conformant information exchanges will be discussed. If you are a technical resource new to NIEM, this is the course for you! All NIEM 300 level training courses build on the foundational concepts introduced in this course. DURATION Approximately 1 Hour PREREQUISITES NIEM 100: NIEM General Overview TARGET AUDIENCE: Technical resources such as architects, analysts, and developers. NIEM 101 2

LEARNING OBJECTIVES This course will provide you with a better understanding of NIEM’s technical

LEARNING OBJECTIVES This course will provide you with a better understanding of NIEM’s technical architecture, exchange scope, and implementation. By the end of this course, you will be able to: • Identify NIEM data components and how they work • Identify a NIEM Information Exchange Package Documentation (also known as an IEPD) • Understand the scope of NIEM and its relation to implementation • Understand NIEM-UML in the context of modeling exchanges and defining domains NIEM 101 3

AGENDA NIEM Recap & Model Overview NIEM Information Exchange Overview NIEM Implementation NIEM-UML Conclusion

AGENDA NIEM Recap & Model Overview NIEM Information Exchange Overview NIEM Implementation NIEM-UML Conclusion NIEM 101 4

Course Progress 0% complete NIEM RECAP & MODEL OVERVIEW NIEM 101: Technical Introduction to

Course Progress 0% complete NIEM RECAP & MODEL OVERVIEW NIEM 101: Technical Introduction to NIEM 5

NIEM OVERVIEW NIEM is a community-driven, government-wide, standards-based approach to exchanging information. Diverse communities

NIEM OVERVIEW NIEM is a community-driven, government-wide, standards-based approach to exchanging information. Diverse communities can collectively leverage NIEM to increase efficiencies and improve decision-making. It is available to everyone, including both public and private organizations. NIEM includes a data model, governance, training, tools, technical support services, and an active community to assist users in adopting a standards-based approach to exchanging data. Community Technical Framework Support Framework Formal Governance Processes Data Model Tools for Development and Discovery Online Repositories XML Design Rules Established Training Program Mission-Oriented Domains Development Methodology Implementation Support Self-Managing Domain Stewards Predefined Deliverables (IEPD) Help Desk & Knowledge Center NIEM 101 6

HOW NIEM WORKS Common Language Repeatable, Reusable Process (Community-driven Data Model) (Information Exchange Development

HOW NIEM WORKS Common Language Repeatable, Reusable Process (Community-driven Data Model) (Information Exchange Development Lifecycle) Built and governed by the business users at Federal, State, Local, Tribal, International and Private Sectors NIEM 101 7

MODEL OVERVIEW Words are to a dictionary as elements are to a data model.

MODEL OVERVIEW Words are to a dictionary as elements are to a data model. Think of the NIEM data model as a mature and stable data dictionary of agreed-upon terms, definitions, and formats independent of how information is stored in individual agency systems. The data model consists of two sets of closely related vocabularies: NIEM Core and individual NIEM Domains. NIEM 101 8

NIEM CORE COMPONENTS Some important, practical NIEM Core components <nc: Person> <nc: Activity> <nc:

NIEM CORE COMPONENTS Some important, practical NIEM Core components <nc: Person> <nc: Activity> <nc: Item> <Person. Birth. Date> <Activity. Category. Text> <Item. Condition. Text> <Person. Eye. Color. Text> <Activity. Date> <Item. Description. Text> <Person. Hair. Color. Text> <Activity. Description. Text> <Item. Name> <Person. Sex. Text> <Activity. Disposition> <Item. Value> … … … <nc: Identification> <nc: Location> <nc: Organization> <Identification. ID> <Address> <Organization. Name> <Identification. Jurisdiction> <Location. Description. Text> <Organization. Description. Text> <Location. Landmark. Text> <Organization. Category. Text> <Location. Name> <Organization. Established. Date> <Identification. Effective. Date> <Identification. Status> … NIEM 101 … … 9

NIEM CORE COMPONENT: <NC: PERSON> Approximately 200 discrete fields for Person information across all

NIEM CORE COMPONENT: <NC: PERSON> Approximately 200 discrete fields for Person information across all domains <nc: Person. Name. Type> <Person. Name. Prefix. Text> <Person. Given. Name> x x <Person. Name> <Person. Middle. Name> <Person. Sex> <nc: Person. Sur. Name> <Person. Birth. Date> … <Person. Hair. Color> <nc: Injury. Type> <Physical. Feature. Category> x <Physical. Feature. Description. Text> <Physical. Feature. Image> <Physical. Feature. Location. Text> … <Person. Physical. Feature> x <Injury. Category. Text> <Person. Capability> <Injury. Date> <Person. SSNIdentification> <Injury. Description. Text> <Injury. Location. Text> <nc: Physical. Feature. Type> <nc: Person> x x <Person. Injury> <Injury. Severity. Text> <Person. Medical. Condition> … … <nc: Medical. Condition. Type> <Medical. Condition. Text> <Medical. Condition. Cause. Text> x <Medical. Condition. Description. Text> <Medical. Condition. Severity. Text> … NIEM 101 10

NIEM CORE COMPONENT: <NC: ACTIVITY> <nc: Activity> <Activity. Date> <Activity. Category. Text> <nc: Activity>

NIEM CORE COMPONENT: <NC: ACTIVITY> <nc: Activity> <Activity. Date> <Activity. Category. Text> <nc: Activity> has different derived types in NIEM <Activity. Description. Text> <Activity. Disposition> … x <em: Alarm. Event> <Activity. Date> • Derived types inherit all parent fields • Field meaning depends on context <Activity. Category. Text> x <Activity. Description. Text> <Activity. Disposition> <Alarm. Event. Category. Code> <Alarm. Event. Details. Text> … NIEM 101 11

KNOWLEDGE CHECK True of False? 1. The NIEM model consists of two sets of

KNOWLEDGE CHECK True of False? 1. The NIEM model consists of two sets of closely related vocabularies: NIEM Core and individual NIEM Domains. 2. Some important practical NIEM Core components are <nc: Person>, <nc: Activity>, and <nc: Item> NIEM 101 12

Course Progress 20% complete NIEM INFORMATION EXCHANGE OVERVIEW NIEM 101: Technical Introduction to NIEM

Course Progress 20% complete NIEM INFORMATION EXCHANGE OVERVIEW NIEM 101: Technical Introduction to NIEM 13

WHAT IS A NIEM INFORMATION EXCHANGE? In NIEM, an information exchange is also known

WHAT IS A NIEM INFORMATION EXCHANGE? In NIEM, an information exchange is also known as an Information Exchange Package (IEP), a description of specific information exchanged between a sender and a receiver. The IEP is usually coupled with additional documentation, sample XML instances, business rules, and more to compose an Information Exchange Package Documentation (IEPD). Core Functions of an IEPD: 1. Developed to provide the business, functional, and technical details of the information exchange through predefined artifacts 2. Created with a core set of artifacts in a prescribed format and organizational structure to allow for consistency 3. Designed to be shared and reused in the development of new information exchanges through the publication in IEPD repositories NIEM 101 14

SCOPE OF IEPDS IEPDs DO Include the XML schemas that define the XML message

SCOPE OF IEPDS IEPDs DO Include the XML schemas that define the XML message structure Contain standardized artifacts that document an information exchange Have a defined development methodology (IEPD Lifecycle) Ease the documentation process for reuse Allow for the capture of business rules that define an exchange NIEM 101 IEPDs DO NOT Specify how exchange data is physically transferred between entities or systems Describe an interface or Interface Control Document (ICD) Specify any technical information outside of the message structure 15

THE IEPD LIFECYCLE Review background, assess resource impact, understand business context, and identify information

THE IEPD LIFECYCLE Review background, assess resource impact, understand business context, and identify information exchange business scenarios Selected information exchange scenario is further elaborated to understand document the business context and data requirements Create an exchange content model based on information exchange requirements. The Exchange Content Model is then mapped to NIEM. Create a set of exchange-specific NIEM conformant XML schemas that implement the exchange content model created for the exchange Prepare and package all related files for the IEPD into a single self‐contained, selfdocumented, portable archive file Publish the IEPD as well as implement the IEPD into production for search, discovery, and reuse NIEM 101 16

THE IEPD ARTIFACTS • Business Process Diagrams • Use Case Diagrams • Sequence Diagrams

THE IEPD ARTIFACTS • Business Process Diagrams • Use Case Diagrams • Sequence Diagrams • Business Rules • Business Requirements IEPDs contain both required and recommended artifacts • Exchange Content Model • Mapping Document Required: Bold and Blue • Subset Schema • Exchange Schema • Wantlist • • Constraint Schema Extension Schema Reference Schema XML Stylesheets • • Change Log Sample XML Instances Master Document Catalog No required artifacts. Publish the IEPD to a repository and implement the exchange NIEM 101 Note: Best practicesfor most organizations include many of the artifacts listed here. Please review the Model Package Description (MPD) Specification for more information. 17

SYSTEMS DEVELOPMENT LIFE CYCLE The Systems Development Life Cycle (SDLC) is a common methodology

SYSTEMS DEVELOPMENT LIFE CYCLE The Systems Development Life Cycle (SDLC) is a common methodology used for creating information systems. The IEPD Lifecycle aligns closely with the phases of the SDLC. Plan Develop high level scope and goals of intended system Requirements Analyze goals and break them down into exact requirements Design Transform requirements into detailed system capabilities Develop system per design specifications Implement Maintain NIEM 101 Test and deploy system Sustain system per future plan and eventually move to disposition 18

MAINTAIN AN EXCHANGE After the project is complete, the IEPD needs to be maintained

MAINTAIN AN EXCHANGE After the project is complete, the IEPD needs to be maintained throughout its existence. To sustain an IEPD: Ensure that any changes to an information exchange are correctly reflected within the IEPD. A governance process, if applicable, should be established to actively manage the changes identified for an IEPD Once changes are made to the IEPD, publish a new version of the IEPD within online repositories ! Choosing to not maintain an IEPD inhibits re-use within and outside the organization. Over time, the technical architecture of the information exchange is likely to change; update the IEPD to reflect these changes NIEM 101 19

IEPD REUSE AND SHARING Existing IEPDs, after publication, can be reused partially or fully,

IEPD REUSE AND SHARING Existing IEPDs, after publication, can be reused partially or fully, which can: • • Decrease IEPD development time Reduce development cost Increase Return on Investment (ROI) Increase consistency of data definitions IEPD REPOSITORIES, such as the IEPD Clearinghouse, can be leveraged to search and reuse existing IEPDs. NIEM. gov/ojpiepdclearinghouse NIEM 101 ARTIFACTS and ELEMENTS within IEPDs can be leveraged to facilitate development and ease the burden on resources. 20

EXAMPLE: REUSE OF AN EXCHANGE Commonwealth of Virginia Developed an Exchange Child Welfare Information

EXAMPLE: REUSE OF AN EXCHANGE Commonwealth of Virginia Developed an Exchange Child Welfare Information Exchange NIEM 101 • Element 2 • Element 3 • Element 4 • Element 5 x x x State of New Jersey Reused the Exchange Re-use Child Welfare Information Exchange x • x • Element 1 Element 3 Element 5 Data Specific to Child Welfare in NJ • Element 6 • Element 7 • Element 8 21

IEPDS AND NIEM ARCHITECTURE NIEM continues to grow and evolve with practitioners’ contributions New

IEPDS AND NIEM ARCHITECTURE NIEM continues to grow and evolve with practitioners’ contributions New NIEM Domains (plus associated components) NIEM 101 22

KNOWLEDGE CHECK True of False? 1. IEPD stands for Information Exchange Package Database. 2.

KNOWLEDGE CHECK True of False? 1. IEPD stands for Information Exchange Package Database. 2. IEPDs contain standardized artifacts that document an information exchange. 3. While NIEM Development Life Cycle does not include a maintenance phase after Publish and Implement, Maintenance of an IEPD is important. NIEM 101 23

Course Progress 40% complete NIEM IMPLEMENTATION NIEM 101: Technical Introduction to NIEM 24

Course Progress 40% complete NIEM IMPLEMENTATION NIEM 101: Technical Introduction to NIEM 24

IMPLEMENTING YOUR NIEM EXCHANGE NIEM Does: NIEM Does Not: Define XML instance document format

IMPLEMENTING YOUR NIEM EXCHANGE NIEM Does: NIEM Does Not: Define XML instance document format and structure. Define implementation specifications. Specify how a document is transmitted, but may employ encryption, Efficient XML Interchange (EXI), etc. NIEM 101 25

EXAMPLE: IMPLEMENTING NIEM There are many ways to implement NIEM conformant exchanges are implemented

EXAMPLE: IMPLEMENTING NIEM There are many ways to implement NIEM conformant exchanges are implemented based on business needs and vary as a result. Two common examples include: • • Message Queue: An organization can store NIEM conformant XML instances within a message queue during its response to a stakeholder’s information request service. Web Services: An organization can embed a NIEM conformant schema into a new or existing Web Service and perform an electronic transfer with one or more exchange partners potentially through a Service Oriented Architecture (SOA) based environment. NIEM 101 26

EXAMPLE: SOA IMPLEMENTATION Service Oriented Architecture (SOA) is an architectural style whose goal is

EXAMPLE: SOA IMPLEMENTATION Service Oriented Architecture (SOA) is an architectural style whose goal is to achieve loose coupling among interacting software agents. Standards-Based: NIEM 101 • NIEM provides the standard for data layer interoperability among services in SOA • NIEM can be used to standardize and structure the messages passed between services in SOA • NIEM can decrease development time of new services in SOA through reuse of similar IEPDs 27

CONSIDERATIONS FOR IMPLEMENTATION ARCHITECTURE CONSISTENCY DEVELOPMENT REUSE NIEM 101 Systems on either side of

CONSIDERATIONS FOR IMPLEMENTATION ARCHITECTURE CONSISTENCY DEVELOPMENT REUSE NIEM 101 Systems on either side of the exchange can use different implementation architectures (i. e. different programming languages, operating systems) All participants in an information exchange must agree on the definition and structure for the data in the exchange— NIEM provides this standardization IEPD Lifecycle should be used to guide development of NIEM conformant information exchanges to make sure all of the necessary artifacts are created Elements already defined within NIEM should be used whenever possible; exchange elements outside of or created to fill requirements not covered in NIEM should also be reused whenever possible 28

SECURITY AND PRIVACY Security and privacy should always be key considerations when implementing an

SECURITY AND PRIVACY Security and privacy should always be key considerations when implementing an exchange. NIEM allows you to tag data with security and privacy, however, other technologies are required upon exchange implementation to enforce security and privacy rules. NIEM allows the use of metadata to describe specific requirements in regard to information security and the handling of sensitive privacy-protected information. • Including this metadata allows systems that implement NIEM to automatically enforce rules that govern the use, protection, dissemination, and access controls for data being shared. • This has been put to use in the Intelligence community, which established the Intelligence Community Information Security Marking (IC-ISM) as a standard for classified information. • NIEM 3. 0 provides support for existing versions of IC-ISM metadata attributes NIEM does not dictate how agencies handle privacy issues. Consult with your organization’s privacy standards. NIEM 101 29

KNOWLEDGE CHECK True of False? NIEM does not define implementation specifications or specify how

KNOWLEDGE CHECK True of False? NIEM does not define implementation specifications or specify how an exchange is transmitted. NIEM 101 30

Course Progress 60% complete NIEM-UML NIEM 101: Technical Introduction to NIEM 31

Course Progress 60% complete NIEM-UML NIEM 101: Technical Introduction to NIEM 31

WHAT IS THE NIEM-UML PROFILE? NIEM-UML Profile: An extension of a subset of Unified

WHAT IS THE NIEM-UML PROFILE? NIEM-UML Profile: An extension of a subset of Unified Modeling Language (UML) that is specific to NIEM. • • NIEM-UML generates 100% NIEM conformant information exchanges. This means that architects and developers who build NIEM exchanges don’t need to worry as much about the technology details, as outlined in the NIEM Naming and Design Rules (NDR), and the Model Package Description (MPD) Specification. If you already use and understand UML, the typical learning curve that comes with NIEM development is greatly reduced. UML provides a visual representation of an exchange that would be understandable to both technical and non-technical resources such as business stakeholders. NIEM-UML’s use is dependent on tools that implement the profile. NIEM 101 32

USING NIEM-UML TO MODEL INFORMATION EXCHANGES Using the NIEM-UML profile with UML modeling tools,

USING NIEM-UML TO MODEL INFORMATION EXCHANGES Using the NIEM-UML profile with UML modeling tools, Developers can combine their own unique needs with the NIEM reference vocabularies to design information exchange models that will produce NIEM information exchange packages that power XML “on the wire” technologies. XML data “on the wire” NIEM 101 33

USING NIEM-UML TO DEFINE NEW DOMAINS NIEM-UML can also help users manage NIEM domain

USING NIEM-UML TO DEFINE NEW DOMAINS NIEM-UML can also help users manage NIEM domain data model content. Domains created with NIEM-UML will have both a UML and XML schema representation. Design & Model Domain Vocabularies NIEM 101 34

KNOWLEDGE CHECK True of False? 1. NIEM-UML generates NIEM conformant information exchanges. 2. NIEM-UML

KNOWLEDGE CHECK True of False? 1. NIEM-UML generates NIEM conformant information exchanges. 2. NIEM-UML can be used for both exchange development and for domain data model management. NIEM 101 35

Course Progress 80% complete CONCLUSION NIEM 101: Technical Introduction to NIEM 36

Course Progress 80% complete CONCLUSION NIEM 101: Technical Introduction to NIEM 36

LEARNING RECAP This course should now provide you with a better understanding of NIEM’s

LEARNING RECAP This course should now provide you with a better understanding of NIEM’s technical architecture, exchange scope, and implementation. You should now be able to: • Identify NIEM data components and how they work • Identify a NIEM Information Exchange Package Documentation (also known as an IEPD) • Understand the scope of NIEM and its relation to implementation • Understand NIEM-UML in the context of modeling exchanges and defining domains NIEM 101 37

ADDITIONAL NIEM RESOURCES For technical documentation: NIEM. gov/reference For all things NIEM: NIEM. gov

ADDITIONAL NIEM RESOURCES For technical documentation: NIEM. gov/reference For all things NIEM: NIEM. gov DOCUMENTATION AND STANDARDS For available resources that provide support and assistance: TRAINING & TECHNICAL ASSISTANCE NIEM Training: NIEM Webinars: NIEM Helpdesk: NIEM. gov/training NIEM. gov/webinars NIEM. gov/contactus Available Tools for developers: Visit the NIEM Tools Catalog today! NIEM. gov/tools TOOLS NIEM 101 38

NEXT STEPS Start your action plan and schedule your resources for NIEM training! NIEM

NEXT STEPS Start your action plan and schedule your resources for NIEM training! NIEM 100 NIEM 101 NIEM 200 NIEM 301 NIEM 302 NIEM 303 Executive Managers Program and Project Managers Architects Developers = Required NIEM 101 = Optional depending on role 39

Course Progress 100% complete END OF COURSE NIEM 101: Technical Introduction to NIEM 40

Course Progress 100% complete END OF COURSE NIEM 101: Technical Introduction to NIEM 40