CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 1 B M M Brick Manipulation Manager FunctionalitiesAndArchitecture D. Duchesneau T. Le Flour S. Lieunard.

Slides:



Advertisements
Similar presentations
Database System Concepts and Architecture
Advertisements

1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Common Object Request Broker Architecture (CORBA) By: Sunil Gopinath David Watkins.
T. Le Flour LAPP OPERA Collaboration Meeting Gran-Sasso 1 TRACKING THE BRICK HANDLING From extraction to development.
Object-Oriented Analysis and Design
1 Chapter 2 Database Environment Transparencies © Pearson Education Limited 1995, 2005.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Software Frameworks for Acquisition and Control European PhD – 2009 Horácio Fernandes.
1 Introduction The Database Environment. 2 Web Links Google General Database Search Database News Access Forums Google Database Books O’Reilly Books Oracle.
1 CS 502: Computing Methods for Digital Libraries Lecture 22 Repositories.
Brick Handling Meeting Nagoya T. Le Flour LAPP 1 BRICK HANDLING BMS/BMM Point of view D. Duchesneau T. Le Flour S. Lieunard.
Chapter 2 Database Environment Pearson Education © 2014.
The Client/Server Database Environment
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
The Design Discipline.
Database System Concepts and Architecture Lecture # 3 22 June 2012 National University of Computer and Emerging Sciences.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Considerations about the BMS links to other OPERA systems Brick Manipulation Manager Links to other computing systems Needs to define the general framework.
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 4 Manage Software for SUSE Linux Enterprise Server.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
Multimedia Teaching Tool SimArch V1.0 Faculty of Electronic Engineering University of Nis Serbia.
Status of the Brick Manipulation database development Introduction: goal and principles System analysis –The brick life –Manipulation procedures Proposed.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Oracle 10g Database Administrator: Implementation and Administration Chapter 2 Tools and Architecture.
T. Le Flour L.A.P.P 1 B rick M anipulation M anagement.
Abhishek Bachchan Vishal Patangia
Lecture 22: Client-Server Software Engineering
Lesson Overview 3.1 Components of the DBMS 3.1 Components of the DBMS 3.2 Components of The Database Application 3.2 Components of The Database Application.
1 CMPT 275 High Level Design Phase Modularization.
Presented By:- Sudipta Dhara Roll Table of Content Table of Content 1.Introduction 2.How it evolved 3.Need of Middleware 4.Middleware Basic 5.Categories.
Bayu Adhi Tama, M.T.I 1 © Pearson Education Limited 1995, 2005.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
 Common Object Request Broker Architecture  An industry standard developed by OMG to help in distributed programming.
