A Collaborative Approach to Component-Based Community Models and Tools George Leavesley and Olaf David Colorado State University, USDA, Fort Collins, CO.

Slides:



Advertisements
Similar presentations
Construction process lasts until coding and testing is completed consists of design and implementation reasons for this phase –analysis model is not sufficiently.
Advertisements

Delivering SCIENCE AND TECHNOLOGY Through the National Science and Technology Consortium.
O David Colorado State University, ARS/NRCS Fort Collins, CO (J Lyon, W Lloyd, K Rojas, F Geter, L Ahuja, J Ascough, J Carlson, M Arabi, L Garcia)
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Standa Vaněček The potential of Integrated Modelling and the OpenMI Standa Vaněček DHI, Chairman of the OATC.
A MODELING FRAMEWORK FOR IMPROVED AGRICULTURAL WATER- SUPPLY FORECASTING George Leavesley 1, Olaf David 1, David Garen 2, Angus Goodbody 2, Jolyne Lea.
Object-Oriented Analysis and Design
© 2006 IBM Corporation IBM Software Group Relevance of Service Orientated Architecture to an Academic Infrastructure Gareth Greenwood, e-learning Evangelist,
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
1 Dr. Frederica Darema Senior Science and Technology Advisor NSF Future Parallel Computing Systems – what to remember from the past RAMP Workshop FCRC.
© , Michael Aivazis DANSE Software Issues Michael Aivazis California Institute of Technology DANSE Software Workshop September 3-8, 2003.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
WebDynpro for ABAP Short introduction.
Course Instructor: Aisha Azeem
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Watershed Data System: Overview Jean L. Steiner, E. John Sadler, Jin-Song Chen Greg Wilson, David James, Bruce Vandenberg John Ross, Teri Oster, Kevin.
Configuration Management
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Object Oriented Analysis and Design Using the UML
Chapter 6– Artifacts of the process
What is Business Analysis Planning & Monitoring?
Chapter 10 Architectural Design
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
The Design Discipline.
OpenAlea An OpenSource platform for plant modeling C. Pradal, S. Dufour-Kowalski, F. Boudon, C. Fournier, C. Godin.
Chapter 2 The process Process, Methods, and Tools
Metadata Creation with the Earth System Modeling Framework Ryan O’Kuinghttons – NESII/CIRES/NOAA Kathy Saint – NESII/CSG July 22, 2014.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
The Role of the Object Modelling System (OMS) for Integrated Assessment of Conservation on Agricultural Land in the United States J. Carlson, O. David,
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
Creating a Shared Vision Model. What is a Shared Vision Model? A “Shared Vision” model is a collective view of a water resources system developed by managers.
May 29 th, 2003 Curtis Anderson Sivaprasad Padisetty.
Overview of WEAP. Water Evaluation and Planning System WEAP A generic, object-oriented, programmable, integrated water resources management modelling.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
Joint Federal Interagency Conferences, Reno, Object Modeling System - A Modeling Platform Olaf David 1,2, Laj Ahuja 2, Frank Geter 3 1 Colorado.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Object Modeling System (OMS 3) Update 1. General 2. Annotations replace API 3. Multi-threading 4. Simulations 5. Documentation - Audit-trails 6. Model.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Development of a Prototype Framework to Facilitate Interoperable Freshwater Modelling in New Zealand Daniel Rutledge, Sandy Elliott, Val Snow, Gabi Turek,
S. Shumilov – Zürich Analytical Visualization Framework - a visual data processing and knowledge discovery system Ivan Denisovich, Serge Shumilov Department.
Object Modeling System Laj Ahuja, Frank Geter, Olaf David, Ian Schneider George H. Leavesley ARS Great Plains System Research, Fort Collins NRCS Information.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Virtual Experiment © Oregon State University Models as a communication tool for HJA scientists Kellie Vache and Jeff McDonnell Dept of Forest Engineering.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
OMS Briefing 1 The Object Modeling System (OMS) Olaf David, Ken Rojas, Jim Ascough, Laj Ahuja, and Jack Carlson.
A Modeling Framework for Improved Agricultural Water Supply Forecasting George Leavesley, Colorado State University, Olaf David,
1/30/2003 Los Alamos National Laboratory1 A Migration Framework for Legacy Scientific Applications  Current tendency: monolithic architectures large,
BG 5+6 How do we get to the Ideal World? Tuesday afternoon What gaps, challenges, obstacles prevent us from attaining the vision now? What new research.
Modeling with WEAP University of Utah Hydroinformatics - Fall 2015.
© 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang 6-1 Chapter 6 Decision Support System Development.
From MMS to OMS to a Minimally Invasive Modeling Framework George Leavesley and Olaf David Colorado State University, USDA, Fort Collins, CO.
Building Enterprise Applications Using Visual Studio®
Delivery of Science Components to NRCS Business Applications
Presented by Munezero Immaculee Joselyne PhD in Software Engineering
IEEE Std 1074: Standard for Software Lifecycle
OMS 3.0 O. David, J. Carlson, J. Ascough II, K. Rojas, F. Geter, W. Lloyd USDA - ARS - Agricultural Systems Research Unit USDA – NRCS - Information Technology.
Analysis models and design models
Architecture Description Languages
Presentation transcript:

