1 & Ο χρήστης πατάει το κουμπί εγγραφή. & Το σύστημα εμφανίζει την φόρμα ``Εγγραφή Χρήστη''. \\ [0.5ex]
1 & Ο χρήστης πατάει το κουμπί εγγραφή. & Το σύστημα εμφανίζει την φόρμα ``Εγγραφή Χρήστη''. \\ [0.5ex]
\midrule
\midrule
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο χρήστη. \\ [0.5ex]
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο χρήστη στο blockchain. \\ [0.5ex]
\midrule
\midrule
3 & - & Το σύστημα εμφανίζει την φόρμα ``Πληροφορίες Χρήστη''. \\ [0.5ex]
3 & - & Το σύστημα δημιουργεί τις προσωπικές βάσεις βάσεις δεδομένων OrbitDb του χρήστη. \\ [0.5ex]
\midrule
\midrule
4 & Ο χρήστης συμπληρώνει τις προσωπικές του πληροφορίες και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει τις πληροφορίες χρήστη. \\ [0.5ex]
4 & - & Το σύστημα εμφανίζει την φόρμα ``Πληροφορίες Χρήστη''. \\ [0.5ex]
\midrule
5 & Ο χρήστης συμπληρώνει τις προσωπικές του πληροφορίες και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει τις πληροφορίες χρήστη στην προσωπική του βάση OrbitDb. \\ [0.5ex]
}
}
{Το σύστημα μεταβαίνει στην αρχική σελίδα της εφαρμογής.}
{Το σύστημα μεταβαίνει στην αρχική σελίδα της εφαρμογής.}
{Σενάριο χρήσης 1 - Βασική ροή}
{Σενάριο χρήσης 1 - Βασική ροή}
{3-4-use-case-sign-up-base-flow}
{3-4-use-case-sign-up-base-flow}
\useCaseAlternateFlowTable
{1}
{Τα στοιχεία χρήστη είναι λανθασμένα.}
{Εφόσον ο χρήστης στη γραμμή 2 δεν συμπληρώσει το πεδίο ονόματος χρήστη ή συμπληρώσει ένα όνομα χρήστη το οποίο είναι ήδη σε χρήση στο σύστημα, το σύστημα πρέπει να επιστρέψει σχετικό μήνυμα σφάλματος.}
{
1 & - & Το σύστημα εμφανίζει μήνυμα σφάλματος.
}
{Το σύστημα επιστρέφει στη γραμμή 1 της βασικής ροής.}
{Σενάριο χρήσης 1 - Εναλλακτική ροή 1}
{3-4-use-case-sign-up-alternate-flow-1}
\useCaseAlternateFlowTable
{2}
{Ο χρήστης πατάει το κουμπί ``Άκυρο''.}
{Εφόσον ο χρήστης στη γραμμή 2 της Βασικής Ροής επιλέξει ``Άκυρο'' το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.}
{
1 & Ο χρήστης πατάει το κουμπί ``Άκυρο'' & Το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.
}
{Το σενάριο χρήσης τερματίζεται.}
{Σενάριο χρήσης 1 - Εναλλακτική ροή 2}
{3-4-use-case-sign-up-alternate-flow-2}
\useCaseAlternateFlowTable
{3}
{Ο χρήστης πατάει το κουμπί ``Παράληψη''.}
{Εφόσον ο χρήστης στη γραμμή 5 της Βασικής Ροής επιλέξει ``Παράληψη'' το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.}
{
1 & Ο χρήστης πατάει το κουμπί ``Παράληψη'' & Το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.
}
{Το σενάριο χρήσης τερματίζεται.}
{Σενάριο χρήσης 1 - Εναλλακτική ροή 3}
{3-4-use-case-sign-up-alternate-flow-3}
% ===== =====
% ===== =====
% Use case 2
% Use case 2
% ===== =====
% ===== =====
@ -52,12 +87,40 @@
{
{
1 & Ο χρήστης πατάει το κουμπί δημιουργίας νέου θέματος. & Το σύστημα εμφανίζει την φόρμα ``Δημιουργία Θέματος''. \\ [0.5ex]
1 & Ο χρήστης πατάει το κουμπί δημιουργίας νέου θέματος. & Το σύστημα εμφανίζει την φόρμα ``Δημιουργία Θέματος''. \\ [0.5ex]
\midrule
\midrule
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο θέμα. \\ [0.5ex]
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο θέμα στο blockchain. \\ [0.5ex]
\midrule
3 & - & Το σύστημα εισάγει τις πληροφορίες του θέματος στην προσωπική βάση OrbitDb του χρήστη. \\ [0.5ex]
}
}
{Το σύστημα μεταβαίνει στην σελίδα του νέου θέματος.}
{Το σύστημα μεταβαίνει στην σελίδα του νέου θέματος.}
{Σενάριο χρήσης 2 - Βασική ροή}
{Σενάριο χρήσης 2 - Βασική ροή}
{3-4-use-case-create-topic-base-flow}
{3-4-use-case-create-topic-base-flow}
\useCaseAlternateFlowTable
{1}
{Ο χρήστης δημιουργεί ψηφοφορία.}
{Εφόσον ο χρήστης στη γραμμή 2 της Βασικής Ροής επιλέξει ``Προσθήκη Ψηφοφορίας'' το σύστημα ανανεώνει την σελίδα προσθέτοντας τα επιπλέον πεδία της φόρμας ``Δημιουργία Ψηφοφορίας''.}
{
1 & Ο χρήστης, αφού συμπληρώσει τη φόρμα ``Δημιουργία Θέματος'', πατάει το κουμπί ``Προσθήκη ψηφοφορίας'' & Το σύστημα ανανεώνει τη σελίδα με τα πεδία της φόρμας ``Δημιουργία Ψηφοφορίας''. \\ [0.5ex]
\midrule
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει το νέο θέμα καθώς και τη νέα ψηφοφορία στο blockchain. \\ [0.5ex]
\midrule
3 & - & Το σύστημα εισάγει τις πληροφορίες του θέματος και της ψηφοφορίας στις προσωπικές βάσεις OrbitDb του χρήστη.
}
{Το σύστημα μεταβαίνει στην σελίδα του νέου θέματος.}
{Σενάριο χρήσης 2 - Εναλλακτική ροή 1}
{3-4-use-case-create-topic-alternate-flow-1}
\useCaseAlternateFlowTable
{2}
{Ο χρήστης πατάει το κουμπί ``Άκυρο''.}
{Εφόσον ο χρήστης στη γραμμή 2 της Βασικής Ροής ή στη γραμμή 2 της Εναλλακτικής Ροής 1 επιλέξει ``Άκυρο'' το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.}
{
1 & Ο χρήστης πατάει το κουμπί ``Άκυρο'' & Το σύστημα επιστρέφει στην αρχική σελίδα της εφαρμογής.
}
{Το σενάριο χρήσης τερματίζεται.}
{Σενάριο χρήσης 2 - Εναλλακτική ροή 2}
{3-4-use-case-create-topic-alternate-flow-2}
% ===== =====
% ===== =====
% Use case 3
% Use case 3
% ===== =====
% ===== =====
@ -75,7 +138,9 @@
\useCaseBaseFlowTable
\useCaseBaseFlowTable
{
{
1 & Ο χρήστης πατάει σε ένα από τα θέματα της λίστας. & Το σύστημα ανακτά τις πληροφορίες του θέματος. \\ [0.5ex]
1 & Ο χρήστης πατάει σε ένα από τα θέματα της λίστας. & Το σύστημα ανακτά τις πληροφορίες του θέματος από το blockchain. \\ [0.5ex]
\midrule
2 & - & Το σύστημα ανακτά τα μηνύματα του θέματος αντιγράφοντας τις προσωπικές βάσεις OrbitDb των συγγραφέων. \\ [0.5ex]
}
}
{Το σύστημα μεταβαίνει στην σελίδα του θέματος.}
{Το σύστημα μεταβαίνει στην σελίδα του θέματος.}
{Σενάριο χρήσης 3 - Βασική ροή}
{Σενάριο χρήσης 3 - Βασική ροή}
@ -100,12 +165,25 @@
{
{
1 & Ο χρήστης πατάει το κουμπί δημιουργίας νέου μηνύματος. & Το σύστημα εμφανίζει την φόρμα ``Δημιουργία Μηνύματος''. \\ [0.5ex]
1 & Ο χρήστης πατάει το κουμπί δημιουργίας νέου μηνύματος. & Το σύστημα εμφανίζει την φόρμα ``Δημιουργία Μηνύματος''. \\ [0.5ex]
\midrule
\midrule
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο μήνυμα. \\ [0.5ex]
2 & Ο χρήστης συμπληρώνει τα πεδία και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέο μήνυμα στο blockchain. \\ [0.5ex]
\midrule
3 & - & Το σύστημα εισάγει τις πληροφορίες του μηνύματος στην προσωπική βάση OrbitDb του χρήστη. \\ [0.5ex]
}
}
{Το σύστημα παραμένει στη σελίδα του θέματος εμφανίζοντας το νέο μήνυμα.}
{Το σύστημα παραμένει στη σελίδα του θέματος εμφανίζοντας το νέο μήνυμα.}
{Σενάριο χρήσης 4 - Βασική ροή}
{Σενάριο χρήσης 4 - Βασική ροή}
{3-4-use-case-create-post-base-flow}
{3-4-use-case-create-post-base-flow}
\useCaseAlternateFlowTable
{1}
{Ο χρήστης πατάει το κουμπί ``Άκυρο''.}
{Εφόσον ο χρήστης στη γραμμή 2 της Βασικής Ροής επιλέξει ``Άκυρο'' το σύστημα επιστρέφει στη σελίδα του θέματος.}
{
1 & Ο χρήστης πατάει το κουμπί ``Άκυρο'' & Το σύστημα επιστρέφει στη σελίδα του θέματος.
}
{Το σενάριο χρήσης τερματίζεται.}
{Σενάριο χρήσης 4 - Εναλλακτική ροή 1}
{3-4-use-case-create-post-alternate-flow-1}
% ===== =====
% ===== =====
% Use case 5
% Use case 5
% ===== =====
% ===== =====
@ -123,7 +201,7 @@
\useCaseBaseFlowTable
\useCaseBaseFlowTable
{
{
1 & Ο χρήστης πατάει το κουμπί της επιλογής που επιθυμεί να ψηφίσει και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέα ψήφο. \\ [0.5ex]
1 & Ο χρήστης πατάει το κουμπί της επιλογής που επιθυμεί να ψηφίσει και πατάει το κουμπί ``Υποβολή''. & Το σύστημα εισάγει νέα ψήφο στο blockchain. \\ [0.5ex]
}
}
{Το σύστημα ανανεώνει τις πληροφορίες της ψηφοφορίας.}
{Το σύστημα ανανεώνει τις πληροφορίες της ψηφοφορίας.}
{Σενάριο χρήσης 5 - Βασική ροή}
{Σενάριο χρήσης 5 - Βασική ροή}
@ -146,7 +224,7 @@
\useCaseBaseFlowTable
\useCaseBaseFlowTable
{
{
1 & Ο χρήστης πατάει στο κουμπί υπερψήφισης ή καταψήφισης μηνύματος. & Το σύστημα εισάγει νέα ψήφο μηνύματος. \\ [0.5ex]
1 & Ο χρήστης πατάει στο κουμπί υπερψήφισης μηνύματος. & Το σύστημα εισάγει νέα ψήφο μηνύματος στο blockchain. \\ [0.5ex]