OCUP 2 - Intermediate

OMG Certified UML Professional 2™ (OCUP 2™): Intermediate Level

Coverage Map and References

Note that this is the Coverage Map for the updated OCUP 2 Intermediate exam which published on 12 September 2016. This Exam Consists Of All New Material. Study From This Coverage Map; Do NOT Study From Material Written For The Original OCUP Intermediate Exam, Which Is No Longer Available. 

If you took the original OCUP Intermediate exam since early 2014 when the OCUP 2 Program started, you can fill out this form and receive a voucher to take the new exam for free during its first year - that is, during the period ending on 30 September 2017. The original exam is no longer available for testing. 

ABOUT THE OCUP 2 INTERMEDIATE LEVEL: The OCUP 2 Certification Program tests your knowledge and skill in the use of the UML® language to interpret and construct models of software systems. The language elements and attributes identified in this Intermediate Level Coverage Map combine with those you studied at Foundation level to form a richer and more complete palette for representing Intermediate-level software structure and behavior. The OCUP 2 Intermediate examination then tests your knowledge and skill in the use of this expanded palette.

The OCUP 2 Intermediate Level exam is available from Pearson VUE NOW.


Examination Number: OMG-OCUP2-INT200
Duration: 105 minutes for residents of English-speaking countries; 135 minutes for all others
Exam Fee: US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others.
Minimum Passing Score: 51 items correct out of 90
Prerequisite: OCUP 2 Foundation level certification

This page starts with the Coverage Map for the OCUP 2 Intermediate Level Examination in several forms - First, a concise listing of the topics and subtopics covered, and the percentage of the exam that each occupies; next, a more detailed description tied to the UML 2.5 specification document. Following this is a section containing guidance and suggestions for study, and finally the list of references including a link to download (for free) the UML 2.5 specification. 

Do not assume that, because we are using the UML 2.5 specification as a reference to delineate the coverage, you can study exclusively from the spec document and be prepared for the exam because you can not. The OCUP 2 program is designed to test a candidate's knowledge and skill in the use of UML in modeling, and goes far beyond these definitions. To prepare fully, you must learn to use the language elements listed here in practice, whether by cross-referencing them to a modeling textbook, or taking a preparatory course, or using another source. 

Unlike the Foundation exam, the Intermediate and Advanced exams are not organized by diagram type: As a candidate at this level, you already know that the language itself is not organized in this way, as many model elements may appear on more than one diagram type, and a structural diagram - rather than be typed specifically - may take its type from the preponderance of elements that appear on it. 


Basic Structure
Namespaces; Types & Multiplicity; Constraints; Dependencies; Time; Intervals; Packages; Information Flows
Classifiers; Properties; Operations; Generalization Sets; Instances
Structured Classifiers
Structured Classifiers; Classes; Associations; Collaborations
Encapsulated Classifiers; Components; Deployments; Artifacts; Nodes
Common Behavior
Signals; Receptions; Behaviors; Events
Activities and Actions
Activities; Control Nodes; Object Nodes; Activity Groups; Actions; Invocation Actions; Structured Actions; Expansion Regions
Interactions; Lifelines; Messages; Fragments; Interaction Uses; Sequence Diagrams; Communication Diagrams
State Machines and Use Cases
Statemachine topics; Protocol Statemachines; Interfaces; Use Cases
TOTAL 100%


As we just pointed out, the Intermediate and Advanced OCUP 2 coverage maps are not organized by Diagram type - The UML 2 specification does not assign elements and features to diagrams precisely enough for this. Instead, we have organized these coverage maps around the spec itself even though this comes at a price: Candidates may mistakenly assume that they will be tested on language details and aspects, rather than functionality and usage. Our experts resisted this temptation when they wrote these exams and kept their focus on modeling; and you must do the same as you study: As you consider each UML element, think about what it could represent in a model and how it could be used. Look up the element in a modeling textbook (one recommended on our References page, perhaps, or another already on your bookshelf) and examine how the authors use and exercise it in their modeling. You should still be aware of the way it fits into the language structure, especially if that helps you remember and keep track of the element's characteristics and attributes, but do not concentrate on these aspects. This exam was written to test your UML knowledge and skills in the context of modeling

