1 enabling technologies and constraints for software sharing in large astronomy projects g.chiozzi...
TRANSCRIPT
11
Enabling technologies and Enabling technologies and constraints for software sharing constraints for software sharing
in large astronomy projectsin large astronomy projects
G.Chiozzi – ESO, GermanyG.Chiozzi – ESO, GermanyA.Bridger – UK Astronomy Technology Centre, UKA.Bridger – UK Astronomy Technology Centre, UK
K.Gillies – Space Telescope Science InstituteK.Gillies – Space Telescope Science InstituteB.Goodrich, S.Wampler - National Solar Observatory, Tucson, AZB.Goodrich, S.Wampler - National Solar Observatory, Tucson, AZ
J.Johnson, K.McCann – W.M.Keck Observatory, Kamuela, HIJ.Johnson, K.McCann – W.M.Keck Observatory, Kamuela, HIG.Schumacher – National Optical Astronomy Observatories, La G.Schumacher – National Optical Astronomy Observatories, La
Serena, ChileSerena, Chile
22
Aspects analyzedAspects analyzed
Why are we now discussing Why are we now discussing sharingsharing??
What do we mean byWhat do we mean bysoftware sharingsoftware sharing??
Benefits of Benefits of software sharingsoftware sharingBarriers to Barriers to software sharingsoftware sharingFostering reuseFostering reuseOpportunities for Opportunities for sharingsharingConclusion… or just the beginning?Conclusion… or just the beginning?
33
The right time?The right time?
1990
2000
2005
2010
2015
2020
1995
VLT/VLTI
Gemini N/S
Keck
ALMA
LSST
ATST
E-ELTTMT
Software SharingSoftware Sharing: what is it?: what is it?
44
Reusing software assets
Black boxor
white boxOpportunistic
orplanned
Horizontalor
vertical
BenefitsBenefits
SW Engineers agree that sharing can bring SW Engineers agree that sharing can bring major benefits:major benefits:
Improved productivity and quality while decreasing cost. Improved productivity and quality while decreasing cost. Saving time and money while achieving greater reliability Saving time and money while achieving greater reliability More effective use of domain experts More effective use of domain experts Building an improving knowledge baseBuilding an improving knowledge base Improvements are propagated throughout all systems Improvements are propagated throughout all systems Standards can be developed and deployedStandards can be developed and deployed Reduced maintenance costs (shared maintenance and Reduced maintenance costs (shared maintenance and
less code) less code)
55
… … are they measurable (cont.)?are they measurable (cont.)?
77Reduction of lines of code for instruments
BarriersBarriers
Technical:Technical: Functionality, programming language, OSFunctionality, programming language, OS ““Local” standards and data formatsLocal” standards and data formats
Sociological/project management:Sociological/project management: Timing between projectsTiming between projects ““Not invented here”, project cultureNot invented here”, project culture Cost and politics of sharing.Cost and politics of sharing.
88
The astronomical SW community:The astronomical SW community:• No significant track recordNo significant track record• No mechanismNo mechanism• No critical massNo critical mass
Fostering reuseFostering reuse
Open source practices:Open source practices: Solid Solid corecore Process of Process of contributingcontributing ConnectingConnecting the community the community Understanding Understanding collaborationcollaboration Recognition of Recognition of creativecreative nature nature
Community interest Community interest and management and management sponsorshipsponsorship
Working groupsWorking groups
99
Getting people involved:Getting people involved: Involve management, staff Involve management, staff
and “customers”and “customers” Conferences and joint papersConferences and joint papers Meetings in small groups, Meetings in small groups,
exchanges, sabbaticalsexchanges, sabbaticals Federating with related Federating with related
communitiescommunities
Opportunities for sharing (2)Opportunities for sharing (2)
Software Engineering StandardsSoftware Engineering StandardsCoding, development, design and processCoding, development, design and process
Design, knowledge and experienceDesign, knowledge and experienceSimilar architectural designsSimilar architectural designsLibrary of domain patterns?Library of domain patterns?Knowledge base for astronomical control SW Knowledge base for astronomical control SW
engineers? engineers?
1111
Opportunities for sharing (3)Opportunities for sharing (3)
Functional Interface StandardsFunctional Interface Standards Very similar observatory’s SW architectureVery similar observatory’s SW architecture Should be possible to standardize functional interfacesShould be possible to standardize functional interfaces Why is there NO generic and portable TCS?Why is there NO generic and portable TCS?
Data Interface StandardsData Interface Standards Data structures are often hidden behind functional IFData structures are often hidden behind functional IF Is it possible to standardize instrument configuration or the Is it possible to standardize instrument configuration or the
configuration of some subsystems?configuration of some subsystems? Project Data Model? User Database?Project Data Model? User Database? The Data Handling community is ahead (FITS)!The Data Handling community is ahead (FITS)! But do we have the requirement?But do we have the requirement?
1212
Opportunities for sharing (4)Opportunities for sharing (4)
Middleware and infrastructureMiddleware and infrastructure Common servicesCommon services Hide distribution and Hide distribution and
heterogeneityheterogeneity Is a common Is a common
infrastructure feasible?infrastructure feasible? Should we put up a working group?Should we put up a working group?
Software packagesSoftware packages There are a number of packages in use (sla, cfitsio)There are a number of packages in use (sla, cfitsio) Need tools to collect, review and discuss packagesNeed tools to collect, review and discuss packages
1313
1414
ConclusionConclusion We do We do notnot want to develop yet another infrastructure want to develop yet another infrastructure We want to concentrate on our We want to concentrate on our domain workdomain work We have analyzed different means for sharing, depending on the We have analyzed different means for sharing, depending on the
contextcontext We have seen that We have seen that collaborations are now more practical and collaborations are now more practical and
affordable than everaffordable than ever We aim at:We aim at:
Sharing lessons learnedSharing lessons learned Identifying areas for greater cooperationIdentifying areas for greater cooperation
We dream of broad scale, We dream of broad scale, component based, reusecomponent based, reuse
How do we get there?.....How do we get there?.....
…let’s discuss it all together at the “round table”!……
1515
Questions?Questions?
We represent just a tiny subset of the projects in astronomy.Many more colleagues in the astronomical observatory community have given their ideas and time as we have developed this paper.We want to thank in particular Dave Silva and Anders Wallander for their participation and essential contribution to these discussions in the last year.
Contact:
In the paper you can find an interesting bibliography!
1616
OPEN DISCUSSIONOPEN DISCUSSION
Creating an open software Creating an open software community for observatorycommunity for observatory
control and operation: control and operation: Is it possible? Is it possible?
Is it worthwhile? Is it worthwhile?
What is the right path?What is the right path?
Is this a good idea, in practice?Is this a good idea, in practice?What can/should we do?What can/should we do?How?How?Who would like to join in the effort?Who would like to join in the effort?The next steps?The next steps?
1717
Opportunities for sharingOpportunities for sharing
Software Engineering StandardsSoftware Engineering StandardsDesign, knowledge and experienceDesign, knowledge and experienceFunctional Interface StandardsFunctional Interface StandardsData Interface StandardsData Interface StandardsMiddleware and infrastructureMiddleware and infrastructureSoftware packagesSoftware packages
1818
1919
OPEN DISCUSSIONOPEN DISCUSSION
Creating an open software Creating an open software community for observatorycommunity for observatory
control and operation: control and operation: Is it possible? Is it possible?
Is it worthwhile? Is it worthwhile?
Summary!Summary!
The discussionThe discussion
Is this a good idea?Is this a good idea?
Yes it is!Yes it is!2020
~120 people
Highlight quotesHighlight quotes
We DO LIKE to reuse what We DO LIKE to reuse what we do NOT LIKE to do ourselveswe do NOT LIKE to do ourselves
Analyze first what succeededAnalyze first what succeeded To not get entangled in technology To not get entangled in technology
discussionsdiscussions Focus on domain expertiseFocus on domain expertise I reuse well documented thingsI reuse well documented things I do not want to find “The Solution” but I want I do not want to find “The Solution” but I want
to see multiple optionsto see multiple options2121
What can/should we do What can/should we do for a start?for a start?
Mailing list / forumMailing list / forumWikiWiki
Who is going to host them?Who is going to host them?Create an initial list of topicsCreate an initial list of topicsRate them and select the 5 top by Rate them and select the 5 top by
priority/interestpriority/interest Identify responsible person for each areaIdentify responsible person for each areaLook after 1 year and make a checkpointLook after 1 year and make a checkpoint
2222
Periodical MeetingsPeriodical Meetings
ADASS (once/year):ADASS (once/year):BoF sessionBoF sessionAlready some more concrete ideasAlready some more concrete ideas
SPIE (every two years)SPIE (every two years)Some phone meetings to coordinate the Some phone meetings to coordinate the
activitiesactivitiesSub-groups would decide if/how/when to Sub-groups would decide if/how/when to
meetmeet
2323
Some issuesSome issues
Look at similar initiatives for procedures/tools:Look at similar initiatives for procedures/tools: NASA Earth Science Data Systems Software Reuse Working NASA Earth Science Data Systems Software Reuse Working
Group Group ((http://www.esdswg.org/softwarereuse)? )? Opticon?Opticon? Can we directly piggy back on one?Can we directly piggy back on one?
Keep it very domain specific?Keep it very domain specific? People should offer their body and soul for:People should offer their body and soul for:
Enhancing the original core teamEnhancing the original core team Coordinating and keeping alive the topicsCoordinating and keeping alive the topics
Look for resources:Look for resources: Man power approval inside our organizationsMan power approval inside our organizations Funding from agencies (NSF, EU FPx programs?) Funding from agencies (NSF, EU FPx programs?)
2424
Tomorrow?Tomorrow?
Think think think: what can YOU do to make it Think think think: what can YOU do to make it really happen?really happen?
Get in touch with me (Get in touch with me ([email protected]) or ) or anybody of the authors of the paper, to offer your anybody of the authors of the paper, to offer your collaboration.collaboration.
We will quickly setup an initial mailing list//forum We will quickly setup an initial mailing list//forum and wikiand wiki
Follow upFollow up Spread the wordSpread the word Convince your boss to give you some resourcesConvince your boss to give you some resources
2525
2626
Thanks!!!!!Thanks!!!!!
Contact: [email protected]
I will put links and this PPT in my home page:
http://www.eso.org/~gchiozzi
Will move things as soon as we will have the wiki and redirect from there.