Browse Source

refactor: re-iterate implemented-parts chapter

develop
Apostolos Fanakis 3 years ago
parent
commit
83890dc8b3
Signed by: Apostolof GPG Key ID: 8600B4C4163B3269
  1. 2
      chapters/3.application-design/3.8.implementation-methodology-specification.tex
  2. 37
      chapters/4.application-implementation/4.5.implemented-parts.tex
  3. BIN
      thesis.pdf

2
chapters/3.application-design/3.8.implementation-methodology-specification.tex

@ -16,3 +16,5 @@
\caption{Διαχωρισμός σε sprints} \caption{Διαχωρισμός σε sprints}
\label{figure:3.8.implementation-methodology-specification-sprints} \label{figure:3.8.implementation-methodology-specification-sprints}
\end{figure} \end{figure}
TODO: add tasks for serve (front and contracts) thru IPFS, upgradability

37
chapters/4.application-implementation/4.5.implemented-parts.tex

@ -1,11 +1,38 @@
\section{Χαρακτηριστικά που υλοποιήθηκαν} \label{section:4-6-implemented-parts} \section{Χαρακτηριστικά που υλοποιήθηκαν} \label{section:4-5-implemented-parts}
TODO: add references to use cases implemented with screenshots of application Κατά την υλοποίηση εμφανίστηκαν διάφορα προβλήματα που δεν είχαν προβλεφθεί όπως αναλύθηκε στο προηγούμενο κεφάλαιο και τα οποία προκάλεσαν καθυστερήσεις στην ολοκλήρωση των tasks. Λόγω των καθυστερήσεων αυτών έγιναν διάφορες αναδιαμορφώσεις του προγραμματισμού των Sprint καθώς και διαπραγματεύσεις της σημαντικότητας των χαρακτηριστικών. Από τον επανασχεδιασμό και τις προσαρμογές αυτές προέκυψαν μερικές αλλαγές στο τελικό σετ των χαρακτηριστικών της πλατφόρμας σε σχέση με ό,τι είχε αρχικά προδιαγραφεί. Τα χαρακτηριστικά που υλοποιήθηκαν είναι:
TODO: add unimplemented parts like serve (front and contracts) thru IPFS, upgradability
\begin{itemize}
\item η εγγραφή χρήστη (\ref{subsection:3-6-use-case-signup})
\item η αυτόματη είσοδος χρήστη (\ref{subsection:3-6-use-case-signin})
\item η δημιουργία θέματος (\ref{subsection:3-6-use-case-create-topic})
\item η περιήγηση στα υπάρχοντας θέματα (\ref{subsection:3-6-use-case-fetch-topic})
\item η δημοσίευση μηνύματος (\ref{subsection:3-6-use-case-create-post})
\item η επεξεργασία μηνύματος (\ref{subsection:3-6-use-case-modify-post})
\item η ψήφιση σε ψηφοφορία (\ref{subsection:3-6-use-case-vote-in-poll})
\item η ψήφιση σε μηνύματα (\ref{subsection:3-6-use-case-vote-post})
\item η διαγραφή των τοπικών δεδομένων (\ref{subsection:3-6-use-case-delete-local-data})
\end{itemize}
Στο παράρτημα \ref{screenshots-appendix} παρατίθενται τα στιγμιότυπα οθόνης των υλοποιημένων χαρακτηριστικών.
Τα χαρακτηριστικά τα οποία παραλήφθηκαν είναι τα παρακάτω:
% TODO: fix item names here and add refs to the actual use cases once they are created
\begin{itemize}
\item serve (front and contracts) thru IPFS
\item upgradability
\end{itemize}
\subsection{Διαφορές σχεδιασμού-υλοποίησης} \label{subsection:4-6-1-design-implementation-differences} \subsection{Διαφορές σχεδιασμού-υλοποίησης} \label{subsection:4-6-1-design-implementation-differences}
Εποπτικά, η διαδικασία της υλοποίησης περιγράφεται στο παρακάτω σχήμα (σχήμα \ref{figure:4.6.design-implementation-differences-sprints}). Σημαντικές διαφορές υπήρξαν επίσης στην διαδικασία υλοποίησης τόσο όσον αφορά τον αριθμό και τις λειτουργίες των διαφορετικών πακέτων λογισμικού όσο και τον χρονοπρογραμματισμό. Προστέθηκαν τρεις νέες υπηρεσίες, η υπηρεσία "Concordia Contracts Provider", ο προσαρμοσμένος IPFS pinner και η ιστοσελίδα "Concordia Guide".
Η ανάγκη για τα νέα πακέτα λογισμικού προέκυψε κατά την πορεία υλοποίησης της διπλωματικής και προστέθηκαν στον χρονοπρογραμματισμό που είχε γίνει στην αρχή της εργασίας. Στην προσαρμογή αυτή βοήθησαν ιδιαίτερα οι Agile τακτικές που ακολουθήθηκαν και η προσαρμοστικότητα που προσφέρει το Scrum σε μεταβαλλόμενες απαιτήσεις.
Τέλος, κατά την υλοποίηση έγινε γρήγορα αντιληπτή η αξία που προσφέρουν ένα δοκιμαστικό περιβάλλον (staging environment) σε συνδυασμό με ένα CI/CD σύστημα. Για το λόγο αυτό πάρθηκε η απόφαση να μεταφερθεί το sprint που αφορούσε αυτά πολύ νωρίτερα στην διαδικασία υλοποίησης, ώστε να μεγιστοποιηθεί η χρήση του.
Εποπτικά, η διαδικασία της υλοποίησης περιγράφεται στο παρακάτω σχήμα (σχήμα \ref{figure:4.6.design-implementation-differences-sprints}). Με σκούρο πράσινο χρώμα εμφανίζονται τα tasks τα οποία υπήρχαν στο χρονοπρογραμματισμό από τη αρχή και υλοποιήθηκαν, με ανοιχτό πράσινο αυτά τα οποία δεν υπήρχαν στον αρχικό προγραμματισμό αλλά υλοποιήθηκαν και με κόκκινο αυτά τα οποία δεν υλοποιήθηκαν.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -13,5 +40,3 @@ TODO: add unimplemented parts like serve (front and contracts) thru IPFS, upgrad
\caption{Διαχωρισμός σε sprints} \caption{Διαχωρισμός σε sprints}
\label{figure:4.6.design-implementation-differences-sprints} \label{figure:4.6.design-implementation-differences-sprints}
\end{figure} \end{figure}
TODO: add differences in architecture

BIN
thesis.pdf

Binary file not shown.
Loading…
Cancel
Save