From 534b17dc809a5861c323887c1b9c48c2c8fa56d7 Mon Sep 17 00:00:00 2001 From: "alextselegidis@gmail.com" Date: Sat, 1 Jun 2013 11:03:17 +0000 Subject: [PATCH] =?UTF-8?q?-=20=CE=A3=CF=85=CE=B3=CF=87=CF=8E=CE=BD=CE=B5?= =?UTF-8?q?=CF=85=CF=83=CE=B7=20=CF=84=CF=89=CE=BD=20=CE=B1=CF=81=CF=87?= =?UTF-8?q?=CE=B5=CE=AF=CF=89=CE=BD=20=CF=84=CE=B5=CE=BA=CE=BC=CE=B7=CF=81?= =?UTF-8?q?=CE=AF=CF=89=CF=83=CE=B7=CF=82=20=CF=84=CE=B7=CF=82=20=CF=80?= =?UTF-8?q?=CF=84=CF=85=CF=87=CE=B9=CE=B1=CE=BA=CE=AE=CF=82=20=CF=83=CE=B5?= =?UTF-8?q?=20=CE=AD=CE=BD=CE=B1=20=CE=AD=CE=B3=CE=B3=CF=81=CE=B1=CF=86?= =?UTF-8?q?=CF=8C.=20-=20=CE=A0=CF=81=CE=BF=CF=83=CE=B8=CE=AE=CE=BA=CE=B7?= =?UTF-8?q?=20=CF=84=CE=BF=CF=85=20=CE=BB=CE=BF=CE=B3=CF=8C=CF=84=CF=85?= =?UTF-8?q?=CF=80=CE=BF=CF=85=20=CF=84=CE=B7=CF=82=20=CE=B5=CF=86=CE=B1?= =?UTF-8?q?=CF=81=CE=BC=CE=BF=CE=B3=CE=AE=CF=82.=20-=20=CE=A0=CF=81=CE=BF?= =?UTF-8?q?=CF=83=CE=B8=CE=AE=CE=BA=CE=B7=20=CF=84=CE=B5=CE=BA=CE=BC=CE=B7?= =?UTF-8?q?=CF=81=CE=AF=CF=89=CF=83=CE=B7=CF=82=20=CF=84=CE=BF=CF=85=20?= =?UTF-8?q?=CE=BA=CF=8E=CE=B4=CE=B9=CE=BA=CE=B1=20(PHP=20+=20Javascript)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Release Notes.txt | 3 +- data/design/logo/E!A Icon.png | Bin 16295 -> 0 bytes data/design/logo/ea-logo.png | Bin 0 -> 7147 bytes data/design/logo/ea-logo.psd | Bin 0 -> 136466 bytes .../appointment-reservation-use-case.pdf | Bin 26281 -> 0 bytes .../appointment-reservation-use-case.tex | 55 --- .../google-calendar-api.pdf | Bin 52805 -> 0 bytes .../google-calendar-api.tex | 165 ------- doc/Introduction/introduction.pdf | Bin 63776 -> 0 bytes doc/Usage Scenario/usage-scenario.pdf | Bin 32715 -> 0 bytes doc/Vision Document/Vision Document.pdf | Bin 35484 -> 0 bytes doc/Vision Document/Vision Document.tex | 68 --- .../generate-docs.bat | 0 .../js/bookAppointment.html | 0 .../js/book_appointment.js.html | 0 .../js/functions..html | 0 .../js/general_functions.js.html | 0 doc/{Code Docs => code-docs}/js/index.html | 0 .../js/scripts/linenumber.js | 0 .../scripts/prettify/Apache-License-2.0.txt | 0 .../js/scripts/prettify/lang-css.js | 0 .../js/scripts/prettify/prettify.js | 0 .../js/styles/jsdoc-default.css | 0 .../js/styles/prettify-jsdoc.css | 0 .../js/styles/prettify-tomorrow.css | 0 doc/{Code Docs => code-docs}/php/404.html | 0 .../php/class-Appointments.html | 0 .../php/class-Appointments_Model.html | 0 .../php/class-Customers_Model.html | 0 .../php/class-Google.html | 0 .../php/class-Providers_Model.html | 0 .../php/class-Roles_Model.html | 0 .../php/class-Services_Model.html | 0 .../php/class-Settings_Model.html | 0 .../php/class-Test.html | 0 .../php/elementlist.js | 0 doc/{Code Docs => code-docs}/php/index.html | 0 .../php/resources/collapsed.png | Bin .../php/resources/combined.js | 0 .../php/resources/footer.png | Bin .../php/resources/inherit.png | Bin .../php/resources/resize.png | Bin .../php/resources/sort.png | Bin .../php/resources/style.css | 0 .../php/resources/tree-cleaner.png | Bin .../php/resources/tree-hasnext.png | Bin .../php/resources/tree-last.png | Bin .../php/resources/tree-vertical.png | Bin .../php/source-class-Appointments.html | 0 .../php/source-class-Appointments_Model.html | 0 .../php/source-class-Customers_Model.html | 0 .../php/source-class-Google.html | 0 .../php/source-class-Providers_Model.html | 0 .../php/source-class-Roles_Model.html | 0 .../php/source-class-Services_Model.html | 0 .../php/source-class-Settings_Model.html | 0 .../php/source-class-Test.html | 0 doc/{Code Docs => code-docs}/php/tree.html | 0 .../Domain Model.jpg | Bin .../Domain Model.uml | 0 doc/thesis/compile.bat | 49 ++ doc/thesis/includes/external-tools.tex | 33 ++ doc/thesis/includes/google-calendar-api.tex | 146 ++++++ doc/thesis/includes/headers.tex | 31 ++ .../includes}/introduction.tex | 296 ++++++------ .../includes/usage-scenarios.tex} | 54 +-- doc/thesis/includes/use-cases.tex | 50 ++ doc/thesis/thesis.bib | 54 +++ doc/thesis/thesis.pdf | Bin 0 -> 198337 bytes doc/thesis/thesis.sty | 450 ++++++++++++++++++ doc/thesis/thesis.tex | 20 + .../unit-testing.pdf | Bin .../unit-testing.tex | 0 doc/{Use Cases => use-cases}/use-cases.pdf | Bin doc/{Use Cases => use-cases}/use-cases.tex | 0 75 files changed, 986 insertions(+), 488 deletions(-) delete mode 100644 data/design/logo/E!A Icon.png create mode 100644 data/design/logo/ea-logo.png create mode 100644 data/design/logo/ea-logo.psd delete mode 100644 doc/Appointment Reservation/appointment-reservation-use-case.pdf delete mode 100644 doc/Appointment Reservation/appointment-reservation-use-case.tex delete mode 100644 doc/Google Calendar API/google-calendar-api.pdf delete mode 100644 doc/Google Calendar API/google-calendar-api.tex delete mode 100644 doc/Introduction/introduction.pdf delete mode 100644 doc/Usage Scenario/usage-scenario.pdf delete mode 100644 doc/Vision Document/Vision Document.pdf delete mode 100644 doc/Vision Document/Vision Document.tex rename doc/{Code Docs => code-docs}/generate-docs.bat (100%) rename doc/{Code Docs => code-docs}/js/bookAppointment.html (100%) rename doc/{Code Docs => code-docs}/js/book_appointment.js.html (100%) rename doc/{Code Docs => code-docs}/js/functions..html (100%) rename doc/{Code Docs => code-docs}/js/general_functions.js.html (100%) rename doc/{Code Docs => code-docs}/js/index.html (100%) rename doc/{Code Docs => code-docs}/js/scripts/linenumber.js (100%) rename doc/{Code Docs => code-docs}/js/scripts/prettify/Apache-License-2.0.txt (100%) rename doc/{Code Docs => code-docs}/js/scripts/prettify/lang-css.js (100%) rename doc/{Code Docs => code-docs}/js/scripts/prettify/prettify.js (100%) rename doc/{Code Docs => code-docs}/js/styles/jsdoc-default.css (100%) rename doc/{Code Docs => code-docs}/js/styles/prettify-jsdoc.css (100%) rename doc/{Code Docs => code-docs}/js/styles/prettify-tomorrow.css (100%) rename doc/{Code Docs => code-docs}/php/404.html (100%) rename doc/{Code Docs => code-docs}/php/class-Appointments.html (100%) rename doc/{Code Docs => code-docs}/php/class-Appointments_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Customers_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Google.html (100%) rename doc/{Code Docs => code-docs}/php/class-Providers_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Roles_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Services_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Settings_Model.html (100%) rename doc/{Code Docs => code-docs}/php/class-Test.html (100%) rename doc/{Code Docs => code-docs}/php/elementlist.js (100%) rename doc/{Code Docs => code-docs}/php/index.html (100%) rename doc/{Code Docs => code-docs}/php/resources/collapsed.png (100%) rename doc/{Code Docs => code-docs}/php/resources/combined.js (100%) rename doc/{Code Docs => code-docs}/php/resources/footer.png (100%) rename doc/{Code Docs => code-docs}/php/resources/inherit.png (100%) rename doc/{Code Docs => code-docs}/php/resources/resize.png (100%) rename doc/{Code Docs => code-docs}/php/resources/sort.png (100%) rename doc/{Code Docs => code-docs}/php/resources/style.css (100%) rename doc/{Code Docs => code-docs}/php/resources/tree-cleaner.png (100%) rename doc/{Code Docs => code-docs}/php/resources/tree-hasnext.png (100%) rename doc/{Code Docs => code-docs}/php/resources/tree-last.png (100%) rename doc/{Code Docs => code-docs}/php/resources/tree-vertical.png (100%) rename doc/{Code Docs => code-docs}/php/source-class-Appointments.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Appointments_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Customers_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Google.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Providers_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Roles_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Services_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Settings_Model.html (100%) rename doc/{Code Docs => code-docs}/php/source-class-Test.html (100%) rename doc/{Code Docs => code-docs}/php/tree.html (100%) rename doc/{Domain Model => domain-model}/Domain Model.jpg (100%) rename doc/{Domain Model => domain-model}/Domain Model.uml (100%) create mode 100644 doc/thesis/compile.bat create mode 100644 doc/thesis/includes/external-tools.tex create mode 100644 doc/thesis/includes/google-calendar-api.tex create mode 100644 doc/thesis/includes/headers.tex rename doc/{Introduction => thesis/includes}/introduction.tex (62%) rename doc/{Usage Scenario/usage-scenario.tex => thesis/includes/usage-scenarios.tex} (57%) create mode 100644 doc/thesis/includes/use-cases.tex create mode 100644 doc/thesis/thesis.bib create mode 100644 doc/thesis/thesis.pdf create mode 100644 doc/thesis/thesis.sty create mode 100644 doc/thesis/thesis.tex rename doc/{Unit Testing => unit-testing}/unit-testing.pdf (100%) rename doc/{Unit Testing => unit-testing}/unit-testing.tex (100%) rename doc/{Use Cases => use-cases}/use-cases.pdf (100%) rename doc/{Use Cases => use-cases}/use-cases.tex (100%) diff --git a/Release Notes.txt b/Release Notes.txt index 0e5a5904..ee1cbb64 100644 --- a/Release Notes.txt +++ b/Release Notes.txt @@ -1,8 +1,9 @@ VERSION 0.2 =========== - Use the PHPMailer class for sending HTML emails. -- Includes complete Google Sync protocol. +- Includes complete Google Sync protocol document. - Customers can book appointments only for the available hours. - Generation of code documentation. - Unit test the controller classes. +- Customers can edit the application through unique links (from their emails). - Minor Fixes diff --git a/data/design/logo/E!A Icon.png b/data/design/logo/E!A Icon.png deleted file mode 100644 index 0e7eae2adc8988f16ac9217efee1082ad4c3e5f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16295 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 literal 0 HcmV?d00001 diff --git a/doc/Appointment Reservation/appointment-reservation-use-case.pdf b/doc/Appointment Reservation/appointment-reservation-use-case.pdf deleted file mode 100644 index adb6b494c41b5000f406722a2461ee4b48ab08c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26281 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 d$AEjAoxP5&{U19U@Shvt 'www.example.org', - - // OAuth2 Setting, you can get these keys on the API Access tab on - // the Google APIs Console - 'oauth2_client_id' => 'YOUR_CLIENT_ID', - 'oauth2_client_secret' => 'YOUR_CLIENT_SECRET', - 'oauth2_redirect_uri' => 'YOUR_REDIRECT_URL', - - // The developer key; you get this from the Google APIs Console - 'developer_key' => 'YOUR_DEVELOPER_KEY', - ... - - // Which Authentication, Storage and HTTP IO classes to use. - 'authClass' => 'apiOAuth2', - .... - - // Definition of service specific values like scopes, OAuth token URLs, etc - 'services' => array( - 'calendar' => array('scope' => 'https://www.googleapis.com/auth/calendar'), - ) -); -\end{verbatim} - -Έπειτα θα χρειαστεί να γίνει εκκίνηση του service και να ολοκληρωθεί η διαδικασία πιστοποίησης (authenticate) με την χρήση του API Key που αντιστοιχεί στην εφαρμογή. - -\begin{verbatim} -setUseObjects(true); -$service = new apiCalendarService($apiClient); - -if (isset($_SESSION['oauth_access_token'])) { - $apiClient->setAccessToken($_SESSION['oauth_access_token']); -} else { - $token = $apiClient->authenticate(); - $_SESSION['oauth_access_token'] = $token; -} -... -\end{verbatim} - -Με αυτόν τον τρόπο εκτελούνται οι διαδικασίες ανταλλαγής δεδομένων μεταξύ του Google Calendar και του συστήματος του προγραμματιστή. - -\end{document} \ No newline at end of file diff --git a/doc/Introduction/introduction.pdf b/doc/Introduction/introduction.pdf deleted file mode 100644 index 3ee74ee9e42586aca46966c586fe9b73a03b9f0e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63776 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 diff --git a/doc/Usage Scenario/usage-scenario.pdf b/doc/Usage Scenario/usage-scenario.pdf deleted file mode 100644 index 06281a27625eb827297737e85c928873cc08e8b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32715 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 z 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 Wk)Qr+)_@KJ7bgNGrMRL5!v6t`od%2m diff --git a/doc/Vision Document/Vision Document.pdf b/doc/Vision Document/Vision Document.pdf deleted file mode 100644 index 790d8dec4cde861b88196c552bb65ca5ba4a0caa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35484 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

Tf($v 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 diff --git a/doc/Vision Document/Vision Document.tex b/doc/Vision Document/Vision Document.tex deleted file mode 100644 index f0e89951..00000000 --- a/doc/Vision Document/Vision Document.tex +++ /dev/null @@ -1,68 +0,0 @@ -%% ============================= -%% GENERAL SETTINGS -%% ============================= -\documentclass[12pt]{article} - -\usepackage[margin=0.7in]{geometry} -\usepackage {graphics} -\usepackage{xltxtra} -\usepackage{xgreek} - -\setmainfont[Mapping=tex-text]{Tahoma} -\setlength{\parindent}{0cm} %% No paragraph indent - -%% ============================= -%% DOCUMENT PROPERTIES -%% ============================= -\title{Easy!Appointments - Vision Document} -\author{Αλέξανδρος Τσελεγγιδης} -\date{Νοέμβριος 2012} - -%% ============================= -%% DOCUMENT CONTENT -%% ============================= -\begin{document} -\maketitle -\pagebreak - -%% ΣΚΟΠΟΣ ΤΟΥ ΕΡΓΟΥ -\section{Σκοπός του Έργου} -Σκοπός του Easy!Appointments ειναι να αναπτυχθεί ένα web σύστημα κρατήσεων ραντεβού (για οποιαδήποτε υπηρεσία ή γραφείο) το οποίο να μπορεί να παραμετροποιείται καταλλήλως και να συγχρονίζεται με το Google Calendar. Στόχος είναι να παράγεται κώδικας που να είναι συμβατός με οποιοδηποτε διακοσμητή AMP. - -%% ΠΙΘΑΝΟΙ ΠΕΛΑΤΕΣ -\section{Πιθανοί Πελάτες} -Οποιαδήποτε εταιρεία ή επιχείρηση λειτουργεί με ραντεβού σε γραφείο ή κατάστημα μπορεί να χρησιμοποιήσει την εφαρμογή για να διαχειρίζεται τα ραντεβού ηλεκτρονικά και μέσω του internet. Αυτήν την στιγμή δεν υπάρχουν αντιστοιχα προγρ - -%% ΚΥΡΙΟΙ ΠΑΡΑΓΟΝΤΕΣ -\section{Κύριοι Παράγοντες} -\begin{enumerate} -\item{Αξιοπιστια} -\item{Ταχύτητα} -\item{Ευχρηστία} -\item{Συνεργασία μεταξύ διαφόρων υπαλλήλων} -\end{enumerate} - -%% ΚΥΡΙΑ ΧΑΡΑΚΤΗΡΙΣΤΙΚΑ -\section{Χαρακτηριστικά και Τεχνολογία} -\begin{enumerate} -\item{Χρήση της βιβλιοθήκης Google Calendar API} -\item{Χρήση της εφαρμογής Google Calendar Sync (παροχή αυτόματων ενημερώσεων)} -\item{Εύχρηστο και όμορφο περιβάλλον} -\item{Ασφαλής λειτουργία της εφαρμογής (χωρίς απώλειες δεδομένων)} -\item{Υλοποίηση με PHP, MySQL, jQuery, CodeIgniter Framework} -\end{enumerate} - -%% ΑΛΛΟΙ ΣΗΜΑΝΤΙΚΟΙ ΠΑΡΑΓΟΝΤΕΣ -\section{Άλλοι Παράγοντες} -\begin{enumerate} -\item{Η εφαρμογή δεν πρέπει να "κρασάρει"} -\item{Δυνατότητα ενημέρωσης με SMS των χρηστών για αλλαγές στο εβδομαδιαίο πλάνο τους} -\end{enumerate} - -%% ΟΙΚΟΝΟΜΙΚΟΙ ΠΑΡΑΓΟΝΤΕΣ -\section{Οικονομικοί Παράγοντες} -Πρέπει να προωθηθεί σε όλα τα site που ασχολούνται με τα CMS, το ελεύθερο λογισμικό και τα επιχειρηματικά βοηθήματα. -\\[0.3cm] -Η εφαρμογή θα διατίθεται δωρεάν μέσω της άδειας GNU/GPL και τα έσοδα θα προέρχονται από διαφημίσεις, δωρεές, εκπαίδευση και την συντήρηση. - -\end{document} \ No newline at end of file diff --git a/doc/Code Docs/generate-docs.bat b/doc/code-docs/generate-docs.bat similarity index 100% rename from doc/Code Docs/generate-docs.bat rename to doc/code-docs/generate-docs.bat diff --git a/doc/Code Docs/js/bookAppointment.html b/doc/code-docs/js/bookAppointment.html similarity index 100% rename from doc/Code Docs/js/bookAppointment.html rename to doc/code-docs/js/bookAppointment.html diff --git a/doc/Code Docs/js/book_appointment.js.html b/doc/code-docs/js/book_appointment.js.html similarity index 100% rename from doc/Code Docs/js/book_appointment.js.html rename to doc/code-docs/js/book_appointment.js.html diff --git a/doc/Code Docs/js/functions..html b/doc/code-docs/js/functions..html similarity index 100% rename from doc/Code Docs/js/functions..html rename to doc/code-docs/js/functions..html diff --git a/doc/Code Docs/js/general_functions.js.html b/doc/code-docs/js/general_functions.js.html similarity index 100% rename from doc/Code Docs/js/general_functions.js.html rename to doc/code-docs/js/general_functions.js.html diff --git a/doc/Code Docs/js/index.html b/doc/code-docs/js/index.html similarity index 100% rename from doc/Code Docs/js/index.html rename to doc/code-docs/js/index.html diff --git a/doc/Code Docs/js/scripts/linenumber.js b/doc/code-docs/js/scripts/linenumber.js similarity index 100% rename from doc/Code Docs/js/scripts/linenumber.js rename to doc/code-docs/js/scripts/linenumber.js diff --git a/doc/Code Docs/js/scripts/prettify/Apache-License-2.0.txt b/doc/code-docs/js/scripts/prettify/Apache-License-2.0.txt similarity index 100% rename from doc/Code Docs/js/scripts/prettify/Apache-License-2.0.txt rename to doc/code-docs/js/scripts/prettify/Apache-License-2.0.txt diff --git a/doc/Code Docs/js/scripts/prettify/lang-css.js b/doc/code-docs/js/scripts/prettify/lang-css.js similarity index 100% rename from doc/Code Docs/js/scripts/prettify/lang-css.js rename to doc/code-docs/js/scripts/prettify/lang-css.js diff --git a/doc/Code Docs/js/scripts/prettify/prettify.js b/doc/code-docs/js/scripts/prettify/prettify.js similarity index 100% rename from doc/Code Docs/js/scripts/prettify/prettify.js rename to doc/code-docs/js/scripts/prettify/prettify.js diff --git a/doc/Code Docs/js/styles/jsdoc-default.css b/doc/code-docs/js/styles/jsdoc-default.css similarity index 100% rename from doc/Code Docs/js/styles/jsdoc-default.css rename to doc/code-docs/js/styles/jsdoc-default.css diff --git a/doc/Code Docs/js/styles/prettify-jsdoc.css b/doc/code-docs/js/styles/prettify-jsdoc.css similarity index 100% rename from doc/Code Docs/js/styles/prettify-jsdoc.css rename to doc/code-docs/js/styles/prettify-jsdoc.css diff --git a/doc/Code Docs/js/styles/prettify-tomorrow.css b/doc/code-docs/js/styles/prettify-tomorrow.css similarity index 100% rename from doc/Code Docs/js/styles/prettify-tomorrow.css rename to doc/code-docs/js/styles/prettify-tomorrow.css diff --git a/doc/Code Docs/php/404.html b/doc/code-docs/php/404.html similarity index 100% rename from doc/Code Docs/php/404.html rename to doc/code-docs/php/404.html diff --git a/doc/Code Docs/php/class-Appointments.html b/doc/code-docs/php/class-Appointments.html similarity index 100% rename from doc/Code Docs/php/class-Appointments.html rename to doc/code-docs/php/class-Appointments.html diff --git a/doc/Code Docs/php/class-Appointments_Model.html b/doc/code-docs/php/class-Appointments_Model.html similarity index 100% rename from doc/Code Docs/php/class-Appointments_Model.html rename to doc/code-docs/php/class-Appointments_Model.html diff --git a/doc/Code Docs/php/class-Customers_Model.html b/doc/code-docs/php/class-Customers_Model.html similarity index 100% rename from doc/Code Docs/php/class-Customers_Model.html rename to doc/code-docs/php/class-Customers_Model.html diff --git a/doc/Code Docs/php/class-Google.html b/doc/code-docs/php/class-Google.html similarity index 100% rename from doc/Code Docs/php/class-Google.html rename to doc/code-docs/php/class-Google.html diff --git a/doc/Code Docs/php/class-Providers_Model.html b/doc/code-docs/php/class-Providers_Model.html similarity index 100% rename from doc/Code Docs/php/class-Providers_Model.html rename to doc/code-docs/php/class-Providers_Model.html diff --git a/doc/Code Docs/php/class-Roles_Model.html b/doc/code-docs/php/class-Roles_Model.html similarity index 100% rename from doc/Code Docs/php/class-Roles_Model.html rename to doc/code-docs/php/class-Roles_Model.html diff --git a/doc/Code Docs/php/class-Services_Model.html b/doc/code-docs/php/class-Services_Model.html similarity index 100% rename from doc/Code Docs/php/class-Services_Model.html rename to doc/code-docs/php/class-Services_Model.html diff --git a/doc/Code Docs/php/class-Settings_Model.html b/doc/code-docs/php/class-Settings_Model.html similarity index 100% rename from doc/Code Docs/php/class-Settings_Model.html rename to doc/code-docs/php/class-Settings_Model.html diff --git a/doc/Code Docs/php/class-Test.html b/doc/code-docs/php/class-Test.html similarity index 100% rename from doc/Code Docs/php/class-Test.html rename to doc/code-docs/php/class-Test.html diff --git a/doc/Code Docs/php/elementlist.js b/doc/code-docs/php/elementlist.js similarity index 100% rename from doc/Code Docs/php/elementlist.js rename to doc/code-docs/php/elementlist.js diff --git a/doc/Code Docs/php/index.html b/doc/code-docs/php/index.html similarity index 100% rename from doc/Code Docs/php/index.html rename to doc/code-docs/php/index.html diff --git a/doc/Code Docs/php/resources/collapsed.png b/doc/code-docs/php/resources/collapsed.png similarity index 100% rename from doc/Code Docs/php/resources/collapsed.png rename to doc/code-docs/php/resources/collapsed.png diff --git a/doc/Code Docs/php/resources/combined.js b/doc/code-docs/php/resources/combined.js similarity index 100% rename from doc/Code Docs/php/resources/combined.js rename to doc/code-docs/php/resources/combined.js diff --git a/doc/Code Docs/php/resources/footer.png b/doc/code-docs/php/resources/footer.png similarity index 100% rename from doc/Code Docs/php/resources/footer.png rename to doc/code-docs/php/resources/footer.png diff --git a/doc/Code Docs/php/resources/inherit.png b/doc/code-docs/php/resources/inherit.png similarity index 100% rename from doc/Code Docs/php/resources/inherit.png rename to doc/code-docs/php/resources/inherit.png diff --git a/doc/Code Docs/php/resources/resize.png b/doc/code-docs/php/resources/resize.png similarity index 100% rename from doc/Code Docs/php/resources/resize.png rename to doc/code-docs/php/resources/resize.png diff --git a/doc/Code Docs/php/resources/sort.png b/doc/code-docs/php/resources/sort.png similarity index 100% rename from doc/Code Docs/php/resources/sort.png rename to doc/code-docs/php/resources/sort.png diff --git a/doc/Code Docs/php/resources/style.css b/doc/code-docs/php/resources/style.css similarity index 100% rename from doc/Code Docs/php/resources/style.css rename to doc/code-docs/php/resources/style.css diff --git a/doc/Code Docs/php/resources/tree-cleaner.png b/doc/code-docs/php/resources/tree-cleaner.png similarity index 100% rename from doc/Code Docs/php/resources/tree-cleaner.png rename to doc/code-docs/php/resources/tree-cleaner.png diff --git a/doc/Code Docs/php/resources/tree-hasnext.png b/doc/code-docs/php/resources/tree-hasnext.png similarity index 100% rename from doc/Code Docs/php/resources/tree-hasnext.png rename to doc/code-docs/php/resources/tree-hasnext.png diff --git a/doc/Code Docs/php/resources/tree-last.png b/doc/code-docs/php/resources/tree-last.png similarity index 100% rename from doc/Code Docs/php/resources/tree-last.png rename to doc/code-docs/php/resources/tree-last.png diff --git a/doc/Code Docs/php/resources/tree-vertical.png b/doc/code-docs/php/resources/tree-vertical.png similarity index 100% rename from doc/Code Docs/php/resources/tree-vertical.png rename to doc/code-docs/php/resources/tree-vertical.png diff --git a/doc/Code Docs/php/source-class-Appointments.html b/doc/code-docs/php/source-class-Appointments.html similarity index 100% rename from doc/Code Docs/php/source-class-Appointments.html rename to doc/code-docs/php/source-class-Appointments.html diff --git a/doc/Code Docs/php/source-class-Appointments_Model.html b/doc/code-docs/php/source-class-Appointments_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Appointments_Model.html rename to doc/code-docs/php/source-class-Appointments_Model.html diff --git a/doc/Code Docs/php/source-class-Customers_Model.html b/doc/code-docs/php/source-class-Customers_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Customers_Model.html rename to doc/code-docs/php/source-class-Customers_Model.html diff --git a/doc/Code Docs/php/source-class-Google.html b/doc/code-docs/php/source-class-Google.html similarity index 100% rename from doc/Code Docs/php/source-class-Google.html rename to doc/code-docs/php/source-class-Google.html diff --git a/doc/Code Docs/php/source-class-Providers_Model.html b/doc/code-docs/php/source-class-Providers_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Providers_Model.html rename to doc/code-docs/php/source-class-Providers_Model.html diff --git a/doc/Code Docs/php/source-class-Roles_Model.html b/doc/code-docs/php/source-class-Roles_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Roles_Model.html rename to doc/code-docs/php/source-class-Roles_Model.html diff --git a/doc/Code Docs/php/source-class-Services_Model.html b/doc/code-docs/php/source-class-Services_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Services_Model.html rename to doc/code-docs/php/source-class-Services_Model.html diff --git a/doc/Code Docs/php/source-class-Settings_Model.html b/doc/code-docs/php/source-class-Settings_Model.html similarity index 100% rename from doc/Code Docs/php/source-class-Settings_Model.html rename to doc/code-docs/php/source-class-Settings_Model.html diff --git a/doc/Code Docs/php/source-class-Test.html b/doc/code-docs/php/source-class-Test.html similarity index 100% rename from doc/Code Docs/php/source-class-Test.html rename to doc/code-docs/php/source-class-Test.html diff --git a/doc/Code Docs/php/tree.html b/doc/code-docs/php/tree.html similarity index 100% rename from doc/Code Docs/php/tree.html rename to doc/code-docs/php/tree.html diff --git a/doc/Domain Model/Domain Model.jpg b/doc/domain-model/Domain Model.jpg similarity index 100% rename from doc/Domain Model/Domain Model.jpg rename to doc/domain-model/Domain Model.jpg diff --git a/doc/Domain Model/Domain Model.uml b/doc/domain-model/Domain Model.uml similarity index 100% rename from doc/Domain Model/Domain Model.uml rename to doc/domain-model/Domain Model.uml diff --git a/doc/thesis/compile.bat b/doc/thesis/compile.bat new file mode 100644 index 00000000..dd86e11b --- /dev/null +++ b/doc/thesis/compile.bat @@ -0,0 +1,49 @@ +:: =============================================== +:: GENERATES THE EASY!APPOINTMENTS THESIS DOCUMENT +:: =============================================== + +:: Run Cleanup +call:cleanupq + +:: Run XeLaTex on main file. +xelatex thesis.tex --quiet +bibtex thesis.tex + +:: If you are using multibib the following will run bibtex on all aux files +:: FOR /R . %%G IN (*.aux) DO bibtex %%G +xelatex thesis.tex --quiet + +:: Run Cleanup +call:cleanup + +:: Open PDF (Script updated based on comments by 'menfeser' +:: START "" "C:\Program Files\Adobe\Reader 9.0\Reader\AcroRd32.exe" %2.pdf +START "" thesis.pdf + +:: Cleanup Function +:cleanup +del *.log +del *.dvi +del *.aux +del *.bbl +del *.blg +del *.brf +del *.out +del *.log +del *.bcf +del *.xml +del *.toc + +del includes\*.log +del includes\*.dvi +del includes\*.aux +del includes\*.bbl +del includes\*.blg +del includes\*.brf +del includes\*.out +del includes\*.log +del includes\*.bcf +del includes\*.xml +del includes\*.toc + +goto:eof \ No newline at end of file diff --git a/doc/thesis/includes/external-tools.tex b/doc/thesis/includes/external-tools.tex new file mode 100644 index 00000000..3999c0f6 --- /dev/null +++ b/doc/thesis/includes/external-tools.tex @@ -0,0 +1,33 @@ +%% ΑΛΛΑ ΕΞΩΤΕΡΙΚΑ ΕΡΓΑΛΕΙΑ +%% Σε αυτό το κεφάλαιο γίνεται περιγραφή των υπόλοιπων εξωτερικών +%% εργαλείων που χρησιμοποιήθηκαν από για την υλοποίηση του συστήματος +%% κρατήσεων ραντεβού. + +\chapter{Άλλα Εξωτερικά Εργαλεία} +Εκτός του Calendar API και των βιβλιοθηκών που παρέχει η Google, έχουν χρησιμοποιηθεί και κάποια άλλα εργαλεία ανάπτυξης λογισμικού, τα οποία βοήθησαν στην άρτια και ποιοτικότερη παραγωγή του συστήματος κρατήσεων ραντεβού. Τα εργαλεία αυτά είναι όλα ανοιχτού κώδικα (open source) και έχουν στόχο να βοηθήσουν τον προγραμματιστή να επικεντρωθεί περισσότερο σε αυτό που έχει να κάνει και όχι τόσο στα τετριμμένα πράγματα τα οποία αποσπούν μεγάλο χρονικό διάστημα άσκοπα. Εν ολίγοις πρόκειται για ένα σύνολο από διάφορα framework τα οποία είναι πολύ χρήσιμα για οποιαδήποτε ανάπτυξη λογισμικού. + +\section{CodeIgniter} +Το CodeIgniter είναι ένα PHP framework το οποίο έχει ως στόχο την αποδοτικότητα και την ταχύτητα, μιας και καταναλώνει πολύ λίγους υπολογιστικούς πόρους σε αντίθεση με άλλα βοηθητικά συστήματα του είδους του. Θετικό στοιχείο είναι ότι είναι πολύ απλό στην χρήση, δίνει την δυνατότητα στον προγραμματιστή να παραμετροποιήσει τον πυρήνα του καταπώς τον βολεύει και βασίζεται στην αρχιτεκτονική MVC (Model View Controller). Όντας έργο ανοιχτού λογισμικού, κατέχει μια μεγάλη κοινότητα που το υποστηρίζει και επίσης προσφέρει μια καλά ενημερωμένη γνωσιακή βάση, η οποία μπορεί να καθοδηγήσει τον προγραμματιστή στο πως θα χρησιμοποιήσει το framework. + +Η αρχιτεκτονική MVC είναι η πλέον διαδεδομένη κυρίως στις διαδικτυακές εφαρμογές μιας και βοηθάει στην καλύτερη οργάνωση και συντήρηση του κώδικα. Ουσιαστικά πρόκειται για τον διαχωρισμό της εφαρμογής σε τρία μέρη: +\begin{enumerate} +\item Models: Περιέχουν συναρτήσεις και μεθόδους που αλληλεπιδρούν με την βάση δεδομένων. Χρησιμοποιούνται σε διάφορες περιπτώσεις από τους Controllers. Με αυτόν τον τρόπο επιτυγχάνεται η επαναχρησιμοποίηση ενός μέρος του κώδικα, κάτι το οποίο είναι πολύ σημαντικό στην αρχιτεκτονική ενός συστήματος. +\item Views: Τα views είναι τα κομμάτια κώδικα τα οποία παράγουν το αποτέλεσμα το οποίο βλέπει ο χρήστης κάθε φορά. Στόχος τους είναι απλώς να δείξουν και όχι να υπολογίσουν ή να φέρουν κάποια δεδομένα (αυτό είναι δουλειά των άλλων δυο τμημάτων της αρχιτεκτονικής). Κάθε φορά που χρειάζεται να αλλάξει κάτι στην εμφάνιση του συστήματος μπορεί να γίνει αλλαγή στο αντίστοιχο view χωρίς να επηρεαστούν τα άλλα συστήματα. +\item Controllers: Το μέρος αυτό του συστήματος αναλαμβάνει να οργανώσει τα άλλα δυο. Κάθε φορά που πρέπει να παραχθεί μια σελίδα, η διαδικασία θα ξεκινήσει από τον αντίστοιχο controller. Αυτός στην συνέχεια θα καλέσει τις απαραίτητες συναρτήσεις και θα παρέχει τα δεδομένα που απαιτεί το view για να εμφανιστεί σωστά η σελίδα. +\end{enumerate} + +Το σύστημα που υλοποιήθηκε χρησιμοποιεί το CodeIgniter για την κάλυψη των βασικών εργασιών έτσι ώστε να υπάρχει η δομή MVC στον κώδικα. Επίσης γίνεται χρήση της ενσωματωμένης βιβλιοθήκης επικοινωνίας με την βάση δεδομένων. Εκτός αυτών των δύο, ο υπόλοιπος κώδικας έχει γραφεί κανονικά και τηρεί τις προϋποθέσεις της πτυχιακής εργασίας. + +\section {jQuery & jQuery UI} +Ένα μεγάλο μέρος των σύγχρονων διαδικτυακών εφαρμογών βασίζει την λειτουργία του σε κώδικα Javascript έτσι ώστε να κάνει το λογισμικό πιο φιλικό προς τον χρήστη. Διάφορες βιβλιοθήκες έχουν δημιουργηθεί τα τελευταία χρόνια που στόχο έχουν την εξέλιξη και την αποδοτικότερη χρήση της γλώσσας javscript. Η πιο δημοφιλής από όλες αυτές τις βιβλιοθήκες είναι η βιβλιοθήκη jQuery η οποία συνοδεύεται απο το jQuery UI, ένα framework για την παραγωγή ελεκτηρίων (controls) στα οποία μπορεί ο κάθε χρήστης να εκτελέσει διάφορες ενέργειες. Το jQuery έχει καταφέρει να απλοποιήσει την συγγραφή Javascript κώδικα και επιπλέον παρέχει στην διάθεση του προγραμματιστή έτοιμες ρουτίνες animation και διαφόρων άλλων ενεργειών, οι οποίες διαφορετικά θα καταλάμβαναν αρκετό χρόνο για την υλοποίηση τους. Πρόκειται για μια βιβλιοθήκη ανοιχτού λογισμικού η οποία υποστηρίζεται από μια πολύ μεγάλη κοινότητα προγραμματιστών, οι οποίοι δημιουργούν μάλιστα πολλά πρόσθετα (plugins) με λειτουργίες οι οποίες δεν είναι διαθέσιμες στην βασική βιβλιοθήκη. + +Η βιβλιοθήκη jQuery ουσιαστικά λειτουργεί σαν ένα επίπεδο πάνω από την Javascript, βοηθώντας τον προγραμματιστή να γράψει διάφορες δομές κώδικα πιο γρήγορα και οργανωμένα. Ο κώδικας που γράφεται είναι πάλι Javascript οπότε είναι πολύ εύκολο στον καθένα να χρησιμοποιήσει την βιβλιοθήκη. Στόχος της είναι η πιο εύκολη περιήγηση στα αντικείμενα μιας σελίδας (DOM elements), η εύκολη δημιουργία εφέ κινήσεων τα οποία προσδίδουν πολύ αισθητικά σε μια ιστοσελίδα, η ευκολότερη χρήση της τεχνολογίας AJAX, μιας τεχνολογίας η οποία χρησιμοποιείται όλο και περισσότερο από τα σύγχρονα συστήματα. + +Το σύστημα που παράχθηκε χρησιμοποιεί αυτήν την βιβλιοθήκη για τον προγραμματισμό του client-side μέρους της εφαρμογής. Ανάλογα με την κάθε περίσταση, μερικές φορές είναι αποδοτικότερο και χρησιμότερο να χρησιμοποιηθεί Javascript έναντι της PHP και για αυτόν τον λόγο το jQuery Framework βοηθάει στην απόδοση που έχει ο κώδικας της εφαρμογής. + +\section {Bootstrap} +Το Bootstrap είναι ένα ολοκληρωμένο CSS Framework, με την προσθήκη κάποιων βιβλιοθηκών Javascript έτσι ώστε να προσφέρει μερικές επιπλέον δυνατότητές. Έχει κατασκευαστεί από την εταιρεία πίσω από την σελίδα κοινωνικής δικτύωσης Twitter και χρησιμοποιείται από αυτό ως βάση για την υλοποίηση του. Η εταιρεία έχει διάθεση το framework ως ανοιχτό λογισμικό και οι προγραμματιστές μπορούν να το χρησιμοποιήσουν ελεύθερα στις σελίδες τους. Η ίδια η εταιρεία επωφελείται μέσω της συμμετοχής της κοινότητας για να ανάπτυξη περαιτέρω αυτό το framework. + +Το framework αυτό περιέχει έτοιμο κώδικα CSS ο οποίος ακολουθεί την μεθοδολογία παραγωγής responsive ιστοσελίδων. Με την έννοια αυτή εννοείται ότι η μορφοποίηση των σελίδων στοχεύει στο να είναι συμβατή με οποιαδήποτε συσκευή, λειτουργικό σύστημα και περιηγητή ιστού. Είναι πολύ σημαντικό για την ανάπτυξη μιας εφαρμογής, το να είναι διαθέσιμη σε οποιοδήποτε μηχάνημα υποστηρίζει τα τελευταία standards του ιστού. Απαρτίζεται από κανονικό CSS και Javascript το οποίο μάλιστα χρησιμοποιεί την βιβλιοθήκη jQuery για την υλοποίηση διαφόρων τεχνικών (πχ εμφάνιση παραθύρου διαλόγου κτλ). + +Στην παραγωγή του συστήματος κρατήσεων ραντεβού χρησιμοποιήθηκε ως η βάση για τη μορφοποίηση και κάποιες μέθοδοι Javascript φάνηκαν αρκετά χρήσιμα σε κάποια σημεία. Στην συνέχεια με βάση αυτά γράφτηκαν ξεχωριστά αρχεία CSS και Javascript τα οποία αποτελούν το τελικό αποτέλεσμα που έπρεπε να επιτευχθεί. \ No newline at end of file diff --git a/doc/thesis/includes/google-calendar-api.tex b/doc/thesis/includes/google-calendar-api.tex new file mode 100644 index 00000000..04bed0d0 --- /dev/null +++ b/doc/thesis/includes/google-calendar-api.tex @@ -0,0 +1,146 @@ +%% ΠΕΡΙΓΡΑΦΗ ΤΟΥ GOOGLE CALENDAR API +%% Σε αυτό το κεφάλαιο περιγράφεται το Google Calendar API +%% και το πως χρησιμοποιείται από το σύστημα για να πραγματοποιηθεί +%% η διαδικασία του συγχρονισμού. + +\chapter{Google Calendar API} +Το Ημερολόγιο της Google είναι μια διαδικτυακή εφαρμογή που επιτρέπει στους χρήστες της να αποθηκεύουν και να διαχειρίζονται τα ραντεβού και τα συμβάντα τους σε ένα όμορφο περιβάλλον. Εκτός αυτού, υπάρχουν πολλές πρόσθετες δυνατότητες όπως ο συγχρονισμός ημερολογίου με κάποια άλλη εφαρμογή ή η κοινή χρήση ενός ημερολογίου από +πολλά άτομα. + +Όπως και με τα περισσότερα προϊόντα της Google παρέχονται εργαλεία με τα οποία μπορούν οι προγραμματιστές να επικοινωνήσουν και να λάβουν δεδομένα από τις υπηρεσίες της εταιρείας. Με +αυτόν τον τρόπο είναι δυνατή η ανάπτυξη εφαρμογών οι οποίες διαχειρίζονται αυτά τα δεδομένα, διευκολύνοντας έτσι τον χρήστη. + +Το Google Calendar API (Application Programming Interface) +είναι μια πλατφόρμα διαχείρισης συμβάντων ενός ημερολογίου από την Google. Επιτρέπει στον προγραμματιστή να πραγματοποιήσει λειτουργίες προσθήκης, επεξεργασίας, διαγραφής και αναζήτησης συμβάντων μέσω ενός RESTful στυλ κλήσεων προς τον server. + +Με την έννοια RESTful (Representional State Transfer) εννοείται ένας από τους πιο δημοφιλής τρόπους επικοινωνίας στον παγκόσμιο ιστό. Η επικοινωνία γίνεται με την χρήση ειδικών αιτήσεων προς τους servers, οι οποίοι με την σειρά τους είναι σε θέση να τις επεξεργαστούν και να επιστρέψουν δεδομένα πίσω στους clients. Οι μέθοδοι αιτήσεων που είναι διαθέσιμες είναι: +\begin{enumerate} +\item GET +\item POST +\item PUT +\item DELETE +\end{enumerate} + +Πρακτικά η μέθοδος επικοινωνίας RESTFul μπορεί να χρησιμοποιηθεί από οποιοδήποτε σύστημα υποστηρίζει το πρωτόκολλο HTTP. Για να διευκολύνει όμως η Google τους προγραμματιστές, έχει αναπτύξει βιβλιοθήκες κώδικα σε διάφορες γλώσσες προγραμματισμού (PHP, Java, .NET, Ruby κτλ) οι οποίες περιέχουν έτοιμες μεθόδους επικοινωνίας με τις υπηρεσίες της. Έτσι διευκολύνεται πολύ η διαδικασία ανάπτυξης μιας εφαρμογής που βασίζεται πάνω στα δεδομένα των χρηστών της Google. + +Για να αποτραπεί η υπερβολική χρήση της υπηρεσίας Calendar, η εταιρεία έχει θέσει ένα υπέρτατο όριο 10.000 request την ημέρα. Αν κάποια εταιρεία ξεπεράσει αυτό το όριο τότε θα χρειαστεί να πληρώσει κάποιο αντίτιμο για να μπορέσει να συνεχίσει κανονικά την χρήση. Για αυτό τον λόγο είναι και απαραίτητο οποιοσδήποτε client χρησιμοποιεί το Calendar API, να έχει πρώτα δημιουργήσει ένα API Key μέσω της σελίδας API Console που προσφέρει η Google. + +\section {Περιγραφή Του API} +Το Ημερολόγιο της Google είναι ένα πολύ δυνατό και ευέλικτο εργαλείο. Οι χρήστες μπορούν να βλέπουν το ίδιο ημερολόγιο σε οποιαδήποτε συσκευή βρίσκονται έχοντας απλώς σύνδεση με το διαδίκτυο, για να μπορέσουν να ληφθούν τα δεδομένα από την υπηρεσία. Όλες οι εφαρμογές αυτές χρησιμοποιούν το API για να υλοποιήσουν τις βασικές λειτουργίες ενός ημερολογίου, δηλαδή την διαχείριση και την εύκολη εύρεση συμβάντων που είναι καταχωρημένα στο Google Calendar. Αφού γίνουν οι αλλαγές αυτές θα χρειαστεί να εκτελεστεί η διαδικασία του συγχρονισμού έτσι ώστε τα νέα δεδομένα να είναι και στις υπόλοιπες εφαρμογές που έχουν πρόσβαση στο ημερολόγιο. + +Στην ευρεία χρήση της υπηρεσίας συντελεί το ότι η πλατφόρμα του ημερολογίου είναι συμβατή με διάφορες γλώσσες προγραμματισμού και έτσι μπορούν να υλοποιηθούν εφαρμογές για όλες τις συσκευές με εξελιγμένο λειτουργικό σύστημα (Windows, Linux, MacOsX, Android, iOs, Windows Phone κτλ). + +Οι βασικές έννοιες του συστήματος ενός ημερολογίου είναι: + +\begin{itemize} +\item Συμβάν (Event) - αντιπροσωπεύει ένα συμβάν στο ημερολόγιο το οποίο έχει τίτλο, περιγραφή, ημερομηνία και συμμετέχοντες. + +\item Ημερολόγιο (Calendar) - αντιπροσωπεύει ένα ημερολόγιο το οποίο περιέχει πολλά συμβάντα. Ένας χρήστης μπορεί να έχει πολλά ημερολόγια. Περιέχει επιπλέον πληροφορίες όπως η περιγραφή του ημερολογίου, ο ιδιοκτήτης κτλ. + +\item Λίστα Ημερολογίων (Calendar List) - αντιπροσωπεύει μια λίστα με όλα τα ημερολόγια ενός χρήστη της υπηρεσίας αυτής. + +\item Ρύθμιση (Setting) - αντιπροσωπεύει μια επιλογή του χρήστη, η οποία επηρεάζει τον τρόπο λειτουργίας της υπηρεσίας (πχ ρύθμιση ζώνης ώρας). + +\item ACL (Access Control Rule) - αντιπροσωπεύει έναν κανόνα πρόσβασης του ημερολογίου (όπως παραδείγματος χάρη το αν το ημερολόγιο είναι δημόσιο ή ιδιωτικό). + +\item Χρώμα (Color) - αντιπροσωπεύει το χρώμα για κάποια στοιχεία στο περιβάλλον χρήστη της εφαρμογής και τα συμβάντα. + +\item Ελεύθερος / Απασχολημένος (Free / Busy) - αντιπροσωπεύει μια χρονική περίοδο στο ημερολόγιο όπου ο χρήστης είναι είτε απασχολημένος είτε ελεύθερος. Αν είναι απασχολημένος δεν μπορούν να υπάρχουν συμβάντα +σε αυτό το διάστημα. +\end{itemize} + +Το API της Google λειτουργεί με “resources” και “collections” για να χειριστεί τις προαναφερθέντες έννοιες. Ένα resource αντιπροσωπεύει μια συγκεκριμένη οντότητα η οποία περιέχει δεδομένα για την εφαρμογή. Πολλά resource μαζί απαρτίζουν ένα collection το οποίο περιέχει πολλές χρήσιμες μεθόδους μαζικής διαχείρισης δεδομένων. + +Οι προγραμματιστές διαμορφώνουν τον κωδικά τους έτσι ώστε να είναι συμβατός με αυτήν την δομή και έτσι η επικοινωνία με την υπηρεσία της Google να είναι ευκολότερη. + +\section {Πως χρησιμοποιείται το API} +Η χρήση του API μπορεί να γίνει απευθείας με κλήσεις RESTful προς τον server της Google, είτε με χρήση κάποιων από τις έτοιμες βιβλιοθήκες που παρέχει η εταιρεία. Επίσης είναι απαραίτητη η ύπαρξη ενός λογαριασμού στην Google καθώς και η καταχώρηση του project στο Google API Console έτσι ώστε να πάρει ο προγραμματιστής ένα API Key, ένα κλειδί το οποίο είναι απαραίτητο για την χρήση της υπηρεσίας. + +Αν ο προγραμματιστής επιλέξει την χρήση της RESTful μεθόδου επικοινωνίας, θα χρειαστεί αν στέλνει request σε διάφορα URL και έτσι να παίρνει απαντήσεις με τα δεδομένα που χρειάζεται. Όλες οι απαντήσεις είναι σε JSON μορφή οπότε είναι πιθανόν να χρειαστεί να τις αναλύσει (parse) πριν τις χρησιμοποιήσει στην εφαρμογή του. + +Δείγματα από URL για την κλήση διαφόρων μεθόδων: + +\begin{verbatim} +https://www.googleapis.com/calendar/v3/lists/calendarListID/calendar?parameters +https://www.googleapis.com/calendar/v3/users/userID/lists?parameters +\end{verbatim} + +Αντιθέτως με την χρήση των έτοιμων βιβλιοθηκών οι διαδικασίες επικοινωνίας είναι έτοιμες και ο προγραμματιστής μπορεί να πετύχει την επικοινωνία με τους servers της Google γρηγορότερα και ευκολότερα. +Υπάρχουν βιβλιοθήκες για την Java, την PHP, την Python, το .NET περιβάλλον και την Ruby και πολλές άλλες γλώσσες και τεχνολογίες. + +Αφού κατεβάσουμε τις βιβλιοθήκες και τις βάλουμε σε κάποιο σημείο μέσα στο project, μπορούμε να τις χρησιμοποιήσουμε μέσα από τον κώδικα: + +\begin{verbatim} +require_once "../src/apiClient.php"; +require_once "../src/contrib/apiCalendarService.php"; +\end{verbatim} + +Στην συνέχεια είναι απαραίτητο να ρυθμίσουμε κάποιες παραμέτρους έτσι ώστε να είμαστε σε θέση να χρησιμοποιήσουμε αυτήν την υπηρεσία: + +\begin{verbatim} +global $apiConfig; + +$apiConfig = array( + // Site name to show in Google's OAuth authentication screen + 'site_name' => 'www.example.org', + + // OAuth2 Setting, you can get these keys on the API Access tab on + // the Google APIs Console + 'oauth2_client_id' => 'YOUR_CLIENT_ID', + 'oauth2_client_secret' => 'YOUR_CLIENT_SECRET', + 'oauth2_redirect_uri' => 'YOUR_REDIRECT_URL', + + // The developer key; you get this from the Google APIs Console + 'developer_key' => 'YOUR_DEVELOPER_KEY', + ... + + // Which Authentication, Storage and HTTP IO classes to use. + 'authClass' => 'apiOAuth2', + .... + + // Definition of service specific values like scopes, OAuth token URLs, etc + 'services' => array( + 'calendar' => array('scope' => 'https://www.googleapis.com/auth/calendar'), + ) +); +\end{verbatim} + +Έπειτα θα χρειαστεί να γίνει εκκίνηση του service και να ολοκληρωθεί η διαδικασία πιστοποίησης (authenticate) με την χρήση του API Key που αντιστοιχεί στην εφαρμογή. + +\begin{verbatim} +setUseObjects(true); +$service = new apiCalendarService($apiClient); + +if (isset($_SESSION['oauth_access_token'])) { + $apiClient->setAccessToken($_SESSION['oauth_access_token']); +} else { + $token = $apiClient->authenticate(); + $_SESSION['oauth_access_token'] = $token; +} +... +\end{verbatim} + +Με αυτόν τον τρόπο εκτελούνται οι διαδικασίες ανταλλαγής δεδομένων μεταξύ του Google Calendar και του συστήματος του προγραμματιστή. + +\section{Συγχρονισμός Ραντεβού με το Google Calendar} +Ο συγχρονισμός δεδομένων μεταξύ δυο συστημάτων είναι μια περίπλοκη και υποτιμημένη διαδικασία, διότι ο προγραμματιστής έχει κάνει αρκετή δουλειά έτσι ώστε να καταφέρει να γεφυρώσει και τις δυο πηγές δεδομένων με τον καλύτερο τρόπο. Το αποτέλεσμα δεν μπορεί ποτέ να είναι 100\% επιτυχές διότι μερικές φορές τα δεδομένα και οι αλλαγές μπορεί να έρχονται σε σύγκρουση (conflict) και έτσι θα χρειαστεί να παρθούν αποφάσεις είτε με βάση κάποιους κανόνες, είτε από τον ίδιο τον χρήστη για το ποια αλλαγή θα υπερισχύσει. Το πράγμα μάλιστα δυσκολεύει περισσότερο όταν δεν υπάρχει πρόσβαση στον κώδικα του ενός από τα δύο συστήματα (πχ Google Calendar) και όλη η διαδικασία θα πρέπει να τρέξει από το άλλο. + +Στην περίπτωση του Easy!Appointments θα πρέπει να υλοποιηθεί μια διαδικασία η οποία θα συγχρονίζει τα ραντεβού και τα συμβάντα του συστήματος με αυτά του Google Calendar. Η διαδικασία αυτή θα εκτελείτε όταν δημιουργούνται συγκεκριμένα συμβάντα (πχ. προσθήκη ραντεβού) και θα φέρνει και τα δύο πλάνα στην ίδια κατάσταση. Ο συγχρονισμός θα εκτελείται κάθε φορά για το πλάνο ενός πάροχου υπηρεσιών και εφόσον έχει ήδη δοθεί η άδεια στην εφαρμογή να έχει πρόσβαση στα δεδομένα του Google Calendar του συγκεκριμένου χρήστη. + +Με αυτόν τον τρόπο τα ραντεβού και οι αλλαγές που θα γίνονται από τα δυο συστήματα θα συγχωνεύονται και ο χρήστης θα μπορεί να τα διαχειρίζεται και από τις δύο πλευρές. Το μόνο πρόβλημα είναι ότι από την πλευρά του Google Calendar δεν είναι δυνατό να εκκινηθεί η διαδικασία του συγχρονισμού και έτσι αυτό θα πρέπει να γίνεται πάντοτε από την πλευρά του Easy!Appointments. + +Η διαδικασία αυτή θα μπορούσε να αυτοματοποιηθεί με την χρήση της μεθόδου cron job, αλλά κάτι τέτοιο θα μπορούσε να αποφέρει επιπλέον προβλήματα, μιας και είναι απαραίτητο ο χρήστης να έχει τα κατάλληλα δικαιώματα στον server για να το κάνει και αυτό δεν είναι πάντα εφικτό. Οπότε η μέθοδος αυτή απορρίπτεται λόγο αυτής της δυσκολίας. + +Η μέθοδος συγχρονισμού του Easy!Appointments είναι αμφίδρομη. Με την έννοια αυτή εννοείται ότι συγχρονίζονται τόσο οι αλλαγές που γίνονται στο Easy!Appointments, όσο και οι αλλαγές που γίνονται από το Google Calendar, προσφέροντας έτσι μεγαλύτερη ελευθερία και προσβασιμότητα στα δεδομένα των χρηστών της εφαρμογής. Παρακάτω αναλύονται τα βήματα που ακολουθούνται κατα την διαδικασία του συγχρονισμού. + +\begin{enumerate} +\item Η διαδικασία χωρίζεται σε δύο μέρη. Το πρώτο μέρος έχει να κάνει με τον συχρονισμό μιας ενέργειας που μόλις έχει γίνει στο Easy!Appointments (πχ ένας πελάτης πραγματοποίησε μια κράτηση στο πλάνο ενός πάροχου υπηρεσιών). Το καινούργιο αυτό ραντεβού που μόλις καταχωρήθηκε στο σύστημα θα χρειαστεί να ενσωματωθεί και στο Google Calendar. Έτσι τρέχει μια διαδικασία η οποία προσθέτει αυτό το ραντεβού στην υπηρεσία της Google. +\item Εκτός όμως του ραντεβού που δημιουργήθηκε στο Easy!Appointments, θα χρειαστεί να ληφθούν και οι αλλαγές που έχουν γίνει στο Google Calendar. Για αυτόν τον λόγο είναι απαραίτητο να ανιχνευθούν όλα τα καταχωρημένα ραντεβού και να ελεγχθούν για τυχόν αλλαγές. Επειδή αυτό όμως μπορεί να γίνει αρκετά χρονοβόρο υπάρχει μια παράμετρος στο σύστημα του Easy!Appointments η οποία καθορίζει το χρονικό διάστημα στο παρελθόν και το μέλλον, για το οποίο θέλει ο χρήστης να εκτελείται ο συγχρονισμός. Επίσης τα ραντεβού που έχουν συγχρονιστεί με το Google Calendar έχουν κρατημένο το id της εγγραφής στο σύστημα της Google, έτσι ώστε να είναι δυνατό να ανιχνευθούν οι αλλαγές που έχουν γίνει από τον χρήστη. Έτσι αν για παράδειγμα ένας χρήστης διαγράψει ένα ραντεβού από το Google Calendar το οποίο ήταν συγχρονισμένο και στο Easy!Appointments, η διαδικασία του συγχρονισμού θα καταλάβει ότι το ραντεβού λείπει και έτσι θα το διαγράψει και από το σύστημα του Easy!Appointments. +\end{enumerate} \ No newline at end of file diff --git a/doc/thesis/includes/headers.tex b/doc/thesis/includes/headers.tex new file mode 100644 index 00000000..722715c6 --- /dev/null +++ b/doc/thesis/includes/headers.tex @@ -0,0 +1,31 @@ +\documentclass[oneside, 12pt]{book} +\usepackage{thesis} +\usepackage{tabularx} +\usepackage{epsfig} + +\usepackage{hyperref} +\usepackage {color} +\hypersetup {colorlinks} +\definecolor{darkred}{rgb}{0.5,0,0} +\definecolor{darkgreen}{rgb}{0,0.5,0} +\definecolor{darkblue}{rgb}{0,0,0.5} + +\hypersetup{ + colorlinks, + linkcolor=darkblue, + filecolor=darkgreen, + urlcolor=darkblue, + citecolor=darkred +} + +%% ΤΑ ΠΑΡΑΚΑΤΩ ΕΙΝΑΙ ΥΠΟΧΡΕΩΤΙΚΑ +\renewcommand{\thesistitle}{Δημιουργία διαδικτυακού συστήματος συνατντήσεων (appointments) με χρήση Google Calendar PHP API} +\renewcommand{\thesisauthor}{Αλέξανδρος Τσελεγγίδης (2503)} +\renewcommand{\thesisauthorabbrv}{Α. Τσελεγγίδης} +\renewcommand{\thesisauthorinitials}{ΑΤ} +\renewcommand{\thesissupervisor}{Δρ. Νικόλαος Πεταλίδης, Επιστημονικός Συνεργάτης} +\renewcommand{\thesismonth}{Ιούνιος} +\renewcommand{\thesisyear}{2013} + +%% ΒΙΒΛΙΟΓΡΑΦΙΑ +\addbibresource{thesis.bib} \ No newline at end of file diff --git a/doc/Introduction/introduction.tex b/doc/thesis/includes/introduction.tex similarity index 62% rename from doc/Introduction/introduction.tex rename to doc/thesis/includes/introduction.tex index a35bc8ee..a2236075 100644 --- a/doc/Introduction/introduction.tex +++ b/doc/thesis/includes/introduction.tex @@ -1,154 +1,142 @@ -%% ============================= -%% GENERAL SETTINGS -%% ============================= -\documentclass[12pt]{article} - -\usepackage [margin=2.5cm]{geometry} -\usepackage {graphics} -\usepackage {xltxtra} -\usepackage {xgreek} -\usepackage {color} -\usepackage {hyperref} -\hypersetup {colorlinks} - - -\setmainfont[Mapping=tex-text]{Tahoma} -\setlength{\parindent}{0cm} %% No paragraph indent - -\definecolor{darkred}{rgb}{0.5,0,0} -\definecolor{darkgreen}{rgb}{0,0.5,0} -\definecolor{darkblue}{rgb}{0,0,0.5} - -\hypersetup{ colorlinks, -linkcolor=darkblue, -filecolor=darkgreen, -urlcolor=darkblue, -citecolor=darkred } - -%% ============================= -%% DOCUMENT PROPERTIES -%% ============================= -\title{{\Huge {\bf Easy!Appointments}} \\[0.3cm] Εισαγωγικό Κεφάλαιο} -\author{Αλέξανδρος Τσελεγγίδης} -\date{Νοέμβριος 2012} - -%% ============================= -%% DOCUMENT CONTENT -%% ============================= -\begin{document} -\maketitle -\thispagestyle{empty} %% Απομάκρυνση page number από την πρώτη σελίδα -\pagebreak - -%% ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ -\section* {Εισαγωγή} %% Ο αστερίσκος δεν βάζει νούμερο στο section -Το παρόν κεφάλαιο επεξηγεί τον σκοπό ανάπτυξης του Easy!Appointments καθώς και τις ανάγκες που καλύπτει σε μια επιχείρηση. Επιπρόσθετα αναφέρονται παρόμοια συστήματα και οι διαφορές που έχουν σε σχέση με την εφαρμογή. - -%% ΠΟΙΑ ΠΡΟΒΛΗΜΑΤΑ ΠΡΟΣΠΑΘΕΙ ΝΑ ΛΥΣΕΙ Η ΕΦΑΡΜΟΓΗ -\section {Ποια προβλήματα προσπαθεί να λύσει η εφαρμογή} -Οι επιχειρήσεις από την φύση τους χρειάζεται να έρχονται σε επαφή με τους πελάτες, για να μπορέσουν να τους εξυπηρετήσουν και έτσι να πάρουν την αμοιβή τους. Ανάλογα με την μορφή και το είδος της επιχείρησης, η επαφή αυτή διαφέρει. Για παράδειγμα κάποιες έρχονται σε επαφή με περισσότερους πελάτες, άλλες με λιγότερους άλλα η εξυπηρέτηση μπορεί να είναι πάλι παθητική (πχ κατάστημα ηλεκτρονικών ειδών) και κάποιες απαιτούν ιδιαίτερη προσοχή στον πελάτη καθώς η εξυπηρέτησή του μπορεί να γίνει μόνο προσωπικώς από κάποιον υπάλληλο ή επαγγελματία. Η τελευταία κατηγορία περιέχει ένα μεγάλο εύρος επιχειρήσεων το οποίο για να οργανώσει και να διευκολύνει το πελατειακό κοινό του, λειτουργεί κανονίζοντας ραντεβού με τους ενδιαφερόμενους. -\\[0.3cm] -Η κράτηση ενός ραντεβού είναι μια διαδικασία η οποία γίνεται συνήθως τηλεφωνικώς είτε μετά από προσωπικό κανονισμό με κάποιον αρμόδιο. Η διαδικασία αυτή αποτελείται συνήθως από τα παρακάτω μέρη: -\begin{enumerate} -\item Ο ενδιαφερόμενος πελάτης έρχεται σε επαφή με την επιχείρηση και ζητάει να κάνει κράτηση την επιθυμητή ημερομηνία και ώρα. -\item Ο αρμόδιος υπάλληλος ψάχνει σε κάποιο ημερολόγιο ή αρχείο υπολογιστή τα ραντεβού για την συγκεκριμένη ημερομηνία και ανάλογα με την διαθεσιμότητα ανταποκρίνεται στον πελάτη. -\item Αν η συγκεκριμένη χρονική στιγμή δεν είναι διαθέσιμη θα χρειαστεί να γίνει μια αντιπρόταση από τον υπάλληλο ή ο πελάτης να βρει κάποια άλλη στιγμή που θα είναι αυτός διαθέσιμος. -\end{enumerate} -Αν παρατηρήσουμε όμως την παραπάνω διαδικασία, θα δούμε πως έχει κάποια σημαντικά μειονεκτήματα, τα οποία μάλιστα συνεπάγονται την αύξηση του κόστους λειτουργίας μιας επιχείρησης και την μείωση της ποιότητας εξυπηρέτησης των πελατών. -\\[0.3cm] -Η ίδια η διαδικασία της κράτησης ενός ραντεβού με τον συγκεκριμένο τρόπο απαιτεί από μόνη της την ύπαρξη ενός υπαλλήλου, ο οποίος θα σπαταλάει αρκετό, αν όχι τον περισσότερο, από τον χρόνο του για να κάνει αυτήν την εργασία. Αυτό πρακτικά σημαίνει δέσμευση ανθρώπινων πόρων της επιχείρησης και συνεπάγεται στην αύξηση των εξόδων λειτουργίας. -\\[0.3cm] -Επιπλέον η ίδια η διαδικασία μπορεί να είναι χρονοβόρα και κουραστική για τους πελάτες, ειδικά στις περιπτώσεις όπου υπάρχει λίγο προσωπικό για να καλύψει μεγάλο κοινό (πχ νοσοκομεία). Στις περιπτώσεις αυτές οι πελάτες περιμένουν στην αναμονή για μεγάλο χρονικό διάστημα και μάλιστα πολλές φορές δεν πιάνουν γραμμή για να μπορέσουν να κρατήσουν κάποιο ραντεβού. Επίσης πρέπει να σημειωθεί ότι όταν ο πελάτης καταφέρει να κλείσει το ραντεβού του, συνήθως δεν έχει επιλογή για το πότε θα γίνει και απλώς ενημερώνεται για την ημερομηνία την οποία έχει ορίσει το προσωπικό, ανάλογα με τις εκάστοτε συνθήκες. -\\[0.3cm] -Εκτός αυτών η εκτέλεση αυτής της διαδικασίας είναι αρκετά επιρρεπής στο να έχει ασαφές αποτελέσματα, με την έννοια του ότι δεν υπάρχει κάποιο κοινό σημείο αναφοράς για την συμφωνία που πραγματοποιείται μεταξύ της επιχείρησης και του πελάτη, έτσι ώστε να μπορεί να γίνει εξακρίβωση και επαλήθευση των ιδιοτήτων μιας κράτησης και από τις δύο πλευρές. Αυτό μπορεί να οδηγήσει σε προβλήματα με τους πελάτες, κάτι το οποίο δεν είναι επιθυμητό σε καμία περίπτωση. -\\[0.3cm] -Μικρό είναι το μέρος των πληροφοριών που καταγράφεται με το πέρας της κράτησης, καθώς τα μέσα που χρησιμοποιούνται δεν επιτρέπουν ή κάνουν δύσκολη και χρονοβόρα την αποθήκευση όλων των δεδομένων. Αυτό συντελεί στην επιπλέον μείωση της ποιότητας εξυπηρέτησης και τις απόδοσης της επιχείρησης. -\\[0.3cm] -Τα δεδομένα αυτά διαχειρίζονται συνήθως δύσκολά. Ακόμα και στην περίπτωση που χρησιμοποιούνται ηλεκτρονικά μέσα για την αποθήκευση των κρατήσεων, η τροποποίηση ή ο έλεγχος μπορούν να είναι δύσκολες και χρονοβόρες διαδικασίες, οι οποίες εξαρτώνται κάθε φορά από το επίπεδο της οργάνωσης της επιχείρησης και τις τεχνολογίες που χρησιμοποιούνται. -\\[0.3cm] -Επίσης τα δεδομένα αυτά δεν είναι προσβάσιμα από οποιονδήποτε ανά πάσα στιγμή, αλλά μόνο στον χώρο της επιχείρησης και μόνο από το άτομο το οποίο διαχειρίζεται τα ραντεβού. -\\[0.3cm] -Τα παραπάνω προβλήματα διογκώνονται σημαντικά όταν πρόκειται για μεγάλες επιχειρήσεις και οργανισμούς, οι οποίοι εξυπηρετούν μεγάλο αριθμό πελατών. - - -%% ΓΙΑΤΙ ΕΙΝΑΙ ΣΗΜΑΝΤΙΚΑ ΤΑ ΠΡΟΒΛΗΜΑΤΑ ΑΥΤΑ -\section {Γιατί ειναι σημαντικά τα προβλήματα αυτά} -Οι απαιτήσεις και η ανταγωνιστικότητα που υπάρχει μεταξύ των επιχειρήσεων στην εποχή μας, απαιτεί την γρήγορη και άμεση διεκπεραίωση διεργασιών και την όσο το δυνατόν καλύτερη οργάνωση τους, για να μπορούν να παρέχουν υπηρεσίες υψηλού επιπέδου με το χαμηλότερο δυνατό κόστος και προσωπικό. Για να επιτύχουν τον σκοπό αυτό οι επιχειρήσεις πρέπει να επιλέξουν τα κατάλληλα εργαλεία οργάνωσης και εξυπηρέτησης των πελατών τους. -\\[0.3cm] -Βλέποντας τα προβλήματα που αναφέρθηκαν προηγουμένως είναι κατανοητό ότι με την χρήση της έως τώρα μεθόδου κράτησης ραντεβού, επέρχεται μείωση της ποιότητας και της απόδοσης της επιχείρησης. Αυτό σημαίνει ότι το επίπεδο εξυπηρέτησης είναι χαμηλότερο και έτσι η επιχείρηση αδυνατεί να είναι ανταγωνιστική προς τις άλλες καθώς γίνεται σπατάλη πόρων για την υλοποίηση αυτής της διαδικασίας. -\\[0.3cm] -Η μείωση αυτή επιφέρει αύξηση του κόστους λειτουργίας το οποίο αποτελεί ένα επιπρόσθετο εμπόδιο στην προσπάθεια για ανάπτυξη και επέκταση. Πολλές φορές μάλιστα αυτή η αύξηση του κόστους σε συνδιασμό με άλλους παράγοντες μπορεί να συντελέσουν στην μη βιωσιμότητα και το κλείσιμο της επιχείρησης, εφόσον αυτή δεν μπορεί να παράγει κέρδη. -\\[0.3cm] -Παρατηρούμε λοιπόν ότι η σημερινή οργάνωση των επιχειρήσεων που λειτουργούν με ραντεβού, θα μπορούσε να βελτιωθεί με την χρήση ενός ηλεκτρονικού συστήματος που θα επίλυε τα προαναφερθέντα προβλήματα και θα πρόσδιδε μεγαλύτερη ευκολία στην εξυπηρέτηση του κοινού. Η προτεινόμενη λύση αποσκοπεί στο να εκπληρώσει αυτά τα κενά και να εντάξει στο ενεργητικό της επιχείρησης ένα δυνατό εργαλείο οργάνωσης. - -%% ΠΑΡΟΜΟΙΕΣ ΛΥΣΕΙΣ -\section{Παρόμοιες λύσεις που υπάρχουν ήδη} -\subsection{Genbook} -Το Genbook είναι μια online υπηρεσία που προσφέρει στις επιχειρήσεις την δυνατότητα να εγγραφούν (πληρώνοντας το αντίτιμο) και να χρησιμοποιήσουν την εφαρμογή που τους επιτρέπει να διαχειρίζονται τα ραντεβού. Παρέχει αρκετά φιλικό περιβάλλον, είναι παραμετροποιήσιμο και περιέχει την δυνατότητα παραγωγής στατιστικών στοιχείων για τις υπηρεσίες που είναι διαθέσιμες προς το κοινό. -\\[0.3cm] -Αυτό που δεν υποστηρίζει είναι η δημιουργία πολλαπλών πλάνων που να αντιπροσωπεύουν διαφορετικούς τομείς ή υπαλλήλους (όλα τα ραντεβού φαίνονται σε ένα ημερολόγιο). -\\[0.3cm] -Παρατηρήσεις : επί πληρωμή, ικανοποιητικά παραμετροποιήσιμο, δημιουργία στατιστικών -\\[0.3cm] -\href{http://www.genbook.com}{Website} - -\subsection{Web Appointment Scheduling System (WASS)} -Το WASS είναι μια λύση ανοιχτού κώδικα, η οποία περιέχει τις βασικότερες λειτουργίες διαχείρισης ραντεβού για μια επιχείρηση. Από την εφαρμογή αυτή λείπουν κάποια στοιχεία διαχείρισης και παραμετροποίησης και το γραφικό περιβάλλον του χρήστη χρειάζεται επιπλέον δουλειά. Παρ' όλα αυτά είναι δωρεάν και προτείνεται για οποιαδήποτε μικρή επιχείρηση. Η εφαρμογή υποστηρίζει το iCal της Apple και την δημιουργία πολλών πλάνων. -\\[0.3cm] -Παρατηρήσεις : δωρεάν, βασικές λειτουργίες, ανοιχτός κώδικας, υποστήριξη iCal -\\[0.3cm] -\href{https://wass.princeton.edu/pages/login.page.php}{Website} | -\href{http://sourceforge.net/projects/wass/}{Source Code} - -\subsection{Appointment-plus} -Το Appointment-plus είναι από τις πιο οργανωμένες και εμπλουτισμένες εφαρμογές που υπάρχουν σε αυτόν τον τομέα. Έχει εκδόσεις για οποιαδήποτε συσκευή (pc, tablets, smartphones), όμορφο περιβάλλον, υποστήριξη συγχρονισμού δεδομένων με άλλες υπηρεσίες και εφαρμογές (Google, Outlook, iCal κτλ), χρήση από πολλούς υπαλλήλους και πολλά πλάνα. Παρέχει λειτουργία αναμονής για τους πελάτες σε περίπτωση που η επιθυμητή ώρα είναι πιασμένη. Υπάρχει σύστημα email στα οποία ο πελάτης μπορεί να κάνει επιλογές και να τις αποστείλει πίσω στο σύστημα. Δυνατότητα για τροποποίηση της σελίδας που βλέπει ο χρήστης και πώλησης προϊόντων μέσω της εφαρμογής. Η εταιρεία προσφέρει σε κάθε πελάτη έναν βοηθό στον οποίο θα μπορεί να απευθυνθεί για να ρυθμίσει την εφαρμογή. -\\[0.3cm] -Παρατηρήσεις : επί πληρωμή, πλήρως παραμετροποιήσιμο, λειτουργία σε διαφορετικές συσκευές, πολλαπλά πλάνα, υποστήριξη (τηλέφωνο - email), το χρησιμοποιούν μεγάλες εταιρείες, οργανισμοί και πανεπιστημιακά ιδρύματα -\\[0.3cm] -\href{http://www.appointment-plus.com/}{Website} - -\subsection{Acuity Scheduling} -Η εφαρμογή αυτή αν και πιο απλή από την Appointment-plus περιέχει όλες τις βασικές λειτουργίες που θα χρειαστεί μια επιχείρηση για την υλοποίηση ενός συστήματος ραντεβού. Υποστηρίζει την δυνατότητα τροποποίησης της εμφάνισης, δημιουργία πολλών υπαλλήλων και πλάνων, ηλεκτρονικών πληρωμών με πιστωτική κάρτα, εξαγωγή ημερολογίου σε άλλες εφαρμογές (Facebook, Google και Outlook), ιστορικό, διαχείριση πελατών και λειτουργία σε iPhone. Επίσης δίνει την δυνατότητα πώλησης προϊόντων (eshop) για ηλεκτρονικές αγορές. -\\[0.3cm] -Παρατηρήσεις : επί πληρωμή (δωρεάν για έναν χρήστη αλλά με περιορισμούς), υποστήριξη προϊόντων, iPhone, εξαγωγή σε Google, Outlook και Facebook -\\[0.3cm] -\href{http://www.acuityscheduling.com/}{Website} - -\subsection{SetMore} -Το SetMore έχει απλή και όμορφη εμφάνιση και παρέχει ένα πλήρως παραμετροποιήσιμο περιβάλλον. Είναι το μόνο που υποστηρίζει sms ειδοποιήσεις και αυτό σε beta στάδιο. Η διαδικασία κράτησης ενός ραντεβού χωρίζεται όπως και με τα υπόλοιπα, σε έναν οδηγό με 4-5 βήματα στα οποία ο χρήστης επιλέγει ποια υπηρεσία και σε ποιόν υπάλληλο θέλει να κλείσει ραντεβού. Είναι πολύ εύκολο στην χρήση και υποστηρίζει το WordPress και το Facebook. -\\[0.3cm] -Παρατηρήσεις : επί πληρωμή, υποστήριξη sms, λειτουργία με WordPress και Facebook, δεν μπορεί να εξάγει τα δεδομένα του σε άλλη εφαρμογή (Google Calendar, Outlook) -\\[0.3cm] -\href{http://www.setmore.com/}{Website} - -\subsection{Υπόλοιπα συστήματα} -Εκτός των αναφερθέντων υπάρχουν πολλές άλλες εφαρμογές διαθέσιμες προς το κοινό. Μερικές από αυτές αναφέρονται στην παρακάτω λίστα: -\begin{enumerate} -\item SnapAppointments -\item Doodle -\item Bookeo -\item ScheduleOnce -\item BookingBug -\item SetSter -\item Agreedo -\item BookedIn -\item Book'd -\item Schedulista -\end{enumerate} - -%% ΣΕ ΤΙ ΔΙΑΦΕΡΕΙ ΑΠΟ ΤΙΣ ΥΠΟΛΟΙΠΕΣ Η ΠΡΟΤΕΙΝΟΜΕΝΗ ΛΥΣΗ -\section{Σε τι διαφέρει από τις υπόλοιπες η προτεινόμενη λύση} -Το Easy!Appointments έχει ως σκοπό να αυτοματοποιήσει την διαδικασία της κράτησης και διαχείρισης ραντεβού για οποιαδήποτε επιχείρηση. Χρησιμοποιώντας τις δυνατότητες που μας παρέχει το διαδίκτυο, μπορεί να υλοποιηθεί ένα σύστημα το οποίο να έχει την δυνατότητα να οργανώσει τα επαγγελματικά πλάνα πολλών υπαλλήλων ταυτόχρονα, επιφέροντας έτσι όχι μόνο την μείωση του χρόνου που απαιτούσαν οι παλιές μέθοδοι διαχείρισης ραντεβού, αλλά και την αύξηση της παραγωγικότητας της επιχείρησης. Οι πελάτες δεν θα χρειάζεται πλέον να τηλεφωνούν ή να πηγαίνουν στο κατάστημα, αλλά θα μπορούν να βλέπουν το πλάνο της επιχείρησης και να κλείνουν το ραντεβού την επιθυμητή ημερομηνία και ώρα, μέσω του υπολογιστή τους. Αυτό έχει ως αποτέλεσμα την ποιοτικότερη αλλά και αποδοτικότερη εξυπηρέτηση τους. Επιπρόσθετα βελτιώνεται η επικοινωνία και η οργάνωση των συντελεστών της επιχείρησης, παρέχοντας δυνατότητες αρχειοθέτησης και διαχείρισης των δεδομένων που αποθηκεύονται στο σύστημα ανά πάσα στιγμή και σε οποιοδήποτε μέρος. Σε αντίθεση με τα άλλα συστήματα, προσφέρει επιπλέον τα εξής: - -\begin{enumerate} -\item {\bf Αυτόνομη Εγκατάσταση :} Η επιχείρηση που θέλει να χρησιμοποιήσει την εφαρμογή θα μπορεί να την εγκαταστήσει στον server της και να την τρέξει μαζί με κάποιο άλλο site, έχοντας έτσι πλήρη πρόσβαση στα δεδομένα και τον κώδικα. Η διαδικασία της εγκατάστασης και παραμετροποίησης θα είναι παρόμοια με άλλα συστήματα (Joomla, WordPress κτλ) και όσο πιο αυτοματοποιημένη γίνεται. - -\item {\bf Προεπιλεγμένα Προφίλ Ρυθμίσεων :} To Easy!Appointments θα έρχεται μαζί με κάποια προεπιλεγμένα προφίλ ρυθμίσεων ανάλογα με το είδος της επιχείρησης, έτσι ώστε να είναι πιο εύκολο στην ρύθμισή του. Τα προφίλ αυτά θα μπορούν να αποθηκεύονται και εξωτερικά για να μπορούν να διαμοιράζονται και στην κοινότητα των χρηστών της εφαρμογής. - -\item {\bf Διαμόρφωση Πρότυπου Πλάνου :} Το σύστημα θα έχει ενσωματωμένη δυνατότητα δημιουργίας πρότυπου πλάνου για τον κάθε πάροχο υπηρεσιών, το οποίο θα αποτελεί την βάση της κάθε εβδομάδας και από εκεί και πέρα ο διαχειριστής θα μπορεί να κάνει αλλαγές. Η επανάληψη του πλάνου καθώς και το από ποιά προτυπα πλάνα θα αποτελείται ένας μήνας θα συμπεριλαμβάνονται στην ρύθμιση της εφαρμογής. - -\item {\bf Ρύθμιση Δικαιωμάτων Πάροχων :} Ο διαχειριστής θα έχει την δυνατότητα να ορίζει τα δικαιώματα αλλαγών και ρυθμίσεων που θα έχει στην διάθεσή του ο κάθε πάροχος υπηρεσιών. Έτσι μπορεί να διασφαλιστεί η ασφάλεια των δεδομένων όπου κρίνεται αυτό χρήσιμο, είτε να διευκολυνθεί η διαχείρηση των ραντεβού έτσι ώστε να μπορεί ο κάθε πάροχος να διαχειρίζεται τα δικά του. - -\item {\bf Υποστήριξη Γραμματείας :} Αν παρόλα αυτά η εταιρεία ορίσει κάποια γραμματέα ως υπεύθυνση των ραντεβού, τότε είναι απαραίτητο να μπορεί να διαχειρίζεται μόνο αυτά και τους πελάτες που είναι καταχωρημένοι στο σύστημα. Το Easy!Appointments υποστηρίζει την δημιουργία χρηστών που αντιπροσωπεύουν αυτόν τον σκοπό. -\end{enumerate} -\end{document} \ No newline at end of file +%% ΕΙΣΑΓΩΓΙΚΟ ΚΕΦΑΛΑΙΟ +%% Το μέρος του εγγράφου αυτού περιέχει τα πρώτα μέρη της διπλωματικής +%% (πρωτοσέλιδο, περιεχόμενα, πρόλογος κτλ) καθώς και ένα κεφάλαιο που +%% αναλύει και περιγράφει το πρόβλημα που επιλύει το σύστημα που αναπτήχθηκε. + +\Titlepage +\Declarationpage + +\begin{Abstract} +Η εργασία αυτή πραγματεύεται την υλοποίηση ενός διαδικτυακού συστήματος κρατήσεων ραντεβού για επιχειρήσεις, με πλήρη περιβάλλον διαχείρισης και την δυνατότητα συγχρονισμού των ραντεβού με το Google Calendar API. Στόχος είναι να κατασκευαστεί ένα ευέλικτο σύστημα, το οποίο να είναι σε θέση να εξυπηρετήσει τις ανάγκες οποιασδήποτε επιχείρησης, βελτιώνοντας έτσι την μηχανογράφηση και την οργάνωση της και κατ' επέκταση την απόδοση της. Όλα αυτά σαφώς συντελούν στην μείωση του κόστους λειτουργίας, κάτι το οποίο είναι πολύ σημαντικό. Για την υλοποίηση της εφαρμογής επιλέχθηκε η γλώσσα προγραμματισμού PHP και Javascript καθώς και κάποιες εξωτερικές βιβλιοθήκες κώδικα, οι οποίες φάνηκαν πολύ χρήσιμες κατά την υλοποίηση του συστήματος. +\end{Abstract} + +\tableofcontents + +\begin{Definitions} +Στο έγγραφο αυτό υπάρχουν κάποιες έννοιες οι οποίες χρησιμοποιούνται +σε διάφορα σημεία. Παρακάτω παρατίθενται οι περιγραφές τους. +\begin{description} +\item [Διαχειριστής] Ο διαχειριστής του συστήματος είναι ο χρήστης ο οποίος έχει όλα τα δικαιώματα αλλαγών και ρυθμίσεων του Easy!Appointments. Μπορεί να ορίσει νέες υπηρεσίες και πάροχους υπηρεσίας, να ρυθμίσει το σύστημα ειδοποιήσεων και να εκτελέσει όλες τις δυνατές διαδικασίες διαχείρισης των δεδομένων. + +\item [Πάροχος Υπηρεσίας] Ο πάροχος υπηρεσίας είναι η οντότητα που εξυπηρετεί μια ή περισσότερες υπηρεσίες. Μπορεί να αντιπροσωπεύει ένα άτομο ή μια ομάδα ατόμων. Σε κάθε περίπτωση όμως διαχειρίζεται από έναν χρήστη του συστήματος. + +\item [Πελάτης] Ο πελάτης αφού δει τις διαθέσιμες ημερομηνίες και ώρες για τις επιλεγμένες υπηρεσίες και παρόχους, μπορεί να κλείνει ραντεβού με την επιχείρηση. Αν γίνει οποιαδήποτε αλλαγή σε κάποιο ραντεβού του πελάτη τότε αυτός θα ενημερωθεί με σχετικό email. + +\item [Γραμματέας] Ο γραμματέας είναι ένας χρήστης ο οποίος μπορεί να διαχειριστεί τα ραντεβού και τους πελάτες του συστήματος για συγκεκριμένους πάροχους υπηρεσιών. Το σε ποιους πάροχους αντιστοιχεί ο κάθε χρήστης γραμματέας ορίζεται από τον διαχειριστή στο περιβάλλον ρυθμίσεων της εφαρμογής. + +\item [Πλάνο Πάροχου] Από την στιγμή που κλείνονται ραντεβού σε έναν πάροχο υπηρεσιών το ημερολογιακό του πλάνο αρχίζει να γεμίζει από χρονικά διαστήματα, τα οποία είναι δεσμευμένα και αντιπροσωπεύουν συναντήσεις με τους πελάτες. Εκτός αυτού υπάρχει και η δυνατότητα να τεθεί ένα ανενεργό χρονικό διάστημα, στο οποίο ο συγκεκριμένος πάροχος δεν θα είναι διαθέσιμος έτσι ώστε να μην μπορούν οι πελάτες να κλείνουν ραντεβού σε αυτό το διάστημα. Αυτό το πλάνο μπορεί να συγχρονιστεί με το Google Calendar έτσι ώστε να είναι προσβάσιμο και από άλλες υπηρεσίες. +\end{description} +\end{Definitions} + +%% ============================================= +%% ΚΕΦΑΛΑΙΟ 1 - ΕΙΣΑΓΩΓΗ +%% ============================================= +\chapter{Εισαγωγή} +\leftmark\rightmark +Το παρόν κεφάλαιο επεξηγεί τον σκοπό ανάπτυξης του Easy!Appointments καθώς και τις ανάγκες που καλύπτει σε μια επιχείρηση. Επιπρόσθετα αναφέρονται παρόμοια συστήματα και οι διαφορές που έχουν σε σχέση με την εφαρμογή. + +\section {Ποια προβλήματα προσπαθεί να λύσει η εφαρμογή} +Οι επιχειρήσεις από την φύση τους χρειάζεται να έρχονται σε επαφή με τους πελάτες, για να μπορέσουν να τους εξυπηρετήσουν και έτσι να πάρουν την αμοιβή τους. Ανάλογα με την μορφή και το είδος της επιχείρησης, η επαφή αυτή διαφέρει. Για παράδειγμα κάποιες επιχειρήσεις έρχονται σε επαφή με περισσότερους πελάτες, άλλες με λιγότερους αλλά η εξυπηρέτηση μπορεί να είναι παθητική (πχ κατάστημα ηλεκτρονικών ειδών) και κάποιες απαιτούν ιδιαίτερη προσοχή στον πελάτη καθώς η εξυπηρέτησή του μπορεί να γίνει μόνο προσωπικώς, από κάποιον υπάλληλο ή επαγγελματία (πάροχος της υπηρεσίας). Η τελευταία κατηγορία περιέχει ένα μεγάλο εύρος επιχειρήσεων το οποίο για να οργανώσει και να διευκολύνει το πελατειακό κοινό του, λειτουργεί κανονίζοντας ραντεβού με τους ενδιαφερόμενους πελάτες. + +Η κράτηση ενός ραντεβού είναι μια διαδικασία η οποία γίνεται συνήθως τηλεφωνικώς, είτε μετά από προσωπικό κανονισμό με κάποιον αρμόδιο. Η διαδικασία αυτή αποτελείται συνήθως από τα παρακάτω μέρη: +\begin{enumerate} +\item Ο ενδιαφερόμενος πελάτης έρχεται σε επαφή με την επιχείρηση και ζητάει να κάνει κράτηση την επιθυμητή ημερομηνία και ώρα, για μια συγκεκριμένη υπηρεσία. +\item Ο αρμόδιος υπάλληλος ψάχνει σε κάποιο ημερολόγιο ή αρχείο υπολογιστή τα ραντεβού για την συγκεκριμένη ημερομηνία και ανάλογα με την διαθεσιμότητα ανταποκρίνεται στον πελάτη. +\item Αν η συγκεκριμένη χρονική στιγμή δεν είναι διαθέσιμη θα χρειαστεί να γίνει μια αντιπρόταση από τον υπάλληλο ή ο πελάτης να βρει κάποια άλλη στιγμή που θα είναι αυτός διαθέσιμος. +\end{enumerate} +Αν παρατηρήσουμε όμως την παραπάνω διαδικασία, θα δούμε πως έχει κάποια σημαντικά μειονεκτήματα, τα οποία μάλιστα συνεπάγονται την αύξηση του κόστους λειτουργίας μιας επιχείρησης και την μείωση της ποιότητας εξυπηρέτησης των πελατών. + +Η ίδια η διαδικασία της κράτησης ενός ραντεβού με τον συγκεκριμένο τρόπο απαιτεί από μόνη της την ύπαρξη ενός υπαλλήλου, ο οποίος θα σπαταλάει αρκετό, αν όχι τον περισσότερο, από τον χρόνο του για να κάνει αυτήν την εργασία. Αυτό πρακτικά σημαίνει δέσμευση ανθρώπινων πόρων της επιχείρησης και συνεπάγεται στην αύξηση των εξόδων λειτουργίας. + +Επιπλέον, η ίδια η διαδικασία μπορεί να είναι χρονοβόρα και κουραστική για τους πελάτες, ειδικά στις περιπτώσεις όπου υπάρχει λίγο προσωπικό για να καλύψει μεγάλο κοινό (πχ νοσοκομεία). Στις περιπτώσεις αυτές οι πελάτες περιμένουν στην αναμονή για μεγάλο χρονικό διάστημα και μάλιστα πολλές φορές δεν πιάνουν γραμμή για να μπορέσουν να κρατήσουν κάποιο ραντεβού. Επίσης πρέπει να σημειωθεί ότι όταν ο πελάτης καταφέρει να κλείσει το ραντεβού του, συνήθως δεν έχει επιλογή για το πότε θα γίνει και απλώς ενημερώνεται για την ημερομηνία την οποία έχει ορίσει το προσωπικό, ανάλογα με τις εκάστοτε συνθήκες. + +Εκτός αυτών η εκτέλεση αυτής της διαδικασίας είναι αρκετά επιρρεπής στο να έχει ασαφές αποτελέσματα, με την έννοια του ότι δεν υπάρχει κάποιο κοινό σημείο αναφοράς για την συμφωνία που πραγματοποιείται μεταξύ της επιχείρησης και του πελάτη, έτσι ώστε να μπορεί να γίνει εξακρίβωση και επαλήθευση των ιδιοτήτων μιας κράτησης και από τις δύο πλευρές. Αυτό μπορεί να οδηγήσει σε προβλήματα με τους πελάτες, κάτι το οποίο δεν είναι επιθυμητό σε καμία περίπτωση. + +Μικρό είναι το μέρος των πληροφοριών που καταγράφεται με το πέρας της κράτησης, καθώς τα μέσα που χρησιμοποιούνται δεν επιτρέπουν ή κάνουν δύσκολη και χρονοβόρα την αποθήκευση όλων των δεδομένων. Αυτό συντελεί στην επιπλέον μείωση της ποιότητας εξυπηρέτησης και τις απόδοσης της επιχείρησης. + +Τα δεδομένα αυτά διαχειρίζονται συνήθως δύσκολα. Ακόμα και στην περίπτωση που χρησιμοποιούνται ηλεκτρονικά μέσα για την αποθήκευση των κρατήσεων, η τροποποίηση ή ο έλεγχος μπορούν να είναι δύσκολες και χρονοβόρες διαδικασίες, οι οποίες εξαρτώνται κάθε φορά από το επίπεδο της οργάνωσης της επιχείρησης και τις τεχνολογίες που χρησιμοποιούνται. + +Επίσης τα δεδομένα αυτά δεν είναι προσβάσιμα από οποιονδήποτε ανά πάσα στιγμή, αλλά μόνο στον χώρο της επιχείρησης και μόνο από το άτομο το οποίο διαχειρίζεται τα ραντεβού. + +Τα παραπάνω προβλήματα διογκώνονται σημαντικά όταν πρόκειται για μεγάλες επιχειρήσεις και οργανισμούς, οι οποίοι εξυπηρετούν μεγάλο αριθμό πελατών. + +\section {Γιατί είναι σημαντικά τα προβλήματα αυτά} +Οι απαιτήσεις και η ανταγωνιστικότητα που υπάρχει μεταξύ των επιχειρήσεων στην εποχή μας, απαιτεί την γρήγορη και άμεση διεκπεραίωση διεργασιών και την όσο το δυνατόν καλύτερη οργάνωση τους, για να μπορούν να παρέχουν υπηρεσίες υψηλού επιπέδου με το χαμηλότερο δυνατό κόστος και προσωπικό. Για να επιτύχουν τον σκοπό αυτό οι επιχειρήσεις πρέπει να επιλέξουν τα κατάλληλα εργαλεία οργάνωσης και εξυπηρέτησης των πελατών τους. + +Βλέποντας τα προβλήματα που αναφέρθηκαν προηγουμένως είναι κατανοητό ότι με την χρήση της έως τώρα μεθόδου κράτησης ραντεβού, επέρχεται μείωση της ποιότητας και της απόδοσης της επιχείρησης. Αυτό σημαίνει ότι το επίπεδο εξυπηρέτησης είναι χαμηλότερο και έτσι η επιχείρηση αδυνατεί να είναι ανταγωνιστική προς τις άλλες καθώς γίνεται σπατάλη πόρων για την υλοποίηση αυτής της διαδικασίας. + +Η μείωση αυτή επιφέρει αύξηση του κόστους λειτουργίας το οποίο αποτελεί ένα επιπρόσθετο εμπόδιο στην προσπάθεια για ανάπτυξη και επέκταση. Πολλές φορές μάλιστα αυτή η αύξηση του κόστους σε συνδιασμό με άλλους παράγοντες μπορεί να συντελέσουν στην μη βιωσιμότητα και το κλείσιμο της επιχείρησης, εφόσον αυτή δεν μπορεί να παράγει κέρδη. + +Παρατηρούμε λοιπόν ότι η σημερινή οργάνωση των επιχειρήσεων που λειτουργούν με ραντεβού, θα μπορούσε να βελτιωθεί με την χρήση ενός ηλεκτρονικού συστήματος που θα επίλυε τα προαναφερθέντα προβλήματα και θα πρόσδιδε μεγαλύτερη ευκολία στην εξυπηρέτηση του κοινού. Η προτεινόμενη λύση αποσκοπεί στο να εκπληρώσει αυτά τα κενά και να εντάξει στο ενεργητικό της επιχείρησης ένα δυνατό εργαλείο οργάνωσης. + +\section{Παρόμοιες λύσεις που υπάρχουν ήδη} +\subsection{Genbook} +Το Genbook είναι μια online υπηρεσία που προσφέρει στις επιχειρήσεις την δυνατότητα να εγγραφούν (πληρώνοντας το αντίτιμο) και να χρησιμοποιήσουν την εφαρμογή που τους επιτρέπει να διαχειρίζονται τα ραντεβού. Παρέχει αρκετά φιλικό περιβάλλον, είναι παραμετροποιήσιμο και περιέχει την δυνατότητα παραγωγής στατιστικών στοιχείων για τις υπηρεσίες που είναι διαθέσιμες προς το κοινό. + +Αυτό που δεν υποστηρίζει είναι η δημιουργία πολλαπλών πλάνων που να αντιπροσωπεύουν διαφορετικούς τομείς ή υπαλλήλους (όλα τα ραντεβού φαίνονται σε ένα ημερολόγιο). + +Παρατηρήσεις : επί πληρωμή, ικανοποιητικά παραμετροποιήσιμο, δημιουργία στατιστικών + +\href{http://www.genbook.com}{www.genbook.com} + +\subsection{Web Appointment Scheduling System (Open Source)} +Το WASS είναι μια λύση ανοιχτού κώδικα, η οποία περιέχει τις βασικότερες λειτουργίες διαχείρισης ραντεβού για μια επιχείρηση. Από την εφαρμογή αυτή λείπουν κάποια στοιχεία διαχείρισης και παραμετροποίησης και το γραφικό περιβάλλον του χρήστη χρειάζεται επιπλέον δουλειά. Παρ' όλα αυτά είναι δωρεάν και προτείνεται για οποιαδήποτε μικρή επιχείρηση. Η εφαρμογή υποστηρίζει το iCal της Apple και την δημιουργία πολλών πλάνων. + +Παρατηρήσεις : δωρεάν, βασικές λειτουργίες, ανοιχτός κώδικας, υποστήριξη iCal + +\href{https://wass.princeton.edu/pages/login.page.php}{www.wass.princeton.edu} | +\href{http://sourceforge.net/projects/wass/}{www.sourceforge.net} + +\subsection{Appointment-plus} +Το Appointment-plus είναι από τις πιο οργανωμένες και εμπλουτισμένες εφαρμογές που υπάρχουν σε αυτόν τον τομέα. Έχει εκδόσεις για οποιαδήποτε συσκευή (pc, tablets, smartphones), όμορφο περιβάλλον, υποστήριξη συγχρονισμού δεδομένων με άλλες υπηρεσίες και εφαρμογές (Google, Outlook, iCal κτλ), χρήση από πολλούς υπαλλήλους και πολλά πλάνα. Παρέχει λειτουργία αναμονής για τους πελάτες σε περίπτωση που η επιθυμητή ώρα είναι πιασμένη. Υπάρχει σύστημα email στα οποία ο πελάτης μπορεί να κάνει επιλογές και να τις αποστείλει πίσω στο σύστημα. Δυνατότητα για τροποποίηση της σελίδας που βλέπει ο χρήστης και πώλησης προϊόντων μέσω της εφαρμογής. Η εταιρεία προσφέρει σε κάθε πελάτη έναν βοηθό στον οποίο θα μπορεί να απευθυνθεί για να ρυθμίσει την εφαρμογή. + +Παρατηρήσεις : επί πληρωμή, πλήρως παραμετροποιήσιμο, λειτουργία σε διαφορετικές συσκευές, πολλαπλά πλάνα, υποστήριξη (τηλέφωνο - email), το χρησιμοποιούν μεγάλες εταιρείες, οργανισμοί και πανεπιστημιακά ιδρύματα + +\href{http://www.appointment-plus.com/}{www.appointment-plus.com} + +\subsection{Acuity Scheduling} +Η εφαρμογή αυτή αν και πιο απλή από την Appointment-plus περιέχει όλες τις βασικές λειτουργίες που θα χρειαστεί μια επιχείρηση για την υλοποίηση ενός συστήματος ραντεβού. Υποστηρίζει την δυνατότητα τροποποίησης της εμφάνισης, δημιουργία πολλών υπαλλήλων και πλάνων, ηλεκτρονικών πληρωμών με πιστωτική κάρτα, εξαγωγή ημερολογίου σε άλλες εφαρμογές (Facebook, Google και Outlook), ιστορικό, διαχείριση πελατών και λειτουργία σε iPhone. Επίσης δίνει την δυνατότητα πώλησης προϊόντων (eshop) για ηλεκτρονικές αγορές. + +Παρατηρήσεις : επί πληρωμή (δωρεάν για έναν χρήστη αλλά με περιορισμούς), υποστήριξη προϊόντων, iPhone, εξαγωγή σε Google, Outlook και Facebook + +\href{http://www.acuityscheduling.com/}{www.acuityscheduling.com} + +\subsection{SetMore} +Το SetMore έχει απλή και όμορφη εμφάνιση και παρέχει ένα πλήρως παραμετροποιήσιμο περιβάλλον. Είναι το μόνο που υποστηρίζει SMS ειδοποιήσεις και αυτό σε beta στάδιο. Η διαδικασία κράτησης ενός ραντεβού χωρίζεται όπως και με τα υπόλοιπα συστήματα, σε έναν οδηγό με 4-5 βήματα στα οποία ο χρήστης επιλέγει σε ποια υπηρεσία και σε ποιόν υπάλληλο θέλει να κλείσει ραντεβού. Είναι πολύ εύκολο στην χρήση και υποστηρίζει plugins για το WordPress και το Facebook. + +Παρατηρήσεις : επί πληρωμή, υποστήριξη SMS, λειτουργία με WordPress και Facebook, δεν μπορεί να εξάγει τα δεδομένα του σε άλλη εφαρμογή (Google Calendar, Outlook) + +\href{http://www.setmore.com/}{www.setmore.com} + +\subsection{Υπόλοιπα συστήματα} +Εκτός των αναφερθέντων υπάρχουν πολλές άλλες εφαρμογές διαθέσιμες προς το κοινό. Μερικές από αυτές αναφέρονται στην παρακάτω λίστα: +\begin{enumerate} +\item SnapAppointments +\item Doodle +\item Bookeo +\item ScheduleOnce +\item BookingBug +\item SetSter +\item Agreedo +\item BookedIn +\item Book'd +\item Schedulista +\end{enumerate} + +\section{Σε τι διαφέρει από τις υπόλοιπες η προτεινόμενη λύση} +Το Easy!Appointments έχει ως σκοπό να αυτοματοποιήσει την διαδικασία της κράτησης και διαχείρισης ραντεβού για οποιαδήποτε επιχείρηση. Χρησιμοποιώντας τις δυνατότητες που μας παρέχει το διαδίκτυο, μπορεί να υλοποιηθεί ένα σύστημα το οποίο να έχει την δυνατότητα να οργανώσει τα επαγγελματικά πλάνα πολλών υπαλλήλων ταυτόχρονα, επιφέροντας έτσι όχι μόνο την μείωση του χρόνου που απαιτούσαν οι παλιές μέθοδοι διαχείρισης ραντεβού, αλλά και την αύξηση της παραγωγικότητας της επιχείρησης. Οι πελάτες δεν θα χρειάζεται πλέον να τηλεφωνούν ή να πηγαίνουν στο κατάστημα, αλλά θα μπορούν να βλέπουν τις διαθέσιμες ώρες της επιχείρησης και να κλείνουν το ραντεβού τους την επιθυμητή ημερομηνία και ώρα, μέσω του υπολογιστή και του internet. Αυτό έχει ως αποτέλεσμα την ποιοτικότερη αλλά και αποδοτικότερη εξυπηρέτηση τους. Επιπρόσθετα βελτιώνεται η επικοινωνία και η οργάνωση των συντελεστών της επιχείρησης, παρέχοντας δυνατότητες αρχειοθέτησης και διαχείρισης των δεδομένων που αποθηκεύονται στο σύστημα ανά πάσα στιγμή και σε οποιοδήποτε μέρος. Σε αντίθεση με τα άλλα συστήματα, προσφέρει επιπλέον τα εξής: + +\begin{enumerate} +\item {\bf Αυτόνομη Εγκατάσταση :} Η επιχείρηση που θέλει να χρησιμοποιήσει την εφαρμογή θα μπορεί να την εγκαταστήσει στον server της και να την τρέξει μαζί με κάποιο άλλο site, έχοντας έτσι πλήρη πρόσβαση στα δεδομένα και τον κώδικα. Η διαδικασία της εγκατάστασης και παραμετροποίησης θα είναι παρόμοια με άλλα συστήματα (Joomla, WordPress κτλ) και όσο πιο αυτοματοποιημένη γίνεται. + +\item {\bf Προεπιλεγμένα Προφίλ Ρυθμίσεων :} Το Easy!Appointments θα έρχεται μαζί με κάποια προεπιλεγμένα προφίλ ρυθμίσεων ανάλογα με το είδος της επιχείρησης, έτσι ώστε να είναι πιο εύκολο στην ρύθμισή του. Τα προφίλ αυτά θα μπορούν να αποθηκεύονται και εξωτερικά για να μπορούν να διαμοιράζονται και στην κοινότητα των χρηστών της εφαρμογής. + +\item {\bf Διαμόρφωση Πρότυπου Πλάνου :} Το σύστημα θα έχει ενσωματωμένη δυνατότητα δημιουργίας πρότυπου πλάνου για τον κάθε πάροχο υπηρεσιών, το οποίο θα αποτελεί την βάση της κάθε εβδομάδας και από εκεί και πέρα ο διαχειριστής θα μπορεί να κάνει αλλαγές. Η επανάληψη του πλάνου καθώς και το από ποιά προτυπα πλάνα θα αποτελείται ένας μήνας θα συμπεριλαμβάνονται στην ρύθμιση της εφαρμογής. + +\item {\bf Ρύθμιση Δικαιωμάτων Πάροχων :} Ο διαχειριστής θα έχει την δυνατότητα να ορίζει τα δικαιώματα αλλαγών και ρυθμίσεων που θα έχει στην διάθεσή του ο κάθε πάροχος υπηρεσιών. Έτσι μπορεί να διασφαλιστεί η ασφάλεια των δεδομένων όπου κρίνεται αυτό χρήσιμο, είτε να διευκολυνθεί η διαχείριση των ραντεβού έτσι ώστε να μπορεί ο κάθε πάροχος να διαχειρίζεται τα δικά του. + +\item {\bf Υποστήριξη Γραμματείας :} Αν παρόλα αυτά η εταιρεία ορίσει κάποια γραμματέα ως υπεύθυνση των ραντεβού, τότε είναι απαραίτητο να μπορεί να διαχειρίζεται μόνο αυτά και τους πελάτες που είναι καταχωρημένοι στο σύστημα. Το Easy!Appointments υποστηρίζει την δημιουργία χρηστών που αντιπροσωπεύουν αυτόν τον σκοπό. + +\item {\bf Αμφίδρομος Συγχρονισμός με το Google Calendar :} Το σύστημα θα υποστηρίζει τον αμφίδρομο συγχρονισμό ραντεβού με το Google Calendar, κάνοντας χρήση του Google Calendar API. Με αυτόν τον τρόπο η διαχείριση των ραντεβού μπορεί να γίνει ακόμα πιο εύκολη, λαμβάνοντας υπόψιν το πόσο δημοφιλής είναι η συγκεκριμένη υπηρεσία της Google. +\end{enumerate} + diff --git a/doc/Usage Scenario/usage-scenario.tex b/doc/thesis/includes/usage-scenarios.tex similarity index 57% rename from doc/Usage Scenario/usage-scenario.tex rename to doc/thesis/includes/usage-scenarios.tex index bfb07813..50fe197b 100644 --- a/doc/Usage Scenario/usage-scenario.tex +++ b/doc/thesis/includes/usage-scenarios.tex @@ -1,57 +1,21 @@ -%% ============================= -%% GENERAL SETTINGS -%% ============================= -\documentclass[12pt]{article} +%% ΣΕΝΑΡΙΟ ΧΡΗΣΗΣ +%% Σε αυτό το κεφάλαιο γίνεται περιγραφή ενός σεναρίου χρήσης του συστήματος +%% για κάθε έναν από τους ρόλους των χρηστών της εφαρμογής. -\usepackage [margin=2.5cm]{geometry} -\usepackage {graphics} -\usepackage {xltxtra} -\usepackage {xgreek} -\usepackage {color} -\usepackage {hyperref} -\hypersetup {colorlinks} - - -\setmainfont[Mapping=tex-text]{Tahoma} -\setlength{\parindent}{0cm} %% No paragraph indent - -\definecolor{darkred}{rgb}{0.5,0,0} -\definecolor{darkgreen}{rgb}{0,0.5,0} -\definecolor{darkblue}{rgb}{0,0,0.5} - -\hypersetup{ colorlinks, -linkcolor=darkblue, -filecolor=darkgreen, -urlcolor=darkblue, -citecolor=darkred } - -%% ============================= -%% DOCUMENT PROPERTIES -%% ============================= -\title{{\Huge {\bf Easy!Appointments}} \\[0.3cm] Σενάριο Χρήσης} -\author{Αλέξανδρος Τσελεγγίδης} -\date{Νοέμβριος 2012} - -%% ============================= -%% DOCUMENT CONTENT -%% ============================= -\begin{document} -\maketitle -\thispagestyle{empty} %% Απομάκρυνση page number από την πρώτη σελίδα -\pagebreak +\chapter{Σενάρια Χρήσης} +Το κεφάλαιο αυτό έχει ως στόχο να δώσει μια τυπική περιγραφή της χρήσης της εφαρμογής, για όλους τους διαθέσιμους ρόλους των χρηστών της, έτσι ώστε να γίνει περισσότερο κατανοητός ο τρόπος με τον οποίον θα λειτουργεί το σύστημα κρατήσεων ραντεβού. %% ΣΕΝΑΡΙΟ ΧΡΗΣΗΣ ΔΙΑΧΕΙΡΙΣΤΗ \section{Σενάριο Χρήσης Διαχειριστή} -Μετά από αρκετό καιρό χρήσης του Easy!Appointments η εταιρεία προσθέτει μια νέα υπηρεσία στο ενεργητικό της και για τον σκοπό αυτό ανοίγει ένα νέο τμήμα υπαλλήλων. Ο διαχειριστής του συστήματος πρέπει να ενημερώσει το σύστημα και να προσθέσει την νέα υπηρεσία, καθώς και τους νέους πάροχους υπηρεσιών, έτσι ώστε να μπορούν οι πελάτες να κλείνουν ραντεβού μαζί τους από εδώ και πέρα. +Μετά από αρκετό καιρό χρήσης του Easy!Appointments η εταιρεία προσθέτει μια νέα υπηρεσία στο ενεργητικό της και για τον σκοπό αυτό ανοίγει ένα νέο τμήμα υπαλλήλων. Ο διαχειριστής του συστήματος πρέπει να ενημερώσει την εφαρμογή και να προσθέσει την νέα υπηρεσία, καθώς και τους νέους πάροχους υπηρεσιών, έτσι ώστε να μπορούν οι πελάτες να κλείνουν ραντεβού μαζί τους από εδώ και πέρα. Εφόσον γίνει αυτό, οι πελάτες θα μπορούν να επιλέξουν τις αντίστοιχες εγγραφές από την φόρμα κράτησης ραντεβού. %% ΣΕΝΑΡΙΟ ΧΡΗΣΗ ΠΑΡΟΧΟΥ ΥΠΗΡΕΣΙΩΝ \section{Σενάριο Χρήσης Πάροχου Υπηρεσιών} -Ο πάροχος υπηρεσιών της εφαρμογής λαμβάνει μια ειδοποίηση από την εφαρμογή (email) ότι έχει γίνει μια κράτηση για ραντεβού. Βλέποντας τα στοιχεία της κράτησης και την ημερομηνία αποφασίζει ότι δεν θα μπορέσει να είναι εκείνη την στιγμή διαθέσιμος, οπότε συνδέεται στην εφαρμογή και αλλάζει την ημερομηνία του ραντεβού. Αμέσως μετά πηγαίνει στο πρόγραμμά του και ενημερώνει την χρονική στιγμή στην οποία δεν θα είναι διαθέσιμος, έτσι ώστε να μην μπορούν πλέον οι πελάτες να κάνουν κρατήσεις σε εκείνη την χρονική περίοδο. Στην συνέχεια αποστέλεται ειδοποίηση στον πελάτη και αυτός μπορεί να κρίνει αν τον βολεύει η νέα ημερομηνία. Αν όχι θα πρέπει να ακυρώσει το ραντεβού και να το ξαναπροσθέσει σε κάποια άλλη χρονική στιγμή. +Ο πάροχος υπηρεσιών της εφαρμογής λαμβάνει μια ειδοποίηση από την εφαρμογή (email) ότι έχει γίνει μια κράτηση για ραντεβού. Βλέποντας τα στοιχεία της κράτησης και την ημερομηνία αποφασίζει ότι δεν θα μπορέσει να είναι εκείνη την στιγμή διαθέσιμος, οπότε συνδέεται στην εφαρμογή και αλλάζει την ημερομηνία του ραντεβού. Αμέσως μετά πηγαίνει στο πρόγραμμά του και ενημερώνει την χρονική στιγμή στην οποία δεν θα είναι διαθέσιμος, έτσι ώστε να μην μπορούν πλέον οι πελάτες να κάνουν κρατήσεις σε εκείνη την χρονική περίοδο. Στην συνέχεια αποστέλλεται ειδοποίηση στον πελάτη και αυτός μπορεί να κρίνει αν τον βολεύει η νέα ημερομηνία. Αν όχι θα πρέπει να ακυρώσει το ραντεβού και να το ξανά-προσθέσει σε κάποια άλλη χρονική στιγμή. %% ΣΕΝΑΡΙΟ ΧΡΗΣΗΣ ΠΕΛΑΤΗ \section{Σενάριο Χρήσης Πελάτη} -Ο πελάτης ενδιαφέρεται να κλείσει ραντεβού στην επιχείρηση για μια συγκεκριμένη υπηρεσία. Πηγαίνει στην σελίδα της επιχείρησης και βλέπει το πλάνο, αφού έχει επιλέξει ποια υπηρεσία και ποιόν υπάλληλο προτιμάει. Στην συνέχεια επιλέγει μια χρονική στιγμή που τον βολεύει και την κατοχυρώνει. Για να ολοκληρωθεί η διαδικασία θα χρειαστεί να απαντήσει σε ένα επιβεβαιωτικό mail που θα του έρθει. Από την στιγμή αυτήν και μετά το ραντεβού έχει κατοχυρωθεί και ο πελάτης μπορεί να ενημερωθεί ανά πάσα στιγμή για την κατάστασή του. +Ο πελάτης ενδιαφέρεται να κλείσει ραντεβού στην επιχείρηση για μια συγκεκριμένη υπηρεσία. Πηγαίνει στην σελίδα της επιχείρησης και βλέπει το πλάνο, αφού έχει επιλέξει ποια υπηρεσία και ποιόν υπάλληλο προτιμάει. Στην συνέχεια επιλέγει μια χρονική στιγμή που τον βολεύει και την κατοχυρώνει. Για να ολοκληρωθεί η διαδικασία θα χρειαστεί να απαντήσει σε ένα επιβεβαιωτικό email που θα του έρθει. Από την στιγμή αυτήν και μετά το ραντεβού έχει κατοχυρωθεί και ο πελάτης μπορεί να ενημερωθεί ανά πάσα στιγμή για την κατάστασή του. \section{Σενάριο Χρήσης Γραμματέας} -Ένας από τους πάροχους υπηρεσίας έχει κλειστεί εντελώς από ραντεβού και δεν μπορεί να δεχτεί άλλα για αυτήν την εβδομάδα. Ένας άλλος πάροχος προσφέρεται να βοηθήσει και έτσι κάποια ραντεβού πρέπει να μεταφερθούν στο ημερολογιακό πλάνο του δεύτερου πάροχου. Την διαδικασία αυτήν θα πρέπει να την αναλάβει η γραμματεία γιατί όλοι οι άλλοι είναι πολύ απασχολημένοι με το να εξυπηρετήσουν τους πελάτες τους. -\end{document} \ No newline at end of file +Ένας από τους πάροχους υπηρεσίας έχει κλειστεί εντελώς από ραντεβού και δεν μπορεί να δεχτεί άλλα για αυτήν την εβδομάδα. Ένας άλλος πάροχος προσφέρεται να βοηθήσει και έτσι κάποια ραντεβού πρέπει να μεταφερθούν στο ημερολογιακό πλάνο του δεύτερου πάροχου. Την διαδικασία αυτήν θα πρέπει να την αναλάβει η γραμματεία γιατί όλοι οι άλλοι είναι πολύ απασχολημένοι με το να εξυπηρετήσουν τους πελάτες τους. \ No newline at end of file diff --git a/doc/thesis/includes/use-cases.tex b/doc/thesis/includes/use-cases.tex new file mode 100644 index 00000000..9f70e798 --- /dev/null +++ b/doc/thesis/includes/use-cases.tex @@ -0,0 +1,50 @@ +%% ΠΕΡΙΓΡΑΦΗ ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ +%% Σε αυτό το κεφάλαιο γίνεται αναλυτική περιγραφή των περιπτώσεων χρήσης +%% του συστήματος κρατήσεων ραντεβου (βασική και εναλλακτικές ροές). + +\chapter{Περιπτώσεις Χρήσης} +Σε αυτό το κεφάλαιο θα γίνει η αναλυτική περιγραφή των περιπτώσεων χρήσης του συστήματος που υλοποιήθηκε. Θα περιγραφούν τόσο η βασική ροή όσο και οι εναλλακτικές ροές για όλες τις περιπτώσεις χρήσης. Το κεφάλαιο χωρίζεται σε τμήματα ανάλογα με τον ρόλο (actor) της εφαρμογής στον οποίο ανήκουν. + +\section{Περιπτώσεις Χρήσης Πελάτη} +\subsection{Κράτηση Ραντεβού} +Η βασικότερη περίπτωση χρήσης της εφαρμογής είναι η διαδικασία της κράτησης ραντεβού του πελάτη με έναν πάροχο υπηρεσίας για την υπηρεσία που τον ενδιαφέρει. Αυτή η περίπτωση χρήσης αποτελεί το βασικότερο κομμάτι, μιας και το σύστημα έχει ως στόχο την ευκολότερη διαχείριση των ραντεβού με τους πελάτες. + +\textbf{ΒΑΣΙΚΗ ΡΟΗ} + +Ο χρήστης μπαίνει στην σελίδα κράτησης ραντεβού και επιλέγει την υπηρεσία και τον πάροχο που τον ενδιαφέρει. Στην συνέχεια θα χρειαστεί να επιλέξει μια από τις διαθέσιμες ημερομηνίες και ώρες για να κλείσει το ραντεβού του. Αφού γίνει και αυτό θα πρέπει να συμπληρώσει τα στοιχεία του στην φόρμα που θα εμφανιστεί έτσι ώστε να μπορέσει η εταιρεία να έρθει σε επαφή μαζί του αν χρειαστεί. Τέλος ένα email θα σταλθεί πίσω στον πελάτη ότι το ραντεβού του έχει καταχωρηθεί με επιτυχία. Σε αυτό το email θα εμπεριέχεται και ένα link το οποίο θα του επιτρέπει να κάνει τροποποιήσει ή και να ακυρώσει το συγκεκριμένο ραντεβού. + +\textbf{ΕΝΑΛΛΑΚΤΙΚΕΣ ΡΟΕΣ} + +\begin{itemize} +\item Αν ο πελάτης αργήσει να επιλέξει ημερομηνία και στο ενδιάμεσο τον προλάβει ένας άλλος, θα πρέπει να επιστραφεί μήνυμα το οποίο θα τον προτρέψει να βρει άλλη ημερομηνία και ώρα για το ραντεβού του. +\item Όταν ο πελάτης συμπληρώνει τα στοιχεία του και αφήσει κενό ένα πεδίο το οποίο είναι υποχρεωτικό για να ολοκληρωθεί η διαδικασία, θα εμφανιστεί μήνυμα το οποίο θα τον προτρέψει να συμπληρώσει όλα τα υποχρεωτικά πεδία. +\end{itemize} + +\subsection{Επεξεργασία - Ακύρωση Ραντεβού} +Εφόσον καταχωρηθεί ένα ραντεβού είναι πολύ σημαντικό να μπορέσει και να τροποποιηθεί με κάποιον τρόπο. Το σύστημα από την στιγμή που καταχωρεί ένα ραντεβού κρατάει και τα στοιχεία του πελάτη σε μια εγγραφή. Παρ' όλα αυτό δεν θα ήταν καλό να αναγκάζει τον πελάτη να δημιουργεί νέο χρήστη (με username και password) έτσι ώστε να μπορέσει να κάνει αλλαγές. Κάτι τέτοιο θα μείωνε την αποδοτικότητα της εφαρμογής μιας και προσθέτει ένα επιπλέον βήμα στην όλη διαδικασία, το οποίο μάλιστα θεωρείται εκνευριστικό αφού ένας μέσος χρήστης θα χρειαστεί να δημιουργήσει δεκάδες λογαριασμούς σε διάφορες ιστοσελίδες. Λαμβάνοντας αυτά υπόψιν για να μπορέσει ο πελάτης να πραγματοποιήσει αλλαγές ή και ακύρωση σε κάποιο ραντεβού του θα ακολουθεί έναν μοναδικό σύνδεσμο ο οποίος θα του έρχεται με email. + +\textbf{ΒΑΣΙΚΗ ΡΟΗ} + +Ο χρήστης ολοκληρώνει την διαδικασία κράτησης ραντεβού. Σε αυτήν την διαδικασία έχει ήδη δώσει το email του, οπότε του έρχεται ένα email το οποίο περιέχει τις πληροφορίες του ραντεβού στο οποίο έχει κάνει την κράτηση και μαζί έναν σύνδεσμο, ο οποίος επιτρέπει στον χρήστη να πραγματοποιήσει αλλαγές στο συγκεκριμένο ραντεβού ή και να το ακυρώσει. Αφού ο χρήστης ακολουθήσει τον σύνδεσμο θα βρεθεί σε μια σελίδα η οποία θα περιέχει τις πληροφορίες του ραντεβού και θα του επιτρέπει να κάνει διάφορες αλλαγές. Όταν ολοκληρώσει την διαδικασία θα πατάει ένα κουμπί το οποίο θα αποθηκεύει τις αλλαγές και ένα νέο email θα έρχεται πάλι στον χρήστη αλλά και στον συγκεκριμένο πάροχο ότι έχουν πραγματοποιηθεί αλλαγές στο πλάνο του. + +\textbf{ΕΝΑΛΛΑΚΤΙΚΕΣ ΡΟΕΣ} + +\begin{itemize} +\item Ο χρήστης μπορεί εν τέλη να μην θέλει να αποθηκεύσει τις αλλαγές του και έτσι να κλείσει την σελίδα ή να πατήσει το αντίστοιχο κουμπί ακύρωσης. +\item Ο διαχειριστής του συστήματος μπορεί να έχει ορίσει ένα χρονικό περιθώριο πριν το ραντεβού, στο οποίο δεν επιτρέπεται να γίνονται αλλαγές (λόγω σταθερότητας του πλάνου). Αν ο χρήστης βρίσκεται μέσα σε αυτό το περιθώριο τότε θα εμφανιστεί μήνυμα το οποίο θα τον ενημερώνει για τον λόγο τον οποίο δεν μπορεί να πραγματοποιήσει αλλαγές στο ραντεβού του. +\end{itemize} + +\section {Περιπτώσεις Χρήσης Πάροχου Υπηρεσιών} +\subsection {Συγχρονισμός Πλάνου με το Google Calendar} +Βασικό στοιχείο για την χρησιμότητα και την απόδοση του συστήματος είναι η διαχείριση των δεδομένων να γίνεται από πολλά συστήματα. Κάτι τέτοιο μπορεί να επιτεφθχεί με τον συγρονισμό των ραντεβού με το Google Calendar API. Σε αυτό ο χρήστης θα μπορεί να πραγματοποιεί αλλαγές στο πλάνο του μέσω του Google Calendar και αυτές να εφαρμόζονται και στο σύστημα κρατήσεων ραντεβού, κάνοντας έτσι την εργασία του πολύ εύκολη. + +\textbf{ΒΑΣΙΚΗ ΡΟΗ} + +Ο χρήστης βλέπει το πλάνο του μέσω της υπηρεσίας Google Calendar και προσθέτει ένα συμβάν κατά την διάρκεια του οποίο δεν είναι διαθέσιμος. Έπειτα από λίγο τρέχει χειροκίνητα τον συγχρονισμό από το Easy!Appointments και αυτό ανακαλύπτει ότι υπάρχει ένα νέο συμβάν στο Google Calendar το οποίο δεν είναι καταχωρημένο στην βάση δεδομένων του. Αμέσως μετά παίρνει τα στοιχεία του νέου συμβάντος μέσω του API που παρέχει η Google και το αποθηκεύει στην βάση δεδομένων έτσι ώστε να μην είναι διαθέσιμος ο πάροχος την συγκεκριμένη χρονική στιγμή. Την επόμενη φορά που θα πάει ένας πελάτης να κλείσει ραντεβού με τον συγκεκριμένο πάροχο θα δει ότι το συγκεκριμένο χρονικό διάστημα δεν είναι διαθέσιμο. + +\textbf{ΕΝΑΛΛΑΚΤΙΚΕΣ ΡΟΕΣ} + +\begin{itemize} +\item Υπάρχει η περίπτωση στην οποία ο πάροχος έχει πραγματοποιήσει αλλαγές στο Google Calendar και στο Easy!Appointments ταυτόχρονα, χωρίς να έχει τρέξει η διαδικασία του συγχρονισμού. Σε αυτήν την περίπτωση υπάρχει μεγάλη πιθανότητα να δημιουργηθεί κάποια σύγκρουση (conflict) και να υπάρχουν δυο συμβάντα τα οποία να ανταποκρίνονται στην ίδια χρονική περίοδο. Σε αυτήν την κατάσταση ο χρήστης είναι υπεύθυνος να λύσει την σύγκρουση μεταξύ των δύο συμβάντων και να φέρει το πλάνο του στην σωστή του μορφή. +\item Πιθανό είναι επίσης να γίνει μια αλλαγή σε ένα συγχρονισμένο συμβάν στο Google Calendar το οποίο όμως να έχει αλλαχθεί και στο Easy!Appointments. Σε αυτήν την περίπτωση θεωρείται ότι υπερισχύει η αλλαγή που έχει γίνει στο Easy!Appointmets διότι δεν υπάρχει η δυνατότητα να ελεγχθεί και στα δύο συστήματα το πότε (χρονική στιγμή) έχει γίνει η τροποποίηση. +\end{itemize} \ No newline at end of file diff --git a/doc/thesis/thesis.bib b/doc/thesis/thesis.bib new file mode 100644 index 00000000..34bb976a --- /dev/null +++ b/doc/thesis/thesis.bib @@ -0,0 +1,54 @@ +@Book{goosens93, + Hyphenation = {english}, + author = {Michel Goosens and Frank Mittelbach}, + title = {The \LaTeX Companion}, + publisher = {Addison-Wesley Publishing Company}, + year = 1993 +} + +@article{Schmidt98, + Hyphenation = {english}, + Author = {Frank L. Schmidt and John E. Hunter}, + Journal = {Psychological Bulletin}, + Number = 2, + Pages = {262--274}, + Title = {The Validity and Utility of Selection Methods in + Personnel Psychology: Practical and Theoretical + Implications of 85 Years of Research Findings}, + Volume = 124, + Year = 1998 +} + + +@Book{Chatzigeorgiou05, + Hyphenation = {greek}, + author = {Αλέξανδρος Ν. Χατζηγεωργίου}, + title = {Αντικειμενοστρεφής Σχεδίαση: UML, Αρχές Πρότυπα και Ευρετικοί Κανόνες}, + publisher = {Κλειδάριθμος}, + year = 2005} + +@Book{Sommerville09, + Hyphenation = {english}, + author = {Ian Sommerville}, + title = {Βασικές Αρχές Τεχνολογίας Λογισμικού}, + publisher = {Κλειδάριθμος}, + year = 2009} + +@INPROCEEDINGS{4343930, +author={Cousot, P.}, + Hyphenation = {english}, +booktitle={Software Engineering and Formal Methods, 2007. SEFM 2007. Fifth IEEE International Conference on}, +title={The Role of Abstract Interpretation in Formal Methods}, +year={2007}, +pages={135--140} +} + +@MISC{Wikipedia_BibTeX, + Hyphenation = {english}, + author = {Wikipedia}, + title = {BibTeX}, + url = {http://en.wikipedia.org/wiki/BibTeX}, + year = {2011}, + urldate = {2011-03-22} +} + diff --git a/doc/thesis/thesis.pdf b/doc/thesis/thesis.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2270cad8f1926351d7a34833947befc3d948a037 GIT binary patch literal 198337 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%0AId5D@y+b6b@ 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 z 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 R_5_YX5U{gLDLo?ie*mm;ePI9q literal 0 HcmV?d00001 diff --git a/doc/thesis/thesis.sty b/doc/thesis/thesis.sty new file mode 100644 index 00000000..68eeccc5 --- /dev/null +++ b/doc/thesis/thesis.sty @@ -0,0 +1,450 @@ +% ΤΕΙ Σερρών +% Σχολή Τεχνολογικών Εφαρμογών +% Τμήμα Πληροφορικής και Επικοινωνιών +% Πτυχιακή εργασία +% +% Nicholaos Petalidis, 15/08/1998 +% icdthesis.sty Style file for TEI of SERRES, ICD, final year +% dissertation thesis +% Copyright (C) yyyy name of author + +% This program is free software; you can redistribute it and/or +% modify it under the terms of the GNU General Public License +% as published by the Free Software Foundation; either version 2 +% of the License, or (at your option) any later version. + +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. + +% You should have received a copy of the GNU General Public License +% along with this program; if not, write to the Free Software +% Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +%---------------------------Identification Part-------------------------------- +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{icdthesisUTF} + +%--------------------------Initial Code---------------------------------------- + +% This part is empty + +%--------------------------Declaration of Options------------------------------ +\DeclareOption{a4paper}{\setlength{\paperheight}{297mm}% + \setlength{\paperwidth}{210mm}} + +\ExecuteOptions{a4paper,12pt} +\ProcessOptions + +%-------------------------Package Loading-------------------------------------- +\RequirePackage{polyglossia} +\RequirePackage{fontspec} % necessary of XeTeX +\RequirePackage{xunicode} % Unicode from accented glyphs +\RequirePackage{xltxtra} % loads fixltx2e, etex, xunicode, fontspec +%\RequirePackage{xgreek} % for greek documents +\RequirePackage[backend=biber,bibencoding=utf8,natbib=false,bibstyle=authoryear,citestyle=authoryear,babel=hyphen]{biblatex} +\RequirePackage{ifthen} +\RequirePackage{url} +\RequirePackage{csquotes} +\RequirePackage[font=small,format=plain,labelfont=bf]{caption} +\setdefaultlanguage{greek} +\setotherlanguage{english} + +%set fonts required by the guidelines +\setmainfont[Mapping=tex-text]{Times New Roman} +\setmonofont[Mapping=tex-text]{Courier New} + +%\setmonofont[Script=Latin,Mapping=tex-text]{Courier New} +%\newfontfamily\greekfont[Script=Greek,Mapping=tex-text]{Times New Roman} +%Redefine greek font family because some fonts although they have greek glyphs they +%do not explicitly support the Greek script +\newfontfamily\greekfont[Mapping=tex-text]{Times New Roman} +\newfontfamily\greekfonttt[Mapping=tex-text]{Courier New} +\newfontfamily\greekfontsf[Mapping=tex-text]{Arial} + +\gappto\captionsgreek{\renewcommand{\figurename}{Διάγραμμα}} +\gappto\captionsgreek{\renewcommand{\listfigurename}{Κατάλογος διαγραμμάτων}} +%--------------------------- Main Code----------------------------------------- + +\typeout{----------------------------------------------------------------------} +\typeout{- Τμήμα Πληροφορικής και Επικοινωνιών } +\typeout{- ΤΕΙ Σερρών, version 0.3, 27/11/2011 } +\typeout{- Nicholaos Petalidis, nikos petalidis.gr } +\typeout{-----------------------------------------------------------------------} + +%\tracingmacros=1 +%\tracingcommands=1 + +%-----------------------Set up margins----------------------------------------- + + % Define hoffset to be -1in. This way calculations start from 0in + % from the left side of the paper instead of 1in. + + \setlength{\hoffset}{-1in} + + % Define the left margin to be 40mm + % No need to set evensidemargin for one-sided printing + % 40mm = 114pt + \setlength{\oddsidemargin}{114pt} + + % Define the right margin to be 15mm + % Leave the marginparsep unchanged + % Set the maginparwidth to be the remaining space from marginparsep + % 25mm = 71pt + \setlength{\marginparwidth}{71pt} + \addtolength{\marginparwidth}{-\marginparsep} + \setlength{\marginparpush}{0mm} + % Calculate the textwidth: + % This is a bit difficult. The standard says there must be around 60-70 + % characters per line... I reckon that a textwidth of around 120mm + % should give 60-70 characters of 11pt size. + % On the other hand I don't like the output, (lines look too short) + % so I have put it to the maximum: 14.5mm = 413pt + + \setlength{\textwidth}{413pt} + + % An update: + % The width of the a4 : 210mm + % The width of the left margin : 40mm + % The width of the right margin: 25mm + % The width of the text: 145mm + + % The standard says ``all other margins should be at least 15mm'' + % This includes the top and bottom margin + + % Define voffset to be -1in. This way calculations start from 0in + % from the top side of the paper instead of 1in. + + \setlength{\voffset}{-1in} + + % Define the topmargin to be 15mm + % This is the minimum recommended top margin + + \setlength{\topmargin}{43pt} + + % Define the distance between the heading (page number) and the text + % to be 8mm = 23pt + + \setlength{\headsep}{23pt} + + % Define the height of a heading to be 12pt + + \setlength{\headheight}{12pt} + + % Define the distance between the bottom of a footnote and + % the bottom of the text to be 10.5mm=30pt + + \setlength{\footskip}{30pt} + + % Change the textheight so that the bottom margin is 15mm=43pt + \setlength{\textheight}{695pt} + + +%------------------Typography-------------------------------------------------- + + %Paragraphs should be indented 5-10mm with no additional space between + %paragraphs. I set the indent to be 7.5 mm + \setlength{\parindent}{7.5mm} + + %Set the spacing between lines to one and a half + \renewcommand{\baselinestretch }{1.5} + +%----------Set up commands---------------------------------------------------- +\newcommand{\thesistitle}{A title} +\newcommand{\thesisauthorsex}{male} +\newcommand{\thesisauthor}{Ένας Σπουδαστής} +\newcommand{\thesisauthorabbrv}{Ε. Σπουδαστής} +\newcommand{\thesisauthorinitials}{ΕΑ} +\newcommand{\thesisSecondAuthor}{} +\newcommand{\thesisSecondAuthorabbrv}{Ε. Σπουδαστής} +\newcommand{\thesisSecondAuthorInitials}{} +\newcommand{\thesissupervisor}{Ν. Πεταλίδης} +\newcommand{\thesismonth}{August} +\newcommand{\thesistype}{Thesis} +\newcommand{\degreetitle}{Πτυχίο} +\newcommand{\degreetitleabbr}{Πτυχίο} +\newcommand{\thesisyear}{1900} +\newcommand{\thesisschool}{Σχολή Τεχνολογικών Εφαρμογών} +\newcommand{\thesisuniversity}{ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΣΕΡΡΩΝ} +\newcommand{\thesisdepartment}{Τμήμα Πληροφορικής \& Επικοινωνιών} + +%--------------------Format the page style------------------------------------- + %According to BS 4821 page numbers should appear at the top outer corner + % First define a heading that has a page number on the top outer corner + + \renewcommand{\ps@myheadings}{% + \renewcommand{\@oddhead}{\hfil\thepage}% + \renewcommand{\@evenhead}{\@oddhead}% + \renewcommand{\@evenfoot}{}% empty + \renewcommand{\@oddfoot}{}% empty + } + + % The standard wants page numbers to appear in the top outer corner. + % To overcome the problems with the \chapter, \tableofcontents + % pagestyles I redefine the plain page style to be that of myheadings + + \let\ps@plain=\ps@myheadings + % Apparently most definitions use @mkboth instead of markboth. + % This command does nothing in myheadings so I have to redefine it + \renewcommand{\@mkboth}{\markboth} +% **************************TITLE PAGE********************************** + +% A specimen is provided in the handbook for a title page. +% Apparenrtly the specimen is wrong and everything should be centered +% instead of being flushed-left. In that specimen the title and author +% name appears in upper case. I have it in upper case here as well. +\newcommand{\Titlepage}{ + \thispagestyle{empty} + \begin{center} + %\fontsize{12pt}{\baselineskip}\selectfont + \MakeUppercase{\textbf{\thesisuniversity}}\\ + \MakeUppercase{\textbf{\thesisschool}}\\ + \MakeUppercase{\textbf{\thesisdepartment}}\\ + \vfill + %\fontsize{16}{\baselineskip}\selectfont % The standard requires 16pt + % for the title page + \Large{\MakeUppercase{\textbf{\thesistitle}}} + %\fontsize{14}{\baselineskip}\selectfont % The standard requires 14pt + % for the title page + \vfill + \large{ + \ifthenelse{\equal{\thesisSecondAuthor}{}}{ + \ifthenelse{\equal{\thesisauthorsex}{male}} + {\textbf{Πτυχιακή εργασία του}\\\thesisauthor} + {\textbf{Πτυχιακή εργασία της}\\\thesisauthor}} + {\textbf{Πτυχιακή εργασία των}\\\thesisauthor\\\thesisSecondAuthor} + \\Επιβλέπων: \thesissupervisor} + \vfill + %\fontsize{12}{\baselineskip}\selectfont % The standard requires + \MakeUppercase{\textbf{ΣΕΡΡΕΣ, \thesismonth\ \thesisyear}} + \end{center} + % Make the default to be myheadings + \pagestyle{myheadings} +} +%********************************************************************** + +% *****************************ABSTRACT******************************** +% Not much information is provided about the abstract so I took +% the liberty of creating my own:-) +\newcommand{\thesisabstract}{Σύνοψη} +\newcommand{\@thesisabstract}{\thesisabstract} + +\newenvironment{Abstract} +{ + \chapter*{\@thesisabstract + \@mkboth{} + {}} + \addcontentsline{toc}{chapter}{\@thesisabstract} + } +{} +%********************************************************************** + +% *************************ACKNOWLEDGEMENTS**************************** +\newcommand{\thesisacknowledgementhead}{Ευχαριστίες} +\newcommand{\@thesisacknowledgementhead}{\thesisacknowledgementhead} + +\newenvironment{Acknowledgement} +{ + \chapter*{\@thesisacknowledgementhead + \@mkboth{}{}} + + \addcontentsline{toc}{chapter}{\@thesisacknowledgementhead} + } +{} +%******************************************************************** + +% ******************************PREFACE****************************** +\newcommand{\thesispreface}{Πρόλογος} +\newcommand{\@thesispreface}{\thesispreface} + +\newenvironment{Preface} +{ + \chapter*{\@thesispreface + \@mkboth{}{}} + + \addcontentsline{toc}{chapter}{\@thesispreface} + } +{ } +%********************************************************************** + +% ******************************AUTHORS DECLARATION******************** +\newcommand{\thesisdeclaration}{Υπεύθυνη δήλωση} +\newcommand{\@thesisdeclaration}{\thesisdeclaration} + +\newenvironment{Declaration} +{ + \chapter*{\@thesisdeclaration + \@mkboth{}{}} + + \addcontentsline{toc}{chapter}{\@thesisdeclaration} + } +{ } +\newcommand{\Declarationpage}{ + \vfill + \begin{Declaration} + \textbf{\underline{Υπεύθυνη Δήλωση}}: + \ifthenelse{\equal{\thesisSecondAuthor}{}}{ + Βεβαιώνω ότι είμαι συγγραφέας αυτής της πτυχιακής εργασίας και ότι κάθε βοήθεια + την οποία είχα για την προετοιμασία της, είναι πλήρως + αναγνωρισμένη και αναφέρεται στην πτυχιακή εργασία. Επίσης έχω + αναφέρει τις όποιες πηγές από τις οποίες έκανα χρήση δεδομένων, + ιδεών ή λέξεων, είτε αυτές αναφέρονται ακριβώς είτε + παραφρασμένες. Επίσης βεβαιώνω ότι αυτή η πτυχιακή εργασία + προετοιμάστηκε από εμένα προσωπικά ειδικά για τις απαιτήσεις του + προγράμματος σπουδών του Τμήματος Πληροφορικής \& Επικοινωνιών + του Τ.Ε.Ι. Σερρών. + } + {Βεβαιώνουμε ότι είμαστε συγγραφείς αυτής της πτυχιακής εργασίας και ότι κάθε βοήθεια + την οποία είχαμε για την προετοιμασία της, είναι πλήρως + αναγνωρισμένη και αναφέρεται στην πτυχιακή εργασία. Επίσης έχουμε + αναφέρει τις όποιες πηγές από τις οποίες κάναμε χρήση δεδομένων, + ιδεών ή λέξεων, είτε αυτές αναφέρονται ακριβώς είτε + παραφρασμένες. Επίσης βεβαιώνουμε ότι αυτή η πτυχιακή εργασία + προετοιμάστηκε από εμάς προσωπικά ειδικά για τις απαιτήσεις του + προγράμματος σπουδών του Τμήματος Πληροφορικής \& Επικοινωνιών + του Τ.Ε.Ι. Σερρών. } + + \end{Declaration} +} +%********************************************************************** + + +% ******************************DEFINITIONS**************************** +\newcommand{\thesisdefinitions}{Ορισμοί} +\newcommand{\@thesisdefinitions}{\thesisdefinitions} + +\newenvironment{Definitions} +{ + \chapter*{\@thesisdefinitions + \@mkboth{}{}} + + \addcontentsline{toc}{chapter}{\@thesisdefinitions} + } +{} + +%********************************************************************** +%****************************Starting the main text!******************* +% The following code tries to fix ``running heads'' +% Running heads are not necessary but if they exist they should +% give the author's name with initials, year of submission and +% chapter number or heading +% First make it show the chapter number and heading +\renewcommand{\chaptermark}[1]{\markboth{\ + \thechapter. #1}{\ + \thechapter. #1}} +\renewcommand{\sectionmark}[1]{\markright{\thesection. #1}} + +% Now redefine myheadings to include all the relevant information +\newcommand{\Startpage}{\renewcommand{\ps@myheadings}{% + \renewcommand{\@oddhead}{\leftmark,\ + ~\thesisauthorabbrv,\thesisSecondAuthorabbrv\ + ~\thesisyear\hfil\thepage}% + \renewcommand{\@evenhead}{\@oddhead}% + \renewcommand{\@evenfoot}{}% empty + \renewcommand{\@oddfoot}{}% empty + } + \pagestyle{myheadings}} +%************************************************************************** + +%*******************************GLOSSARY******************************* +\newcommand{\thesisglossary}{Γλωσσάρι} +\newcommand{\@thesisglossary}{\thesisglossary} + +\newenvironment{Glossary} +{ + \chapter*{\@thesisglossary + \@mkboth{\thesisglossary}{\thesisglossary}} + + \addcontentsline{toc}{chapter}{\@thesisglossary} + } +{ } +%************************************************************************** + +%********************************************************************** +% Code shamelessly stolen follows now! + +% ******************************APPENDIX******************************* + +%% The following is taken from: csthesis.cls (Edinburgh University) +%% I changed the numbering to be arabic. +%% Redefine the appendix command to ensure that it does a pagebreak +%% (sorts problem of Appendix appearing in header of last page before +%% the first apppendix). +%% +%\renewcommand{\appendixname}{Παράρτημα} +\renewcommand{\appendix}{\vfill\pagebreak + \setcounter{chapter}{0}% + \setcounter{section}{0}% + \renewcommand\@chapapp{\appendixname}% + \renewcommand\chaptername{\appendixname}% + \renewcommand\thechapter{\@arabic\c@chapter} +} + +% +% ************************Table of contents**************************** +% +% The following code is taken from report.cls (c) LaTeX 3 Project +% I changed a little bit the definitions in order to produce running +% heads according to the BS standard +\renewcommand\tableofcontents{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\contentsname + \@mkboth{% + \hfil\thepage}{\hfil\thepage}}% + \@starttoc{toc}% + \if@restonecol\twocolumn\fi + } +\renewcommand\listoffigures{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listfigurename + \@mkboth{\hfil\thepage}% + {\hfil\thepage}}% + \@starttoc{lof}% + \if@restonecol\twocolumn\fi + } +\renewcommand\listoftables{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listtablename + \@mkboth{% + \hfil\thepage}{\hfil\thepage}}% + \@starttoc{lot}% + \if@restonecol\twocolumn\fi + } +% ******************************REFERENCES***************************** + +%%% +%%% Command from report.cls, (c) LaTeX3 Project. +%%% +% \renewenvironment{thebibliography}[1] +% {\chapter*{\bibname +% \@mkboth{\bibname}{\bibname}}% +% \addcontentsline{toc}{chapter}{\bibname} +% \list{\@biblabel{\@arabic\c@enumiv}}% +% {\settowidth\labelwidth{\@biblabel{#1}}% +% \leftmargin\labelwidth +% \advance\leftmargin\labelsep +% \@openbib@code +% \usecounter{enumiv}% +% \let\p@enumiv\@empty +% \renewcommand\theenumiv{\@arabic\c@enumiv}}% +% \sloppy +% \clubpenalty4000 +% \@clubpenalty \clubpenalty +% \widowpenalty4000% +% \sfcode`\.\@m} +% {\def\@noitemerr +% {\@latex@warning{Empty `thebibliography' environment}}% +% \endlist} +\newcommand{\citep}[1]{\parencite{#1}} diff --git a/doc/thesis/thesis.tex b/doc/thesis/thesis.tex new file mode 100644 index 00000000..766d9f1b --- /dev/null +++ b/doc/thesis/thesis.tex @@ -0,0 +1,20 @@ +%% ----------------------------------------------------------- +%% EASY!APPOINTMENTS THESIS +%% +%% STUDENT : ALEXANDROS TSELEGIDIS +%% INSTITUTION : TEI SERRON +%% DEPARTMENT : INFORMATION AND COMMUNICATION SCIENCE +%% DATE : JUNE 2013 +%% +%% THIS FILE CONTAINS THE BSC THESIS FOR THE EASY!APPOINTMENTS +%% APPLICATION. THE DOCUMENT IS SPLIT INTO MULTIPLE FILES, IN +%% ORDER TO BE MORE FLEXIBLE AND EASY TO MAINTAIN. +%% ----------------------------------------------------------- +\input{includes/headers.tex} +\begin{document} + \input{includes/introduction.tex} + \input{includes/google-calendar-api.tex} + \input{includes/external-tools.tex} + \input{includes/usage-scenarios.tex} + \input{includes/use-cases.tex} +\end{document} \ No newline at end of file diff --git a/doc/Unit Testing/unit-testing.pdf b/doc/unit-testing/unit-testing.pdf similarity index 100% rename from doc/Unit Testing/unit-testing.pdf rename to doc/unit-testing/unit-testing.pdf diff --git a/doc/Unit Testing/unit-testing.tex b/doc/unit-testing/unit-testing.tex similarity index 100% rename from doc/Unit Testing/unit-testing.tex rename to doc/unit-testing/unit-testing.tex diff --git a/doc/Use Cases/use-cases.pdf b/doc/use-cases/use-cases.pdf similarity index 100% rename from doc/Use Cases/use-cases.pdf rename to doc/use-cases/use-cases.pdf diff --git a/doc/Use Cases/use-cases.tex b/doc/use-cases/use-cases.tex similarity index 100% rename from doc/Use Cases/use-cases.tex rename to doc/use-cases/use-cases.tex