iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν...

20
Έγγραφο Απαιτήσεων Προδιαγραφών Hangman Έκδοση <Alpha 1.0.0> Νίκος Τσεβρετζής Νίκος Ρήγας Αλέξανδρος Χύκα ~ 1 ~

Transcript of iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν...

Page 1: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

Έγγραφο Απαιτήσεων ΠροδιαγραφώνHangmanΈκδοση <Alpha 1.0.0>Νίκος ΤσεβρετζήςΝίκος ΡήγαςΑλέξανδρος Χύκα

Τεχνικοί Εφαρμογών ΠληροφορικήςΔ.ΙΕΚ Αιγάλεω9.12.2017

~ 1 ~

Page 2: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

Πίνακας Περιεχομένων1. Εισαγωγή.................................................

....................31.1 Σκοπός.....................................................

.............31.2 Έκταση του

Εγγράφου.........................................41.3 Ορισμοί, Ακρονυμίες,

Συντομογραφίες..............51.4 Γενική Εικόνα του

Λογισμικού............................62. Γενική

Περιγραφή......................................................72.1 Προοπτική του

Προϊόντος..................................72.2 Λειτουργίες που Καλύπτει το

Προϊόν................82.3 Χαρακτηριστικά και Κατηγορίες

Χρηστών.......82.4 Γενικοί

Περιορισμοί.............................................9

2.5 Παραδοχές και Εξαρτήσεις................................10

~ 2 ~

Page 3: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

3. Ειδικές Απαιτήσεις....................................................113.1 Λειτουργικές

Απαιτήσεις....................................113.2 Απαιτήσεις

Επίδοσης..........................................133.3 Περιορισμόι

Σχεδίασης.......................................133.4 Απαιτήσεις Εξωτερικών

Διαπροσωπείων..........14

1. ΕΙΣΑΓΩΓΗ1.1. Σκοπός Το παρόν έγγραφο αποτελεί το Έγγραφο Προδιαγραφής Απαιτήσεων για το λογισμικό ανοιχτού κώδικα Hangman και πιο συγκεκριμένα για την έκδοση <Alpha 1.0.0>

~ 3 ~

Page 4: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

που υλοποιήθηκε σε γλώσσα προγραμματισμού Python και στο περιβάλλον Windows και Linux.

Το λογισμικό Hangman είναι πρόγραμμα που σκοπό έχει την εποικοδομητική ψυχαγωγία του χρήστη και την ταυτόχρονη ανάπτυξη των λεξιλογικών ικανοτήτων του.

Ο λόγος δημιουργίας του συγκεκριμένου λογισμικού είναι η αλληλεπίδραση με τον χρήστη που θα παράγει σύμφωνα με τις επιλογές του κατά τη διάρκεια της χρήσης του προγράμματος.

Απευθύνεται σε άτομα κάθε ηλικίας και απαιτεί βασικές γνώσεις χρήσης Η/Υ.

Το έγγραφο ακολουθεί το πρότυπο ΙΕΕΕ για έγγραφα προδιαγραφής απαιτήσεων λογισμικού με κάποιες μικρές τροποποιήσεις που έγιναν για να εξυπηρετήσουν την πληρέστερη περιγραφή του συγκεκριμένου λογισμικού.

1.2 Έκταση Του Εγγράφου Η έκθεση αυτή αποτελεί το μοναδικό έγγραφο προδιαγραφής απαιτήσεων για το λογισμικό

~ 4 ~

Page 5: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

Hangman. Ασχολείται με την περιγραφή της έκδοσης <Alpha 1.0.0> και συνεπάγεται πως οι απαιτήσεις που περιγράφονται εδώ, ικανοποιούνται ήδη.

Όλες οι λειτουργίες του προγράμματος έχουν ελεγχθεί και κατανοηθεί πλήρως πριν οποιαδήποτε απόπειρα συγγραφής. Για τις λειτουργίες του προγράμματος, για τις οποίες υπήρξε πρόβλημα κατανόησης του σκοπού ή των απαιτήσεών τους, διεξήχθη επικοινωνία με τους υπευθύνους προγραμματιστές της ομάδας, όπου και διευκρινίστηκαν με σαφήνεια. Το έγγραφο αυτό για να παραμείνει χρήσιμο πρέπει να ενημερώνεται και να προσαρμόζεται στις απαιτήσεις του πελάτη.

~ 5 ~

Page 6: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

