Εφαρμογές Πληροφορικής (Α Λυκείου) - Βιβλίο Μαθητή (Εμπλουτισμένο)
4. Κοινωνικές Επιπτώσεις 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών Επιστροφή στην αρχική σελίδα του μαθήματος

Θεματική Ενότητα 2:

Προγραμματιστικά περιβάλλοντα -Δημιουργία εφαρμογών

Εικόνα
  • Κεφάλαιο 5: Κύκλος Ζωής Εφαρμογών
  • Κεφάλαιο 6: Περιβάλλοντα Ανάπτυξης Εφαρμογών
  • Κεφάλαιο 7: Υλοποίηση Εφαρμογών σε Προγραμματιστικά Περιβάλλοντα
ΕΝΟΤΗΤΑ 2
Προγραμματιστικά Περιβάλλοντα-Δημιουργία Εφαρμογών
Εφαρμογές Πληροφορικής

ΚΕΦΑΛΑΙΟ 5

Κύκλος Ζωής Εφαρμογών

Διδακτικές Ενότητες
  1. Πρόβλημα και υπολογιστής
  2. Ανάπτυξη εφαρμογών
Διδακτικοί στόχοι

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

Οι μαθητές πρέπει να είναι σε θέση:

Ερωτήματα
Βασική ορολογία

Πρόβλημα, πρόγραμμα, εφαρμογή, κύκλος ζωής εφαρμογών

Εισαγωγή

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

ΚΕΦΑΛΑΙΟ 5
Κύκλος Ζωής Εφαρμογών
Α΄ Γενικού Λυκείου

5.1 Πρόβλημα και υπολογιστής

Η έννοια του προβλήματος

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

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

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

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

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

Εικόνα

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

Εικόνα

Εικόνα 5.1. Αντιμετώπιση προβλήματος

ΕΝΟΤΗΤΑ 2
Προγραμματιστικά Περιβάλλοντα-Δημιουργία Εφαρμογών
Εφαρμογές Πληροφορικής
Ο υπολογιστής και η επίλυση προβλημάτων

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

Ο υπολογιστής μπορεί να αποθηκεύσει μεγάλο πλήθος δεδομένων (αριθμούς, κείμενα, εικόνες, ήχο, βίντεο), εκτελεί υπολογισμούς και επεξεργάζεται δεδομένα ταχύτερα από τον άνθρωπο, και εκτελεί με πειθαρχία, συνέπεια και για όσες επαναλήψεις χρειαστεί μια λογική σειρά εντολών. Οι εντολές δίνονται στον υπολογιστή με τη μορφή προγραμμάτων. Ένα πρόγραμμα περιέχει εντολές (οδηγίες) που κατευθύνουν με κάθε λεπτομέρεια τον υπολογιστή, για να εκτελέσει μία συγκεκριμένη εργασία και να επιλύσει ένα πρόβλημα. Δίνουμε στον υπολογιστή δεδομένα για το πρόβλημα που θέλουμε να αντιμετωπίσουμε, αυτός τα επεξεργάζεται σύμφωνα με τις εντολές των προγραμμάτων που εκτελεί, και στο τέλος μάς δίνει την απάντηση στο πρόβλημά μας.

Ας δούμε το παράδειγμα του υπολογισμού του μέσου όρου βαθμολογίας ενός μαθητή. Τα δεδομένα μας είναι ο αριθμός μητρώου του μαθητή, τα προσωπικά στοιχεία του μαθητή (ονοματεπώνυμο, πατρώνυμο κ.λπ.) και η βαθμολογία του σε κάθε μάθημα. Στον υπολογιστή πρέπει να δώσουμε τα παραπάνω δεδομένα και το κατάλληλο πρόγραμμα, το οποίο θα περιέχει τις εντολές για τον υπολογισμό του μέσου όρου. Μετά την εκτέλεση του προγράμματος θα πάρουμε ως αποτέλεσμα τον μέσο όρο βαθμολογίας του μαθητή. Σχηματικά μπορούμε να αναπαραστήσουμε το παραπάνω παράδειγμα ως εξής:













Εικόνα

Ο υπολογιστής αποτελεί μια μηχανή επεξεργασίας δεδομένων. Στον υπολογιστή εισάγουμε δεδομένα με τη βοήθεια διάφορων συσκευών εισόδου (πληκτρολόγιο, σαρωτή κλπ.), τα οποία και επεξεργάζεται με τις κατάλληλες εντολές (οδηγίες) που του δίνουμε. Μετά την επεξεργασία, σε συσκευές εξόδου (οθόνη, εκτυπωτή κλπ.) παίρνουμε τις χρήσιμες πληροφορίες που θέλουμε.

Εικόνα
ΚΕΦΑΛΑΙΟ 5
Κύκλος Ζωής Εφαρμογών
Α΄ Γενικού Λυκείου