So, this coverage map lists the additional primary expository sections and first-level subsections or, in some cases, individual UML elements or attributes, of the UML 2.5 specification that, combined with the material covered at Foundation level, constitute the total of material covered on this Intermediate exam. Related material contained in the specification's Notation and Examples sections is included automatically in our coverage by association (as it was at Fundamental level) even though these sections are not listed explicitly. IMPORTANT: Information about an individual language element, attribute, or topic may be spread throughout the UML specification document, appearing in multiple sections or subsections. Even though we only mention or include an element or item once in this map, all of the information in the UML specification document about it is in scope for this exam and it is up to you to identify the various scattered mentions and form a thorough understanding about how that element contributes to your model. This principle (of only mentioning items once in this map) applies to exclusions as well.

IMPORTANT: See this paragraph (below) about Study Guides

Coverage of UML includes these Elements:

Chapter 6: General Topics
Backus-Naur Form (BNF)
  • This and the OCUP 2 Advanced exam use BNF where appropriate to specify textual notation, similar to the way it is used in the UML specification itself. BNF is defined in Ch. 6 of the UML 2.5 Specification (identically in the beta and formal versions). Also in Ch. 6 is a (very!) brief description of execution scope, a term that will be used later in several contexts.

Abstract Syntax

  • Every first-level subsection of the UML specification starts with a UML diagram labeled Abstract Syntax. The OCUP 2 exams do not ask about these diagrams explicitly, but they are good examples of the language you're studying(!) and represent the relationships linking the elements to be presented in the sections that follow in a particularly clear and concise way. Learn to read them - this will provide an advantage to your study.
Chapter 7: Common Structure
  • 7.3 Templates - 
    • Templates are Excluded from Foundation and Intermediate levels; Templates and the many elements that support them will be covered at Advanced level. This exclusion encompasses elements and attributes defined for Templates here and later on (String Expressions and Name Expressions, e.g.; most have "Template" somewhere in their names). There are many of these scattered throughout the specification but we will not point out on the Foundation and Intermediate Coverage Maps, for each one, that it is excluded. This exclusion applies even within subsections denoted "All" in this coverage list. 
  • 7.4 Namespaces - Add
    • ownedRule constraints, nested nameSpaces, circle-plus notation, ElementImport 
  • 7.5 Types and Multiplicity - Add
    • Cardinality, isOrdered, isUnique, multiplicity string 
  • 7.6 Constraints - Add: Owner 
    • In the exam, constraints will be expressed in simple OCL, possibly using Boolean expressions. Candidates should be able to read and understand these.  
  • 7.7 Dependencies - Add
    • Usage, Abstraction
Chapter 8: Values
  • 8.4 Time - All
  • 8.5 Intervals - All
Chapter 12: Packages
  • 12.2 Packages 
    • 12.2.3 Semantics
      • Package: Add specifying the URI 
      • Model: All
Chapter 20: Information Flows
  • 20.1 InformationFlows: Basic definition, uses, and notation
Chapter 9: Classification
  • 9.2 Classifiers 
    • 9.2.3 Semantics 
      • Classifiers: Add Redefinition Except redefinitionContext 
  • 9.2.4 Notation: NOTE: UML allows a conforming tool to suppress the drawing of individual compartments or features of a classifier. Scenarios in the Intermediate and Advanced examinations may use this ability. 
  • 9.5 Properties 
    • 9.5.3 Semantics 
      • Add Properties as memberEnds of Associations, and the semantics of the defaultValue, properties isStatic and isDerived . 
  • 9.6 Operations
    • 9.6.3 Semantics 
      • Add Constraints (preconditions, postconditions, bodyCondition) 
  • 9.7 Generalization Sets - All Except powertypes 
  • 9.8 Instances 
    • 9.8.3 Semantics 
      • Add InstanceSpecification partially representing the instance it corresponds to, classification of the instance by zero or more than one Classifier, type restrictions on a defining ValueSpecification, and snapshots
Chapter 10: Simple Classifiers
  • 10.3.3 Semantics 
    • Signals - All 
    • Receptions - All 
  • 10.4 Interfaces - Add ownership of a ProtocolStateMachine