1.3 Ορισμοί, Ακρονυμίες, ΣυντομογραφίεςΗ/Υ: Ηλεκτρονικός Υπολογιστής.

OS: Λειτουργικό σύστημα.

Windows: Λειτουργικο σύστημα, προϊόν της Microsoft.

Linux: Ελέυθερου τύπου Unix λειτουργικό σ΄θστημα που στην αρχή δημιουργήθηκε απο τον Linus Torvalds και αναπτύχθηκε απο προγραμματιστές παγκοσμίως.

Υλικό: Τα φυσικά εξαρτήματα ενός Η/Υ.

CPU: Τεχνολογία επεξεργαστή για Η/Υ.

RAM: H μνήμη του Η/Υ οπού τρέχει το λογισμικο.

Video Card: Η κάρτα γραφικών που επεξεργάζεται τα visuals στην οθόνη του Η/Υ.

Disk Space: Αποθηκευτικός χώρος που καταλαμβάνουν τα αρχεία του λογισμικού.

~ 6 ~

Page 7: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

1.4 Γενική Εικόνα Του ΛογισμικούΤο λογισμικό Hangman που θα αναπτυχθεί παρέχει τις παρακάτω δυνατότητες. Δίνει στον χρήστη τη δυνατότητα να μαντέυει μία άγνωστη λέξη. Είναι ευχάριστο κατα τη διεπαφή με τον χρήστη χάρη στις απλοϊκές εντολές που δίνει ο χρήστης και τα ευανάγνωστα μυνήματα που είναι κομμάτι αυτού του λογισμικού.

2. ΓΕΝΙΚΗ ΠΕΡΙΓΡΑΦΗ2.1. Προοπτική Του ΠροϊόντοςΠρόκειται, όπως αναφέρθηκε, για ένα ελεύθερο λογισμικό ανοιχτού κώδικα. Ανήκει στην κατηγορία προγραμμάτων ψυχαγωγίας. Ελάχιστα προγράμματα αυτής της κατηγορίας είναι ανοιχτού κώδικα και το παρόν λογισμικό είναι μοναδικό διότι θα προσφέρεται δωρεάν.

Οι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για οποιαδήποτε αλλαγή ή νέα κυκλοφορία του λογισμικού και παροτρύνουν τους χρήστες να δοκιμάζουν τις πρώτη έκδοσή του, ώστε να τους παρέχεται feedback που θα βοηθήσει στην

~ 7 ~

Page 8: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

βελτίωσή του. Σε κάποια μελλοντική βελτίωση του προϊόντος θα υπάρξει αναβάθμιση των ήχων και των visuals του λογισμικού.

2.2 Λειτουργίες Που Καλύπτει Το ΠροϊόνΤο λογισμικό Hangman θα παρέχει στον χρήστη τη δυνατότητα να μαντέυει μια άγνωστη λέξη.

Πέρα απο την βασική αυτή λειτουργία το λογισμικό παρέχει και τις ακόλουθες λειτουργίες:

1. Λειτουργία συγκεκριμένων προσπαθειών.

2. Προβολή απεικόνησης του χαρακτήρα της κρεμάλας.

3. Επανάληψη παιχνιδιού.4. Επιλογή εξόδου.

2.3 Χαρακτηριστικά Και Κατηγορίες ΧρηστώνΟ χρήστης του λογισμικού Hangman δεν απαιτείται να κατέχει εξειδικευμένες γνώσεις πληροφορικής αλλα κάποιες βασικές γνώσεις στον χειρισμο του Η/Υ.

‘Οσον αφορά το αλληλεπιδραστικό κομμάτι του χρήστη με το λογισμικό δεν απαιτούνται

~ 8 ~

Page 9: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

εξειδικευμένες γνώσεις διότι με την ύπαρξη μυνημάτων βοηθείας η χρήση απο τον χρήστη γίνεται εύκολα.

Τέλος, δεν υπάρχει κάποια ειδική κατηγορία χρήστη με διαφορετικά δικαιώματα πρόσβασης. Όλοι οι χρήστες είναι ίσοι απέναντι στο λογισμικό. Για την έναρξη και χρήση του λογισμικού δεν θα απαιτείται η είσοδος κάποιου κωδικού ασφαλείας.

2.4 Γενικοί ΠεριορισμοίΟι σχεδιαστές και προγραμματιστές του προϊόντος δίνουν την άδεια για αντιγραφή, τροποποίηση και διανομή του σε οποιονδήποτε. Όσον αφορά στις απαιτήσεις σε υλικό και λογισμικό για τη σχεδίαση, πρέπει να τηρούνται όσα αναφέρονται παρακάτω:

Περιορισμοί Υλικού/Λογισμικού:

Ελάχιστα: CPU: Intel Core i3-3210 3.2 GHz / AMD A8-7600

APU 3.1 GHz ή αντίστοιχο RAM: 512 MB OS: Windows Vista και άνω VIDEO CARD: Integrated: Intel HD Graphics

4000 (Ivy Bridge) or AMD Radeon R5 series (Kaveri line) with OpenGL 4.41Discrete: Nvidia GeForce 400 Series or AMD Radeon HD 7000 series with OpenGL 4.4

~ 9 ~

Page 10: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

FREE DISK SPACE: Τουλάχιστον 300 MB γιά τον πυρήνα του παιχνιδιού και άλλα αρχεία

Προτεινόμενα: CPU: Intel Core i5-4690 3.5GHz / AMD A10-7800

APU 3.5 GHz ή αντίστοιχο RAM: 2 GB OS: Windows 7 και άνω VIDEO CARD: GeForce 700 Series ή AMD

Radeon Rx 200 Series (εξαιρούνται τα integrated chipsets) με OpenGL 4.5

FREE DISK SPACE: 500 MB Αναγκαία η χρήση πληκτρολογίου και ποντικιού. Δεν υπάρχει περιορισμός στην ανάλυση.

2.5 Παραδοχές και Εξαρτήσεις1. Ο πηγαίος κώδικας είναι διαθέσιμος σε όλους τους χρήστες, χωρίς καμιά δέσμευση από τους developers.

2. Εφόσον εγκαθίσταται σε κάποια συμβατή έκδοση λογισμικού δεν απαιτείται επιπλέον hardware για να λειτουργήσει.

3. Απασχολεί πολύ μικρό μέρος της μνήμης τόσο στο σκληρό δίσκο όσο και RAM.

4. Εύκολη και γρήγορη εγκατάσταση, οι οδηγίες της οποίας παρέχονται και στο manual, το οποίο θα το συνοδεύει.

~ 10 ~

Page 11: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

5. Λιτή και φιλική προς το χρήστη διεπαφή με μυνήματα βοηθείας.

6. Βασικές γνώσεις χρήσης Η/Υ θεωρούνται δεδομένες από τους εν δυνάμει χρήστες.

7. Χρειάζεται OS για να λειτουργήσει.

8. Χρειάζεται το Python IDLE για να λειτουργήσει.

3. Ειδικές Απαιτήσεις3.1 Λειτουργικές ΑπαιτήσειςΛειτουργία ΜαντεψιάςΕισαγωγή: Όταν ο χρήστης εκκινήσει το πρόγραμμα καλείται να μαντέψει ενα γράμμα.

Είσοδος: Ο χρήστης πληκτρολογεί ενα γράμμα τη φορά για να μαντέψει την άγνωστη λέξη.

Επεξεργασία: Εάν το γράμμα είναι σωστό, τότε το γράμμα προτίθεται στην άγνωστη λέξη. Εαν δεν είναι σωστό, προβάλεται απεικόνηση του χαρακτήρα της κρεμάλας, το γράμμα προστίθεται στη λίστα με τα ήδη

~ 11 ~

Page 12: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

χρησιμοποιημένα γράματα. και ο χρήστης ξαναπροσπαθεί.

Έξοδος: Γίνεται αφού ο χρήστης βρέι την άγνωστη λέξη ή αφού χάσει όλες του τις προσπάθειες.

Προβολή Χαρακτήρα ΚρεμάλαςΕισαγωγή: Προβάλλεται στην αρχή του παιχνιδιού ή όταν ο χρήστης εισάγει λάθος γράμμα.

Είσοδος: Ο χρήστης εισάγει λάθος γράμμα απο το πληκτρολόγιο.

Επεξεργασία: Το πρόγραμμα υπολογίζει σε ποιά προσπάθεια βρίσκεται ο χρήστης και αναλόγως προβάλλει την αντίστοιχη απεικόνηση του χαρακτήρα της κρεμάλας.

Έξοδος: Γίνεται αφόυ ο χρήστης δώσει σωστά γράμματα και κερδίσει το παιχνίδι.