A Collaborative Approach to Component-Based Community Models and Tools George Leavesley and Olaf David Colorado State University, USDA, Fort Collins, CO

2 Overview Definitions Technical and Social (Cultural, Institutional,..) Issues The Object Modeling System (OMS) –Component development –Model assembly –Collaborative Component and Model Development (Colab) –Component and model sharing (the Repository) –Support components (visualization, calibration, sensitivity analysis, …) –Selected applications Closing Remarks

3 Definitions Component-based modeling - based on the concept of composing or assembling models out of independent but pluggable parts –Model components support - REUSE: can be reused in other models CONSISTENCY: provide consistent results QUALITY: can be rigorously tested FLEXIBILITY: appropriate code for problem objectives, data constraints, and space-time scales of application MULTI-DISCIPLINARY APPROACH: experts focus on their discipline and interfaces among disciplines Community – Hydrologic/environmental science and all related disciplines? Research and operational users?

4 Technical Issues Multiple system architectures (portability) Numerous modeling frameworks Multiple programming languages Legacy models and legacy code (wrap, compile, refactor …) Open source Continuing advances in software and hardware Need highly experienced and skilled computer scientists as a part of the community …

5 Social Issues Acceptance and awareness of the advantages of community modeling frameworks Agreement on appropriate and desirable framework technologies Concurrence about terminology across disciplines Organizational scope Team skills Framework/language learning curve Rewarding reuse, benefit it will have others Crediting papers vs. code Technology diffusion – how innovations are accepted by successive subgroups

6 Object Modeling System Component based IDE for –Developing model components –Integrating components into models –Running models –analyzing model results –Managing modeling resources

7 Object Modeling System (OMS) Modeling Projects Component Library Assembled Model Parameter Editor Component Editor Output Analysis IDE based on NetBeans

8 Generic Modeling System Schematic Data IO GUI Time step component Spatial unit component Data Parameter Handling time step iteration spatial unit iteration ETP Inter- ception Snow Soil- water Ground- water Inter- flow Base- flow Surface RO Irrigation Erosion Surface water use Ground water use Plant growth Stream RO Generic System Components Model Setup Sensitivity Analysis Optimization Process module library ETP Hydr. GW … … … WQ Irrig. … … [Krause 2004]

Component Development “Creating the model building blocks”

10 What is a Component ? Encapsulates operations to realize one specific purpose Typically a ‘physical’ process. Component attributes provide the communication among components Model Component Attribute Snow Snowmelt Soil

11 Component Implementation Java Class that implements –Executable, –Stateful … Defines Attribute references –Attribute.Double –Attribute.Integer –.. Defined Method structure –initialization –component logic –cleaning up resources –additional methods init() run() cleanup() Component Implementation Attribute objects

12 Component API

13 Component Meta Data Component Name Annotations –Description –Keywords –Version Info –Source –Author –(Status)

14 Component Attributes Attribute Objects –Type –Name Attribute Annotations –Description –Access –Role –Unit –Constraint Packages –org.oms.model.data –org.oms.model.data.annotations

15 Native Components Can be implemented in FORTRAN,C, C++ FORTRAN: automatic encapsulation of subroutines/functions into a component. Embedded JNative library is able to call dynamic link libraries.

Model Building - Integrate Components into a model - Connect Component Attributes

17 Adding a Component Drag and Drop a component into a model Where to instantiate the Attributes? Scoping

18 Create a Model A model is a hierarchical assembly of components Sequential Execution order Model Wizard

19 Component Attribute Connectivity Introduced by components when they are added to the model or explicitly declared Attributes get shared among components Global data element in a model Primitive and aggregated data structures Connections changeable Component Attribute references point to Model Attribute Objects

20 Component and Attribute Connectivity

21 Component Palette Controls execution of components Control Components –Sequential execution –Parallel Execution –Conditional Exec –Iteration –Temporal Execution –Spatial Execution Repository Components

22 Time – Space – Process Configurations Space Time Process Time Process Space Time Space Process

