Download presentation
Presentation is loading. Please wait.
Published byClifton Lloyd Modified over 8 years ago
1
ATLAS Data Dictionary A. Bazan, T. Bouedo, P. Ghez, T. Le Flour, S. Lieunard M. Marino, C. Tull
2
March 24, 2003T. BouedoCHEP 03 Athena - the structure DictionarySvc ADL DObj
3
March 24, 2003T. BouedoCHEP 03 Why a data dictionary Avoid tedious integration of objects to the framework Re-use the objects already present in the dictionary Concentrate the object development only on his behaviour Provide access to transient objects debugging, visualisation, scripting,...
4
March 24, 2003T. BouedoCHEP 03 Why a data dictionary Provide to the objects all the mechanism of conversion between transient and persistent stores Manage the evolution of the described objects Provide information on persistent objects and collections without loading them in transient store
5
March 24, 2003T. BouedoCHEP 03 Object description management browse edit save delete parse publish user
6
March 24, 2003T. BouedoCHEP 03 Description language Programmatic language : C++ : – : ATLAS official language, defined grammar, no new language to learn, … : – : too close to the implementation, no keyword to describe the persistency, … Description language for WEB documents : XML : – : known language, description language, tools exist, every things can be described,..., … – : no defined grammar, tedious to write ?, … CORBA description language : IDL : – : known language, description language for interfaces, defined grammar,... – : missing keywords,...
7
March 24, 2003T. BouedoCHEP 03 Choice ADL = Athena Description Language = IDL + {keywords} Added keywords : –object relationships (from ODL grammar) : relationship –visibility : private –access to non described objects : extern –persistent data members : persistent –Declaration of Athena objects : keywords added: DataObject ContainedObject CollectionObject
8
March 24, 2003T. BouedoCHEP 03 Code generation Choose the back-endconfigure the back-end compile & generate code user
9
March 24, 2003T. BouedoCHEP 03 Compiler Front End From description to utilization ADLParserJavaCC BackEndBackEnd BackEndBackEnd BackEndBackEnd CodeCxx,Java,... CodeCxx,Java,... CodeCxx,Java,... ADLAnalyzer SourceADL Meta Objet Representation
10
March 24, 2003T. BouedoCHEP 03 Meta-object representation 10..* 1 1 1 0..1 0..* InterfaceDefinition AttributeDefinition1 OperationDefinition ParameterDefinition GenObject RelationDefinition ElementaryDefinition TypeDefinition StructureDefinition
11
March 24, 2003T. BouedoCHEP 03 Dynamic interaction call method on a described object find object description access attributes of a described object delete described object create described objectfind described object browse described objects user
12
March 24, 2003T. BouedoCHEP 03 Data Dictionary Service Creation Transient Event Store Algorithm ADL Object DescriptionsRepository Description IntrospectionModule Access Access interface SERVICES Registered objects list Object description Method invocation Data member consultation BrowserScripting Access Integration in Athena Registration Registration ADLObject
13
March 24, 2003T. BouedoCHEP 03 User support Documentation (User Guide) Tutorial Integration in Athena –(CMT fragments) –Automatic ClassID Together module (M. Marino) Support (Examples, FAQ, …)
14
March 24, 2003T. BouedoCHEP 03 Conclusion Today the project is aborted Some reasons to draw many lessons from that –Are people really ready to concentrate the effort at the design level using an high level description language, independent of the implementation? –Has this tool taken place too late in the Athena framework while a lot of C++ code was already written? -connected feedback: reverse engineering is not miraculous!- –Has this project been politically killed at the birth of the LCG?
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.