Λειτουργία συγκεκριμένων προσπαθειώνΕισαγωγή: Κάθε προσπάθεια μαντεψιάς του χρήστη καταγράφεται. Ο μέγιστος αριθμός προσπαθειών είναι 7.

Είσοδος: Οι προσπάθειες αυξάνονται κατα ενα κάθε φορά που ο χρήστης δίνει λάθος γράμμα.

~ 12 ~

Page 13: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

Επεξεργασία: Το πρόγραμμα ελέγχει σε ποιά προσπάθεια είναι ο χρήστης και τυπώνει την κατάλληλη απεικόνιση του χαρακτήρα της κρεμάλας σε περίπτωση λάθους. Εαν οι προσπάθειες φτάσουν τις 7, το παιχνίδι αυτομάτως τελειώνει με ήττα.

Έξοδος: Γίνεται αφού το παιχνίδι τελειώσει.

Επιλογή ΕξόδουΕισαγωγή: Ο χρήστης καλείται να αποφασίσει εαν θέλει να κλείσει το λογισμικό μετά το τέλος του παιχνιδιού.

Είσοδος: Ο χρήστης εισάγει το κατάλληλο μύνημα απο το πληκτρολόγιο για να επιλέξει εαν θα γίνει η έξοδος.

Επεξεργασία: Το πρόγραμμα τερματίζει τη λειτουργία του και ωθεί τον χρήστη στην επιφάνεια εργασίας.

Επιλογή ΕπανάληψηςΕισαγωγή: Ο χρήστης καλείται να αποφασίσει εαν θέλει να ξαναπαίξει μετά το τέλος του παιχνιδιού.

Είσοδος: Ο χρήστης εισάγει το κατάλληλο μύνημα απο το πληκτρολόγιο για να επιλέξει εαν θα γίνει η επανάληψη.

~ 13 ~

Page 14: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

Επεξεργασία: Εαν το μύνημα του χρήστη ήταν το κατάλληλο, το παιχνίδι ξεκινάει απο την αρχή.

Έξοδος: Γίνεται αφού ο χρήστης επιλέξει εαν θελει να ξαναπαίξει η οχι.

3.2 Απαιτήσεις Επίδοσης Το λογισμικό υποστηρίζει την χρήση απο

έναν χρήστη τη φορά. Τα αρχεια που χειρίζεται το σύστημα δεν

ξεπερνούν σε μέγεθος τα αρχεία του λογισμικού, ενώ αυτά που δημιουργούνται απο το λογισμικό έχουν αμελητέο μέγεθος.

Σε γενικές γραμμές το λογισμικό θα έχει ταχύτατη απόκριση στις εντολές του χρήστη λόγω των χαμηλών αναγκών του προγράμματος σε τεχνικά χαρακτηριστικά.

3.3 Περιορισμόι ΣχεδίασηςΑρχικά ο χρήστης απαιτείται να κρατά το λογισμικό διαρκώς ενημερωμένο για να αποφέυγονται δυσλειτουργίες και να λαμβάνει ο χρήστης την ολοκληρωμένη εμπειρία. Εφόσον το λογισμικό παραμένει ενημερωμένο, τότε ο χρήστης θα χρησιμοποιεί την καλύτερα

~ 14 ~

Page 15: iekaigal.gr · Web viewΟι developers του προγράμματος παραμένουν ενεργοί για να ενημερώνουν συνεχώς το κοινό για

ελεγμένη και πιο λειτουργική έκδοση του λογισμικού που υπάρχει. Για να γίνει αυτό ο χρήστης θα λαμβάνει όλες τις ενημερώσεις απο την ιστοσελίδα μας.

Τα αρχεία του προγράμματος είναι έυκολα μεταφέρσιμα σε άλλους Η/Υ ή κάποιο διαφορετικό τμήμα του ίδιου Η/Υ.

3.4 Απαιτήσεις Εξωτερικών ΔιαπροσωπειώνΗ διαπροσωπεία του χρήστη περιλαμβάνει:

Ένα μενού απλό στη χρήση μέσω του οποίου ο χρήστης έχει άμεση προσβαση στις βασικές λειτουργίες του λογισμικού.

Ευανάγνωστα μυνήματα που κάνουν πιο ευχάριστη τη χρήση του λογισμικού για το χρήστη και βοηθούν στην κατανόηση των λειτουργιών.

Το λογισμικό παραδίδεται σε μορφή .py που συνεπάγεται την άμεση χρήση του μέσα απο το Python IDLE.

~ 15 ~