Industrial Experience with the Dassault Système Component

January 6, 2018 | Author: Anonymous | Category: Business, Management, Business Information Systems
Share Embed Donate


Short Description

Download Industrial Experience with the Dassault Système Component...

Description

Chapter 19 Industrial Experience with Dassault Système Component Model

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 1

Overview  Introduction  The OM Component Model  Discussion  Lessons Learned

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 2

Introduction  CATIA 

Dassault Systèmes main software product



5 millions lines of code



19 000 clients



180 000 work places



50000 C++ classes



8000 components



Object Modeller: Own component model

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 3

Dassault Systèmes  The DS objective was not primarily: 

To sell isolated OM components.



To sell the OM component framework.



To make their component model a standard.

 The primary objective was: 

To find a way to develop its software under the best conditions, and to provide to its customers with powerful adaptability facilities.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 4

The OM Component Model  The OM is quite similar to COM.  Interfaces: a set of method signatures 

Component may support more than one interface.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 5

External view of OM components

Interfaces

OM components Other software entities Dependencies

(a) External view of an OM component

(b) Heterogeneous application

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 6

Using OM Components to Build Applications  In practice, there is no boundary between traditional development and component-based development. 

DS applications are hybrids.



There is a Lack of support for explicit connections and assembly facilities.



DS does not aim to sell components, but extensible applications.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 7

Component implementation

Interfaces Bases Extensions

Component inheritance

? c

c

Component implementation

?

Delegation

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 8

Implementations  DS components are typically developed by different teams in different companies.  Components are in fact a collection of elementary pieces of code, called implementations.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 9

Extensions  Has two kinds of implementations: 

Base implementations and extensions.



A component is defined by a base implementation.

 An extension has two advantageous properties: 

It does not change the identity of the component being extended.



It does not change the code of the component being extended

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 10

Component inheritance  Single inheritance  Inherits all its interfaces and all its implementations.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 11

Conditional interfaces  The interface will be returned to the client only if this expression evaluates to true. 

2D or 3D

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 12

Discussion  Has not develop a new language: 

The OM can be seen as a layer superimposed on the C++ language.



Interfaces and implementations are represented as C++ classes.



OM constructions are indeed represented as code patterns and macros in C++ source code.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 13

Different Kinds of Architecture

Frameworks Dependency

OM elements

Other entities

(a) Physical architecture

(b) OM components vs. frameworks

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 14

Framework Evolution  A good component framework: 

Satisfies development / maintenance needs.



Is easily mastered and understood by developers.

 It is incorrect to believe that if a concept is simple, its use will also be simple: 

“goto” and pointers



AddRef and Release

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 15

Evolution  An incremental process. 

Model evolved permanently while CATIA software was in development.



Required different concepts and constructs to coexist, which created problems.

 A bug may be due to: 

Faulty implementation of the concept,



Undefined semantic hole



Inherent complexity.

Specific training courses should be employed to ensure the correct use of the component model. Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 16

Industrial Perspective  Should Connectors be regarded as first class citizens?  Reexamination of the definitions of: 

Connectors



Behavior



Architecture



Components

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 17

Summary  The design of a powerful component model is shown to be a complex task.  The model has improved progressively over the years.

 Very large systems must live with inconsistencies. 

Training is needed to prevent misuse.



Tools for tracking invalid constructions.

We have still to invent the CBSE environments of the future.

Building Reliable Component-based Systems Chapter 19 - Industrial Experience with Dassault Système Component Model

Page 18

View more...

Comments

Copyright � 2017 NANOPDF Inc.
SUPPORT NANOPDF