1 Enabling technologies and constraints for software sharing in large astronomy projects G.Chiozzi...

26
1 Enabling technologies Enabling technologies and constraints for and constraints for software sharing in software sharing in large astronomy large astronomy projects projects G.Chiozzi – ESO, Germany G.Chiozzi – ESO, Germany A.Bridger – UK Astronomy Technology Centre, UK A.Bridger – UK Astronomy Technology Centre, UK K.Gillies – Space Telescope Science Institute K.Gillies – Space Telescope Science Institute B.Goodrich, S.Wampler - National Solar Observatory, B.Goodrich, S.Wampler - National Solar Observatory, Tucson, AZ Tucson, AZ J.Johnson, K.McCann – W.M.Keck Observatory, Kamuela, J.Johnson, K.McCann – W.M.Keck Observatory, Kamuela, HI HI G.Schumacher – National Optical Astronomy G.Schumacher – National Optical Astronomy Observatories, La Serena, Chile Observatories, La Serena, Chile

Transcript of 1 Enabling technologies and constraints for software sharing in large astronomy projects G.Chiozzi...

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?are they measurable?

66Lines of code for TCS or ESO telescopes

… … 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 sharingOpportunities for sharing

1010

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:

[email protected]

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.