COM and OLE Diagram

OLE is an acronym for Object Linking and Embedding which is known to be simply a proprietary technology that was developed by “Microsoft Corporation” allowing both linking and embedding to all documents as well as many other objects, which are known to be implemented on top of the so called “Component Object Model” as well as OLE containers.

The mentioned objects can always implement the interfaces to export their functionality. There’s only interface that is compulsory — the “OleObject” one, when all other interfaces may also need to be implemented in case the functionality exported by such interfaces is required at all.

Some of the terminology may have to be explained for the purpose of easing the understanding of what follows. The “view status” of any object means the status clarifying if this object is transparent or opaque. It also may help to represent if it supports any drawing with a definite aspect. The site of an object is a representing an object the location of the object in its container that supports a site object for every single object that is contained.

“DataObject” is known to be one of the main objects within the Object Linking and Embedding processes. After its implementation, it enables data’s transfer as well as notifies about any changes made in data. DataObject must be implemented by those objects that are there to support the “drag-and-drop”, that are pasted from or copied to the clipboard. The last mentioned objects are known to be embedded or linked in a containing document, while another object named the “ObjectWithSite” allows the caller to inform the “OLE object” of its site. The very same functionality can be also provided by another object — “OleObject”.

“OleCache” object allows different visual presentations from a so called “DataObject” to be cached, allowing an embedded object for store its representation, the visual one. It can be done by enabling it to be displayed without needing of starting the application which was previously used for creating the object. At the same time a later version of previously mentioned object — OleCache2 — provides more fine-grained control over the process of caching.

“OleCacheControl” is an interface not called by the container, but by the object for allowing it to receive the needed notifications of when its other object — a “DataObject” one is running, allowing it to subscribe to the different notifications of the data changes of that object. In the described way it allows to update the cached presentation in a proper way.

The “OleDocument” object allows the Object Linking and Embedding object to support many different views of its data and a few related functions, while an “OleDocumentView” is a document object implementing this interface for every view and so allowing the caller to set the site of the query, object as well as to set the size of that particular object, showing and activating it and some of the related functions. “OleInPlaceActiveObject” was called by the outermost container of an object for interacting with it while it's active. For example, there’s a need of processing the so called “accelerator keys” in the container's message queue which are meant for the contained object.

Another object used within the Object Linking and Embedding processes is a windowless one named as a “IOleInPlaceObjectWindowless” one. It is an object which does not have its own window. Instead, it is displayed in its own container's window, being used by the container for relaying all the messages received by the “container's window”. All the mentioned messages are known to be intended for the contained object. “OleLink” allows any object to support the linking and “OleObject” is arguably the most important interface for any other object within the Object Linking and Embedding activities.

At the same time, another сonstituent of the Object Linking and Embedding process is a “ViewObject”. It allows any object to draw itself directly. Thus, there’s no more need left to passs a “DataObject” to the container. For all the objects supporting both DataObject and DataObject interface, the underlying implementation is known to be usually shared. “ViewObject2” allows the caller to query the size of the object and “ViewObjectEx” adds the needed support for any flicker-free drawing of the transparent objects.

There are many other objects which are used within the processes of Object Linking and Embedding and those who know enough to be able to create their own Object Linking and Embedding diagram must know all of them, although to be able to make such diagram quick and so to spend your time more efficiently, you can always use simply a professional software that was developed especially for such purposes — to make it much simpler to create any needed diagram, including the OLE one. This software is a ConceptDraw PRO diagramming and drawing one available for being downloaded from this site as well as another application as an extension to the mentioned one — ConceptDraw STORE. Getting ConceptDraw STORE means ensuring yourself in making it possible to draw any OLE diagram within only a few hours or even minutes, depending how good (familiar) you are with the mentioned tools already.

You can also, apart from making any OLE diagram, create a COM one using the solution from ConceptDraw STORE named as a “Software Engineering” one. Having all fifteen design symbols of both the COM and the OLE objects from the mentioned solution will enable you to create any needed Object Linking and Embedding diagram as well as any needed COM diagram, including the conceptual diagram of COM aggregation presented on this page as an example of what it is possible to make in ConceptDraw PRO diagramming software.

Command  OLE Aggregation Diagram  (COM OLE)

Example 1. Command OLE Aggregation Diagram (COM OLE)

The example above shows a conceptual diagram of COM aggregation. "The outer object exports an interface of the inner object called IInner, and an interface of its own, called IOuter, but it doesn't export IPrivate. The little interfaces on the top right of the objects represent the IUnknown interfaces of the objects. Since calling IUnknown methods on any interface of the inner object returns either an interface of the outer object, or an interface whose IUnknown methods call the IUnknown methods of the outer object, the outer object is the only object that has access to the IUnknown interface of the inner object."
[Unified Modeling Language. Wikimedia.Commons]











TEN RELATED HOW TO's:

Booch OOD Diagram

The vector stencils library Booch OOD from the solution Software Engineering contains specific symbols of the Booch method such as class symbols, association symbols, aggregation symbols for ConceptDraw PRO diagramming and vector drawing software. The Software Engineering solution is contained in the Software Development area of ConceptDraw Solution Park.Booch OOD Diagram
Picture: Booch OOD Diagram

Architecture Diagrams

