25.08.2016

Project: Consulting Contractor Database

Project description

  • Public website (www.DOMAIN_NAME.com).
    • Public website hosts the pages to provide public information, the registration form, marketing and tutorials to properly explain the service we provide.
  • WebApp (app.DOMAIN_NAME.com).
    • The WebApp is a restricted portal where 3 different kind of profles are allowed to enter and perform actions:
      • Administrators: the company that owns the service and who has control of the webapp configuration. They can overview any activity and perform several actions and procedures to manage the system, read the logs, create charts and analyse the records. They can overview the webapp flow of information and export reports.
      • Consultants: the main professional profile (in the future there could be the opportunity to have more profles). Consultants can register and pay a monthly fee. The monthly fee allows them to be available for clients requests (paying = visible). The consultant can fill the detailed profile to make it easy for clients to find them and to be requested. The consultants can perform several actions. All the actions are related to their profile: edit, suspend, set as draft, set as “available” (public on the system). They can set their calendar for avaiability, they can add as much information as they need for a detailed profile.
      • Clients:  are organisations in need of consultants. They can register  and create their “projects”.  A Client can set into a project several locations, each location can have several time-range for the activites. Each time-range requests one or more profiles. A client can describe every single profile they need for a specific time-range in a specific location in a specific project. At the end of the project configuration a list of requirements will be set by the client. The system can try to match any single request with consultants in the database. As search result the system answers with “solutions” for client requirements. If the client agrees a solution he/she can book the consultant and a notification process starts to make possible the meeting between the client and the consultant.
        Mainly the notification process starts with a notification to the consultant (“you have been selected for a job opportunity”). The consultant can say “yes” or “no” in the following 48h. If the consultant says yes a notifcation is sent to the client and the client has 48h to start a payment. When the payment is performed the contract is put in place and the client can finally read all the contact information and the same is for the consultant.
        This is a main description of the core of the system, several features will make useful for consultants and clients to be into the system. Several features will make sure that being into the system is an added value for consultants and clients (rating, feedback, authority, others).

A description of any single area of the system will be set as a slide and described by a paragraph in this documentation in the development process. The diary at the end will list all the activities around the develpoment period and all the request by the companies that owns the project.

An online documentation will make sure that the webapp flow will always be clear and shared.

This chapter has to be considered as an introduction to the project.

Contact information

The following information are here as reminder to allow people involved in the project to be in touch

Customers data

Mark Radley:

  • email: markradley@geneo.co.uk
  • mobile: +44 7753 600158
  • client domain: http://www.geneo.co.uk

Developement data

Michele Settembre:

  • email: mic24676@gmail.com
  • mobile: +39 3468328466

The Project

Step 1

  • Hosting and domain contro (web server, mail server, security, ftp server)
  • Public website structure development (www.DOMAIN_NAME.com)
  • Restricted area web structure development (app.DOMAIN_NAME.com)

Step 2

  • Debug
  • Project launch
  • Web Marketing
  • Public website SEO optimization
  • Upgrades

The Core in slides

CCDB - Presentation - core 01 CCDB - Presentation - core 02 CCDB - Presentation - core 03 CCDB - Presentation - core 04
CCDB - Presentation - core 05 CCDB - Presentation - core 06    

Project development areas

Core development

Server minimum requirements

Requisiti minimi di sistema (specificati anche e soprattutto in contesti di progetto in cui l’hosting non sia incluso nelle voci):

  • PHP > 5.1.3
  • MySQL server > 5.0.3
  • mail server
  • Modulo FastCGI
  • Apache webserver software
  • OS Linux
  • FTP / FTPS
  • cronjob
  • backup manager
  • Acccesso SSH (SFTP) (opzionale e/o se richiesto dalle specifiche)
  • Plesk o cPanel (opzionale e/o se richiesto dalle specifiche)

Other languages and technologies involved in the code development: html5, css3, javascript, jQuery, XML, JSON and other minor languages and dialects.

Technically we are talking about a LAMP development (based on a Linux operating system, Apache web server software, MySQL database server and PHP server side language architecture).

Table of costs and development time ranges

Description of the main development sections

Steps

Title Description Cost
Hosting(1)

Hosting: “Cloud Server” configuration on OVH SERVERs. The Server provides the following services: web server, mail server, FTP Server, Pleask web control interface, SSH, FastCGI module, PHP, MySQL database SERVER, cronjob, antivirus, antispan and other minor services and options.
(Service + Management)

£ 2,000/ year
Public web site based on CMS WordPress core and webapp configuration
The Public website with a back-end to create and edit web pages and contents £3,400,00
Multi-language

The project is multilingual and can add as many languages as we need. Any language as a transaltion cost

£ 750.00(each language)

Webapp

The restricted area in a subdomain built with new technologies client side (javascript, angular, twitter bootstrap and flex)

£ 15,000,00
Beta-tester

Additional resource to proplery test the system from outside the development

£2,200,00

1. Hosting cost is annual

Notes

  • The project will be the sum of the option selected from the table above
  • The first step of the project will be set as “completed” at the moment the public website and the webapp will be on line.
  • A period of 30 days will be set as available for refinements and minor upgrades for the version 1.
  • Hosting, security and maintenance procedures and actions have to be considered yearly.
  • If there won’t be a renewal for the following periods, at the end of the development time a backup will be put in place (folders and database) and sent to the customer to be able to move to other web agency or software houses.

Hosting considerations

  • The hosting option choice must be considered vital for the project. The server architecture is priority in the web development, expecially in this particlar case where different development architectures and different languages are involved into the project: server side javascript, MySQL database server, webservices, JSON, cronjobs, PHP, angual and so many others.
    The Server optimization is the base of a successfull project.

Project Logs

The following tables follow the project and they describe the developments steps and the customers’ requests.

Diary

Customer
  • 160506: Web development request
Development
  • 160529: First meeting at Geneo’s offices
  • 160612: website: wordpress core installation and configuration
  • 160615: webapp: core development (AngularJS – flex css – jquery integration)
  • 160618: website: restricted area module release 1.0 beta: the website allows a user to register and to login. The module set some page as restricted.
  • 160619: website: wp management module release 1.0 beta: the website allows a user to have a personal profile page with all the basic funcitons: edit their personal data, change the password, add more personal information.
  • 16062o: webapp: module session, first release: the session module is the basic for the webapp, it allows the user to login and to have a profile page, here the user can edit their personal data.
 
Menu
Find out more