310 likes | 430 Views
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.
E N D
Software Tools at the Rome CMS/ECAL Regional Center Giovanni Organtini INFN-Roma Giovanni Organtini CMS/Roma
Introduction 80.000 Crystals! Giovanni Organtini CMS/Roma
Co60 LED PM The ACCOR Machine Giovanni Organtini CMS/Roma
CRISTAL • Workflow Management System • Configurable • Interface with: • Humans • Instruments • Software • Data Base System Giovanni Organtini CMS/Roma
CRISTAL DB Workflow Definition DB Collected Data DB CRISTAL O R B PART BROWSER Instrument Agent Giovanni Organtini CMS/Roma
Registered Parts CRISTAL Browser Giovanni Organtini CMS/Roma
Workflow Activity Giovanni Organtini CMS/Roma
Manual Activity Giovanni Organtini CMS/Roma
ACKN CORBA Channel TCP/IP Channel GETJOBS JOBS STARTJOB RESULT Instrument Activity PM IA Instrument CONNECT Giovanni Organtini CMS/Roma
Encoding/Decoding of XML-like structures An automatic “CRISTAL” instrument A Part being measured by an instrument UML Model for Parts and Instruments XMLParser PartOnInstrument Instrument 0..n 1 Giovanni Organtini CMS/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 Giovanni Organtini CMS/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 Giovanni Organtini CMS/Roma
Operating Systems integration CRISTAL 3D TT/LT LY Giovanni Organtini CMS/Roma
Linux Choice Dark Room Giovanni Organtini CMS/Roma
VNC Network Client Linux/Windows VNC = Application Server Windows/Linux VNC = Service • Slow • Single user • Free-ware • Easy to install • Very useful Giovanni Organtini CMS/Roma
Windows Icons Xterm Windows Menu Xclock Pager VNC Linux Desktop Giovanni Organtini CMS/Roma
Good Bad System Management Windows Linux Applications availability Windows Linux Control Linux Windows Access Linux Windows System Integration Linux Windows Windows vs Linux Giovanni Organtini CMS/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 Giovanni Organtini CMS/Roma
Each physical connection (cable) is mapped into an hyperlink Documentation Giovanni Organtini CMS/Roma
Commands are defined using FORMS Command Definition for ACCOR Giovanni Organtini CMS/Roma
CGI-Perl Script <CO>Transmission <AR>Start<VA>15</VA></AR> <AR>Stop<VA>230</VA></AR> <AR>Step<VA>15</VA></AR> </CO> Command Definition for ACCOR Giovanni Organtini CMS/Roma
Clicking on this link starts a Perl script that searches for crystals already measured and builds the list on the right Clicking on crystal name a second Perl script is called who generates a plot on the fly Offline Monitoring This list is automatically generated (no maintenance!) Giovanni Organtini CMS/Roma
Offline Monitoring The Perl script uses external graphics packages to build plots (gnuplot in this case) Giovanni Organtini CMS/Roma
System Monitoring Giovanni Organtini CMS/Roma
3D DAQ LY DAQ TT/LT DAQ Instrument Agent Motor Daemon ACCOR DAQ Functional Decomposition Giovanni Organtini CMS/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) Giovanni Organtini CMS/Roma
Commercial Products: PROs • Reduced development time • Good quality documentation • Persistency for free • Good Tools • Good DB organization • Multi-platform Giovanni Organtini CMS/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 Giovanni Organtini CMS/Roma
Commercial Products: Conclusions There are no Universal Tools! Giovanni Organtini CMS/Roma
Commercial Products: Conclusions (II) There are not Tools for problems that do not exist (yes) Giovanni Organtini CMS/Roma
Object Oriented Programming Open Source Scripting Languages Commercial products Programs with graphical interface Conclusions Natural Language Uniform interface Improved maintenance Performances Ok Solve bugs rapidly No (or reduced) incompatibilities Extremely flexible Works in any environment Not enough support incompatibilities possible Limited access Integration problems Giovanni Organtini CMS/Roma