Ερωτήσεις - Δραστηριότητες

  1. Σας απασχολεί το πρόβλημα της αγοράς ενός καινούριου υπολογιστή. Καταγράψτε τα απλούστερα προβλήματα στα οποία μπορεί να αναλυθεί το πρόβλημα αυτό.
  2. Αναζητήστε και κατόπιν καταγράψτε δύσκολα προβλήματα που μπορούν να επιλυθούν εύκολα με τη χρήση του υπολογιστή. Διαλέξτε ένα από αυτά και καταγράψτε τα δεδομένα που πρέπει να δοθούν σε έναν υπολογιστή, προκειμένου αυτός να το επιλύσει, καθώς και το αποτέλεσμα που αναμένεται μετά την επίλυσή του.

5.2 Ανάπτυξη εφαρμογών

Η έννοια της εφαρμογής

Σε προηγούμενο κεφάλαιο είδαμε ότι τα προγράμματα σε έναν υπολογιστή χωρίζονται σε δύο μεγάλες κατηγορίες, στο Λογισμικό Εφαρμογών και στο Λογισμικό Συστήματος. Παραδείγματα προγραμμάτων που ανήκουν στο Λογισμικό Εφαρμογών είναι τα προγράμματα επεξεργασίας κειμένου, φωτογραφίας, ήχου, βίντεο, τα προγράμματα παρουσίασης, τα εκπαιδευτικά προγράμματα, τα παιχνίδια. Τα προγράμματα που ανήκουν στο Λογισμικό Εφαρμογών ονομάζονται απλά και εφαρμογές (applications - apps). Η λέξη «εφαρμογή» χρησιμοποιείται, επειδή κάθε πρόγραμμα έχει μία συγκεκριμένη εφαρμογή για τον χρήστη του και βασίζεται σε μία ανάγκη του. Οι εφαρμογές πρέπει να υποστηρίζουν τις καθημερινές δραστηριότητες των χρηστών των υπολογιστών και των φορητών συσκευών (έξυπνων κινητών, tablets) με αποδοτικό και γρήγορο τρόπο. Για παράδειγμα, ο επεξεργαστής κειμένου μπορεί να χρησιμοποιηθεί από έναν μαθητή για τη συγγραφή και μορφοποίηση μιας εργασίας σε ένα μάθημα. Το πρόβλημα του μαθητή είναι η συγγραφή της εργασίας του και σε αυτό τον βοηθάει ο υπολογιστής και το πρόγραμμα επεξεργασίας κειμένου (εφαρμογή) που εκτελείται σε αυτόν.

Κύκλος ζωής εφαρμογών

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

Μια εφαρμογή ξεκινάει τον κύκλο ζωής της από τη στιγμή που θα καθοριστούν οι απαιτήσεις και οι προδιαγραφές της, και τελειώνει, όταν εξαντληθούν τα περιθώρια συντήρησής της

Εικόνα

Εικόνα 5.1. Εφαρμογή επεξεργασίας κειμένου





Εικόνα

Εικόνα 5.2. Εφαρμογή επεξεργασίας φωτογραφιών





Εικόνα

Εικόνα 5.3. Εφαρμογή καταγραφής και διαμοιρασμού φωτογραφιών για φορητές συσκευές

ΕΝΟΤΗΤΑ 2
Προγραμματιστικά Περιβάλλοντα-Δημιουργία Εφαρμογών
Εφαρμογές Πληροφορικής

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

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

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

Στη φάση της Υλοποίησης επιλέγεται η γλώσσα προγραμματισμού για την υλοποίηση της εφαρμογής. Οι προγραμματιστές με βάση τους αλγόριθμους και τις δομές δεδομένων της προηγούμενης φάσης γράφουν το πρόγραμμα στην επιλεγμένη γλώσσα προγραμματισμού, αυτό εισάγεται σε ειδικό πρόγραμμα-μεταφραστή ώστε να μετατραπεί σε «γλώσσα» κατανοητή από τον υπολογιστή, και, αν δεν υπάρχουν συντακτικά λάθη, η εφαρμογή είναι έτοιμη για εκτέλεση και χρήση.

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

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

Εικόνα

Εικόνα 5.2. Κύκλος ζωής εφαρμογών

Εικόνα

Συντακτικά λάθη ονομάζουμε τα σφάλματα που σχετίζονται με τη σύνταξη μιας γλώσσας προγραμματισμού.

Αλγόριθμο ονομάζουμε ένα σύνολο εντολών (οδηγιών) που, αν εκτελεστούν με ακρίβεια, οδηγούν στην πραγματοποίηση μιας εργασίας ή την επίλυση ενός προβλήματος.

Δομή δεδομένων ονομάζουμε ένα σύνολο αποθηκευμένων δεδομένων που υφίστανται επεξεργασία από ένα σύνολο λειτουργιών (εισαγωγή, προσπέλαση, διαγραφή, αναζήτηση, ταξινόμηση κ.λπ.)

Ερωτήσεις - Δραστηριότητες

  1. Γιατί είναι απαραίτητο να αναπτύσσεται μια εφαρμογή σε φάσεις;
  2. Από ποιες φάσεις αποτελείται ο κύκλος ζωής μιας εφαρμογής;
  3. Καταγράψτε πιθανά σφάλματα που μπορούν να γίνουν κατά την ανάπτυξη μιας εφαρμογής.