Software Tools at the Rome CMS/ECAL Regional Center

31
Giovanni Organtini CMS/Roma Software Tools at the Rome CMS/ECAL Regional Center Giovanni Organtini INFN-Roma

description

Software Tools at the Rome CMS/ECAL Regional Center. Giovanni Organtini INFN-Roma. Introduction. 80.000 Crystals!. Co 60. LED. PM. The ACCOR Machine. CRISTAL. Workflow Management System Configurable Interface with: Humans Instruments Software Data Base System. CRISTAL DB. - PowerPoint PPT Presentation

Transcript of Software Tools at the Rome CMS/ECAL Regional Center

Page 1: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Software Tools at the Rome CMS/ECAL Regional Center

Giovanni Organtini

INFN-Roma

Page 2: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Introduction

Page 3: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

The ACCOR Machine

Co60

PM

LED

Page 4: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

CRISTAL

• Workflow Management System– Configurable– Interface with:

Humans Instruments Software

• Data Base System

Page 5: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

ORB

CRISTAL

Workflow DefinitionDB

Collected DataDB

PARTBROWSER

InstrumentAgent

Page 6: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

CRISTAL Browser

Registered Parts

Page 7: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Activity

Workflow

Page 8: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Manual Activity

Page 9: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Instrument Activity

PM IA Instrument

CONNECT

ACKN

GETJOBS

JOBS

STARTJOB

RESULT

CORBAChannel

TCP/IPChannel

Page 10: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

UML Model for Parts and Instruments

PartOnInstrument Instrument

XMLParser

10..n

A Part being measuredby an instrument

An automatic “CRISTAL”instrument

Encoding/Decodingof XML-like structures

Page 11: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

OO Design strategy

• Follows known patterns whenever possible

• Every instrument in the Center uses the same pattern: reusability

• No explicit pointer in the software: use STL instead

• Provide shortcuts for few methods that MUST be fast

Page 12: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

OO Experience

• OO technology useful even for medium scale projects

• Formal tools and methods makes development faster

• No significant differences found in performances with respect to FORTRAN programs

Page 13: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Operating Systems integration

Page 14: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Linux Choice

Page 15: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

VNC

Server Windows/LinuxVNC = Service

Client Linux/WindowsVNC = Application

•Free-ware•Easy to install•Very useful

•Slow•Single user

Network

Page 16: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Xterm

Xclock

Pager

Linux Desktop

Windows Menu

Windows IconsVNC

Page 17: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Windows vs Linux

Good Bad

System Management Windows Linux

Applications availability LinuxWindows

Control WindowsLinux

Access WindowsLinux

System Integration WindowsLinux

Page 18: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Web Tools

• ACCOR can be operated even manually– It shall be operated by non-experts– It shall be operated remotely

• ACCOR must be monitored even remotely

• Data must be available as soon as possible for fast analysis

Page 19: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Documentation

Each physical connection (cable) is mapped into an hyperlink

Page 20: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Command Definition for ACCOR

Commands are defined using FORMS

Page 21: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Command Definition for ACCOR

CGI-PerlScript

<CO>Transmission <AR>Start<VA>15</VA></AR> <AR>Stop<VA>230</VA></AR> <AR>Step<VA>15</VA></AR></CO>

Page 22: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Offline MonitoringClicking on this link startsa Perl script that searches forcrystals already measuredand builds the list on the right

This list is automaticallygenerated (no maintenance!)

Clicking on crystal namea second Perl script is calledwho generates a plot on the

fly

Page 23: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

The Perl script uses externalgraphics packages to buildplots (gnuplot in this case)

Offline Monitoring

Page 24: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

System Monitoring

Page 25: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Functional Decomposition

LY DAQ TT/LT DAQ 3D DAQ

MotorDaemon

InstrumentAgent ACCOR DAQ

Page 26: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Functional Decomposition

• Programs do not provide graphic interface

• Programs communicates by means of pipes or network messages

• Programs do not produce graphical output

• Suitable graphic browsers provide the interface (web browser or graphics manipulation programs)

Page 27: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Commercial Products: PROs

Reduced development time Good quality documentation

Persistency for free Good Tools Good DB organization Multi-platform

Page 28: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Commercial Products: CONs

They promise, but… Inadequate support Incompatibilities around the corner We are not the market!

DRO/FTO unreliable Versioning unreliable Schema evolution unreliable Slow (?)

Incompatibilities with other products Non CORBA-compliant

Page 29: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Commercial Products: Conclusions

There are no Universal Tools!

Page 30: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Commercial Products: Conclusions (II)

There are not Tools for problems thatdo not exist (yes)

Page 31: Software Tools at the Rome CMS/ECAL Regional Center

Giovanni OrgantiniCMS/Roma

Conclusions

• Object Oriented Programming

• Open Source• Scripting Languages

• Commercial products• Programs with graphical

interface

Natural LanguageUniform interfaceImproved maintenancePerformances Ok

Solve bugs rapidlyNo (or reduced) incompatibilitiesExtremely flexible

Works in any environmentNot enough supportincompatibilities possibleLimited accessIntegration problems