Google Summer Of Code Ideas List

From OpenJUMP Wiki
Revision as of 21:15, 7 March 2010 by Mentaer (talk | contribs) (Created page with 'Below is a list of topics for a [http://socghop.appspot.com/document/show/gsoc_program/google/gsoc2010/faqs#org_is Google summer of code project]. However, several of those topic…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Below is a list of topics for a Google summer of code project. However, several of those topics need to be evaluated for their fitness, i.e. a sufficient degree of innovation. We also need to look which of those topics would enhance OpenJUMP Vector editing and analysis strength, and which topics are urgently needed to complete the set of standard GIS functionality.

Notes:

  1. GSofC student applications are from *March 29th to April 9th*. (Mentoring applications are due March 8th-12th)
  2. All projects require a "decent" knowledge of programming in JAVA. Certain topics require even advanced Java knowledge (i.e. the topics involving databases). An introduction to development with OpenJUMP will be given by us.
  3. The time of the GSofC is given from May 24th to August 16th, i.e. three months


List of Topics

(7th March - sstein: needs revision)

  • Continuing work on the JTIN library that allows OpenJUMP to work with TIN data. Special focus on publishing functional plug-ins for existing code, and on enhancing JTIN to work with extra-large data sources. (sstein - Priority Topic)
  • Work on adding support for "external" tables (non-spatial features) in OpenJUMP.
  • Work on routing plug-in for OpenJUMP.
  • Work on upgrades of OpenJUMP core. This would include adding support for new Java language features and splitting the program "model" from the GUI. E.g. implementing a docking framework.
  • Work on angle and direction support for JTS Warped library. (sstein: not sure what is meant here)
  • Work on precision CAD drawing and modification tools for OpenJUMP.
  • Work on support for cartographic map production from OpenJUMP using open source tools like Scribus and Inkscape. (Focus on enabling export of Inkscape compatible SCG from \OpenJUMP.)
  • Integrate cartographic projections support into OpenJUMP core (using deegree or geotools libraries). (sstein - Priority Topic)
  • Work on an abstract data layer and a model that allows to store data in the H2 database. This way OpenJUMP should be enabled to work also with large datasets and not only datasets that can be load into the memory. (sstein - Priority Topic)
  • Working on a graphic flow chart modeller (such as Sextantes modeler or ESRI Modelbuilder) that can be used to chain different processing steps. This Topic should also include a proper binding with Sextante to allow raster image analysis in OpenJUMP.
  • Implementation of (explorative) statistics tools (charts and graphs) for data analysis and reporting (see for instance GeoDa and [www.jfree.org/jfreechart/ JFreeChart]).
  • Implementing build-in write support for databases such as PostGIS, Oracle and MySQL that allows all-at-once but also incremental writing (see gvSIG implementations).
  • Continuing developments of a Web Processing Service (WPS) plugin for OpenJUMP and a server based on OpenJUMP functionality (see WebGEN by Moritz Neun and Theodor Foerster).
  • Integration of a help system for (analysis) functions.
  • Improving text labeling options (see gvSIG plugin).
  • Creating a draft and proptype of "OpenJUMP Mobile" for data creation and editing in the field. This involves in particular the design of a new GUI that allows to use existing mechanisms.
  • Extend OJs core so that annotations can be stored including images and web links (similar to Google Maps Push Pins).
  • Implement a default-settings/ini-file system to allow OpenJUMP to be used in larger business operations. (sstein: not sure if that is a 3 months task)

If you are interested in one of those topics please write to Landon (sunburned.surveyor[.at.]gmail.com) or Stefan (sstein[.at.]geo.uzh.ch) or even better: write both.