Presentation is loading. Please wait.

Presentation is loading. Please wait.

OMap By: Haitham Khateeb Yamama Dagash Under Suppervision of: Benny Daon.

Similar presentations


Presentation on theme: "OMap By: Haitham Khateeb Yamama Dagash Under Suppervision of: Benny Daon."— Presentation transcript:

1 oMap By: Haitham Khateeb Yamama Dagash Under Suppervision of: Benny Daon

2 Agenda 1 2 3 4 Goals Methodology Life cycle Site parts 5 6 7 8 Events Acquired skills Future development Demonstration

3 Goals Our goal is to build a web-platform that: o Assembles environmental data of all kinds in one place. o Helps local authorities adhere to the law and publish environmental data. o Enables people to get these information o Supports future extension through layers and API

4 Methodology Use open source code packages - don't develop what's already available. Open source code o The project is licensed under the BSD license Extensive documentation + Automatic document generation from code and developer comments Allow future extension Easy to use interface

5 Project life cycle Idea Formulate Definition Research Work More Research Work Learning new technologies on the way

6 Accurate definition Brainstorm with the team members about the site features o Selected some of the ideas to fit in the project scope Defined project requirements Defined user types User scenarios A lot of cool ideas

7 Research Which back-end data engine to use? o Various alternatives: GeoDjango, SimpleGeo, MongoDB How to store and view data? o Various report file type o No fixed schema even for the reports of the same type Which map system to use?

8 Map The main part of the site Displayed in the home page The reports are displayed on top of it. o Each report is represented by a marker displayed on the relevant location o A click on the marker will bring short description of the report. o Full report is available by clicking on "more info" Different layers support. Multiple base layers support

9 Detailed View Detailed view of the report o Displays the full report file.  support for various report file types. Can be extended in the future to analyze the report content. Report comments system o Allows the users to interact o Available for authenticated users only

10 Users Users are managed by the auth.user django package New regular user can create an account via the registration form o They have to provide a valid email to receive a confirmation link. Super users are activated by admin Some features are available for authenticated users only o Comments o Data insertion

11 New data insertion Special interface for adding new reports Can be accessed by super users only The user has to fill in the report details: o Layer, subject, description, date, location o Provide the full report file  Will be saved as a raw data file in the server

12 API The database API provides an easy way for future extension or even new platforms. Developed using piston-django open source package Distinction between registered and anonymous users Database queries o Get all layers Geo-spatial queries o Get points inside a given polygon o Get points in a given radius of a given point  http://127.0.0.1:8000/api/point/search/layer=Layer1 &around=POINT (35.0722656215841013 32.3149192839854464)&r=50000000http://127.0.0.1:8000/api/point/search/layer=Layer1 &around=POINT (35.0722656215841013 32.3149192839854464)&r=50000000

13 Admin Panel Special admin interface o Can be accessed by the site admin only Provides easy to use interface for viewing/adding/updating database entries for example admin is authorized to add/delete other users. Moreover he can add and delete points on the map.

14 Tests We used Django's testing application to test the data base operations and the page requests. For testing the data base we added users, layers and points, and assured that they were correctly added. For testing the page requests, we simulated post and get requests using django testing applications and made sure the right pages were loaded ( by using asserts).

15 Open Layers Open Layers is an open source JavaScript library that provides maps support such as: Base layers and overlays Markers and click event handlers Navigation tools We use OpenStreetMaps for the base layer. And all the data of the same type are associated with the same overlay. The user can choose which overlays to be visible.

16 Events Brainstorming at the Sadna office o Site features ideas Django developers meeting at the Sadna Offices o Suggestions from experienced django developers Tsofen open source conference at Haifa o Presented the project for the public as an example of open source project

17 Acquired skills Python Research skills Django/GeoDjango/Django Templates Databases: Spatial databases (PostgreSQL, PostGIS) HTML and web design Git/GitHub Developing in open source CSS JavaScript OpenLayers Automated testing

18 Future development This project is the just the start! It provides the basic functionality. But there are many more to add. The basis is built and robust: The back-end engine, the map and overlays. The project will continue as an open-source. Every body is invited to take a part, you included :-). Features to add: o Make the site user aware o Connect automated sensors o Import CBS data

19 Questions ?

20 Thank You


Download ppt "OMap By: Haitham Khateeb Yamama Dagash Under Suppervision of: Benny Daon."

Similar presentations


Ads by Google