Web application architecture1 Based on Jim Conallen: Web Applications with UML.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Linux Operations and Administration
January 25, 2016 First experiences with CORBA Niko Neufeld.
The ATLAS DAQ System Online Configurations Database Service Challenge J. Almeida, M. Dobson, A. Kazarov, G. Lehmann-Miotto, J.E. Sloper, I. Soloviev and.
Chapter 2 Database Environment.
Distributed Data Servers and Web Interface in the Climate Data Portal Willa H. Zhu Joint Institute for the Study of Ocean and Atmosphere University of.
Software and Computing Status of Software development and MC production OpRoot-Fedra MC interface New CVS server Computing resources at CERN: present and.
2) Database System Concepts and Architecture. Slide 2- 2 Outline Data Models and Their Categories Schemas, Instances, and States Three-Schema Architecture.
CEN6502, Spring Understanding the ORB: Client Side Structure of ORB (fig 4.1) Client requests may be passed to ORB via either SII or DII SII decide.
Introduction. System Design Hardware/Software Platform Selection Software Architectures Database Design Human-Computer Interaction (HCI) Interface Object.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Two New UML Diagram Types Component Diagram Deployment Diagram.
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
Oracle 10g Administration Oracle Server Introduction Copyright ©2006, Custom Training Institute.
ISC321 Database Systems I Chapter 2: Overview of Database Languages and Architectures Fall 2015 Dr. Abdullah Almutairi.
TECHNICAL ASSISTANCE FOR THE CONVERSION OF RBPAPs INTO RBMPs DATA MANAGEMENT INCEPTION WORKSHOP ESTAMBUL February Eusebio CRUZ GARCÍA.
Databases (CS507) CHAPTER 2.
Business System Development
Chapter 2: Database System Concepts and Architecture - Outline
Distributed Computing
The Client/Server Database Environment
Common object request broker
CORBA Alegria Baquero.
#01 Client/Server Computing
Ch > 28.4.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Knowledge Byte In this section, you will learn about:
Chapter 2 Database Environment Pearson Education © 2009.
Data, Databases, and DBMSs
CORBA Alegria Baquero.
Tango in a Nutshell 31/12/2018.
Production Manager Tools (New Architecture)
Copyright 1999 B.Ramamurthy
#01 Client/Server Computing
Presentation transcript:

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 1 B M M Brick Manipulation Manager FunctionalitiesAndArchitecture D. Duchesneau T. Le Flour S. Lieunard

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 2 Main functionalities Super Module initial fillingSuper Module initial filling Detector filling status Managing the filling process Brick and CS position, … During OPERA data acquisitionDuring OPERA data acquisition Communicate to the BMS the list of bricks for daily extraction Keep track of the brick life from insertion to development

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 3 At any time : we needAt any time : we need The brick situation : location, task in progress The brick history for a given brick The detector cell history A graphical display of the detector content Actual content, play back display The status of some connected systems: Ie : BMS,… From time to time : we may needFrom time to time : we may need To export typical data from the local repository to the central repository Main functionalities

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 4 System configuration BMM Configuration and access rightsBMM Configuration and access rights System Configuration Daily extraction starting time … Managing the system access(Login,Roles) Operators, standard users, Administrators,

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 5 The sub-systems in presence > Supervisor/ Manipulator > BAM > (OGC)OPERA Global Control > OPERA On Line System > OPERA Scanning System >ManagerInterface ScanningInterface BAMInterface Brick Manipulation Manager(BMM) ManipulatorInterface + Cosmic Bench development Lab.

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 6 The actors(1) UML for the modelizationUML for the modelization USDP : Use-Case drivenUSDP : Use-Case driven Actor definition :Actor definition : Order the functionalities of the system by categories

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 7 The actors(2) Opera General User BrickOperatorLoading/UnloadingOperator CommonOperatorPhysicist Opera Global Control On-line ?

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 8 Use Case Example StartLoading stopLoading RestartLoading pauseLoading Loading Operator The operator can decide to pause the loading process The operator can stop At any time the loading process The operator can restart the loading process where it was stopped The operator starts the initial filling

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 9 Graphical User Interface

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 10 Graphical User Interface

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 11 The class schema Detector SuperModule PositionManager left/Right side BrickManagerHalfWall CS Row Brick 1 1..n 1 historyWorkPlan OperationsLogBook Basket +0,234 +0,1 operations +0,n +1 +0,n +1 OperaElement +1 CellHistory 1..n 0..n 1..n 0..n Cell

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 12 APIAPI LocalRepository BMS BMM architecture BMM OperatorWorkstations BMM Corba Server ? ? ? APIAPI OGC Client ? APIAPI Data Monitoring API API BMS Corba Server CentralRepository OracleOracle

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 13 Communication 3 tiers decomposition3 tiers decomposition Software and Hardware decomposition Only the BMM component has an access to its own databaseOnly the BMM component has an access to its own database No direct access to the DB from the client side The other sub-systems(BMM Clients) will invoke only BMM servicesThe other sub-systems(BMM Clients) will invoke only BMM services Based on CORBA standardBased on CORBA standard

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 14 Communication Why CORBA ?Why CORBA ? Definition of the services Description (IDL) of the interfaceDescription (IDL) of the interface Automatic code generation for the client and server side Avoid to concentrate effort on the low level of the communication Inter-operable System independentSystem independent Language independentLanguage independent

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 15 Example of CORBA usage IDL Description : OPERA_PROTOTYPE.idlIDL Description : OPERA_PROTOTYPE.idl struct BrickPosition { long brickId; long brickId; long wallNumber; long wallNumber; long xpos; long xpos; long ypos; long ypos;}; typedef sequence Positions; interface OPERA_PROTOTYPE { voidloadBricks(); longbasketLevelValue(); voidbrickAndCSId(outlong brickId, outlong csId); voidinsertBricks(in long superModuleNumber, in long wallNumber, in long row); PositionsinsertResult(); };

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 16 Code GenerationCode Generation Server Side : Server Side : OPERA_PROTOTYPE_I.cpp : Skeleton of the described services :OPERA_PROTOTYPE_I.cpp : Skeleton of the described services : void OPERA_PROTOTYPE_i::loadBricks() { Code has to be inserted to realize the service; } Client Side : Client Side : 1. Getting the IOR(Stringified CORBA Server Reference)1. Getting the IOR(Stringified CORBA Server Reference) 2. Server Connection:2. Server Connection: CORBA::ORB_var orb = CORBA::ORB_init(argc, argv); CORBA::Object_var obj = orb->string_to_object(ior); BMS_Ref = OPERA_PROTOTYPE::_narrow(obj); 3. Service call : (Synchronized)3. Service call : (Synchronized) –BMS_Ref-> loadBricks(); Example of CORBA usage

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 17 Communication Provide for the other sub-systems an API/Libraries dedicated to the BMM connectionProvide for the other sub-systems an API/Libraries dedicated to the BMM connection CORBA Hide the CORBA usage Make the server connection completely transparent.

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 18 Communication From the BMM to an other sub-systemFrom the BMM to an other sub-system Based on a CORBA implementation Based on a basic Client/Server implementation An API & Library should be provided by developers of sub-systems to facilitate communicationsAn API & Library should be provided by developers of sub-systems to facilitate communications

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 19 The BMM Services & Actions Initial FillingInitial Filling Load_Bricks(SM1, left) Load_Bricks(SM1, left) Load on carousel 26 bricks on the left side of the SM1Load on carousel 26 bricks on the left side of the SM1 Basket_Level_value (1 value) Basket_Level_value (1 value) BMS returns the rows used in the filling basketBMS returns the rows used in the filling basket Brick_Id and CS_Id (2 values) Brick_Id and CS_Id (2 values) Each time(26) the BMS loads a brick and CS on carousel, it sends the two ids to BMM.Each time(26) the BMS loads a brick and CS on carousel, it sends the two ids to BMM. Insert_Bricks(SM1, Wall, Row) Insert_Bricks(SM1, Wall, Row) Insert the 26 bricks in the free row ‘Row’ of wall ‘Wall’ of SM1Insert the 26 bricks in the free row ‘Row’ of wall ‘Wall’ of SM1 Insert_Result( Brick Id, position) (26 x 3 values) Insert_Result( Brick Id, position) (26 x 3 values) Bricks positions to be saved in the DB.Bricks positions to be saved in the DB.

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 20 Data saving The BMM saves and provides the data through service call.The BMM saves and provides the data through service call. If BMM is not available :If BMM is not available : crashes, network problems, computer problems, … Data has to be directly saved into ORACLEData has to be directly saved into ORACLE –Encapsulate the BMM service calls in a dedicated library to detect this kind of problems

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 21 DATA SAVING Data Saving ORACLE BMMCorbaServer Data Saving InterfaceClientCode BMM Service access through the interface INTERFACE FUNCTIONS 1.Check the availability of the BMM 2.If BMM is broken  Data are saved with method call only 3.If BMM available  Data are saved with a BMM service call and method callA A A A

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 22 Implementation choices The CORBA implementationThe CORBA implementation OMNIORB 4.X OMNIORB 4.X Freeware : : Maintenance availableMaintenance available Implementation exists for W2000 and LINUXImplementation exists for W2000 and LINUX The language choice :The language choice : JAVA on any platform Graphical User Interface : JAVA on any platform Server side : C++ on LINUX

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 23 Tests Tests already done:Tests already done: Check the CORBA interoperability: LINUX W2000LINUX W2000 Client C++ Server C++Client C++ Server C++ Java Client Server C++Java Client Server C++ Database access: OnlineOnline : Only from the BMM side –C++ –ORACLE access from C++OCCI(Oracle9i) –ORACLE access from C++ : OCCI(Oracle9i) Data Monitoring tools :Data Monitoring tools : –C++/OCCI or Java/JDBC Tests to be done soon :Tests to be done soon : Client BMM BMS Prototyping a full sequence (Client BMM BMS) for checking communication between BMM and BMS

CERN Meeting 23/09/03 L.A.P.P OPERA T. Le Flour 24 About ORACLE Availability of ORACLE from CERNAvailability of ORACLE from CERN For Labs : Which version ? 9i When and how to get the LINUX version Db installation and organization in OPERA?Db installation and organization in OPERA? Database administration ?Database administration ? Backup, … Support ?