23 Time – Space – Process Configurations Time Space Processes

24 Modeling Projects Workspace that contains all resources for developing and running a model –Documentation –Input Data –Output data –Model Components Component = behavior –Model Assemblies Model = components + attributes –Simulations Simulation = model + input data + execution scheme + selected output analyses Project level Actions

25 Collaborative Model Support users 20+ orgs 350+ projects since 2005 USDA/USGS/EPA/ ARS/CSU/..

26 Modeling Project Support in CoLab Issue Tracking for Bugs & Tasks Document Management Wiki Spaces Version Control (Subversion) QA metrics Build Support Discussion Forum, Integration Search and Indexing

27 USDA Collaborative Modeling Infrastructure Model Development - Construct - Run - Analyze - Test - Verify Model ProjectManagement Model Project Management - Tracker - Forums - Documents - CMM Reports - Access Control ModelResourcesChange Management Model Resources Change Management - Version Control - Change Management - Repository - Concurrent Access OMSOMS SubversionSubversion CodebeamerCodebeamer

Component Repository “Towards the establishment of a standard library of interoperable, reusable science and auxiliary modeling components”

OMS Component Repository OMS Model Component Repository Library of reusable components each described by: - Set of attributes - Meta data on key details to enable retrieval Represent / Publish (push) Search/Retrieve (pull)

30 Access CoLab Components directly from OMS Connect Explore Palette Use

31 Model Support and Analysis Components

32 Map OMS model input/output data into NASA World Wind

33 Interactive Model Interface Tools Project Browser Simulation Navigator Data Table Equation Box Map Window HRU 15 Selected Data Table Filters Time Slider

34 Analysis Tools Canned analysis configurations Analysis of output data –Graphs TimeSeries Plot XY Error Flow duration Residuals –Statistics Table IO/API

35 ESP Trace Analysis Ensemble Streamflow Prediction (ESP) Tool Statistical analysis Report generation

36 Hay and Umemoto, 2006, Multiple-Objective Step-Wise Calibration using Luca: U.S. Geological Survey OFR Multiple-Objective Step-Wise Calibration Tool Using SCE LUCA -

37 Selected Current Applications

38 Initially:  Water Quality  Water Conservation  Soil Quality Later:  Air Quality  Wildlife Habitat Initially:  Cropland (Rainfed) Later:  Cropland (Irrigated)  Grazinglands  Wetlands  Agro-forestry Lands Resource Concerns Land Use Categories USDA Conservation Effects Assessment Project (CEAP) A Cooperative Effort to Assess Environmental Effects and Benefits from Conservation Programs at National and Watershed Scales

39 Soil Climate Plant/Crop … NRCS Data Warehouse OMS Model Interface PS1 Nutrients Hydrology 1 Crop Growth 1 PS2 PS1 ErosionWindLeaching 1 Hydrology 2 Crop Growth 2 Hydrology 2 Crop Growth 1 OMS Model AOMS Model B OMS Model C ARS Science Module Warehouse OMS Model Engine OMS Toolbox Hydrology Erosion Crop Growth Modules.. ARS/CEAP Goal regionalized models, databases, and scenarios for site-specific watershed assessment studies and national assessments

40 Agricultural Water Supply Forecasting (USDA – NRCS National Water and Climate Center)

41 Moving from a regression- based seasonal supply forecast to a process-model based daily/weekly/monthly forecast approach using OMS Agricultural Water Supply Forecasting Research Elements: Evaluate alternative climate scenarios in ESP Evaluate alternative precip distribution methods Develop an ensemble of models for forecasting

42 Next Steps Continue to add components to the shared library from research, support, and applications users OMS 3.0 will enable scalability from 1CPU to multi-core to cluster to cloud computing OMS runtime will be part of USDA SOA Business Enterprise architecture

43 Closing Remarks OMS is one of several frameworks focused on “community” model development Regarding technical issues OMS – –Supports multiple platform applications, open source –Supports multiple programming languages using industry standard language support tools (minimizing use of design specific languages, minimizing learning curve) –Supports scalability across single to multiprocessor computing approaches Is there a universal framework concept acceptable to the “community” or a need to consider multiple framework concepts? Support from the Computer Science community is critical in community model framework development

44 Closing Remarks Regarding Social Issues –Concensus on the CUAHSI community vision needed –Workshops are a great start –Need to address Technology Diffusion in the process of Community Model standards adoption (See Dibner and Arctur, IEMSS 2008) Innovators, Early Adopters, Early Majority, Late Majority, Laggards Theory says chasm is between Early Adopters and Early Majority –Include all the anticipated community disciplines in the design workshops –While research is a focus, don’t exclude the applications community