The Architecture Diagrams are the type of diagrams which help to system designers, system developers, and application developers to visualize the overall high-level structure of the system or application and depict the interactions between software systems, users, external systems, data sources, and services. The ConceptDraw PRO Architecture Diagrams Software provides the unique Cloud Computing Diagrams solution from the Computers and Network area of ConceptDraw Solution Park with wide set of powerful tools for fast and easy creating various types of Architecture diagrams.Architecture Diagrams
Picture: Architecture Diagrams
Related Solution:

Martin ERD Diagram

The vector stencils library Crow's Foot Notation from the solution Entity-Relationship Diagrams (ERD) contains specific symbols of the Crow's foot notation such as relationship symbols and entity symbols for ConceptDraw PRO diagramming and vector drawing software. The Entity-Relationship Diagrams (ERD) solution is contained in the Software Development area of ConceptDraw Solution Park.Martin ERD Diagram - Sales
Picture: Martin ERD Diagram
Related Solution:

Software Diagram Examples and Templates

ConceptDraw Pro is a powerful tool for business and technical diagramming. Software Development area of ConceptDraw Solution Park provides 5 solutions: Data Flow Diagrams, Entity-Relationship Diagram (ERD), Graphic User Interface, IDEFO Diagrams, Rapid UML.UML Class Diagrams
Picture: Software Diagram Examples and Templates
Related Solution:

Structured Systems Analysis and Design Method (SSADM) with ConceptDraw PRO

A waterfall model describes software development process as a sequence of phases that flow downwards. SSADM is one of the implementations of waterfall method. It’s easier to learn about structured systems analysis and design method (SSADM) with ConceptDraw PRO because this software has appropriate tools for creating data flow diagrams. You can use all the three main techniques of SSADM method with special tools and predesigned templates. This data flow diagram illustrates the Structured Systems Analysis and Design Method. This method method considers analysis, projecting and documenting of information systems. Data flow models are the most important elements of SSADM and data flow diagrams are usually used for their description. It includes the analysis and description of a system as well as visualization of possible issues.Payment Data Flow Diagram Example
Picture: Structured Systems Analysis and Design Method (SSADM) with ConceptDraw PRO
Related Solution:

SSADM Diagram

The vector stencils library SSADM from the solution Systems engineering contains specific symbols of SSADM diagrams for ConceptDraw PRO diagramming and vector drawing software. The Systems engineering solution is contained in Software Development area of ConceptDraw Solution Park. The example below illustrates the waterfall model used in SSADM. This model involves 5 stages of developing a product such as requirements specification and its' analysis, design, coding and testing.SSADM systems development lifecycle
Picture: SSADM Diagram

Influence Diagram Software

Influence diagram (ID) is a graphical and mathematical representation of the decision. Influence diagrams are widely used in the decision analysis and in the game theory. They are the alternative to the decision tree. The influence diagram gives to analyst the high-level conceptual view that it can use to build the detailed quantitative model. This sample shows the Influence diagram. It is a directed acyclic graph with three types of nodes: Decision node is drawn as a rectangle, Uncertainty node is drawn as an oval, Value node is drawn as an octagon. The nodes are connected with arcs.Influence Diagram Software
Picture: Influence Diagram Software
Related Solution:

Microsoft Azure

Microsoft Azure is widely used cloud platform which was created by Microsoft and now is managed by Microsoft datacenters in 19 regions of the world, and has a wide set of benefits and features. ConceptDraw PRO diagramming and vector drawing software extended with Azure Architecture Solution from the Computer and Networks area of ConceptDraw Solution Park is the best for designing various pictorial infographics, illustrations and materials showing the possibilities and work of Microsoft Azure Cloud System and Azure services.Microsoft Azure
Picture: Microsoft Azure
Related Solution:

Entity Relationship Diagram Symbols

When we start to speak about databases, we must always mention database structure visualization. One of the most common ways to do it is to create an entity relationship diagram, and to put appropriate symbols on it. It is important either for database projecting and for its' future maintenance. Entity Relationship Diagram describes data elements and their relationships within a database. There are a set of special symbols that depict each element of an entity relationship diagram. Entities - represents some stable components such as supplier, employee, invoice, client, etc. Relation symbols show how the entities interact. Attributes define characteristics of the relationships. Attributes can be one-to-one or many-to-many. Physical symbols is used in the physical models. They represent items such as fields, tables, types and keys. ERD physical symbols are the building material for the database. Notation lines are used to illustrate the relationships. The most common method is Crow’s Feet notation. You can use ConceptDraw Entity-Relationship Diagram (ERD) solution to represent a database using the Entity-Relationship model.Entity Relationship Diagram Symbols
Picture: Entity Relationship Diagram Symbols
Related Solution:

Software Diagrams

IT world is extremely rational and logical. So what can be more precise than Software Diagrams to rate the results of work? Visual statistics is the best way to understand the data. This figure demonstrates the data flow diagram (DFD), which was created to describe the electronic system of custom purchase. This is the process of buying using electronic bar code scanning system. Such systems are used in large stores. The cashier scans the bar code, the system outputs the data on the price of the goods and carries out a purchase process. This DFD utilizes the Gane/Sarson notation. To create it The ConceptDraw DFD solution has been applied.Data Flow Diagram
Picture: Software Diagrams
1 Diagram Software
Professional business graphics tool for drawing schemes, diagrams and illustrating business documentation
1 Mind Map Software
Excellent tool for Mind Mapping, Planning, Brainstorming, and Building Processes
1 Project Management Software
The full complement of features needed to successfully plan and execute projects, including task and resource management, reporting, and change control