event processing applications summarycomputing in high energy physics 2006 – mumbai (india) event...
TRANSCRIPT
Event Processing Applications summaryComputing in High Energy Physics 2006 – Mumbai (India)
Event Processing Event Processing ApplicationsApplications
summarysummary
Gabriele Cosmo (CERN)Gabriele Cosmo (CERN)Co-convener: Avi Yagil (FNAL)Co-convener: Avi Yagil (FNAL)
Chairs: Witold Pokorski, Alberto Ribon, Liz Sexton-Kennedy Pedro Arce, John Apostolakis, Chris Jones
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 22
OutlineOutline Contributions Application Areas
• Simulation In the experiments Simulation tools Simulation validation
• Frameworks & data models• Reconstruction
Tracking algorithms Alignment
• Visualization, commissioning Impressions …
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 33
ContributionsContributions
40 parallel talks40 parallel talks• Not all talks treated here …Not all talks treated here …• All slides are available on the webAll slides are available on the web
25 posters25 posters• Not treated in this talkNot treated in this talk
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 55
SimulationSimulation
Geant4 simulation• In production: CMS, ATLAS, LHCb• ILC, BESIII, CBM• Heavy ion therapy
Fluka• The future main simulation engine in ALICE
(Geant4 as alternative)• Source code available on request as of last July
2005 release Need for fast-simulations
• CMS, ATLAS
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 66
#3 – A.Rimoldi, The ATLAS Detector Simulation – an LHC challenge
77
CMS simulationCMS simulation Switched from GEANT3 to GEANT4 Switched from GEANT3 to GEANT4
simulation end 2003 simulation end 2003 So far the CMS OSCAR simulation So far the CMS OSCAR simulation
package delivered ~100 M physics package delivered ~100 M physics events for CMS 2004 Data events for CMS 2004 Data Challenge and on-going Physics Challenge and on-going Physics TDR studies TDR studies
OSCAR being adiabatically replaced OSCAR being adiabatically replaced by a new suite (SimG4), based on the by a new suite (SimG4), based on the new Event Data Model Software new Event Data Model Software FrameworkFramework
CPU: SimG4 CPU: SimG4 1.5 x SimG3 1.5 x SimG3 with lower production cuts!with lower production cuts!
Memory: ~110 MB/evt for pp in Memory: ~110 MB/evt for pp in SimG4SimG4 vs. ~100 MB in SimG3vs. ~100 MB in SimG3
Robustness: from ~1/10Robustness: from ~1/1044 crashes in crashes in pp events in DC04 to < 1/10pp events in DC04 to < 1/1066 crashes in latest productionscrashes in latest productions
#243 – D.Elvira, M.Stavrianakou, CMS Detector and Physics Simulation
88
ALICE ALICE simulationsimulation
FLUKA VMC FLUKA VMC implementation completedimplementation completed
Testing well advancedTesting well advanced• TTGeoGeo/FLUKA validation /FLUKA validation
completedcompleted• Good agreement with G3 Good agreement with G3
and Testbeamand Testbeam FLUKA VMC will be used in FLUKA VMC will be used in
the next ALICE Physics the next ALICE Physics data challengedata challenge
Plan to use Geant4 as Plan to use Geant4 as alternative simulation alternative simulation engineengine
#387 – A.Morsch, FLUKA and the Virtual Monte Carlo
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1010#257 – G.Cosmo, Recent developments & upgrades to the Geant4 geometry modeler
#371 – J.Apostolakis, Geant4 in production: status and developments
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1111
FlukaFluka
#420 – L.S.Pinsky, Update on the status of the FLUKA Monte Carlo Transport code
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1212
Parameterised SimulationParameterised Simulation
#253 – J.Weng, GFLASH – parameterised electromagnetic shower in CMS
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1313
CEDAR is primarily a generator tuning system, combining JetWeb and HepData
Aim is that any expt MC configuration should be “CEDAR-blessed” to be considered trustworthy
Modular design and many spin-offs CEDAR also hopes to encourage code
reuse and uptake of common interfaces in HEP software
CEDARCEDAR
#253 – A.Buckley, HepData & JetWeb: HEP Data Archiving and Model Validation
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1515
Simulation validation on the GRIDSimulation validation on the GRID
#300 – A.Ribon, Geant4 Acceptance Suite for Key Observables
On candidate release 8.0 of Geant4
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1616#308 – M.G.Pia, Simulation for LHC radiation background: optimisation of monitoring and experimental validation
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1818
Ideas from Babar, CDF, CLEO, D0, and the previous CMS system
Five types of dynamically loadable processing components• Source (provides the Event to be processed)• Output Module (stores the data from the Event)• Producer (creates new data to be placed in the Event)• Filter (decides if processing should continue for an
Event)• Analyzer (studies properties of the Event)
Components only communicate via the Event Components are configured at the start of a job
CMS Framework & data modelCMS Framework & data model
#242 – C.Jones, The new CMS Event Data Model and Framework
Ne
w
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 1919
ATLAS Event ATLAS Event Data ModelData Model
Issues with Issues with schema evolutionschema evolution
Solved adopting Solved adopting an ‘Event an ‘Event Management Management Board’ and new Board’ and new tools for tools for detecting schema detecting schema changeschanges
Attempting ‘dual’ Attempting ‘dual’ EDM designEDM design
#76 – E.Moyse, The ATLAS Event Data Model
Ne
w
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2020
ALICE FrameworkALICE Framework Relatively small number of lines of codeRelatively small number of lines of code
• Fully based on ROOT, including most of their Fully based on ROOT, including most of their needed tools and specific software choicesneeded tools and specific software choices
Adopting strict code conventionsAdopting strict code conventions• No STL, templates or exceptionsNo STL, templates or exceptions
Support for many compilers/platformsSupport for many compilers/platforms No software management toolNo software management tool
• Pure CVSPure CVS
Prototyping event processing with PROOFPrototyping event processing with PROOF Data challenge: last exercise before data Data challenge: last exercise before data
takingtaking• Test of the system with simulationTest of the system with simulation• Up to 3600 jobs running in parallelUp to 3600 jobs running in parallel
Issues:Issues:• Difficulty in Planning in a widely distributed Difficulty in Planning in a widely distributed
community; difficulty in setting milestonescommunity; difficulty in setting milestones• Communication seen as a real problem in spite of Communication seen as a real problem in spite of
frequent meetingsfrequent meetings
#391 – F.Carminati, The ALICE Offline Framework
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2121
ILC frameworkILC framework RequirementsRequirements
• Easy to install, use, modify Easy to install, use, modify and extendand extend
• Must be modular and written Must be modular and written in C++in C++
• Based on the international Based on the international ILC data format LCIOILC data format LCIO
MARLIN application MARLIN application frameworkframework• Set of classes providing the Set of classes providing the
core functionalitycore functionality• Based on the concept of Based on the concept of
processorprocessor• A ‘processor task can be as A ‘processor task can be as
simple as creating one simple as creating one histogram or complex as histogram or complex as track finding and fitting in the track finding and fitting in the central trackercentral tracker
• AIDA interfaces for histo: AIDA interfaces for histo: AIDAJNI/JAIDA, RAIDA (Root AIDAJNI/JAIDA, RAIDA (Root based), …based), …
#422 – F.Gaede, A modular Reconstruction Software Framework for the ILC
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2323
RecPackRecPack C++ reconstruction toolkitC++ reconstruction toolkit Provides the common tools Provides the common tools
of any reconstruction of any reconstruction programprogram
• avoids reinventing the wheel !!!avoids reinventing the wheel !!! Modular structure allowing Modular structure allowing
for extensions in any for extensions in any directiondirection• Can plug-in Geant4 for the Can plug-in Geant4 for the
simulation step simulation step Setup independentSetup independent Being successfully used by Being successfully used by
several HEP experimentsseveral HEP experiments
#1 – A.Cervera Villanueva, RecPack, a general reconstruction toolkit
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2424
CMS CMS ReconstructionReconstruction
The code must be able to run The code must be able to run in three different scenarios:in three different scenarios:1.1. Bare root: open the POOL Bare root: open the POOL
catalog, and inspect the Data catalog, and inspect the Data Objects Objects (thus their centrality)(thus their centrality)
2.2. CMSSW-Lite: load a small CMSSW-Lite: load a small number of libraries, don’t number of libraries, don’t allow access to any allow access to any calibration, mag field map calibration, mag field map etcetc
3.3. Full-CMSSW: full access to Full-CMSSW: full access to calibrations and full calibrations and full availability of libraries.availability of libraries.
Old software (ORCA)Old software (ORCA)• Used for the Physics TDR Vol Used for the Physics TDR Vol
I, just publishedI, just published• Used by the vast majority of Used by the vast majority of
usersusers• Full functionality with the Full functionality with the
new software before Summernew software before Summer
#270 – T.Boccali, CMS Reconstruction Software
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2525
FatRas fast track FatRas fast track simulationsimulation
Fast track simulation for the Fast track simulation for the ATLAS Inner DetectorATLAS Inner Detector
Spin-off of the new extrapolation Spin-off of the new extrapolation package (simulation using the package (simulation using the new reconstruction geometry)new reconstruction geometry)
Enhanced by the modularity of Enhanced by the modularity of the new ATLAS offline track the new ATLAS offline track reconstruction, completely written reconstruction, completely written and embedded in the EDMand embedded in the EDM
Usage in validation of track Usage in validation of track finding and track/vertex fittingfinding and track/vertex fitting
Powerful tool for fast checks / Powerful tool for fast checks / strategy findingstrategy finding
#96 – A.Salzburger, The new ATLAS Fast Track Simulation engine
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2626
ALICE reconstruction ALICE reconstruction algorithmsalgorithms
Fast Hough-Transform TPC Tracking:Fast Hough-Transform TPC Tracking:• Very good efficiency (stable up to Very good efficiency (stable up to
dN/dy~8000)dN/dy~8000)• Pt resolution worsens linearly with PtPt resolution worsens linearly with Pt• ~5s comp. time for central PbPb event ~5s comp. time for central PbPb event
with dN/dy~4000with dN/dy~4000~8 Mbytes/s processing rate (compressed ~8 Mbytes/s processing rate (compressed data)data)~0.15 ~0.15 s/ADC count (hit)s/ADC count (hit)
• FPGA implementation is under FPGA implementation is under development - would allow to diminish development - would allow to diminish the computing time to hundreds of the computing time to hundreds of millisecondsmilliseconds
ITS Tracking:ITS Tracking:• Hough Transform tracks are efficiently Hough Transform tracks are efficiently
propagated to ITSpropagated to ITS• Fast and efficient ITS cluster finder, Fast and efficient ITS cluster finder,
vertex and trackingvertex and tracking• Track parameters resolution is greatly Track parameters resolution is greatly
improved (excellent impact parameter improved (excellent impact parameter resolution)resolution)
#385 – M.Ivanov, Track reconstruction algorithms for the ALICE High-Level Trigger
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2727
ATLAS track ATLAS track reconstructionreconstruction
A new framework A new framework flexible and easy to flexible and easy to maintainmaintain
Novel tracking Novel tracking technique in the MDTtechnique in the MDT• Multilayer Hough Multilayer Hough
TransformTransform Good performance Good performance
(and making use of (and making use of abstract interfaces)abstract interfaces)
#385 – D.Primor, Track reconstruction with the ATLAS detector
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2828
TPC distortions TPC distortions corrections at STARcorrections at STAR
Developed a technique to determine and apply TPC distortion corrections on an event-by-event basis
No obvious luminosity limitations
#155 – G.Van Buren, Adaptive on-the-fly calibration of TPC distorsions
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 2929
Tracking in High Density Tracking in High Density Environment in ALICEEnvironment in ALICE
TRD detector is also very useful TRD detector is also very useful for reconstruction for reconstruction • was originally developed for was originally developed for
electron identificationelectron identification Local Reconstruction Local Reconstruction
• Excellent space resolution for high Excellent space resolution for high momentum track (small incident momentum track (small incident angle) angle) significant improvement significant improvement in the momentum resolutionin the momentum resolution
• Works in high density environmentWorks in high density environment The most significant improvement The most significant improvement
is due to the is due to the correct error correct error parameterizationparameterization
Local Reconstruction
#394 – M.Ivanov, Track reconstruction in high density environment
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 3030
Event Selection with Event Selection with Gene Expression ProgrammingGene Expression Programming
New Evolutionary computation method New Evolutionary computation method Gene Expression ProgrammingGene Expression Programming
Applied to Event Selection Applied to Event Selection
Allows forAllows for fast identification of powerful cutsfast identification of powerful cuts signal/background separation of 92-95% signal/background separation of 92-95%
accuracy for samples with S/N = 0.25, 1, accuracy for samples with S/N = 0.25, 1, 55
potential of discovering new potential of discovering new correlations between variablescorrelations between variables
large number of selection functions large number of selection functions does not improve the classification does not improve the classification accuracyaccuracy
Still in the R&D phaseStill in the R&D phase needs software development -> needs software development ->
underwayunderway
#135 – L.Teodorescu, HEP Event Selection with Gene Expression Programming
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary
Track based Track based alignment in CMSalignment in CMS
HIP (Hits & Impact Points) HIP (Hits & Impact Points) iterative methoditerative method• To be used for CMS pixel To be used for CMS pixel
alignmentalignment• Basic idea: reconstruct Basic idea: reconstruct
tracks normally, then tracks normally, then align individual detectors align individual detectors or composite structuresor composite structures
• Modules or alignment Modules or alignment parameters can be free or parameters can be free or fixedfixed
• Rigid support structures Rigid support structures can be aligned as well as can be aligned as well as individual sensorsindividual sensors
• Easily parallelizable Easily parallelizable methodmethod
#356 – T.Lampen, Track based alignment of composite detector structures
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 3333
Variable ATLAS Variable ATLAS detector descriptionsdetector descriptions
Basic idea: Basic idea: have possibility of have possibility of building various ATLAS geometry building various ATLAS geometry layouts with every single version layouts with every single version of ATLAS softwareof ATLAS software
ATLAS geometry versioning ATLAS geometry versioning system is based on system is based on HierarchicalHierarchical VersioningVersioning of detector description of detector description primary numbers stored in the primary numbers stored in the ATLAS ATLAS Geometry DatabaseGeometry Database
In order to switch between In order to switch between different geometry layouts it is different geometry layouts it is enough to change a single enough to change a single parameter: ATLAS parameter: ATLAS top level top level geometry taggeometry tag
ATLAS geometry tags can be ATLAS geometry tags can be passed across job boundariespassed across job boundaries• Using persistent Using persistent TagInfoTagInfo objects objects• Subsequent jobs can pick up Subsequent jobs can pick up
correct geometry configuration correct geometry configuration from the input file bypassing from the input file bypassing manual configuration through job manual configuration through job optionsoptions
#67 – V.Tsulaia, Software Solutions for a Variable ATLAS Detector Description
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 3434
Silicon Tracker alignment Silicon Tracker alignment in ATLASin ATLAS
Issue: Monitor the motion of ~ 6k Si modules using Issue: Monitor the motion of ~ 6k Si modules using trackstracks
Alignment software using global fit method Alignment software using global fit method implemented implemented • with global with global 22
• Reasonable timing ~ 5ms/trackReasonable timing ~ 5ms/track First tests showed it is quantitatively possible to align a First tests showed it is quantitatively possible to align a
system with O(1000) DoFsystem with O(1000) DoF• Extension to full geometry under studyExtension to full geometry under study• More constraints to be considered, e.g. survey:More constraints to be considered, e.g. survey:
Planned: study of constraints from resonances (Z or J/Planned: study of constraints from resonances (Z or J/) ) • To extend: more statistics and iterations to recover large To extend: more statistics and iterations to recover large
misalignmentsmisalignments Coming months: align many Silicon modules to high Coming months: align many Silicon modules to high
precision - big impact on physics performanceprecision - big impact on physics performance Alternative alignment methods developed in ATLASAlternative alignment methods developed in ATLAS
• These are mainly iterative methods. No big system to These are mainly iterative methods. No big system to solve but iterations required even for small misalignmentssolve but iterations required even for small misalignments
New method under development (with Kalman filter)New method under development (with Kalman filter)Measurement errorMeasurement error
Adding mult. scattAdding mult. scatt
#84 – A.Hicheur, Global fit method for the alignment of the Silicon Tracker in ATLAS Athena
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary
COCOACOCOA COCOA is a general purpose alignment COCOA is a general purpose alignment
software developed as a Software software developed as a Software Engineering projectEngineering project• User describes optical system in User describes optical system in
ASCII filesASCII files• COCOA reconstructs the unknown COCOA reconstructs the unknown
parameters and propagate the errorsparameters and propagate the errors COCOA stressed by years of use in CMSCOCOA stressed by years of use in CMS Full CMS Link alignment system Full CMS Link alignment system
(2865 parameters)(2865 parameters)• 25 minutes25 minutes in Athlon 1.3 GHz in Athlon 1.3 GHz• Memory: Memory: 590 Mb (590 Mb (long double matrices)long double matrices)
Time and memory scales as Time and memory scales as (#param)2 !(#param)2 !• Next challenge is to simulate full CMS (40k Next challenge is to simulate full CMS (40k
params)params)• Methods under studyMethods under study
#321 – P.Arce, COCOA: General purpose software for simulation and reconstruction of optical alignment systems
LHCb Alignment FrameworkLHCb Alignment Framework Misalignments are applied through detector Misalignments are applied through detector
structurestructure• ““Interesting” detector elements have access to misalignment Interesting” detector elements have access to misalignment
matrixmatrix• Misalignment represents change from nominal alignment Misalignment represents change from nominal alignment in in
the reference frame of the detector element the reference frame of the detector element i.e. relative i.e. relative to its parent detector elementto its parent detector element
Added runtime misalignments to detector Added runtime misalignments to detector components components
• extending the LHCb detector description frameworkextending the LHCb detector description framework
Misalignments are tied in to the Conditions Database frameworkMisalignments are tied in to the Conditions Database framework• to allow both automatic runtime updating and propagation of changes, plus to allow both automatic runtime updating and propagation of changes, plus
versioning and time dependence of alignment parametersversioning and time dependence of alignment parameters The functionality was tested within the LHCb reconstruction chainThe functionality was tested within the LHCb reconstruction chain
• LHCb subdetectors are using it to investigate detector alignment procedures and LHCb subdetectors are using it to investigate detector alignment procedures and strategies, systematic effects, etc.strategies, systematic effects, etc.
The extension is a non-intrusive enhancementThe extension is a non-intrusive enhancement• respects the design principles of the LHCb detector description suiterespects the design principles of the LHCb detector description suite
#356 – J.Palacios, The LHCb Alignment framework
Access to Non-EventAccess to Non-EventData for CMSData for CMS
• Physicists have one set of rules to learn so as to access all such dataPhysicists have one set of rules to learn so as to access all such data Design uses type-safe data accessDesign uses type-safe data access
• ‘‘on demand’ data retrieval or computationon demand’ data retrieval or computation• automatic consistency between related ‘Intervals of Validity’automatic consistency between related ‘Intervals of Validity’• C++ object lifetime managementC++ object lifetime management
Client code does not need to be recompiled or relinked when Client code does not need to be recompiled or relinked when configuration changesconfiguration changes• Implemented using dynamically loadable componentsImplemented using dynamically loadable components
Based on experience from CLEOBased on experience from CLEO• expect the system to provide for all of CMS’s future needsexpect the system to provide for all of CMS’s future needs
CMS has a unified data model for CMS has a unified data model for all non-Event dataall non-Event data• Based on an ‘Interval of Validity’ Based on an ‘Interval of Validity’
accessed through an EventSetupaccessed through an EventSetup
#241 – C.Jones, Access to Non-Event Data for CMS
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 3939
ATLAS Online ATLAS Online Histogram PresenterHistogram Presenter
OHP is an interactive application developed to present histograms produced by ATLAS Online Monitoring System
Is fully configurable (different views of the produced histograms, drawing options)
Can communicate with the histogram producers sending commands
Optimizes network traffic Manages reference histograms OHP will be used in the ATLAS
commissioning starting from March 2006
#24 – A.Dotti, OHP: An Online Histogram Presenter for the ATLAS experiment
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 4040
AtlantisAtlantis Atlantis event display is a
stand-alone Java application Uses variety of 2D projections,
multiple views (windows) on canvas
A part of the ATLAS SW, depends only on Java
Uses simplified detector geometry (not a detector display)
JiveXML (written in C++) interfaces ATLAS SW framework Athena (its event store) and Atlantis
Access to the event data from Atlantis• using the event files produced
by JiveXML (offline)• reading the event data over
network from JiveXML server (online)
#33 – Z.Maxa, Event visualization for the ATLAS experiment – the technologies involved
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 4141
CMS Cosmic CMS Cosmic ChallengeChallenge
The MTCC is a fundamental The MTCC is a fundamental milestone for the new CMS milestone for the new CMS softwaresoftware• Global Data Acquisition with Global Data Acquisition with
(almost) all sub-detectors(almost) all sub-detectors• Data quality monitoring, Data quality monitoring,
event selection and event selection and streaming based on local streaming based on local reconstructionreconstruction
• Non-Event Data DB Non-Event Data DB infrastructureinfrastructure
• Offline global reconstruction Offline global reconstruction using alignment datausing alignment data
CMS is on schedule to CMS is on schedule to achieve these goalsachieve these goals
#312 – G.Bruno, Software for the CMS Cosmic Challenge
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary
CMS Data Quality CMS Data Quality MonitoringMonitoring
DQM for CMS Tracker is very challenging due its size and complexity
Tracker DQM software exists with basic functionality of the producer and consumer
A simple and very useful tracker specific visualization tool, TrackerMap exists along with a couple of generic graphical user interfaces
Important milestones in 2006:• Cosmic Challenge (CMS
slice test with Cosmics)
#283 – S.Dutta, Data Quality Monitoring for the CMS Silicon Tracker
17 February 200617 February 2006 Event Processing Applications summaryEvent Processing Applications summary 4343
Few considerations …Few considerations … Modular software and abstract interfacesModular software and abstract interfaces
• Experiments frameworks (CMS, ILC, …)Experiments frameworks (CMS, ILC, …)• Reconstruction softwareReconstruction software
Collaborative softwareCollaborative software• Share data and validation resultsShare data and validation results
Usage of the GRID for simulation validation and Usage of the GRID for simulation validation and regression testingregression testing
Focusing on AlignmentFocusing on Alignment• Track-based, opticalTrack-based, optical• Software is adapting, also simulationSoftware is adapting, also simulation
Looks never too late for big revolutions or major re-Looks never too late for big revolutions or major re-designsdesigns• Power of Object-Oriented ? …Power of Object-Oriented ? …