GSoC 2018 NASA-ESA WebWorldWind Support for WFS Format

'''Project Description ''' OGC Web Feature Service allows a client to retrieve and update geospatial data encoded in Geography Markup Language (GML) from multiple Web Feature Services. WFS Server supports various operations like Get Feature, Describe Feature Type, Lock feature and Transaction Operations.

Transaction operation is an optional operation which allows the feature instances and their properties to be updated or deleted and it can also be used to insert new features. Each transaction will consist of zero or more Insert, Update, and Delete elements, with each transaction element performed in order. The Transaction operation request will contain transformation operations like create, Update and Delete and web accessible feature instances on which operations need to be applied. When the transaction will complete, a web feature service will generate an XML response document indicating the completion status of the transaction.

In this project, OGC format Web Feature Service [WFS] client will be created which will support Transaction Operation on features by using WFS standard request and response. The goal is to parse Get capability request and to identify the capability of the server. And the proposed client will support Creation, Updation and deletion of the features instance using the shapes drawn on the Globe.

The state of Project before GSoC

Creation, Updating and deleting of the Features using the shapes drawn on the Globe is not supported by NASA-ESA WebWorldWind

Benefits to the community

Creation, Updation and deletion of the features by drawing shapes on the Globe will help a user to maintain web features stored on the server. The Functionality of current client will increase.

Project Deliverables

Deliver Classes that perform WFS (Transaction Operator) using the shapes drawn on the Globe. GUI code to display Updated features. Test Suits that perform testing with various data set. Complete documentation of Code.

Timeline

Community Bonding Period (April 23, 2018 -May 14, 2018) Get in touch with the community, mentors, and introduce my project to them and receive early feedback. Set up a wiki page to maintain weekly progress and other information of the project. Setup Github repository. Create Mockup Design for GUI. Install required software. Understand already existing code for WMS service.

Phase 1: May 14, 2018 - June 15, 2018

Week 1 (14th May -20th May) Work on Transaction Operation of WFS for creation of features. Sending request and parsing response. Create Weekly status report. Submit working code.

Week 2 (21st May - 27th May) Work on Transaction Operation of WFS for updation and deletion of features. Create Weekly status report. Deliver working code for Transaction operations. Week 3 (28th May - 3rd June) Create test cases and perform testing with various data set. Submit test suits. Create Weekly status report.

Week 4 (4th June - 10th June) Fixing of bugs and retest. Create Weekly status report. Deliver working code. Prepare final report of phase 1 submission.

First Evaluations (June 11 - 15, 2018) Evaluation of first phase work. Discuss phase 2 strategy.

Phase 2: June 15, 2018 - July 9, 2018

Transaction Operation of WFS using by taking input from shapes drawn on the Globe

Week 5 (11th June - 17th June) Make changes as suggested in feedback. Create Weekly status report. Week 6 (18th June - 24th June) Update code to perform Transaction Operation of WFS using the shapes drawn on the Globe. Create Weekly status report.

Week 7(25th June - 1st July) To create test cases and testing of GUI with various data set. Create Weekly status report.

Week 8 (2nd July - 8th July) Fixing of bugs and retest Create Weekly status report. Prepare final report of phase 2 submission

Second Evaluations July 9 - 13, 2018

Perform regression tests. Evaluation of second phase work. Discuss phase 3 strategy.

Phase 3 July 13, 2018 - August 6, 2018

Week 9 (9th July - 15th July) Make changes as suggested in feedback. Create Weekly status report.

Week 10(16th July - 22nd July) Creation of User friendly GUI for Transaction Operation of WFS. Deliver working code for GUI changes Create Weekly status report.

Week 11(23th July –29th July) To create test cases and perform testing of GUI with various data set. Deliver test suits. Create Weekly status report. Perform E2E testing.

Week 12(30th July – 6th Aug) Fixing of bugs and retest. Prepare final submission along with report of phase 3 submission.

Final Evaluations: August 6 - 14, 2018 Deliver a working implementation and report of the proposed functions. Deliver test suits. Discuss evaluation of final phase work. Discuss future work plan.

Status