Server

From Dycapo Project

(Redirected from Dycapo)
Jump to: navigation, search

Dycapo Server [a.k.a. DyCaPo - DYnamic CArPOoling] is a free software system developed in the SoNET unit of the Fondazione Bruno Kessler. It is currently a solo project started by Daniel Graziotin for his BSC thesis at the Free University of Bolzano/Bozen.

Contents


A Prototype

Dycapo Server is a software built using evolutionary prototyping to demonstrate and support our contributions to OpenTrip dynamic and therefore the definition of a standard protocol for (Dynamic) Ridesharing. It will first provide full functionalities for dynamic ridesharing using an XML-RPC based protocol. Then we will fully support and extend OpenTrip Dynamic with a RESTful webservice.

See Strategy for more information.

Software Engineering Section

Mission Statement

We are going to develop an open client (mobile)/server system prototype that will improve travel experiences of users in a city. The system will let people to define a destination on their mobile phone. DyCaPo will suggest and arrange trips by either using the Public Transport Service or Carpooling volunteers.

That is, DyCaPo will implement full Dynamic Carpooling functionalities as well as static approaches.

The system will be first thought, implemented and tested for the city of Trento, Italy. As the implementation continues and succedes, the whole national territory could be served.


A simple User Story

John is at Ponte San Lorenzo, Trento and wants to travel to the Music Center of Trento (click on the link to see the Google Maps indication). The distance is of about 4kms. He takes out his mobile phone and inserts his travel wish plus a maximum time to wait for a ride.

Fred is driving back from work. As usual, he inserted this recurrent trip in his mobile phone application, so he is available for carpooling. He is at about 700metres from John and is going in the same direction.

John sees the possibility of a ride on his mobile phone, and accept Fred as a driver. Fred confirms his will to carry John with him, and sees his location on a map. John does also see Fred's position.

Fred and John meet and share the ride.

Analysis Phase

Even if DyCaPo is a one-man project, it has been decided to follow some classic software process methodologies to better define the requirements and the communication points of the system entities.

See the Analysis page

System Design

See the Design page for UML diagrams of the actual implementation. Use them as API for the system.


Project status and release codes

Dycapo is on its initial development phase. We adopted SemVer http://semver.org - Semantic Versioning for our release numbering system.

Therefore, v1.0.0 will be considered stable, with fixed API.

Protocol

Dycapo defines a new Protocol, called Dycapo Protocol. It is inspired by OpenTrip Protocol entities, running over XML-RPC calls.

API

The first API draft is now published here: Dycapo-API.html

Testing

We provide 3 registered users to test Dycapo functionalities: - admin - driver1 - rider1

All of them with password set to "password".

We provide a testing framework, located under tests/. We are using py.test

To run all tests, simply run run_tests.py

Dependencies

See the Dependencies page

Installation and Configuration

See the Installation page

Download

See the Download page

Bugs/Features requests

Please use GitHub's issue system

License

Dycapo is released under the GNU Affero General Public License version 3.

Retrieved from "http://dycapo.org/Server"