Chapter 11: Structured Classifiers
  • 11.1 Summary - All 
  • 11.2 Structured Classifiers 
    • 11.2.1 Summary. Note that, because StructuredClassifier is abstract, covered aspects will be tested in the context of derived concrete metaclasses. 
    • 11.2.3 Semantics 
      • ConnectableElement: All 
      • Parts and Roles - All 
      • Connectors - All Except contracts 
      • Multiplicities and topologies - All except n-ary Connectors 
  • 11.3 Encapsulated Classifiers 
    • 11.3.3 Semantics 
      • Ports - All 
  • 11.4 Classes 
    • 11.4.3 Semantics 
      • Classes: Add detailed aspects of attributes, namespaces, isActive 
  • 11.5 Associations 
    • 11.5.1 Summary: Add AssociationClass 
    • 11.5.3 Semantics 
      • Associations: Add navigableOwnedEnd. NOTE that the dot notation signifying ownership of an association end by an associated Classifier, new in UML 2.5, will be covered. See this White Paper for details
      • AssociationClass: All Except Class:ownedAttribute and Association:ownedEnd 
  • 11.6 Components 
    • 11.6.1 Summary: All Except modeling Components through the development life cycle (which is methodology-dependent and so not covered in OCUP 2) and profiles (covered in Advanced) 
    • 11.6.3 Semantics " Components: All Except details about wiring dependency, details of the "white-box" view (although candidates should be aware of the white-box view), execution time semantics of a Connector, and «Specification» and «Realization» stereotypes 
  • 11.7 Collaborations 
    • All Except specializing collaborations, roleBindings, Connector details, representation
Chapter 19: Deployments
  • 19.1 Summary: All Except extending the package 
  • 19.2 Deployments 
    • 19.2.1 Summary: All 
    • 19.2.3 Semantics: All Except extending in profiles, Property and InstanceSpecification as targets 
  • 19.3 Artifacts 
    • 19.3.1 Summary: All 
    • 19.3.3 Semantics: Basic definition. Excludes organizing into composition hierarchies, extending especially as profiles (which will be tested at Advanced level) 
  • 19.4 Nodes 
    • 19.4.1 Summary: All 
    • 19.4.3 Semantics: All
Chapter 13: Common Behavior
  • 13.1 Summary: All 
  • 13.2 Behaviors 
    • 13.2.3 Semantics: 
      • Behaviors: Add Behavior as a class 
      • Behavior Parameters: Add defaultValue, streaming (complete at this level) 
      • Opaque and Function Behaviors: Includes OpaqueBehavior (only) 
      • Behaviored Classifiers: All except the distinction between ownership as a nested classifier compared to ownedBehavior, and precise semantics of classifierBehavior 
      • Behavioral Features and Methods: Add method, context, parameters 
  • 13.3 Events 
    • 13.3.1 Summary: All 
    • 13.3.3 Semantics 
      • Event Dispatching: Includes Event and Trigger. Excludes SignalBroadcastAction, event pool 
      • Message Events: All except SignalBroadcastAction. 
      • Change Events: All 
      • Time Events: All
Chapter 14: StateMachines
  • StateMachine coverage at Intermediate level: 
    • Add specification of a method of a behavioredClassifier (that is, an Operation or Reception corresponding to a BeharioralFeature); regions; vertices; submachine State; history (deep or shallow); deferred events; the pseudostates join, fork, entrypoint, exitpoint, and terminate; transition kind=local; high-level (group) transitions; conflicting transitions; firing priorities; transition selection and execution sequence. 
    • Also Add ProtocolStateMachine, Except Declarative and Executable interpretation, multiple ProtocolStateMachines per Classifier, and Protocol Conformance. 
    • NOTE: Unexpected trigger reception and Unexpected behavior will not be covered in OCUP 2.
Chapter 15: Activities
  • 15.2 Activities 
    • 15.2.3 Semantics: 
      • Activities: Add the null token, token movement details resulting from offer and acceptance, named edges, Activies as classes. 
      • Activity Nodes: Add concurrent execution, one token offered to multiple targets 
      • Activity Edges: Add token ordering 
      • Object Flows: Add null token. 
      • Activity Execution: Add Parameters, behavior at first invocation. 
    • 15.2.4 Notation: Add eliding pins, connectors, class notation 
  • 15.3 Control Nodes 
    • 15.3.3 Semantics 
      • Initial Node: Add additional concurrent flows and CentralBufferNodes 
      • Final Nodes: Add isSingleExecution 
      • Fork Nodes: Add handling of unaccepted token offers 
      • Join Nodes: Add joinSpec and isCombinedDuplicate 
      • Decision Nodes: Add decisionInputFlow and the primary incoming edge. Exclude decisionInput behavior and guards on multiple outgoing edges. 
    • 15.3.4 Notation 
      • Combined MergeNode and DecisionNode 
  • 15.4 Object Nodes 
    • 15.4.1 Summary: Add CentralBufferNodes and DataStoreNodes 
    • 15.4.3 Semantics: 
      • Object Nodes: Add Multiple object tokens with the same value, ObjectNode's type, instate 
      • CentralBufferNodes: All 
      • DataStoreNodes: All Except selection, transformation 
  • 15.6 Activity Groups 
    • 15.6.3 Semantics 
      • Activity Partitions: All Except the descriptive text about preparation of descriptive models for review 
      • Interruptible Activity Regions: All Except isSingleExecution
