Κεφάλαιο 1.7: Λογισμικό 1.7.1 Εισαγωγή στο λογισμικό Όλα τα προγράμματα, οι εφαρμογές και οι διαδικασίες, που δίνουν εντολές στον υπολογιστή, ώστε να διεκπεραιώσει τις εργασίες που θέλει ο χρήστης, αποτελούν το λογισμικό (software), το οποίο διαιρείται σε δύο κύριες κατηγορίες: Τα λειτουργικά συστήματα (operating systems) Τα προγράµµατα και τις εφαρμογές (applications) 1.7.2 Λειτουργικό σύστημα Το λειτουργικό σύστημα (Operating System - OS) είναι ένα σύνολο προγραμμάτων, που ελέγχουν και συντονίζουν τη λειτουργία του υπολογιστή. Είναι το σημαντικότερο λογισμικό του υπολογιστή, αφού: Είναι υπεύθυνο για τη διαχείριση και τον συντονισμό των εργασιών. Είναι υπεύθυνο για την κατανομή των διαθέσιμων πόρων. Αποτελεί τη βάση για την εκτέλεση όλων των υπόλοιπων προγραμμάτων. Διαχειρίζεται όλες τις περιφερειακές συσκευές. Εξασφαλίζει την επικοινωνία μεταξύ χρήστη και υπολογιστή. Συνεπώς, για να χρησιμοποιήσουμε έναν υπολογιστή, πρέπει πρώτα να έχουμε εγκαταστήσει ένα λειτουργικό σύστημα, το οποίο φορτώνεται στη RAM και ο πυρήνας του παραμένει σε αυτή, όσο λειτουργεί ο υπολογιστής μας. Τα πιο συνηθισμένα λειτουργικά συστήματα είναι: MS- DOS (Microsoft Disk Operating System) Windows NT OS/2 Windows 95/98 Windows XP Unίx Windows Millennium Windows Linux Vista Windows 2000 Windows 7 1.7.3 Διασύνδεση γραφικών µε τον χρήστη (GUI) Το GUI - Graphical User Interface είναι ένα πρόγραμμα διασύνδεσης γραφικών με το χρήστη, που ενσωματώνει τις γραφικές ικανότητες του υπολογιστή σε εφαρμογές, οι οποίες το κάνουν ευκολότερο στη χρήση. Ένα παράδειγμα μιας GUI, είναι ένα λειτουργικό σύστημα, όπως π.χ. τα Windows. Ο χρήστης αλληλεπιδρά με τα Windows μέσω των εικόνων, των παραθύρων, των επιλογών και των μενού, σε αντίθεση με την απλή πληκτρολόγηση των εντολών του DOS. Με αυτόν τον τρόπο, περιορίζονται και τα λάθη από τη μεριά του χρήστη, αφού ο τελευταίος δεν χρειάζεται να έχει ιδιαίτερες γνώσης στο χειρισμό υπολογιστών.
1.7.4 Εφαρμογές γραφείου Οι εφαρμογές λογισμικού ή τα προγράμματα για εργασία γραφείου, χωρίζονται σε διάφορες κατηγορίες, ανάλογα µε τη χρήση τους και το σκοπό που έχουν δημιουργηθεί. Μερικές από αυτές είναι: Επεξεργασίας κειμένου, που χρησιμοποιούνται για την επεξεργασία και εκτύπωση εγγράφων όπως τα Microsoft Office Word, Writter (OpenOffice), Star Office Writer, Lotus WordPro και Corel Word-Perfect. Υπολογιστικών φύλλων (Spreadsheets), που διευκολύνουν την παρακολούθηση προϋπολογισμών, την εκτέλεση οικονομικών υπολογισμών και πολύπλοκων πράξεων, την παρακολούθηση δεδομένων, την εκτέλεση πολύπλοκων πράξεων, τη χρήση συναρτήσεων και τη δημιουργία πινάκων και γραφημάτων. Χρησιμοποιούνται κυρίως από επιχειρήσεις ή γραφεία για τον υπολογισμό λογιστικών φύλλων. Παραδείγματα αποτελούν τα Microsoft Office Excel, Calc (OpenOffice), Corel Quattro Pro, Lotus 1-2-3 και Star Office Calc. Παρουσιάσεις (Presentations), που βοηθούν στην παρουσίαση δεδομένων (π.χ. οικονομικός απολογισμός) µε κομψό τρόπο, ώστε να κεντρίσουν το ενδιαφέρον του ακροατηρίου και να συμβάλλουν στην καλύτερη κατανόηση των δεδομένων. Γι' αυτό, χρησιμοποιούν γραφικά, οργανογράμματα, διάφορα εφέ, γραφήματα και βίντεο. Τέτοια παραδείγματα είναι τα Microsoft Office PowerPoint, Impress (OpenOffice), Harvard Graphics, Star Office Impress και Lotus Freelance Graphics. Διαχείρισης συστημάτων βάσεων δεδομένων (DataBase Management System - DBMS), που χρησιμοποιούνται για τη δημιουργία, τη διαχείριση, τη συντήρηση και τη χρήση μιας βάσης δεδομένων, δηλαδή μιας συλλογής από οργανωμένα, σχετιζόμενα δεδομένα (π.χ. τηλεφωνικός κατάλογος). Παραδείγματα αποτελούν τα Microsoft Office Access, Base (OpenOffice), dbase, Personal Oracle, Corel Paradox, Lotus Approach, Filemaker Pro, Query και Microsoft Fox Pro. Σχεδίασης και επεξεργασίας εικόνας, που χρησιμοποιούνται για επεξεργασία εικόνων και µας επιτρέπουν να προσθέτουμε εφέ σε εικόνες, να διορθώνουμε ατέλειές τους, να αλλάζουμε το μέγεθός τους, κ.τ.λ. Παραδείγματα αποτελούν τα Adobe Photoshop, Draw (OpenOffice), CorelDRAW Graphics Suite, GIMP, Corel PhotoPaint και Adobe Illustrator. Επεξεργασίας πολυμέσων, που χρησιμοποιούνται για τον συνδυασμό ψηφιακών δεδομένων πολλαπλών μορφών, όπως κειμένου, γραφικών, ήχου και βίντεο. Τέτοια παραδείγματα είναι τα Adobe Premiere, Ulead Media Studio, Autodesk 3D Studio και Adobe Flash. Φυλλομετρητές (Web browsers), που χρησιμοποιούνται για «σερφάρισμα» στο Internet, δηλαδή για την επίσκεψη σε ιστοτόπους και την ανάγνωση ιστοσελίδων, όπως τα Microsoft Internet Explorer, Mozilla Firefox, Opera, Safari και Google Chrome. Ηλεκτρονικής αλληλογραφίας, που χρησιμοποιούνται για την αποστολή και τη λήψη μηνυμάτων ηλεκτρονικού ταχυδρομείου (e-mail), όπως τα Microsoft Outlook Express, Microsoft Office Outlook, και Eudora. Αντιμετώπισης κακόβουλου λογισμικού, όπως τα Eset Antivitus, Kaspersky, McAfee, Norton Antivirus, Avast, AVG, κ.α. Παιχνίδια (Computer Games). Εγκυκλοπαίδειες και λεξικά, όπως Wikipedia (εγκυκλοπαίδειες), Magenta (λεξικά), κ.α.
Ηλεκτρονικής σχεδίασης εντύπων (Desktop Publishing - DTP), που χρησιμοποιούνται κυρίως για την οπτική επικοινωνία (π.χ. διαφημιστικά φυλλάδια), αφού συνδυάζουν κείμενο και γραφικά, όπως τα Microsoft Office Publisher και QuarkXPress. 1.7.5 Εφαρμογές μεγάλης κλίμακας Εκτός από τις εφαρμογές λογισμικού υπάρχουν και οι εφαρμογές μεγάλης κλίμακας, που χρησιμοποιούνται για την επεξεργασία μεγάλου όγκου δεδομένων και είναι πολύ εξειδικευμένες και δαπανηρές, όπως: Εφαρμογές μεγάλης κλίμακας για την κυβέρνηση: Χρησιμοποιούνται από δημόσιους φορείς, οργανισμούς και υπηρεσίες, για την καλύτερη οργάνωση του κράτους και την αμεσότερη εξυπηρέτηση των πολιτών. Παράδειγμα αποτελεί το «Taxisnet», που χρησιμοποιείται για φορολογικούς λόγους. Εφαρμογές μεγάλης κλίμακας για επιχειρήσεις: Χρησιμοποιούνται από μεγάλες επιχειρήσεις για την οργάνωσή τους, την επεξεργασία των δεδομένων τους και την επικοινωνία των στελεχών τους. Παραδείγματα τέτοιων εφαρμογών αποτελούν τα: Πληροφοριακά Συστήματα διοίκησης (Management Information Systems - MIS), που εξυπηρετούν λειτουργίες σε διοικητικό επίπεδο, όπως προγραμματισμού, ελέγχου και λήψης αποφάσεων. Συστήματα Κράτησης Θέσεων (για αερομεταφορές, ναυσιπλοΐα, κ.τ.λ.). Συστήματα Ηλεκτρονικών Τραπεζικών Συναλλαγών όπου τα χρηματοπιστωτικά ιδρύματα δίνουν τη δυνατότητα στους πελάτες τους να διεκπεραιώσουν τις τραπεζικές και χρηματιστηριακές τους συναλλαγές, εύκολα και γρήγορα, από την οθόνη του υπολογιστή τους, μέσω του διαδικτύου. Συστήματα διαχείρισης επιχειρηματικών πόρων (Enterprise Resource Planning - ERP), που χρησιμοποιούνται από μια επιχείρηση μια επιχείρηση για να διαχειρίζεται σημαντικά τμήματα, όπως ο σχεδιασμός νέων προϊόντων, η αγορά πρώτων υλών και ανταλλακτικών, η συντήρηση εξοπλισμού, η παρακολούθηση αποθήκης, η διαχείριση παραγγελιών και η εξυπηρέτηση πελατών. Συστήματα Διαχείρισης Πελατειακών Σχέσεων (Customer Relationship Management CRM), που εστιάζονται στην αυτοματοποίηση και βελτίωση των επιχειρηματικών διαδικασιών, που σχετίζονται με τη διαχείριση των σχέσεων της επιχείρησης με τους πελάτες. Εφαρμογές μεγάλης κλίμακας για νοσοκομεία: Είναι γνωστές ως Συστήματα Διαχείρισης Νοσοκομείων (Hospital Management Systems - HMS) και χρησιμοποιούνται από οργανισμούς υγείας για αμεσότητα πληροφόρησης, ευελιξία στη λήψη αποφάσεων, μείωση του κόστους διαχείρισης, έλεγχο των διαδικασιών και την καλύτερη εξυπηρέτηση των ασθενών.
1.7.6 Χρήση εφαρμογών στην εκπαίδευση Οι υπολογιστές έχουν πλέον πρωταγωνιστικό ρόλο και στο χώρο της εκπαίδευσης. Υπάρχουν τρεις κύριες κατηγορίες λογισμικού που αφορούν στο συγκεκριμένο χώρο και είναι οι εξής: Εφαρμογές για εκπαιδευτικά ιδρύματα: Χρησιμοποιούνται από εκπαιδευτικούς φορείς (φροντιστήρια, κ.α.), για τη διαχείριση δεδομένων που αφορούν στους εκπαιδευόμενους και στο προσωπικό, όπως: Διαχείριση στοιχείων εκπαιδευομένων Διαχείριση πληρωμών εκπαιδευομένων και μισθοδοσία προσωπικού Κατάρτιση και διαχείριση προγράμματος σπουδών Δημιουργία διαδικτυακού εκπαιδευτικού υλικού Εφαρμογές εκπαίδευσης και κατάρτισης με χρήση υπολογιστή (Computer Based Training CBT): Πρόκειται για εκπαίδευση που βασίζεται στους υπολογιστές, με τη χρήση ενός συνδυασμού εκπαιδευτικών μέσων, όπως βιβλία, CD/DVD-ROM, ήχο, εικόνες και βίντεο. Πλεονεκτήματα αυτού του είδους εκπαίδευσης για τον εκπαιδευόμενο, είναι: Δυνατότητα χρήσης των εφαρμογών όποτε και όπου επιθυμεί Ταχύτερη εκπαίδευση Χαμηλότερο κόστος, αφού δεν υπάρχουν εκπαιδευτικοί και μετακινήσεις Μειονεκτήματα αυτού του είδους εκπαίδευσης για τον εκπαιδευόμενο, είναι: Δεν υπάρχει καθοδήγηση Δεν προάγεται η κοινωνικότητά του αφού δεν έρχεται σε επαφή με άλλους ανθρώπους Χωρίς υποστήριξη, μπορεί να απογοητευτεί ή να χάσει το ενδιαφέρον του Εφαρμογές τηλεκατάρτισης ή ηλεκτρονικής εκπαίδευσης (E-Learning): Πρόκειται για εκπαίδευση που βασίζεται κυρίως στο διαδίκτυο και γίνεται είτε μέσω ενός ιστοτόπου (π.χ. Ανοιχτό Πανεπιστήμιο) είτε μέσω αλληλογραφίας. Τα πλεονεκτήματα και τα μειονεκτήματα αυτού του είδους εκπαίδευσης, είναι ίδια με αυτά της CBT, με τη διαφορά ότι υπάρχει ένα κόστος για δίδακτρα και ενδεχομένως και κάποιες μετακινήσεις, αλλά παραμένει μικρότερο από αυτό που θα απαιτούνταν σε κάποιον εκπαιδευτικό φορέα. 1.7.7 Χρήση εφαρμογών στην εργασία Στην σύγχρονη εποχή όπου οι υπολογιστές έχουν εισαχθεί στην παραγωγική διαδικασία, οι εργασιακές σχέσεις μεταβάλλονται συνεχώς ώστε να προσαρμόζονται διαρκώς, στις ανάγκες και τις απαιτήσεις της κοινωνίας. Για αυτό το λόγο, εφαρμόζεται τα τελευταία χρόνια και στην Ελλάδα, μια εναλλακτική μορφή απασχόλησης, που ονομάζεται Τηλεργασία. Θα μπορούσαμε να ορίσουμε την Τηλεργασία ως τη μορφή απασχόλησης, που επιτρέπει στον εργαζόμενο να διεκπεραιώσει τη δουλειά του, στο χώρο που ο ίδιος επιλέγει, εκμεταλλευόμενος τις δυνατότητες της πληροφορικής και των τηλεπικοινωνιών. Τα κυριότερα πλεονεκτήματα της τηλεργασίας είναι: Μείωση του κόστους μετακίνησης για τον εργαζόμενο Μείωση του χρόνου μετακίνησης για τον εργαζόμενο Μείωση του κόστους των επιχειρήσεων Δυνατότητα απασχόλησης ατόμων με κινητικά προβλήματα Παρέχει ευέλικτο ωράριο απασχόλησης
Τα κυριότερα μειονεκτήματα της τηλεργασίας είναι: Δεν αναπτύσσεται η κοινωνικότητα του εργαζόμενου Δεν υπάρχει δυνατότητα άμεσης ανταλλαγής απόψεων και βοήθειας Δεν μπορεί να εφαρμοστεί σε όλους τους κλάδους εργασίας 1.7.8 Πνευματικά δικαιώματα, πνευματική ιδιοκτησία και άδεια χρήσης Τα πνευματικά δικαιώματα (copyright) είναι τα δικαιώματα που αποκτά κάποιος πάνω σε ένα πρωτότυπο δημιούργημα όπως μουσική, βιβλίο, οπτικοακουστικό έργο, λογισμικό, κ.α. Πνευματική ιδιοκτησία είναι το σύνολο των εξουσιών που δίνει ο νόμος στον ιδιοκτήτη ενός πνευματικού έργου, να προστατεύσει, να διαχειριστεί και να αμειφθεί ακόμη από τρίτους, όταν αυτοί εκμεταλλεύονται την πνευματική του περιουσία και επισημαίνεται µε το σύμβολο του «Copyright». Η πνευματική ιδιοκτησία προστατεύεται στην Ελλάδα από το νόμο «Περί Προστασίας της Πνευματικής Ιδιοκτησίας και Συγγενικών Δικαιωμάτων» (Ν.2121/1993) και οι παραβάτες διώκονται ποινικά, με ποινές που ξεκινούν από μεγάλα χρηματικά πρόστιμα και φτάνουν μέχρι τη φυλάκιση. Αυτό σημαίνει ότι δεν μπορούμε να εκμεταλλευτούμε με κανένα τρόπο (αντιγραφή, πώληση, εμπορική εκμετάλλευση) κανένα πρωτότυπο δημιούργημα, αν δεν έχουμε τη σύμφωνη γνώμη του δημιουργού του. Εξειδικεύοντας στην πληροφορική και πιο συγκεκριμένα στο λογισμικό, για να μπορέσουμε να χρησιμοποιήσουμε μια εφαρμογή, πρέπει να έχουμε την άδεια χρήσης (license), η οποία συνοδεύει το προϊόν, με την αγορά του. Η άδεια χρήσης, που αναφέρεται συνήθως ως «Άδεια χρήσης τελικού χρήστη (End-user license agreement EULA)», καθορίζει την χρήση ή διανομή λογισμικού που υπόκειται σε δικαιώματα πνευματικής ιδιοκτησίας και παρέχει στον τελικό χρήστη, άδεια να χρησιμοποιήσει ένα ή περισσότερα αντίγραφα του λογισμικού που αγόρασε. Διαφορετικά η χρήση του λογισμικού, θα αποτελούσε καταπάτηση του νόμου πνευματικής ιδιοκτησίας. Στην ουσία, η άδεια χρήσης ενός προϊόντος, λειτουργεί σαν μια υπόσχεση από τον δημιουργό του, ότι δεν θα μηνύσει τον τελικό χρήστη για δραστηριότητες του τελευταίου, που κανονικά, αποτελούνε αποκλειστικά προνόμια του δημιουργού του προϊόντος. 1.7.9 Τύποι Λογισμικού Οι όροι της άδειας χρήσης διαφέρουν από πρόγραμμα σε πρόγραμμα, ανάλογα με τον τύπο του. Οι κυριότεροι τύποι λογισμικού, είναι: Δωρεάν Λογισμικό (Freeware): Παρόλο που η χρήση των προγραμμάτων αυτών είναι δωρεάν, έχουν πνευματικά δικαιώματα και ενδεχομένως να μην επιτρέπεται η εκμετάλλευσή τους με κανένα τρόπο. Λογισμικό Δοκιμαστικής Χρήσης (Shareware): Πρόκειται για λογισμικό που μπορούμε να χρησιμοποιήσουμε για ορισμένο χρονικό διάστημα (π.χ. ένα μήνα) ή για περιορισμένο αριθμό χρήσεων (π.χ. 30 φορές). Αποτελεί τον καλύτερο τρόπο διαφήμισης ενός προϊόντος. Λογισμικό Ανοιχτού Κώδικα (Openware): Είναι λογισμικό με ελεύθερο κώδικα, όπου οποιοσδήποτε προγραμματιστής μπορεί να το τροποποιήσει για τις δικές του ανάγκες ή να το βελτιώσει. Κλασσικό παράδειγμα αποτελεί το λειτουργικό σύστημα «Linux» και ο προκάτοχός του, «Unix».
1.7.10 Ανάπτυξη λογισμικού Όπως είπαμε, η λειτουργία ενός υπολογιστή βασίζεται στο λογισμικό του, δηλαδή σε συγκεκριμένες ακολουθίες εντολών τις οποίες πρέπει να εκτελέσει, ώστε να παράγει το επιθυμητό αποτέλεσμα για το χρήστη. Όσοι αναπτύσσουν το λογισμικό, λέγονται προγραμματιστές υπολογιστών και είναι άτομα με μεγάλη δεξιότητα και εμβάθυνση στο χειρισμό υπολογιστών. Για τη δημιουργία ενός λογισμικού, είναι απαραίτητο να ακολουθηθούν κάποιες συγκεκριμένες διαδικασίες, που βρίσκονται σε προκαθορισμένα στάδια. Τα βασικά στάδια ή φάσεις ανάπτυξης λογισμικού (προγραμματισμού), είναι: 1. Ανάλυση αναγκών και απαιτήσεων: Καταγράφονται οι απαιτήσεις και οι ανάγκες του πελάτη. 2. Προδιαγραφές: Ο προγραμματιστής αναπτύσσει τις προδιαγραφές του λογισμικού, δηλαδή όλες τις λεπτομέρειες του τρόπου λειτουργίας του. 3. Πλάνο εργασιών - Χρονοδιάγραμμα: Το έργο χωρίζεται σε εργασίες, που κατανέμονται χρονικά και διαχειρίζονται ανεξάρτητα. Καταρτίζεται έτσι το πλάνο εργασιών (project plan), που δείχνει πόσο χρόνο χρειάζεται η κάθε εργασία για να ολοκληρωθεί. 4. Σχεδιασμός: Καθορίζει το πώς θα δουλεύει το λογισμικό και είναι πολύ σημαντικός, καθώς εξαρτάται και η ευκολία υλοποίησης. Περιλαμβάνει και την επιλογή γλώσσας προγραμματισμού και των βοηθητικών εργαλείων που θα χρησιμοποιηθούν. 5. Υλοποίηση: Γίνεται η ανάπτυξη του κώδικα (εντολών) του λογισμικού. 6. Έλεγχος: Το λογισμικό ελέγχεται για τυχόν δυσλειτουργίες. Σε πολλές περιπτώσεις, ο έλεγχος αυτός γίνεται από συνεργάτες των εταιρειών που αναπτύσσουν λογισμικό, πριν την κυκλοφορία του, οπότε λέμε ότι το λογισμικό βρίσκεται σε «beta» έκδοση. 7. Συντήρηση: Γίνεται η οριστική αποσφαλμάτωση του λογισμικού, η πιθανή προσαρμογή του σε νέες απαιτήσεις του πελάτη και η βελτίωσή του, με την προσθήκη νέων δυνατοτήτων. 8. Σύνταξη εγχειριδίου χρήσης: Γίνεται αναλυτική και πλήρης περιγραφή του τρόπου λειτουργίας και των δυνατοτήτων του λογισμικού. 1.7.11 Αναγνωριστικό, δήλωση και έκδοση λογισμικού Το αναγνωριστικό προϊόντος (Product ID), είναι ένας μοναδικός αριθμός αναγνώρισης για κάθε άδεια χρήσης ενός λογισμικού, βάσει του οποίου, επαληθεύεται η γνησιότητά του και εφόσον απαιτείται, γίνεται και η ενεργοποίησή του (product activation). Αυτός ο αριθμός, βρίσκεται συνήθως στο μενού «Βοήθεια» του λογισμικού και πιο συγκεκριμένα, στην τελευταία επιλογή, που ξεκινάει με τη λέξη «Πληροφορίες». Στο ίδιο σημείο, μπορούμε να δούμε και τον αριθμό έκδοσης του λογισμικού, που δείχνει πόσο πρόσφατα βελτιώθηκε. Όσο μεγαλύτερος είναι ο αριθμός έκδοσης, τόσο νεότερο και άρα, με περισσότερες δυνατότητες και βελτιώσεις, είναι το λογισμικό (π.χ. Internet Explorer 9.0). Στις περισσότερες περιπτώσεις, ο χρήστης μπορεί να κάνει και δήλωση του προϊόντος (product registration) που αγόρασε, με την οποία μπορεί να ενημερώνεται για αναβαθμίσεις, να αποκτά εκπτώσεις σε προϊόντα της εταιρείας, να συμμετέχει σε διαγωνισμούς, κ.α.