Software Requirements Specification for Geodesy System Version 0.4 approved Prepared by Gary Lai CSIRO 31-03-2008 Software Requirements Specification for Geodesy System Table of Contents Table of Contents .......................................................................................................................... ii Revision History ........................................................................................................................... iii 1. Introduction ..............................................................................................................................1 1.1 1.2 Purpose ........................................................................................................................................ 1 Project Scope ............................................................................................................................... 1 2. Overall Description ..................................................................................................................1 2.1 2.2 2.3 2.4 2.5 Product Perspective ..................................................................................................................... 1 Product Features .......................................................................................................................... 2 User Classes and Characteristics ................................................................................................. 2 Operating Environment ............................................................................................................... 3 User Documentation .................................................................................................................... 3 3. System Features........................................................................................................................3 3.1 Google Map ................................................................................................................................. 3 3.1.1 Description and Priority .......................................................................................................... 3 Functional Requirements ........................................................................................................ 3 3.1.2 3 3.2 Grid Clipboard ............................................................................................................................. 4 3.2.1 Description and Priority .......................................................................................................... 4 3.2.2 Functional Requirements ........................................................................................................ 4 3.3 Discovery Portlet ......................................................................................................................... 4 3.3.1 Description and Priority .......................................................................................................... 4 3.3.2 Functional Requirements ........................................................................................................ 4 3.4 Job Submission Service ............................................................................................................... 5 3.4.1 Description and Priority .......................................................................................................... 5 3.4.2 Functional Requirements ........................................................................................................ 5 3.5 Job Management Service ............................................................................................................. 5 3.5.1 Description and Priority .......................................................................................................... 5 3.5.2 Functional Requirements ........................................................................................................ 5 3.6 Job Results Service ...................................................................................................................... 6 3.6.1 Description and Priority .......................................................................................................... 6 3.6.2 Functional Requirements ........................................................................................................ 6 3.7 Daily Job Processor ..................................................................................................................... 6 3.7.1 Description and Priority .......................................................................................................... 6 3.7.2 Functional Requirements ........................................................................................................ 6 4. External Interface Requirements ...........................................................................................7 4.1 4.2 4.3 4.4 User Interfaces ............................................................................................................................. 7 Hardware Interfaces .................................................................................................................... 7 Software Interfaces ...................................................................................................................... 7 Communications Interfaces ......................................................................................................... 7 5. Other Nonfunctional Requirements .......................................................................................7 5.1 5.2 5.3 5.4 Performance Requirements ......................................................................................................... 7 Safety Requirements .................................................................................................................... 7 Security Requirements ................................................................................................................ 7 Software Quality Attributes ........................................................................................................ 8 6. Other Requirements ................................................................................................................8 Appendix A: Glossary....................................................................................................................8 Appendix B: Analysis Models .......................................................................................................8 Appendix C: Issues List .................................................................................................................8 Page ii Software Requirements Specification for Geodesy System Page iii Revision History Name Date Reason For Changes Version Gary Lai Gary Lai Gary Lai 17/03/2008 27/03/2008 28/03/2008 0.1 0.2 0.3 Gary Lai 31/03/2008 First Draft Update Diagrams and Requirements Reviewed by Ryan Fraser Update Context diagram. Update system functions description. Remove REQ-1.7. It is covered by UI-1. Add new component Data Scanner Modify requirements for Data Service Tool Add Software Interfaces and communication Interfaces. Remove Data scanner requirements Modify Diagrams Rename some porlets to services Rename Data Service Tool to Grid Clipboard Modify requirements for Grid Clipboard 0.4 Software Requirements Specification for Geodesy System Page 1 1. Introduction 1.1 Purpose The purpose of this document is to specify the requirements for the Geodesy system. 1.2 Project Scope The scope of this document is limited to the Geodesy system and associated components. 2. Overall Description 2.1 Product Perspective The Geodesy System is designed to provide the facilities for processing GPS automatically and allow user to submit and manage jobs. User Manage job Submit Job Results Access Map/Station Info Search/Discover Dataset Store Processed Data/Results GPS Sites Storage Search Geodesy System Get Configuration Info GeoNetwork register Status update Store Dataset info Serve Dataset Info Submit Job Geoserver Grid/Globus System Software Requirements Specification for Geodesy System Page 2 2.2 Product Features Discovery Portlet Grid Clipboard GoogleMap Daily Job Processor Geodesy System Job Submission Service Job Result Service Job Management Service The Geodesy System comprises of seven main functions: Discovery Portlet – this function allows user to search/discover the service and GPS dataset. GoogleMap – this function enables user to discover and select the GA Geodesy dataset. Grid Clipboard – this function manages references to user selected Geodesy dataset. Job Submission Service – this function enables user to submit a grid job for computation. Job Management Service – this function enables user to manage submitted job. Job Results Service – this function displays results to the user. Daily Job Processor – this function processes daily geodesy job automatically. 2.3 User Classes and Characteristics The user classes of this Geodesy system will be: 1. Expert Users – People familiar with Gamit and/or GPS data process, people experienced with HPC (ie: Paul Tregoning) 2. General User (inexperienced users - station operators, geologists, school teaches etc) 3. Administrator (coordinators of the system) Software Requirements Specification for Geodesy System Page 3 2.4 Operating Environment The Geodesy system will be implemented in a grid computing environment. Geodesy data and map layers will be served by a OGC webservice. Geodesy dataset will be made available via a HTTP, FTP and GridFTP server. Gamit will used be used for Geodesy backend processing. Cognac at iVEC will be the processing node for the Geodesy system. 2.5 User Documentation Documentation for users will be made available on Auscope’s twiki page. 3. System Features 3.1 Google Map 3.1.1 Description and Priority Google Map is the GUI interface which allows the user to discover the Australian Geodesy datasets (available from Geoscience Australia and mirrored at iVEC) in visual manner. The user can download the dataset by clicking the web link or select the dataset(s) to be processed later. Priority: Normal. 3.1.2 Functional Requirements REQ-1.1: The Google Map shall allow user to access a visual map displaying the locations of various GPS stations in Australia REQ-1.2: The user shall be able to zoom and navigate the Google Map in a similar way to any Google Maps application. Example: https://twiki.auscope.org.au/twiki/bin/viewfile/Grid/ProjectGeodesyWorkflow?rev =1;filename=GeodesyStationBoundingBox.jpg REQ-1.3: The user shall be able to click on a desired GPS node on the map to get summary information about the station, including at a minimum of: 1. 2. 3. 4. Station ID Station Name Location Log File(s) Software Requirements Specification for Geodesy System Page 4 REQ-1.4: The user shall be able to click on a desired GPS node on the map to browse through a list of GPS data links organised by years. REQ-1.5: The user shall be able to click on a GPS data link to download the dataset. REQ-1.6: The user shall be able to select a list of GPS dataset for grid computation later. REQ-1.7: The Google Map shall be deployed in a public accessible site. 3.2 Grid Clipboard 3.2.1 Description and Priority Grid Clipboard manages references to user selected dataset. Priority: Normal. 3.2.2 Functional Requirements REQ-2.1: The Grid Clipboard shall store references to dataset selected by user in Google Map. REQ-2.2: When user submits a grid job using the Job Submission Service, the Grid Clipboard shall copy the user selected dataset to storage. REQ-2.3: The Grid Clipboard shall allow user to download selected GPS datasets. REQ-2.4: The Grid Clipboard shall manage GPS datasets storage by including the minimum of: 1. create directory 2. delete directory 3. copy dataset 4. delete dataset 3.3 Discovery Portlet 3.3.1 Description and Priority Discovery portlet allows user to discover datasets and services via text searches using Geonetworks Priority: Normal. 3.3.2 Functional Requirements Software Requirements Specification for Geodesy System Page 5 REQ-3.1: The Discovery Portlet shall allow user to discover the Geodesy Sysem service and data. 3.4 Job Submission Service 3.4.1 Description and Priority Job Submission Service allows user to submit to job to the grid for computation. Priority: Normal. 3.4.2 Functional Requirements REQ-4.1: The Job Submission Portlet shall allow user to submit a grid job with a list of dataset selected on the Google Map or listed in the Data Service Tool. REQ-4.2: The Job Submission Service shall allow user to specify Gamit argument(s) for each grid job. REQ-4.3: The Job Submission Service shall allow user to specify Gamit input file directory for each grid job. REQ-4.4: The Job Submission Service shall allow user to specify arguments to pass to Gamit. REQ-4.5: The Job Submission Service shall allow user to specify grid processing settings, including a minimum of the following settings: i. Memory ii. Walltime iii. CPU 3.5 Job Management Service 3.5.1 Description and Priority The Job Management Service allows user to manage the submitted job(s). Priority: Normal. 3.5.2 Functional Requirements Software Requirements Specification for Geodesy System Page 6 REQ-5.1: The Job Management Portlet shall allow user to manage submitted jobs, including a minimum functions of: 1. Check Status 2. Terminate a Job REQ-5.2: The Job Management Service shall allow user to check job progress. REQ-5.3: The Job Management Service shall allow user to check job history. 3.6 Job Results Service 3.6.1 Description and Priority The Job Results Service allows user to see or download processed job results. Priority: Normal. 3.6.2 Functional Requirements REQ-6.1: Job Results Service shall provide “Today’s Results” results from the automated Daily Job Processor. REQ-6.2: Job Results Service shall provide results from user submitted job. 3.7 Daily Job Processor 3.7.1 Description and Priority The Daily Job Processor runs daily to process GPS data. Priority: Normal. 3.7.2 Functional Requirements REQ-8.1: The Daily Job Processor shall process geodesy data daily with today’s data from a set of Australian sites. Software Requirements Specification for Geodesy System Page 7 4. External Interface Requirements 4.1 User Interfaces UI-1: The Geodesy System shall provide a Web portlet based User Interface. 4.2 Hardware Interfaces There are no specific requirements for this system. 4.3 Software Interfaces The Porlets will use standard Java Portlet API. The Porlets will use JSR 168 compliant application server. The Google Map will use Google Maps API. The Data Scanner will use SQL to read/write to GeoServer database. The Data Service Tool, Submission Porlet and Daily Job Processor will use Globus GRAM API for grid job management 4.4 Communications Interfaces The Geodesy system will use WS-GRAM, and WS-MDS to communcate with Grid. The Geodesy system wil use FTP to communcate with GPS sites. The Geodesy system will useWMS and WFS to communcate with GeoServer and GeoNetwork. The Geodesy system will use GridFTP to communcate with Storage. The Geodesy system will use HTTP to communcate with User. 5. Other Nonfunctional Requirements 5.1 Performance Requirements There are no specific requirements for this system. 5.2 Safety Requirements There are no specific requirements for this system. 5.3 Security Requirements SE-1: The Geodesy System shall be integrated with the AAF infrastructure. Software Requirements Specification for Geodesy System Page 8 5.4 Software Quality Attributes There are no specific requirements for this system. 6. Other Requirements <Define any other requirements not covered elsewhere in the SRS. This might include database requirements, internationalization requirements, legal requirements, reuse objectives for the project, and so on. Add any new sections that are pertinent to the project.> Appendix A: Glossary <Define all the terms necessary to properly interpret the SRS, including acronyms and abbreviations. You may wish to build a separate glossary that spans multiple projects or the entire organization, and just include terms specific to a single project in each SRS.> Appendix B: Analysis Models <Optionally, include any pertinent analysis models, such as data flow diagrams, class diagrams, state-transition diagrams, or entity-relationship diagrams.> Appendix C: Issues List < This is a dynamic list of the open requirements issues that remain to be resolved, including TBDs, pending decisions, information that is needed, conflicts awaiting resolution, and the like.>