Chapter 16: Actions
  • 16.1 Summary: Add Actions as Interactions, and as contained in Behaviors. 
  • 16.2 Actions: 
    • 16.2.3 Semantics 
      • Actions: Add context BehavioredClassifier, StructuredActivityNodes, streaming, multiple instances, and effects of violations of localPrecondition and localPostcondition. 
      • Opaque Actions: Add interpretation of body strings 
      • Pins: Add multiplicity requirements on output pins for termination, ValuePins and ActionInputPins do not enable Action execution count, ValuePin, ActionInputPin, but ExcludefromActions. 
      • Actions and Pins in Activities: Includes basic semantics of Actions and Activities, input token requirements for execution and output requirements on completion, Except for disallowing of acceptance of more tokens than will be consumed by one execution of an Action, isLocallyReentrant, isControl, isControlType. 
  • 16.3 Invocation Actions 
    • 16.3.3 Semantics 
      • Call Actions: Add synchronous or asynchronous invocation behavior, passing and returning values, streaming 
  • 16.5 - 16.9: Material in these sections is not covered in OCUP 2. 
  • 16.10 Accept Event Actions 
    • 16.10.3 Semantics 
      • UnmarshallAction will not be tested in OCUP 2
  • 16.11 Structured Actions 
    • 16.11.1 Summary: Basic definitions, Excluding ConditionalNodes, LoopNodes, and SequenceNodes which will not be tested in OCUP 2 
    • 16.11.3 Semantics 
      • Structured Activity Nodes: All Except Variables, semantics of activity edge when contained or not contained by a StructuredActivityNode. 
  • 16.12 Expansion Regions 
    • 16.12.1 Summary: All (the basic definition) 
    • 16.12.3 Semantics: All Except Execution Engine defining collection types 
Chapter 17: Interactions
  • 17.1 Summary 
    • 17.1.2 Basic Trace Model: Add Interaction equivalence. Disallowed or invalid traces will be tested at Advanced level only. Some incidental references to invalid traces may be included in sections specified here; nevertheless, this concept will be tested at Advanced level only. 
    • 17.1.3 Partial ordering constraints on valid traces: Add coregion or parallel operator effect 
    • 17.1.4 Interaction Diagram Variants: The Sequence Diagram was tested at Foundation level. The Communication Diagram is tested at Intermediate level. The Interaction Overview Diagram will be tested at Advanced level. Neither the Timing Diagram nor Interaction Tables will be tested in OCUP 2. 
  • 17.2 Interactions 
    • 17.2.3 Semantics 
      • Interactions: Add the use of a formal Gate 
      • Interaction Fragments: All 
      • State Invariants: All 
  • 17.3 Lifelines 
    • 17.3.3 Semantics 
      • Lifelines: Add parallel combined fragment 
  • 17.4 Messages 
    • 17.4.3 Semantics 
      • Messages: Add semantics as defined, lost and found messages, message arguments Exceptwildcard 
      • Gates: Add all content not already covered at Foundation level 
  • 17.6 Fragments 
    • 17.6.3 Semantics 
      • Include Interaction Operands, Interaction Constraints, Combined Fragments, Interaction Operator Kind Values, Alternatives, Option, Break, Strict Sequencing, and Loop 
  • 17.7 Interaction Uses 
    • 17.7.3 Semantics 
      • Include Interaction Uses, Part Decompositions. NOTE: In Notation, <collaboration-use>, strict, and return value will be tested at Advanced level. 
  • 17.8 Sequence Diagrams 
    • 17.8.1: Sequence Diagram Notation 
      • Graphic Nodes: Add InteractionUse, CombinedFragment, StateInvariant, DurationConstraint DurationObservation, TimeConstraint TimeObservation
      • Graphic Paths: Add LostMessage, FoundMessage 
  • 17.9 Communication Diagrams 
    • Introduction: All 
    • 17.9.1: Communication Diagram Notation 
      • NOTE that Frame, Lifeline, and Message were introduced at Foundation, and refer to the same definitions as for Sequence Diagrams except that Message refers also to 17.9.1 Sequence Expression, next: 
      • Sequence Expression: All Except concurrent execution
