Post on 02-Jan-2016
Brent Fultz; Co-PIs are Michael Aivazis, Ian Anderson; PM is Mike McKernsCalifornia Institute of Technology
New ScienceBetter Science
Ease of UseSoftware Stability and Reuse
Support Early Operations of the SNS
Reasons for DANSE
Neutron Scattering
{coherent, elastic}
{coherent, inelastic}
{incoherent, elastic}
{incoherent, inelastic}
diffraction
dispersions
diffuse scattering
densities of states
Word Pairs Examples
http://physics.ucsc.edu/research/images/
Structure and Dynamics
QuickTime™ and aGIF decompressor
are needed to see this picture.
QuickTime™ and aGIF decompressor
are needed to see this picture.
QuickTime™ and aGIF decompressor
are needed to see this picture.
Correlation Functions
Diffraction, SANS gives spatial correlation functions (Patterson function — structure)
Inelastic scattering gives space-time correlation function (Van Hove correlation function — dynamics)
The DANSE ProjectDiffractionNSFInelasticScattering
Fultz/TrouwEngineering Diffraction
UstundagBillingeSANSButlerReflec-tometry
KienzleP.I.
Central Srvcs
SNS
FultzAivazisAnderson
SNSNCNRLujanIPNSHFIR
UserCommunity(International)
DANSE Project: Big Picture
• Enable new neutron scattering science by scientific computing.
• Allow experimentalists to rearrange modularized components, and create new components.
• Build enough important and quality pieces to make DANSE the choice of future developers.
• Well-defined tasks organized by subfields.
• System in place for Earned Value Management.
• M$ 12 over 5 years
Operational Goals
• Provide today’s capabilities of reduction and visualization• Enable new types of science in major subfields • Standardize software design, and start to standardize usage• Provide a runtime framework onto which scientists can add
components• Support for early SNS instruments • Maintainable by SNS before the end of the project
Component Framework
Encapsulate scientist’s code within component.
A component inherits methods from the framework,user communicates properties through framework.
1. Beginning Student
2. Senior Student or Postdoc
3. Young Scientist
4. Established Researcher
5. Instrument Scientist
6. Software Developer
7. System Maintainer
Users Differ in Needs and Expertise
One software system must serve everyone, but different people need different interfaces.
• Complexity reduced to essential modules • Reasonable defaults for most choices• Failures must be diagnosed and explained• Help with science principles
“Dashboard-type” GUI and Help services
Users: 1. Beginning Student
• Flexible, interactive explorations of data• Modeling and simulation packages• Compare outputs of different analyses• Software must facilitate science
Seeks empowerment from GUI and command-line control.
Users: 3. Young Scientist
• Well-documented access to the integration layer• Portable building tools• Robust framework for debugging• Regression test suites• Development process and tools for quality and efficiency
Direct command line control,but support for all other user interfaces.
Users: 6. Software Developer
Facilitate discovery in
neutron scattering science by raising
computation to a higher level of abstraction.
Can scientific careers be developed by
adding value at this higher level?
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
Experiment teams are alreadydelocalized geographically.Natural for collaborative interactionsacross distributed computing resources
theorist@mit
colleague@caltech
system@sns
data@ornl
DANSE and the NSF
• Leverage the DOE BES investment in SNS hardware to do innovative science (often done under NSF grants)
• Software has strong connections to NSF emphasis on- scientific principles- education
• Initiate a partnership between a university-based developer community and a national facility
• Communication and science community outreach is central to DANSE – should promote NSF-DOE interactions too
• DANSE, both project and product, is extensible to other facilities and disciplines
DANSE and the SNS
• DANSE project augments SNS expertise and resources • Early DANSE deliverables track instrument commissioning
at the SNS• DANSE project will facilitate new science from the SNS,
especially in the early years of operations• Good communication channels between SNS and DANSE• Decoupling of software development efforts
- DANSE emphasis on advanced data analysis (modeling and simulation)- SNS emphasis on data services (acquisition and curation)
• Engineering consistency: SQRL consults for the SNS, subcontract with DANSE
Backscattering Spectrometer (BL-2)
Magnetism Reflectometer (BL-4A)
Liquids Reflectometer (BL-4B)
SANS (BL-6)
Powder Diffractometer (BL-11A)
ARCS (BL-18)
CNCS (BL-5)
Vulcan (BL-7)
SNAP (BL-3)
Sequoia (BL-17)
Fundamental Physics (BL-13)
Spin Echo (BL-15)
TOPAZ (BL-12)
NOMAD (BL-1B)
Vision (BL-16B)
HYSPEC (BL-14B)DANSE Project
DANSE Effort Today (Personnel)• All senior personnel together since early 2003
- scientific and technical leadership- assessment of what is practical to deliver
• Professional staff- infrastructure, support tools, institutional memory
• Postdoc Software Developers- mostly physical scientists interested in software- varying software skill okay, but cannot start at zero- must sustain their scientific research - transitions out of DANSE/ARCS projects have been successful
• Graduate Students- can leverage DANSE in thesis research- testing and some development
• Undergraduate Students- mostly in computer science
• External collaborators
DANSE Effort Today (Technical)
• Scientific capabilities defined, packages selected (over 4 years, 12 workshops, 6 polls, and former CED project)
• ARCS inelastic software in production, pyre framework
• Reflectometry software in production, moving to framework
• Software development process is established
• Common components for I/O, interface, and numerics gives economies of scale, reusability, uniformity, and fewer bugs
DANSE Effort Today (Management )
• Earned value management established with a Project Baseline
• Change, risk, configuration control plans are ready
• Infrastructure tools identified (svn, trac, build/release, gui)
• Development processes are specified
• Project management in place
Work Breakdown Structure
• Think of Microsoft Project
• Layout of all tasks. Each task has:- description in a dictionary file- estimate of time
- estimate of cost- markers of task progress
• WBS maintained by Mike McKerns, Project Manager
• Changes are expected, but must be documented.
Earned Value Management System
• Beyond Microsoft Project, becoming a federal requirement
• Monthly reports of progress (Earned Value)
- use markers of task progress
• Monthly reports of expenditures (Actual Costs)
- estimates of time and cost
• Actual Costs and Earned Value are in units of dollars
• EVMS maintained by B. Thibadeau at SNS
Integration of:Design Process, QA, Releases
• State purpose of component, specifications, functional tests• Object-oriented programming allows early selection of design
patterns• Review, commit to svn
• Prototype. Review the design and costs• Build to specifications, revise specs, develop certification tests
• Deploy to all target systems Release Milestones.For applications, occurs about annually.Good time for a Review.
Features of the Development Process
• Misperceptions of specifications are the biggest source of risk in software projects.
• DANSE developers write specs, so communication problems are minimized.
• Code inspections and QA practices further minimize risk.
• Agile commercial practices are appropriate for a scientific development team.
• Good specifications and requirements can facilitate collaborations.
Education
• Pre-service teacher education at ISU- develop K-12 lesson plans from subprojects- adoption by young teachers
• Nanoscience program at MSU
• Student involvement - minority student funds- testers of software and documentation- some in computer science
• New role for documentation (texts by Fultz, Billinge, Ustundag)
Broader Impact
• Algorithm Development Moves to Higher Levels- flexible integration of DANSE components and applications- subproject science packages
• DANSE should be Useful for Other Groups- other neutron facilities- synchrotron radiation research- education programs in materials/chemistry/condensed matter
• Demonstrate a New Approach to Scientific Software Development - professional standards with O-O design- distributed team, now cohesive- some interest from computational scientists
Summary of DANSE
• The road from neutron data to neutron science is paved by computing.
• DANSE system moves data analysis at the a higher level of abstraction where new science is found.
• Integration of Design, Development, QA, Release Management.
• Plan, key personnel, technical and management systems are in place for construction of DANSE. Now funded by NSF IMR-MIP program 2006-2011.
For this Kickoff Meeting
• DANSE Subproject Teams- Status reports- Technical discussion
• Collaborators- Look over DANSE status and plans- We want to hear updates from you too
• Visitors to this Kickoff Meeting- Do we have common interests?- Keep in touch!