Chapter 18: Use Cases
  • 18.1 UseCases 
    • 18.1.3 Semantics 
      • Use Cases and Actors: Add description through a Collaboration; being owned by a Classifier.



Since the release in 2003 of UML 2.0 with its collection of new features and improvements, the history of the language has reflected more evolution than revolution. Even version 2.5, the stimulus for the upgrade of our certification program to OCUP 2, makes minimal changes to your models compared to its predecessor versions 2.4 and 2.4.1 in spite of the major changes it makes to the underlying structure of the specification - such as the merging of the superstructure and infrastructure into a single document! (In fact, the authors of the 2.5 revision were required to minimize model-level changes as they simplified UML's underlying metamodel.) 

This means that you can study for the OCUP 2 examinations from older books about UML 2. (This is fortunate because the recent evolution of UML has lacked the high-level spec changes that would otherwise inspire authors to produce a new generation of books.)  We've listed two below (the Nutshell and Dummies books) that we believe reflect particularly high quality, but you should do well on the exam if you study from almost any book that covers the diagrams and elements listed on this page. Remember, when you select a book or reference for study, that the OCUP 2 examinations will ask you to interpret and and "construct" (by choosing the correct diagram from a set of options) UML diagrams, unlike the original OCUP program which restricted itself to definitions from the specification.

  • UML 2.0 in a Nutshell
    Dan Pilone, Neil Pitman - O'Reilly Media, 2005 [ISBN 978-0-596-00795-9]

  • UML 2 for Dummies
    Michael J Chonoles, James A. Schardt - Wiley, 2003 [ISBN 978-0-7645-2614-5]

Can I study for the OCUP 2 Intermediate exam using the Certification Guide written for the original OCUP Fundamental and Intermediate exams?  In a word, No. The two programs are very different - while the original OCUP restricted itself to UML syntax and semantics (including the UML metamodel), the OCUP 2 Intermediate exam tests UML usage in the context of modeling and this aspect is not presented in the study guide. Study from one of the books just mentioned or another good book about UML modeling, and explore the ways you can control the listed UML elements in your modeling tool. Learn how to use, or recognize and interpret, these elements in larger diagrams and how they can relate to each other. We based the new examination on these aspects of UML because they are the ones that you will use in your career as either a model builder or a model user. If you concentrate on the material presented in the original OCUP Certification Guide, you will be unprepared for the new OCUP 2 exam. 

OMG Specification (Downloadable Free): 
  • Unified Modeling Language (UML), V2.5
    The Coverage Map presented on this page is keyed to the UML 2.5 specification downloadable free from the OMG specification library. Use it to identify the UML elements and attributes covered on the exam from the citations on this page, but do not think that this is all you need to know about them - The real value of UML lies in the models that you construct or read using the language, and the way they present the structure and behavior of the modeled system. This is the aspect of UML modeling that the OCUP 2 exams will test, and it is not presented in the specification. So, use this document as a starting point but move on quickly to study the way the cited elements and attributes work together in modeling by looking them up in one of the books cited above, or a similar text already on your bookshelf. This is the path to success in your career, and in OCUP 2 certification!  

Papers (Downloadable Free):
  • J.D. Baker, Model Organization with Packages and the Package DiagramWhite Paper, May 2013. 

  • Filip Stachecki, Concurrency in UML, White Paper, March 2014. Concurrency is a complex concept, and may be represented in most UML behavioral diagrams. This paper doesn't attempt to explain what Concurrency is - you'll have to learn that from books or courses - but it does point out the UML elements used to present concurrency in Activity diagrams (tested at Foundation level), and Sequence and State Machine diagrams (tested at this Intermediate level). 

  • Bran Selic, Getting It Right on the Dot, White Paper, April 2013. Use and significance of the black dot notation on UML associations. 

For more information or questions about the OMG Certification Program, contact  certificationinfo@omg.org.

OCUP, OCRES, OCEB and OCSMP are joint programs of the OMG and the UML Technology Institute (UTI).