You are on page 1of 171

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Δημοσθένης Πασχαλίδης
Τμήμα Ιερατικών Σπουδών

Ενότητα 1: Ιστορική αναδρομή και υπόβαθρο


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

Περιεχόμενα ενότητας
• Η ιστορία των υπολογιστών και των
λειτουργικών συστημάτων.
• Αλγόριθμος.
• Αναπαράσταση δεδομένων.
• Μέσα αποθήκευσης.
Ο πρώτος υπολογιστής:
Ο μηχανισμός των Αντικυθήρων

Εικόνα: Ο μηχανισμός των Αντικυθήρων.


Πηγή:http://www.orathessaloniki.gr/sites/default/files/anti_ki8ira_mecj
a_ora.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

Αναπαράσταση της λειτουργίας


του μηχανισμού των Αντικυθήρων
Bill Gates & Steve Jobs 1985

Εικόνα: Bill Gates & Steve Jobs 1985.


Πηγή:http://siliconangle.com/files/2011/11/steve_jobs_bill_gates_1985
.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

Steve Jobs & Bill Gates 1991

Εικόνα: Steve Jobs & Bill Gates 1991.


Πηγή:https://www.pinterest.com/pin/283937951477281316/
(Ανακτήθηκε 18 Ιουνίου, 2015).
Steve Jobs & Bill Gates 2008

Εικόνα: Steve Jobs & Bill Gates 2008.


Πηγή:http://wholles.com/wp-content/uploads/2014/06/Steve-Jobs-
And-Bill-Gates.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

10

Υπάρχει ομώνυμη ταινία

Εικόνα: Steve Jobs .


Πηγή:http://3.bp.blogspot.com/-5A1nL5MzkX8/To1VcM-
CE7I/AAAAAAAAAOQ/TXgbFwJKIYI/s1600/steve-jobs-apple.jpg
(Ανακτήθηκε 18 Ιουνίου, 2015).
Steve Jobs και Dennis Ritchie

Εικόνα: Steve Jobs και Dennis Ritchie.


Πηγή:http://3.bp.blogspot.com/-5A1nL5MzkX8/To1VcM-
CE7I/AAAAAAAAAOQ/TXgbFwJKIYI/s1600/steve-jobs-apple.jpg
(Ανακτήθηκε 18 Ιουνίου, 2015).
Steve Jobs: i-products.
Dennis Ritchie: Γλώσσα C, Unix, Windows, Άλμα στην πληροφορική.

12

Βίοι παράλληλοι

Εικόνα:Βίοι παράλληλοι.
Πηγή:https://picasaweb.google.com/lh/photo/dTObqh0sv1
XES756a-iTgQ (Ανακτήθηκε 18 Ιουνίου, 2015).
Windows - Mac

Εικόνα: Windows - Mac.


Πηγή:http://www.michaelflanakin.com/Portals/michaelflanakin.
com/Weblog/2007/MacWindowsTimeline.png
(Ανακτήθηκε 18 Ιουνίου, 2015).

14

Εξέλιξη των Windows μέχρι τα 7

Εικόνα: Εξέλιξη των Windows μέχρι τα 7.


Πηγή:http://f.ptcdn.info/214/007/000/1373767097-Linux006-
o.png (Ανακτήθηκε 18 Ιουνίου, 2015).
Το περιβάλλον των Windows 8.1

Εικόνα:Το περιβάλλον των Windows 8.1.


Πηγή:https://upload.wikimedia.org/wikipedia/en/9/99/Win
dows_8.1_Start_screen.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

16

Η ανάπτυξη του UNIX

Εικόνα: UNIX Chronology.


Πηγή:http://www.emu.edu/faculty/cooleycd/Spring2004/cs
352/unix/timeline.gif(Ανακτήθηκε 18 Ιουνίου, 2015).
H αρχή του Linux

Εικόνα: H αρχή του Linux.


Πηγή:http://image.slidesharecdn.com/chapter1-141207022829-
conversion-gate01/95/osos-sem-4-chapter-1-6-
638.jpg?cb=1417919355
(Ανακτήθηκε 18 Ιουνίου, 2015).

18

Linux
• Τι είναι;
• Οφέλη που προκύπτουν από τη χρήση.
Υπολογιστές και αλγόριθμοι
• Ο σκοπός της επιστήμης των υπολογιστών
είναι να:
1. Λύνει προβλήματα.
2. …
3. …

20

Διάγραμμα ροής

Σχήμα: Διάγραμμα ροής.


Πηγή:https://el.wikipedia.org/wiki/%CE%91%CE%BB%CE%B3%CF%8C%C
F%81%CE%B9%CE%B8%CE%BC%CE%BF%CF%82#/media/File:LampFlow
chart-el.svg (Ανακτήθηκε 18 Ιουνίου, 2015).
Τι κάνει αυτό;

Σχήμα: Μία απλή (;) διαδικασία.


Πηγή:https://el.wikipedia.org/wiki/%CE%91%CE%BB%CE%B3%CF%8C%C
F%81%CE%B9%CE%B8%CE%BC%CE%BF%CF%82#/media/File:LampFlow
chart-el.svg (Ανακτήθηκε 18 Ιουνίου, 2015).

22

To Πρόβλημα ταξινόμησης τριών


αριθμών

Σχήμα: To Πρόβλημα ταξινόμησης τριών αριθμών.


Πηγή: https://jhnginis.files.wordpress.com/2011/11/sort3num.png
(Ανακτήθηκε 18 Ιουνίου, 2015).
Αναπαράσταση πληροφορίας
1 Bit = Binary Digit.
8 Bits = 1 Byte.
1024 Bytes = 1 Kilobyte.
1024 Kilobytes = 1 Megabyte.
1024 Megabytes = 1 Gigabyte.
1024 Gigabytes = 1 Terabyte.
1024 Terabytes = 1 Petabyte.
1024 Petabytes = 1 Exabyte.
1024 Exabytes = 1 Zettabyte.
1024 Zettabytes = 1 Yottabyte. Εικόνα:Αναπαράσταση πληροφορίας.
1024 Yottabytes = 1 Brontobyte. Πηγή:http://s.hswstatic.com/gif/bytes-
1024 Brontobytes = 1 Geopbyte. ch.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

24

Μέσα αποθήκευσης

Εικόνα: Μέσα αποθήκευσης.


Πηγή: http://blog.photoshopit.com/wp-content/uploads/Blog-Image-
2.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).
Ανασυγκρότηση;

Εικόνα: Ανασυγκρότηση;
Πηγή: http://blog.photoshopit.com/wp-content/uploads/Blog-Image-
2.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).

26

Aνασυγκρότηση δίσκου (WinXP)

Εικόνα: Προβολή ανασυγκρότησης (Win XP).


Πηγή:http://www.geekstogo.com/forum/uploads/monthly_04_2009/po
st-280673-1240224864.jpg (Ανακτήθηκε 18 Ιουνίου, 2015).
Ενότητα 2: Ψηφιοποίηση, Αναπαράσταση και
αποθήκευση δεδομένων

Σκοποί ενότητας
Ο σκοπός της ενότητας είναι η εμβάθυνση
στις μορφές αναπαράστασης και
αποθήκευσης δεδομένων.
Περιεχόμενα ενότητας
Μορφές Οι τρόποι που
Αναπαράστασης: αποθηκεύονται τα
Αριθμών. μπιτ:
Κειμένου. Λογικές Πράξεις.
Εικόνας. Λογικές Πύλες.
Ήχου.
Βίντεο.

Προβληματισμοί
• Τρόποι κωδικοποίησης.
• Βαθμός συμπίεσης.
• Απώλεια ακρίβειας δεδομένων.
• Υποθέσεις.
• Περιορισμοί.
Οι αριθμοί 0 ως 15 στα τρία
αριθμητικά συστήματα

Πίνακας:Οι αριθμοί 0 ως 15 στα τρία αριθμητικά συστήματα.


Πηγή: Διδάσκων (2015).

ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ (2/2)


Κείμενο.
• Κώδικας ASCII.
• Κώδικας UNICODE (UTF 8, UTF 16 κλπ).
ΑΝΑΠΑΡΑΣΤΑΣΗ ΚΕΙΜΕΝΟΥ:
ASCII (Ελληνικό)

Πίνακας: ΑΝΑΠΑΡΑΣΤΑΣΗ ΚΕΙΜΕΝΟΥ: ASCII (Ελληνικό).


Πηγή: Διδάσκων (2015).

Μορφές Εικόνας
BMP.
JPEG.
GIF.
TIF.
PNG.
SVG.
(PSD, EPS, PDF).
Χαρακτηριστικά Εικόνας (1/2)
• Διαστάσεις (?).
• Βάθος χρώματος.
• Τρόπος δημιουργίας.
• Φωτογραφία.
• Σχέδιο.
• Διανυσματικό σχέδιο.

Εικόνα: Χαρακτηριστικά Εικόνας.


Πηγή:http://volga.eng.yale.edu/up
loads/Main/smiley-pixels.png
(Ανακτήθηκε 17 Ιουνίου, 2015).

11

Μορφές Ήχου
• wav - ασυμπίεστη μορφή.
• Mpeg-4, wma, m4a - μη απωλεστική.
• mp3, wma - απωλεστική μορφή.
• MIDI.
• CODEC.
• Δειγματοληψία – Ψηφιοποίηση.
Ήχος (2/2)

Εικόνα: Ήχος.
Πηγή: http://volga.eng.yale.edu/uploads/Main/soundwave.png
Ανακτήθηκε 17 Ιουνίου, 2015).
13

Ποιότητα ήχου (1/4)

Εικόνα: Ποιότητα ήχου.


Πηγή:http://i717.photobucket.com/albums/ww175/goodsires/SampleR
ate.jpg (Ανακτήθηκε 17 Ιουνίου, 2015).
Xαμηλοί ρυθμοί δειγματοληψίας λαμβάνουν λιγότερα στιγμιότυπα της
κυματομορφής.
Ποιότητα ήχου (2/4)

Εικόνα: Ποιότητα ήχου.


Πηγή:http://i717.photobucket.com/albums/ww175/goodsires/SampleR
ate.jpg(Ανακτήθηκε 17 Ιουνίου, 2015).
Aποδίδοντας προσεγγιστική.
Aναπαράσταση της κυματομορφής.

15

Ποιότητα ήχου (3/4)

Εικόνα: Ποιότητα ήχου.


Πηγή:http://i717.photobucket.com/albums/ww175/goodsires/SampleR
ate.jpg (Ανακτήθηκε 17 Ιουνίου, 2015).
Tαχύτεροι ρυθμοί δειγματοληψίας λαμβάνουν περισσότερα
στιγμιότυπα....
Ποιότητα ήχου (4/4)

Εικόνα: Ποιότητα ήχου.


Πηγή:http://i717.photobucket.com/albums/ww175/goodsires/SampleR
ate.jpg (Ανακτήθηκε 17 Ιουνίου, 2015).
Aποδίδοντας πιο ομαλή και πιο λεπτομερή αναπαράσταση της
κυματομορφής.

17

Μορφές Βίντεο
• Avi.
• Wmv.
• Divx.
• Mkv.
• Mp4.
ΠΡΑΞΕΙΣ με BITS
• Λογικές πράξεις.
• Πίνακες αληθείας.
• Λογικές πύλες.
• Άλγεβρα Boolean.

19

Πράξη – Πύλη «Ή»

Σχήμα: Πράξη – Πύλη «Ή».


Πηγή: BROOKSHEAR (2004).
Πράξη – Πύλη «Και»

Εικόνα: Πράξη – Πύλη «Και».


Πηγή: BROOKSHEAR (2004).

21

Πράξη – Πύλη «Not»

Σχήμα: Πράξη – Πύλη «Not».


Πηγή: BROOKSHEAR (2004).
Πράξη – Πύλη «Αποκλειστικό Ή»

Σχήμα: Πράξη – Πύλη «Αποκλειστικό Ή».


Πηγή: BROOKSHEAR (2004).

23

Πράξη – Πύλη «Όχι Και»

Σχήμα: Πράξη – Πύλη «Όχι Και».


Πηγή: BROOKSHEAR (2004).
Πίνακες αληθείας (παράδειγμα 4
μεταβλητών – εισόδων)

Πίνακας: Πίνακες αληθείας.


Πηγή: Διδάσκων (2015).

25

Λογικές Πύλες

Σχήμα: Λογικές Πύλες.


Πηγή: BROOKSHEAR (2004).
ΑΣΚΗΣΗ 1/2

Σχήμα: Άσκηση.
Πηγή: Διδάσκων (2015).

27

ΑΣΚΗΣΗ 2/2

Σχήμα: Άσκηση.
Πηγή: Διδάσκων (2015).
Ενότητα 3: ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ

Σκοποί ενότητας
• Να γνωρίζει ο φοιτητής τι είναι ένα
λειτουργικό σύστημα, πως συντονίζει τις
εσωτερικές δραστηριότητες ενός
υπολογιστή και πως επιτηρεί την
επικοινωνία του με τον έξω κόσμο.
• Να κατανοήσει τι κάνουν τα λειτουργικά
συστήματα αλλά και πώς το κάνουν.
Περιεχόμενα ενότητας
• Εκκίνηση του Η/Υ.
• Ο ρόλος του BIOS.
• Η έννοια της διαδικασίας.
• Πολυπρογραμματισμός – Διακοπές.
• Τα αδιέξοδα (deadlocks).
• Ασφάλεια λειτουργικών συστημάτων.

ΟΡΙΣΜΟΣ
• Το Λειτουργικό Σύστημα (ΛΣ) είναι ένα σύνολο
προγραμμάτων.
• Σύνδεσμος ανάμεσα στα προγράμματα του
χρήστη και το υλικό.
• Καθορίζει τον τρόπο λειτουργίας του
υπολογιστικού συστήματος.
• Ελέγχει και συντονίζει τη χρήση των μονάδων του
από τα διάφορα προγράμματα εφαρμογής των
χρηστών.
ΤΙ ΕΙΝΑΙ ΕΝΑ ΛΕΙΤΟΥΡΓΙΚΟ
ΣΥΣΤΗΜΑ

Πίνακας: Μια μεταφορά ενός λειτουργικού συστήματος.


Πηγή: Διδάσκων (2015).

ΟΜΑΔΙΚΗ -> ΑΛΛΗΛΕΠΙΔΡΑΣΤΙΚΗ


1/2

Σχήμα: Ομαδική επεξεργασία (batch processing).


Πηγή: BROOKSHEAR (2009).
ΟΜΑΔΙΚΗ -> ΑΛΛΗΛΕΠΙΔΡΑΣΤΙΚΗ
2/2

Σχήμα: Αλληλεπιδραστική επεξεργασία.


Πηγή: BROOKSHEAR (2009).

ΠΟΛΥΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
• Τι είναι;
• Ποιο πρόβλημα επιλύει;
ΚΑΤΗΓΟΡΙΕΣ ΛΟΓΙΣΜΙΚΟΥ

Σχήμα: ΚΑΤΗΓΟΡΙΕΣ ΛΟΓΙΣΜΙΚΟΥ.


Πηγή: BROOKSHEAR (2009).

11

ΣΤΟΙΧΕΙΑ ΛΕΙΤΟΥΡΓΙΚΟΥ
ΣΥΣΤΗΜΑΤΟΣ

Σχήμα: ΣΤΟΙΧΕΙΑ ΛΕΙΤΟΥΡΓΙΚΟΥ ΣΥΣΤΗΜΑΤΟΣ.


Πηγή: BROOKSHEAR (2009).
ΕΠΙΠΕΔΑ ΕΠΙΚΟΙΝΩΝΙΑΣ
ΧΡΗΣΤΗ - ΥΠΟΛΟΓΙΣΤΗ

Σχήμα: ΕΠΙΠΕΔΑ ΕΠΙΚΟΙΝΩΝΙΑΣ ΧΡΗΣΤΗ – ΥΠΟΛΟΓΙΣΤΗ.


Πηγή: http://www.lib.uth.gr/LWS/images/sft_mnls/image002.jpg
(Ανακτήθηκε 18 Ιουνίου, 2015)

13

ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ, ΥΛΙΚΟΥ ΚΑΙ


ΜΝΗΜΗΣ
ΔΙΑΧΕΙΡΙΣΗ ΥΛΙΚΟΥ
Ας υποθέσουμε ότι δύο διεργασίες θέλουν να στείλουν
(περίπου ταυτόχρονα) τα ακόλουθα μηνύματα στον
εκτυπωτή:
• Διεργασία 1: Linux is a great operating system.
• Διεργασία 2: I love chocolate.
Ο εκτυπωτής μπορεί τελικά να τυπώσει:
• I love Linux is a great chocolate. operating system.
Το ΛΣ πρέπει να διαχειρίζεται του πόρους του συστήματος
έτσι ώστε:
• Να αποφεύγονται συγκρούσεις και να επιτυγχάνεται
σωστή λειτουργία.
• Να επιτυγχάνεται αποδοτική λειτουργία.

15

ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ (1/4)

Εικόνα: Το σύστημα αρχείων των Windows.


Πηγή: Διδάσκων (2015).
ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ (2/4)
•Διαχείριση συστήματος αρχείων.
•Εισαγωγή στην έννοια των αρχείων.
•Κατάλογοι συστήματος αρχείων.
•Οργάνωση συστήματος αρχείων σε
δίσκους.
WinDirStat.

17

ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ (3/4)


• Χρησιμότητα των αρχείων.
• Ονόματα και τύποι αρχείων.
• Χαρακτηριστικά των αρχείων.
• Λειτουργίες που εκτελούνται στα αρχεία.
ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ (4/4)
• Οργάνωση των αρχείων σε καταλόγους.
• Κατάλογοι ενός επιπέδου.
• Κατάλογοι πολλαπλών επιπέδων.
• Διαδρομές.
• Λειτουργίες καταλόγων.

19

ΔΙΑΧΕΙΡΙΣΗ ΜΝΗΜΗΣ
• Κύρια και δευτερεύουσα μνήμη.
• Πόσο σημαντική είναι η διαχείριση της
κύριας μνήμης;
• Ανταλλαγή.
ΔΙΑΧΕΙΡΙΣΗ ΕΙΚΟΝΙΚΗΣ ΜΝΗΜΗΣ
• Χώρος φυσικών διευθύνσεων.
• Γιατί χρειάζονται οι εικονικές διευθύνσεις;
• Διαχείριση εικονικής μνήμης με σελιδοποίηση.
• Μεταφορά σελίδων με αίτηση ή πρόβλεψη.
• Τεχνικές αντικατάστασης σελίδων.
• Τεχνικές τοποθέτησης σελίδων.

21

ΕΚΚΙΝΗΣΗ (boot)

Σχήμα: Εκκίνηση (boot) του υπολογιστή.


Πηγή: BROOKSHEAR (2009).
ΔΙΕΡΓΑΣΙΕΣ (1/3)
• Διεργασία είναι κάθε πρόγραμμα που εκτελείται (τρέχει).
• Κάθε διεργασία είναι ανεξάρτητη οντότητα με δικό της
χώρο στη μνήμη (address space) όπου αποθηκεύεται το
πρόγραμμα καθώς και τα δεδομένα.
• Ο χώρος κάθε διεργασίας πρέπει να προστατεύεται.
• Στο Πίνακα Διεργασιών (process table) φυλάγονται όλες οι
σχετικές πληροφορίες που χρειάζονται για την εκτέλεση
μιας διεργασίας (π.χ. οι τιμές όλων των καταχωρητών).

23

ΔΙΕΡΓΑΣΙΕΣ (2/3)
• Μια διεργασία μπορεί να δημιουργήσει μια ή
περισσότερες διεργασίες (child processes).
• Συνεργαζόμενες διεργασίες χρειάζονται τρόπους
επικοινωνίας μεταξύ τους.
• Ο καταμερισμός των πόρων πρέπει να είναι τέτοιος ώστε
να αποφεύγονται τα αδιέξοδα (deadlocks).
ΔΙΕΡΓΑΣΙΕΣ (3/3)
Κατάσταση μιας διεργασίας (ως προς την εκτελεσή της)
• τρέχει (running): έχει τη CPU.
• έτοιμο (ready): μπορεί να τρέξει, αλλά η CPU δόθηκε αλλού.
• μπλοκαρισμένη (blocked): περιμένει «εξωτερικό» γεγονός.
1. περιμένει I/O.
2. CPU δίνεται σ' άλλο process.
3. CPU δίνεται σ' αυτό το process.
4. I/O έγινε.

Σχήμα: Διεργασίες.
Πηγή: Διδάσκων (2015)

25

ΠΟΛΥΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (1/2)

Σχήμα: ΠΟΛΥΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ.
Πηγή: BROOKSHEAR (2004).
ΠΟΛΥΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (2/2)

Σχήμα: ΠΟΛΥΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ.
Πηγή: BROOKSHEAR (2004).

27

Διεκπεραιωτής (Dispatcher) (1/2)


Είναι το τμήμα του Λ.Σ. που εξασφαλίζει ότι οι
προγραμματισμένες διεργασίες εκτελούνται.
Φροντίζει για την εναλλαγή των διεργασιών που
εκτελούνται.
Χρησιμοποιεί:
• Διακοπές (Interrupts).
• Χειριστή Διακοπών (Interrupt handler).
Εφαρμόζει διαίρεση του χρόνου σε χρονομερίδια (δεν
ξεπερνούν τα 50 χιλιοστά του δευτερολέπτου).
Διεκπεραιωτής (Dispatcher) (2/2)
Στο τέλος κάθε χρονομεριδίου το κύκλωμα χρονομέτρησης
που ελέγχει ο διεκπεραιωτής στέλνει ένα σήμα διακοπής
(Interrupt) στην ΚΜΕ, η οποία αποθηκεύει την τρέχουσα
διεργασία και ξεκινά ένα πρόγραμμα που ονομάζεται
Χειριστής Διακοπών.
Με τον τρόπο αυτό μεταφέρεται ο έλεγχος στον
διεκπεραιωτή, ο οποίος ελέγχει τον πίνακα διεργασιών για
να βρει τη διεργασία με τη μεγαλύτερη προτεραιότητα (από
αυτές που είναι έτοιμες).

29

ΑΝΤΑΓΩΝΙΣΜΟΣ (1/2)
• Συνθήκες Ανταγωνισμού (Race Conditions):
καταστάσεις όπου >1 διεργασίες διαβάζουν ή
γράφουν σε κοινά δεδομένα και το τελικό
αποτέλεσμα εξαρτάται από το πότε τρέχει η κάθε
διεργασία.
• Το πρόβλημα είναι:
έλεγχος πρόσβασης σε κοινή μνήμη.
ΑΝΤΑΓΩΝΙΣΜΟΣ (2/2)
Παράδειγμα:
Δύο διεργασίες (P1, P2) κάνουν και οι δύο αναλήψεις από ένα
τραπεζικό λογαριασμό (κοινό) - η μία ανήκει π.χ. στο σύζυγο και η
άλλη αντίστοιχα στη σύζυγο. Η ρουτίνα ΑΝΑΛΗΨΗ καλείται και
από τις δύο διεργασίες.
ΑΝΑΛΗΨΗ:
read (υπολοιπο);
if υπολοιπο > ποσό_ανάληψης
write (υπολοιπο  υπολοιπο – ποσό_ανάληψης);

31

ΑΜΟΙΒΑΙΟΣ ΑΠΟΚΛΕΙΣΜΟΣ -
ΑΔΙΕΞΟΔΟ

Εικόνα: ΑΜΟΙΒΑΙΟΣ ΑΠΟΚΛΕΙΣΜΟΣ – ΑΔΙΕΞΟΔΟ.


Πηγή: BROOKSHEAR (2009).
ΑΝΤΑΓΩΝΙΣΜΟΣ - Το πρόβλημα
των φιλοσόφων (1/9)

Εικόνα: ΑΝΤΑΓΩΝΙΣΜΟΣ .
Πηγή: Διδάσκων (2015).

33

Οι φιλόσοφοι που γευματίζουν -


Dining Philosophers (2/9)
Μια πρώτη λύση για Ν φιλοσόφους:
philosopher (i)
while (1) {
think;
take_fork(i); /* πάρε αριστερό ξυλάκι */
take_fork(i+1 mod Ν); /* πάρε δεξί ξυλάκι */
eat;
put_fork(i);
put_fork(i+1 mod Ν);
}
Οι φιλόσοφοι που γευματίζουν -
Dining Philosophers (3/9)
• Ο παραπάνω αλγόριθμος δεν ικανοποιεί!
• Αν όλοι οι φιλόσοφοι πεινάσουν την ίδια στιγμή και
εκτελέσουν τον αλγόριθμο τότε όλοι θα πάρουν το
πηρούνι στα αριστερά τους.
• Όμως κανείς δεν θα καταφέρει να πάρει το δεξί
πηρούνι.
•  όλοι θα ... πεθάνουν της πείνας.
• Αυτό είναι ένα γενικότερο και πολύ σημαντικό
πρόβλημα για την δημιουργία συστημάτων
λογισμικού και λέγεται αδιέξοδο (deadlock).
35

Οι φιλόσοφοι που γευματίζουν -


Dining Philosophers (4/9)
• Αδιέξοδο προκύπτει όταν >1 processes
δημιουργούν μια κυκλική αλυσίδα: όπου το
κάθε process για να συνεχίσει χρειάζεται
έναν πόρο που τον κατέχει το επόμενο
process...
• Κοκ  Πρα  Κιτρ  Μπλε  Πορτ 
Μωβ Κοκ.
Οι φιλόσοφοι που γευματίζουν -
Dining Philosophers (5/9)
• Μια 2η λύση είναι ν' αναγκάσουμε τον κάθε
φιλόσοφο, μόλις πάρει το αριστερό ξυλάκι να
εξετάσει αν το δεξί είναι διαθέσιμο.
• Αν ναι, εντάξει.
• Αλλιώς, αφήνει το αριστερό ξυλάκι και
δοκιμάζει πάλι μετά από κάποιο χρονικό
διάστημα.

37

Οι φιλόσοφοι που γευματίζουν -


Dining Philosophers (6/9)
• Το πρόβλημα μ' αυτή τη λύση είναι λίγο
διαφορετικό. Αν όλοι οι φιλόσοφοι αρχίσουν την
ίδια στιγμή, ενδέχεται να πάρουν το αριστερό την
ίδια στιγμή, να τ' αφήσουν την ίδια στιγμή κ.ο.κ.
• Αυτό το φαινόμενο ονομάζεται επ’ αόριστον
αναβολή (indefinite postponement) ή λιμοκτονία
(starvation): οι διεργασίες συνεχίζουν να τρέχουν
αλλά δεν σημειώνουν καμία πρόοδο...
Οι φιλόσοφοι που γευματίζουν -
Dining Philosophers (7/9)
• Μια 3η λύση:
• να δημιουργήσουμε ένα critical section στον
αλγόριθμο των φιλοσόφων (μετά το "think") ο
οποίος να προστατεύεται από ένα semaphore
(mutex = 1).
• Πριν μπεί στο critical section ο κάθε φιλόσοφος
καλεί DOWN(mutex) και μόλις βγει καλεί
UP(mutex).

39

Οι φιλόσοφοι που γευματίζουν -


Dining Philosophers (8/9)
mutex = 1;
philosopher (i)
while (1) { think;
down(mutex);
take_fork(i); /* πάρε αριστερό ξυλάκι */
take_fork(i+1 mod Ν); /* πάρε δεξί ξυλάκι */
eat;
put_fork(i); • Η λύση αυτή είναι σωστή;
put_fork(i+1 mod Ν); • Είναι καλή λύση ;
up(mutex); }
Οι φιλόσοφοι που γευματίζουν -
Dining Philosophers (9/9)
• Μια καλύτερη λύση:
• Χρησιμοποιείται ένα semaphore (mutex = 1) για
προστασία critical section.
• Χρησιμοποιείται ένα semaphore για κάθε φιλόσοφο π.χ.
s[1..Ν], για Ν φιλόσοφους. Αρχικά s[i] = 0, i= 1,...,Ν.
• Τέλος υπάρχει και μία μεταβλητή που αντιπροσωπεύει
την κατάσταση ενός φιλόσοφου state[i] (με τιμές:
ΣΚΕΦΤΕΤΑΙ, ΠΕΙΝΑΕΙ, ΤΡΩΕΙ).
• Απαίτηση: Για να φάει ένας φιλόσοφος, κανείς από τους 2
γείτονές του δεν μπορεί να βρίσκεται στην κατάσταση
ΤΡΩΕΙ.

41

ΚΡΙΣΙΜΗ ΠΕΡΙΟΧΗ
• Κρίσιμο τμήμα μιας διεργασίας είναι το κομμάτι εκείνο
που απειλεί την ακεραιότητα των δεδομένων.
• Δίνεται παράδειγμα πρόσβασης στον ίδιο λογαριασμό
από δύο διαφορετικά ATM’s.
• Μοιραζόμενα δεδομένα.
• Πρόβλημα ακεραιότητας διαμοιραζόμενων δεδομένων.
• Απροσδιόριστο το αποτέλεσμα των πράξεων.
ΣΗΜΑΤΟΦΟΡΕΙΣ (1/2)
• Μια σημαφόρος αντιστοιχεί σε μια κρίσιμη περιοχή που
επιθυμούν να έχουν πρόσβαση πολλές διαδικασίες.
• Πληροφορία για το αν η περιοχή είναι κατειλημμένη ή
όχι.
• Χρήση ουράς αναμονής για τις προς εξυπηρέτηση
διεργασίες.
• Μπλοκαρισμένη η διαδικασία όσο περιμένει την
απελευθέρωση της σημαφόρου.

43

ΣΗΜΑΤΟΦΟΡΕΙΣ (2/2)
Ένας τύπος μεταβλητών. Στην ουσία "μετράει" όλες τις κλήσεις
αφύπνισης για ένα process.
Δύο πράξεις: UP & DOWN (σαν τα WAKEUP & SLEEP).
DOWN(s) : 1 ατομική ενέργεια (atomic action)
{
if s = 0 then sleep()
else s = s - 1
}
UP(s):
s: = s + 1
ΑΣΦΑΛΕΙΑ (1/7)
• Εξωτερική (απειλή: πρόσβαση στον υπολογιστή
από μη εξουσιοδοτημένο χρήστη)  Σύνδεση στο
σύστημα (login).
• Εσωτερική (απειλή: μια διεργασία σε
χρονομεριστικό σύστημα που προσπαθεί να
προσπελάσει κελιά της κύριας μνήμης μη
αντιστοιχισμένα σε αυτή)  Προνομιούχες
εντολές, επίπεδα προνομίων.

45

Εξωτερικοί Εισβολείς (outsiders)


• Μπορεί να είναι Hackers / Crackers / Vandals / Hacktivists.
• Footprinting – Εύρεση στοιχείων για την επιχείρηση
(π.χ. µπλοκ IP διευθύνσεων, διευθύνσεις e-mail,
τοπολογία δικτύου, ονόματα υπολογιστών, διάρθρωση
της επιχείρησης).
• Scanning & enumerating - Εύρεση υπηρεσιών,
προγραμμάτων εφαρμογών και πρωτοκόλλων που
υλοποιεί/εκτελεί ο υπολογιστής-στόχος.
• Hacking - Παράκαμψη του µηχανισμού ασφάλειας µε
σκοπό τη µη εξουσιοδοτημένη πρόσβαση σε κάποιο
αγαθό του συστήματος).
Εσωτερικές Απειλές.
• Είναι «νόμιµοι» χρήστες του συστήματος.
• Προσπαθούν να αποκτήσουν µη εξουσιοδοτημένη
πρόσβαση σε πόρους του συστήματος.
• Χρήστες της Επιχείρησης/Οργανισμού που παρακάμπτουν
τις διαδικασίες ελέγχου για την πρόσβαση σε
διαβαθμισμένα δεδομένα/πληροφορίες.
• Χρήστες που αποκτούν πρόσβαση σε λογαριασμούς
χρηστών µε περισσότερα δικαιώματα σε σχέση µε τα
δικαιώματα που ήδη έχουν.

47

ΑΣΦΑΛΕΙΑ (4/7)
• Κακόβουλο Λογισµικό, π.χ. Ιοί (Viruses), Σκουλήκια
(Worms), Δούρειοι Ίπποι (Trojan Horses), Spyware,
Adware, µε σκοπό τη µη εξουσιοδοτηµένη πρόσβαση
στους πόρους ενός Η/Υ.
• Μη εξουσιοδοτηµένη εισβολή σε υπολογιστικά-
πληροφοριακά συστήµατα (Hacking). Χρήση κακόβουλου
λογισµικού ή/και τεχνικών Κοινωνικής Μηχανικής (Social
Engineering) µε σκοπό την εκµετάλλευση των αδυναµιών
και την πρόσβαση στους πόρους του συστήµατος.
ΑΣΦΑΛΕΙΑ (5/7)
• Επιθέσεις Άρνησης Εξυπηρέτησης (Denial Of Service).
Διακοπή ή υποβάθµιση των παρεχοµένων υπηρεσιών
ενός συστήµατος.
• Επιθέσεις Πλαστοπροσωπίας (Spoofing / Masquerading).
Χρήση «πλαστής» ταυτότητας µε σκοπό τη µη ανίχνευση
του επιτιθέµενου, ή/και την παράκαµψη των τεχνικών
ελέγχου πρόσβασης του συστήµατος.

49

ΑΣΦΑΛΕΙΑ (6/7)
• Υποκλοπές Επικοινωνιών - Αλλοίωση δεδοµένων.
Επιθέσεις στην εµπιστευτικότητα (confidentiality) και
ακεραιότητα (integrity) των δεδοµένων-πληροφοριών που
είναι αποθηκευµένες ή ανταλλάσσονται µεταξύ δύο
ηλεκτρονικών διατάξεων.
• Μη ζητηθείσα επικοινωνία (spam). Μηνύµατα
ηλεκτρονική αλληλογραφίας που αποστέλλονται χωρίς τη
συγκατάθεση του παραλήπτη, ενώ συχνά η ταυτότητα του
αποστολέα είναι πλαστογραφηµένη ή απλά αδύνατον να
εντοπιστεί.
ΑΣΦΑΛΕΙΑ (7/7)
• Παραβίαση δικαιωµάτων πνευµατικής ιδιοκτησίας.
Αντιγραφή, αναπαραγωγή, παραποίηση ή/και
αναδιανοµή δεδοµένων-πληροφοριών που
προστατεύονται από τους νόµους περί πνευµατικής
ιδιοκτησίας, χωρίς τη συγκατάθεση του δηµιουργού τους.

51

Βιβλιογραφία
• BROOKSHEAR, J. G. (2004), Computer Science: An
Overview, 9th Edition, ISBN13: 9780321247261.
• BROOKSHEAR, J. G. (2009) Η ΕΠΙΣΤΗΜΗ ΤΩΝ
ΥΠΟΛΟΓΙΣΤΩΝ: ΜΙΑ ΟΛΟΚΛΗΡΩΜΕΝΗ ΠΑΡΟΥΣΙΑΣΗ,
ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ, Έκδοση: 10η, ΕΚΔΟΣΕΙΣ
ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ, ISBN: 978-960-461-270-3.
Ενότητα 4: Δικτύωση και Διαδίκτυο I

Σκοποί ενότητας
Σκοπός αυτής της ενότητας είναι ο φοιτητής:
• Να εισαχθεί στην έννοια της δικτύωσης υπολογιστών,
δηλαδή να μελετήσει τους τρόπους με τους οποίους
μπορούν να συνδέονται μεταξύ τους οι υπολογιστές ώστε
να μοιράζονται πληροφορίες και πόρους.
• Να κατανοήσει την κατασκευή και τη λειτουργία των
δικτύων, τις εφαρμογές των δικτύων και τα ζητήματα
ασφάλειας.
• Να κατανοήσει τον τρόπο λειτουργίας του Παγκόσμιου
Ιστού (Διαδίκτυο) καθώς και τον τρόπο δημιουργίας
αρχείων υπερκειμένου.
Περιεχόμενα ενότητας
Ορισμός δικτύου.
Κατηγορίες δικτύων.
Τοπολογίες.
Διασύνδεση κόμβων και δικτύων.
Συσκευές δικτύωσης.
Διαδιεργασιακή επικοινωνία.
Πρωτόκολλα δικτύων – Ethernet.
Διαδίκτυο.
• Διευθυνσιοδότηση.
• Υπηρεσίες.
Υλοποίηση ιστού.
Γλώσσα HTML.

Τι είναι Δίκτυο;
Ένα δίκτυο υπολογιστών (computer network) είναι
ένας συνδυασμός υπολογιστικών συστημάτων
(μηχανών , κόμβων), τα οποία συνδέονται μεταξύ
τους μέσω κάποιου μέσου μετάδοσης (ενσύρματο ή
ασύρματο).
Κατηγορίες Δικτύων (1/4)
Ως προς τη γεωγραφική κάλυψη.

Σχήμα: Κατηγορίες Δικτύων.


Πηγή: Διδάσκων (2015).

Κατηγορίες Δικτύων (2/4)


Ως προς την εκμετάλλευση.

Σχήμα: Κατηγορίες Δικτύων.


Πηγή: Διδάσκων (2015).
Κατηγορίες Δικτύων (3/4)
Ως προς την τοπολογία (τρόπος διασύνδεση κόμβων).

Σχήμα: Δίαυλος. Σχήμα: Δακτύλιος.


Πηγή: Διδάσκων (2015). Πηγή: Διδάσκων (2015).

Κατηγορίες Δικτύων (4/4)


Ως προς την τοπολογία (τρόπος διασύνδεση κόμβων).

Σχήμα: Αστέρας. Σχήμα: Άτακτη τοπολογία.


Πηγή: Διδάσκων (2015). Πηγή: Διδάσκων (2015).
Η τοπολογία διαύλου
• Η τοπολογία διαύλου έγινε δημοφιλής τη
δεκαετία του 1990, όταν υλοποιήθηκε με
βάση ένα σύνολο προτύπων γνωστό ως
Ethernet.
• Το δίκτυο Ethernet παραμένει σήμερα ένα
από τα δημοφιλέστερα συστήματα
δικτύωσης σε λειτουργία.

11

Η τοπολογία αστέρα
• Έχει τις ρίζες πίσω στη δεκαετία του 1970.
• Αποτελεί εξέλιξη του μοντέλου όπου ένας
μεγάλος κεντρικός υπολογιστής εξυπηρετεί
πολλούς χρήστες.
Δίαυλος ή αστέρας; (1/2)
• Η διαφορά ενός διαύλου και ενός αστέρα δεν
είναι πάντα προφανής.
• Οι Η/Υ επικοινωνούν απευθείας ο ένας με τον
άλλο ή έμμεσα με τη βοήθεια μιας ενδιάμεσης
κεντρικής μηχανής;
• Ένα δίκτυο διαύλου δεν είναι απαραίτητο να έχει
την εμφάνιση ενός επιμήκους διαύλου στον
οποίο συνδέονται υπολογιστές με μικρούς
συνδέσμους. Μπορεί να διαθέτει έναν πολύ
μικρό δίαυλο με μεγάλα καλώδια προς κάθε Η/Υ,
ώστε το δίκτυο να μοιάζει περισσότερο με
αστέρα.
13

Δίαυλος ή αστέρας; (2/2)


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

15

Διασύνδεση Κόμβων / Δικτύων

Σχήμα: Διασύνδεση Κόμβων / Δικτύων.


Πηγή: BROOKSHEAR (2008).
Η Γέφυρα
• Μια γέφυρα (bridge) είναι παρόμοια με έναν
επαναλήπτη, αλλά πιο περίπλοκη.
• Συνδέει δύο διαύλους, αλλά δεν μεταβιβάζει
απαραιτήτως όλα τα μηνύματα διαμέσου της σύνδεσης.
Αντίθετα, εξετάζει τη διεύθυνση προορισμού που
συνοδεύει κάθε μήνυμα και προωθεί το μήνυμα μέσω της
σύνδεσης μόνο αν προορίζεται για έναν υπολογιστή ο
οποίος βρίσκεται στην άλλη πλευρά.
• Δύο Η/Υ που βρίσκονται στην ίδια πλευρά μιας γέφυρας
μπορούν να ανταλλάσσουν μηνύματα χωρίς να
επηρεάζουν ή να επηρεάζονται από επικοινωνία που
συμβαίνει στην άλλη πλευρά.
• Μια γέφυρα δημιουργεί συστήματα πιο αποδοτικά από
αυτά που δημιουργεί ένας επαναλήπτης.

17

Ο μεταγωγέας (1/2)
• Ένας μεταγωγέας (switch) είναι μια γέφυρα
με πολλαπλές συνδέσεις που του
επιτρέπουν να συνδέει περισσότερους από
δύο διαύλους.
• Ένας μεταγωγέας δημιουργεί δίκτυα
αποτελούμενα από πολλούς διαύλους, οι
οποίοι εκτείνονται από το μεταγωγέα όπως
οι ακτίνες ενός τροχού.
Γέφυρα ή Μεταγωγέας;

Εικόνα: Γέφυρα ή Μεταγωγέας;


Πηγή: BROOKSHEAR (2009).

19

Ο μεταγωγέας (2/2)
• Ένας μεταγωγέας (switch) είναι μια γέφυρα
με πολλαπλές συνδέσεις που του
επιτρέπουν να συνδέει περισσότερους από
δύο διαύλους.
• Ένας μεταγωγέας δημιουργεί δίκτυα
αποτελούμενα από πολλούς διαύλους, οι
οποίοι εκτείνονται από το μεταγωγέα όπως
οι ακτίνες ενός τροχού.
Δρομολογητές (1/3)

Εικόνα: Δρομολογητές.
Πηγή: BROOKSHEAR (2009).

21

Δρομολογητές (2/3)
• Μερικές φορές τα δίκτυα που πρέπει να συνδεθούν έχουν
ασύμβατα χαρακτηριστικά. Ένα δίκτυου WiFi δεν είναι
άμεσα συμβατά με ένα δίκτυο Ethernet. Αυτά τα δίκτυα
πρέπει να συνδεθούν έτσι ώστε να σχηματίσουν ένα
δίκτυο από άλλα δίκτυα, δηλαδή ένα διαδίκτυο (internet),
μέσα στο οποίο τα αρχικά δίκτυα διατηρούν την
ατομικότητα τους και συνεχίζουν να λειτουργούν
αυτόνομα.
• Ο γενικός όρος διαδίκτυο/internet διαφέρει από τον όρο
Διαδίκτυο/Internet. Το Διαδίκτυο, με κεφαλαίο Δ,
αναφέρεται σε ένα συγκεκριμένο παγκόσμιο δίκτυο.
Υπάρχουν πολλά άλλα παραδείγματα διαδικτύων.
Δρομολογητές (3/3)
• Η σύνδεση μεταξύ δικτύων για το σχηματισμό
ενός διαδικτύου (routers) και αποτελούν ειδικούς
υπολογιστές που χρησιμοποιούνται για την
προώθηση των μηνυμάτων.
• Tο έργο ενός δρομολογητή διαφέρει από αυτό
των επαναληπτών, των γεφυρών και των
μεταγωγέων.
• Οι δρομολογητές επιτρέπουν σε κάθε δίκτυο να
διατηρήσει τα μοναδικά εσωτερικά
χαρακτηριστικά του.

23

Πύλη (gateway)
• Το "σημείο" στο οποίο ένα δίκτυο συνδέεται με ένα
διαδίκτυο
• Χρησιμεύει ως δίοδος μεταξύ του δικτύου και του έξω
κόσμου.
• Σε πολλές περιπτώσεις, η πύλη ενός δικτύου είναι απλώς
ο δρομολογητής μέσω του οποίου το δίκτυο αυτό
επικοινωνεί με το υπόλοιπο διαδίκτυο.
• Σε άλλες περιπτώσεις, ο όρος πύλη μπορεί να
χρησιμοποιηθεί ως αναφορά σε κάτι περισσότερο από
ένα δρομολογητή. Π.χ. οικιακά δίκτυα WiFi που
συνδέονται με το Διαδίκτυο: δύο συσκευές σε μία
μονάδα.
Διασύνδεση Κόμβων / Δικτύων (2/2)

Σχήμα: Ασύρματα.
Πηγή: Διδάσκων (2015).

25

Διαδιεργασιακή επικοινωνία (1/2)


Ο τρόπος με τον οποίο επικοινωνούν μεταξύ τους οι διεργασίες
(δραστηριότητες) που βρίσκονται στις μηχανές ενός δικτύου.
Ι. Μοντέλο πελάτη διακομιστή (Client Server).

Εικόνα: Μοντέλο πελάτη διακομιστή (Client Server).


Πηγή: BROOKSHEAR (2008).

Oι Πελάτες κάνουν αιτήσεις σε διεργασίες του Διακομιστή και αυτός τις


ικανοποιεί πχ. εκτυπωτής που εξυπηρετεί τις ανάγκες ενός γραφείου.
Διαδιεργασιακή επικοινωνία (2/2)
Ο τρόπος με τον οποίο επικοινωνούν μεταξύ τους οι διεργασίες
(δραστηριότητες) που βρίσκονται στις μηχανές ενός δικτύου.
ΙΙ. Ομότιμο Μοντέλο (peer to peer model).

Εικόνα: Ομότιμο Μοντέλο (peer to peer model).


Πηγή: BROOKSHEAR (2008).

Δυο Διεργασίες επικοινωνούν μεταξύ τους ως ισότιμες.


Π.χ. Ανταλλαγή μουσικών κομματιών μέσω Διαδικτύου.

27

Πρωτόκολλα δικτύων
Είναι κανόνες σύμφωνα με τους οποίους διεξάγεται η
διαδιεργασιακή επικοινωνία.
Περιγράφουν:
τον τρόπο με τον οποίο κωδικοποιούνται οι πληροφορίες
μέσα σε ένα μήνυμα.
πως οι πληροφορίες ενσωματώνονται σε πακέτα και
δρομολογούνται.
τον τρόπο με τον οποίο γίνεται ο χειρισμός της μετάδοσης
και της λήψης μηνυμάτων.
Ethernet
• Σύνολο προτύπων για τη δημιουργία τοπικών
δικτύων με τοπολογία διαύλου.
• Πήρε το όνομά του από το ομοαξονικό καλώδιο
το οποίο διασυνδέει τους κόμβους που
ονομαζόταν «αιθέρας».
• Τυποποιήθηκε από τον ΙΕΕΕ ως μέρος της
οικογένειας προτύπων IEEE 802.
• Υπάρχουν πολλές διαθέσιμες εκδόσεις του.

29

Διαδίκτυο / Internet
• Μια συλλογή από περιοχές (domains) κάθε μια από τις
οποίες κάθε μια από τις οποίες αποτελεί ένα δίκτυο ή ένα
σχετικά μικρό διαδίκτυο.
• Κάθε περιοχή είναι ένα αυτόνομο σύστημα το οποίο
μπορεί να διευθυνσιοδοτηθεί όπως επιθυμεί η τοπική
αρχή.
• Κάθε περιοχή μπορεί να προσαρτηθεί στο Διαδίκτυο
μέσω ενός δρομολογητή που ονομάζεται Πύλη (Gateway).
Διευθυνσιοδότηση στο Internet
(1/2)
Σε κάθε μηχανή αντιστοιχίζεται μια μοναδική διεύθυνση που ονομάζεται
IP διεύθυνση. Είναι ένα σχήμα bit 32 ψηφίων.

Εικόνα: Διευθυνσιοδότηση στο Internet.


Πηγή: BROOKSHEAR (2008).

31

Διευθυνσιοδότηση στο Internet


(2/2)
Κάθε περιοχή διαθέτει μια και μοναδική μνημονική διεύθυνση
πχ.
Μια μηχανή του εκδοτικού οίκου Addison-Wesley μπορεί να έχει IP
διεύθυνση την 192.207.177.133.
Τα 3 πρώτα byte (192.207.177) αποτελούν το αναγνωριστικό του δικτύου
που προσδιορίζει την περιοχή του οίκου Addison-Wesley (aw.com).
To 4o byte αποτελεί τη διεύθυνση της συγκεκριμένης μηχανής μέσα στην
περιοχή του εκδοτικού οίκου Addison-Wesley.
Τι είναι η κατάληξη ????
...Είναι μια περιοχή ανώτατου Επιπέδου....
Περιοχή ανώτατου επιπέδου
Αντικατοπτρίζει τον χαρακτηρισμό μιας περιοχής.
• com: Εμπορική περιοχή.
• edu: Περιοχή για εκπαιδευτικά ιδρύματα.
• gov: Περιοχή για κυβερνητικούς σκοπούς.
• org: Περιοχή για μη κερδοσκοπικούς οργανισμούς.

33

Υπηρεσίες Διαδικτύου (1/3)


• Ηλεκτρονική Αλληλογραφία
• Σύστημα μεταφοράς μηνυμάτων μεταξύ των χρηστών του
Διαδικτύου.
• Μια συγκεκριμένη μηχανή (Διακομιστής Αλληλογραφίας –
Mail Server) αναλαμβάνει τον χειρισμό των
δραστηριοτήτων που αφορούν την Ηλεκτρονική
Αλληλογραφία.
Υπηρεσίες Διαδικτύου (2/3)
Πρωτόκολλο μεταφοράς αρχείων.
• Το τυπικό πρωτόκολλο για τη μεταφορά αρχείων από ένα μηχάνημα
σε κάποιο άλλο στο Internet είναι το Πρωτόκολλο Μεταφοράς
Αρχείων (File Transfer Protocoll, ή FTP).

Εικόνα: Υπηρεσίες Διαδικτύου.


Πηγή: BROOKSHEAR (2008).

35

Υπηρεσίες Διαδικτύου (3/3)


Προσπέλαση σε μηχανές από μεγάλη απόσταση.
• Το TELNET (TErminal NETwork) είναι ένα πρόγραμμα πελάτη-
διακομιστή γενικής χρήσης που επιτρέπει απομακρυσμένη σύνδεση
στο Internet.

Εικόνα: Υπηρεσίες Διαδικτύου.


Πηγή: BROOKSHEAR (2008).
Παγκόσμιος Ιστός
• Όταν τα τμήματα διαφόρων υπερμεσικών εγγράφων
συνδέονται με άλλα σχετικά έγγραφα, τα οποία μπορεί
και να βρίσκονται σε διαφορετικούς υπολογιστές, τότε
δημιουργείται ένας Παγκόσμιος διαδικτυακός Ιστός.
• Τα υπερμεσικά έγγραφα ονομάζονται Ιστοσελίδες (Web
pages).
• Μια συλλογή στενά συνδεδεμένων Ιστοσελίδων
ονομάζεται Τοποθεσία Ιστού (Web site).

37

Υλοποίηση Ιστού (1/2)


• Η πρόσβαση στα έγγραφα υπερκειμένου μιας μηχανής γίνεται
μέσω ενός λογισμικού που ονομάζεται Φυλλομετρητής Ιστού
(Web Browser) πχ Internet Explorer, Firefox, Goggle Chrome,
Opera κλπ.
• Η μεταφορά των εγγράφων υπερκειμένου από έναν
διακομιστή σε έναν πελάτη γίνεται μέσω του Πρωτόκολλου
Μεταφοράς Υπερκειμένου (Hypertext Transfer Protocol, ή
HTTP).
• O εντοπισμός και η ανάκτηση ενός εγγράφου υπερκειμένου
γίνεται μέσω ενός ειδικού τύπου διευθυνσιοδότησης που
ονομάζεται Ενιαίος Εντοπιστής Πόρων ή URL.
Υλοποίηση Ιστού (2/2)

39

HTML
• Ένα έγγραφο υπερκειμένου μοιάζει με τα κανονικά
έγγραφα με την διαφορά ότι περιέχει επιπλέον ειδικά
σύμβολα, που ονομάζονται ετικέτες. Οι ετικέτες
περιγράφουν πως θα εμφανιστεί το έγγραφο στην οθόνη.
• Στον παγκόσμιο ιστό χρησιμοποιείται η γλώσσα σήμανσης
ή μορφοποίησης HTML.
Μια απλή Ιστοσελίδα (1/2)
• Η σελίδα κωδικοποιημένη σε HTML.
<html>
<head>
<title>σελίδα επίδειξης </title>
</head>
<body>
<h1>H ιστοσελίδα μου</h1>
<p>Πατήστε εδώ για άλλη σελίδα.</p>
</body>
</html>

41

Μια απλή Ιστοσελίδα (2/2)


• Η σελίδα όπως θα εμφανιζόταν στην οθόνη του
υπολογιστή.

Εικόνα: Η ιστοσελίδα μου.


Πηγή: Διδάσκων (2015).
Ενότητα 5: Δικτύωση και Διαδίκτυο II

Σκοποί ενότητας
Σκοπός αυτής της ενότητας είναι ο φοιτητής:
• Να κατανοήσει την κατασκευή και τη λειτουργία των
δικτύων, τις εφαρμογές των δικτύων και τα ζητήματα
ασφάλειας.
• Να κατανοήσει τον τρόπο λειτουργίας του Παγκόσμιου
Ιστού (Διαδίκτυο).
Περιεχόμενα ενότητας
• Έλεγχος προνομίων μετάδοσης.
• Πρωτόκολλα δικτύων – Ethernet.
• Επίπεδα λογισμικού του Διαδικτύου (TCP/IP).
• Απειλές και Ασφάλεια διαδικτύου.

Έλεγχος προνομίων μετάδοσης


(1/4)
Συντονίζουν τα δικαιώματα μετάδοσης μηνυμάτων.
Ι. Πρωτόκολλο Δακτυλίου με σκυτάλη (token ring protocol).
Χρησιμοποιείται σε συνδυασμό με την τοπολογία Δακτυλίου.

Εικόνα: Έλεγχος προνομίων μετάδοσης.


Πηγή: BROOKSHEAR (2008).
Έλεγχος προνομίων μετάδοσης
(2/4)
Συντονίζουν τα δικαιώματα μετάδοσης μηνυμάτων.
Ι. Πρωτόκολλο δακτυλίου με σκυτάλη (token ring protocol).
Για να αποκτήσει μια μηχανή το προνόμιο μετάδοσης μηνυμάτων
περιμένει να έρθει στην κατοχή της ένα μοναδικό σχήμα bit που
ονομάζεται Σκυτάλη (token). Στην περίπτωση αυτή για όσο χρόνο έχει
την σκυτάλη μεταβιβάζει τα μηνύματα που θέλει στο δίκτυο.
Όταν φτάσει ένα μήνυμα στην μηχανή προορισμού, αυτή κρατάει ένα
αντίγραφο και προωθεί το μήνυμα στην επόμενη μηχανή, μέχρι να
φτάσει πάλι στην μηχανή προέλευσης, η οποία και το αποσύρει από τον
δακτύλιο.

Έλεγχος προνομίων μετάδοσης


(3/4)
Συντονίζουν τα δικαιώματα μετάδοσης μηνυμάτων.
ΙΙ. Πρωτόκολλο CSMA/CD (Carrier Sense Multiple Access with Collision
Detection).
Χρησιμοποιείται σε συνδυασμό με την τοπολογία Διαύλου.

Εικόνα: Έλεγχος προνομίων μετάδοσης.


Πηγή: BROOKSHEAR (2008).
Κάθε μήνυμα που μεταδίδεται από οποιαδήποτε μηχανή εκπέμπεται σε
όλες τις μηχανές του διαύλου.
Έλεγχος προνομίων μετάδοσης
(4/4)
Συντονίζουν τα δικαιώματα μετάδοσης μηνυμάτων.
ΙΙ. Πρωτόκολλο CSMA/CD (Carrier Sense Multiple Access
with Collision Detection).
Για να μεταδώσει μια μηχανή ελέγχει το δίαυλο και αν τον
βρει ελεύθερο τότε μεταδίδει. Υπάρχει περίπτωση δύο ή
περισσότερες μηχανές να βρουν ταυτόχρονα το δίαυλο
ελεύθερο, οπότε αρχίζουν ταυτόχρονα να μεταδίδουν.
Αυτό προκαλεί σύγκρουση, οπότε σταματούν όλοι για τυχαίο
χρονικό διάστημα και επαναλαμβάνουν την μετάδοση.

Επίπεδα λογισμικού του


Διαδικτύου

Εικόνα: Επίπεδα λογισμικού του Διαδικτύου.


Πηγή: Διδάσκων (2015).
Επίπεδο Εφαρμογής
• Φιλοξενεί τα προγράμματα μέσω των οποίων
επικοινωνούν και διεκπεραιώνουν οι χρήστες του
Διαδικτύου.
• Χρησιμοποιεί το επίπεδο μεταφοράς για να
στείλει και να λάβει μηνύματα από το Διαδίκτυο.

11

Επίπεδο Μεταφοράς
Αποδέχεται μηνύματα από το επίπεδο Εφαρμογής και εξασφαλίζει ότι
είναι κατάλληλα για τη μετάδοσή τους μέσω Διαδικτύου. Αυτό γίνεται
μέσω της διάσπασης των μηνυμάτων σε μικρότερα τμήματα που
ονομάζονται Πακέτα.
Προσθέτει στα πακέτα σειριακούς αριθμούς έτσι ώστε να μπορούν να
ανασυναρμολογηθούν στον προορισμό τους
Περιέχει τα πρωτόκολλα:
• TCP: αξιόπιστη μεταφορά πακέτων αλλά πιο αργό.
• UDP: λιγότερο αξιόπιστο άλλα πολύ πιο γρήγορο.
Επίπεδο Δικτύου
• Είναι υπεύθυνο για να εξασφαλίζει ότι τα πακέτα
που λαμβάνει προωθούνται από το ένα δίκτυο
του Διαδικτύου στο άλλο μέχρι να φτάσουν στον
τελικό προορισμό τους.
• Γνωρίζει την τοπολογία του Διαδικτύου μέσω της
οποίας προωθεί τα πακέτα.
• Προσδιορίζει τις ενδιάμεσες διευθύνσεις μέσω
των οποίων θα περάσουν τα πακέτα.

13

Επίπεδο Συνδέσμου
Μεταφέρει τα πακέτα μεταξύ των ενδιάμεσων διευθύνσεων
όπως αυτές προσδιορίζονται από το επίπεδο δικτύου.
Ασχολείται με τον έλεγχο των προνομίων της μετάδοσης.
• Σκυτάλη.
• CSMA/CD.
Ασφάλεια (1)
• Προστασία δεδομένων από μη εξουσιοδοτημένη
πρόσβαση με την κρυπτογράφηση τους.
• Δύο προσεγγίσεις για την κρυπτογράφηση δεδομένων.
• Κρυπτογραφία κρυφού κλειδιού.
• Κρυπτογραφία δημόσιου κλειδιού.

15

Ιός (virus)
• Λογισμικό το οποίο μολύνει έναν υπολογιστή
προσθέτοντας τον εαυτό του σε προγράμματα που
βρίσκονται ήδη στη μηχανή.
• Κάθε φορά που εκτελείται το "πρόγραμμα-ξενιστής",
εκτελείται και ο ιός.
• Προσπαθούν να μεταφερθούν σε άλλα προγράμματα
μέσα στον υπολογιστή.
• Ορισμένοι ιοί προβαίνουν σε καταστροφικές ενέργειες
όπως η υποβάθμιση τμημάτων του λειτουργικού
συστήματος, η διαγραφή μεγάλων μπλοκ από μέσα
αποθήκευσης, ή κάποια άλλου είδους αλλοίωση των
δεδομένων και των υπόλοιπων προγραμμάτων.
Σκουλήκια (worms)
• Είναι αυτόνομα προγράμματα τα οποία μεταφέρουν τον
εαυτό τους μέσω κάποιου δικτύου, βρίσκοντας "στέγη" σε
υπολογιστές και προωθώντας αντίγραφα του εαυτού τους
σε άλλους υπολογιστές.
• Όπως στους ιούς, ένα σκουλήκι μπορεί να σχεδιαστεί
ώστε είτε απλώς να αναπαράγεται είτε να εκτελεί πιο
ακραίους βανδαλισμούς.
• Χαρακτηριστική ιδιότητα των σκουληκιών είναι η
δημιουργία τεράστιου πλήθους αντιγράφων του εαυτού
τους, κάτι που υποβαθμίζει την απόδοση των κανονικών
εφαρμογών και μπορεί τελικά να υπερφορτώσει ένα
ολόκληρο δίκτυο.

17

Δούρειος ίππος (Trojan horse) (1)


• Είναι πρόγραμμα το οποίο παρεισφρέει στο
υπολογιστικό σύστημα μεταμφιεσμένο ως κάποια
επιθυμητή εφαρμογή, όπως ένα παιχνίδι ή
κάποιο χρήσιμο πακέτο βοηθητικού λογισμικού
(utility), η οποία εγκαθίσταται πρόθυμα από το
θύμα.
• Από τη στιγμή που θα διεισδύσει στον
υπολογιστή εκτελεί πρόσθετες δραστηριότητες οι
οποίες μπορεί να έχουν επιβλαβή αποτελέσματα.
Δούρειος ίππος (Trojan horse) (2)
• Μερικές φορές αυτές οι πρόσθετες δραστηριότητες
ξεκινούν άμεσα. Σε άλλες περιπτώσεις, ο Δούρειος ίππος
μπορεί να περιμένει αδρανής μέχρι να ενεργοποιηθεί από
ένα συγκεκριμένο συμβάν, όπως η έλευση μιας
προκαθορισμένης ημερομηνίας.
• Οι Δούρειοι ίπποι συχνά καταφτάνουν με τη μορφή
συνημμένων σε μηνύματα ηλεκτρονικού ταχυδρομείου τα
οποία προκαλούν το ενδιαφέρον του χρήστη. Όταν το
συνημμένο ανοίξει (δηλαδή, όταν ο παραλήπτης ζητήσει
να το δει), ενεργοποιείται η κακόβουλη συμπεριφορά του
Δούρειου ίππου. Συνεπώς, συνημμένα ηλεκτρονικού
ταχυδρομείου από άγνωστες πηγές δεν πρέπει να
ανοίγονται ποτέ.
19

Λογισμικό υποκλοπής (spyware)


• Ονομάζεται και λογισμικό ανίχνευσης (sniffing software).
• Συλλέγει πληροφορίες σχετικά με δραστηριότητες στον
υπολογιστή όπου βρίσκεται.
• Μερικές εταιρείες χρησιμοποιούν λογισμικό υποκλοπής
ως μέσο δημιουργίας προφίλ πελατών.
• Σε άλλες περιπτώσεις χρησιμοποιείται για καταφανώς
κακόβουλους σκοπούς, όπως η καταγραφή των
χαρακτήρων που πληκτρολογούνται σε κάποιον
υπολογιστή προς αναζήτηση κωδικών πρόσβασης ή
αριθμών πιστωτικών καρτών.
Ψάρεμα (phishing)
• Κάποιος αποκτά τις πληροφορίες που θέλει ζητώντας τις
απλώς με ρητό τρόπο.
• Ο αγγλικός όρος phishing αποτελεί ένα παιχνίδι με τη λέξη
fishing (ψάρεμα), επειδή η μέθοδος που εφαρμόζεται
είναι ακριβώς αυτή: ρίχνεις πολλά "δολώματα" και
περιμένεις να "τσιμπήσει" κάποιος.
• Το "ψάρεμα" γίνεται συχνά μέσω ηλεκτρονικού
ταχυδρομείου. Ο δράστης στέλνει μηνύματα τα οποία
φαίνεται ότι προέρχονται από κάποιον
χρηματοοικονομικό οργανισμό ή μια δημόσια υπηρεσία.
Το μήνυμα ζητάει από το πιθανό θύμα πληροφορίες οι
οποίες υποτίθεται ότι χρειάζονται για κάποιο νόμιμο
σκοπό. Ωστόσο, οι πληροφορίες που λαμβάνονται
χρησιμοποιούνται από το δράστη με κακόβουλο τρόπο.

21

Επιθέσεις από απόσταση (1)


• Επίθεση άρνησης υπηρεσιών (denial of service,
DoS), η οποία υπερφορτώνει τον υπολογιστή με
μηνύματα.
• Έχουν πραγματοποιηθεί εναντίον μεγάλων
εμπορικών διακομιστών Ιστού στο Διαδίκτυο.
Σκοπός να παρεμποδίσουν τη λειτουργία
εταιρειών και κάποιες από αυτές τις επιθέσεις
όντως κατάφεραν να διακόψουν την εμπορική
δραστηριότητα της εταιρείας που είχαν ως στόχο.
Επιθέσεις από απόσταση (2)
• Απαιτεί την παραγωγή μεγάλου αριθμού μηνυμάτων
μέσα σε μικρό χρονικό διάστημα. Για να το επιτύχει αυτό
ένας επιτιθέμενος, συνήθως τοποθετεί λογισμικό σε
μεγάλο πλήθος ανυποψίαστων υπολογιστών, το οποίο
δημιουργεί μηνύματα μόλις λάβει ένα σήμα. Κατόπιν,
μόλις δοθεί το σήμα, όλοι αυτοί οι υπολογιστές
πλημμυρίζουν το στόχο με μηνύματα.
• Οι χρήστες υπολογιστών πρέπει να αποσυνδέουν τις
μηχανές τους από το Διαδίκτυο όταν δεν τις
χρησιμοποιούν. Έχει υπολογιστεί ότι μέσα σε 20 λεπτά
από τη στιγμή που θα συνδεθεί ένα PC στο Διαδίκτυο,
τουλάχιστον ένας εισβολέας θα προσπαθήσει να
εκμεταλλευτεί την παρουσία του.
• Ένα μη προστατευμένο PC είναι απειλή για την
ακεραιότητα του Διαδικτύου.

23

Ανεπιθύμητη ενοχλητική ηλεκτρονική


αλληλογραφία (spam)
• Ο όγκος της ενοχλητικής αλληλογραφίας
σπανίως είναι ικανός να κατακλύσει κάποιο
υπολογιστικό σύστημα. Το αποτέλεσμα
είναι να "κατακλυστεί" το πρόσωπο που
λαμβάνει τα μηνύματα.
• Αποτελεί ένα ευρέως διαδεδομένο μέσο
για "ψάρεμα" και δούρειους ίππους που
θα μπορούσαν να διαδώσουν ιούς και άλλο
καταστροφικό λογισμικό.
Ασφάλεια (2)
• Προστασία δεδομένων από μη εξουσιοδοτημένη
πρόσβαση με την κρυπτογράφηση τους.
• Δύο προσεγγίσεις για την κρυπτογράφηση
δεδομένων.
 Κρυπτογραφία κρυφού κλειδιού.
 Κρυπτογραφία δημόσιου κλειδιού.

25

Αντιμετώπιση
• Χρησιμοποιούμε ειδικό λογισμικό
αντιμετώπισης ιών (antivirus).
• Τείχος προστασίας (firewall).
Φιλτράρει την κυκλοφορία που εισέρχεται ή διέρχεται από
μία μηχανή.
Ενότητα 6: Τεχνολογία Λογισμικού-Software Engineering

Σκοποί ενότητας
• Εξερεύνηση των προβλημάτων που
παρουσιάζονται κατά τη διάρκεια της ανάπτυξης
μεγάλων, σύνθετων συστημάτων λογισμικού.
• Εισαγωγή στις αρχές που κατευθύνουν τη
διαδικασία ανάπτυξης λογισμικού και οδηγούν σε
αποδοτικά, αξιόπιστα προϊόντα λογισμικού.
Περιεχόμενα ενότητας (1/2)
Η επιστήμη της Τεχνολογίας Λογισμικού.
Ο κύκλος ζωής του λογισμικού.
• Ο κύκλος ως σύνολο.
• Η παραδοσιακή φάση ανάπτυξης.
Μεθοδολογίες τεχνολογίας λογισμικού.
Τμηματικότητα.
• Τμηματική Υλοποίηση.
• Σύζευξη.
• Συνοχή.
• Συστατικά.

Περιεχόμενα ενότητας (2/2)


Εργαλεία ανάπτυξης.
• Παλιοί φίλοι.
• Ενοποιημένη γλώσσα μοντελοποίησης.
• Πρότυπα σχεδίασης.
Έλεγχος.
Τεκμηρίωση.
Ιδιοκτησία και ευθύνη λογισμικού.
Η επιστήμη της Τεχνολογίας
Λογισμικού (1/3)
• Σχεδιασμός, ανάπτυξη και συντήρηση μεγάλων
συστημάτων λογισμικού.
• Διαφέρει από τα άλλα επιστημονικά και τεχνικά
πεδία.
• Προκατασκευασμένα Τμήματα.
• Σύστημα μέτρησης.
• Πρακτικοί εναντίον θεωρητικών.

Η επιστήμη της Τεχνολογίας


Λογισμικού (2/3)
• Οι οικονομίες όλων των αναπτυγμένων χωρών
εξαρτώνται από το λογισμικό.
• Όλο και περισσότερα συστήματα είναι
ελεγχόμενα από λογισμικό.
• Η τεχνολογία λογισμικού ασχολείται με θεωρίες,
μεθόδους και εργαλεία για «επαγγελματική»
ανάπτυξη λογισμικού (ανάπτυξη, διαχείριση και
εξέλιξη συστημάτων).
Η επιστήμη της Τεχνολογίας
Λογισμικού (3/3)
• Τα προϊόντα λογισμικού αποτελούνται από
προγράμματα και εγχειρίδια. Τα κυριότερα
χαρακτηριστικά των προϊόντων είναι δυνατότητα
συντήρησης, εξάρτηση (συνδεσιμότητα) και
φιλικότητα χρήσης.
• Η διαδικασία λογισμικού αποτελείται από τις
δραστηριότητες που υπάρχουν στην ανάπτυξη
λογισμικού.

Υπολογιστικάεργαλείαυποβοήθησης
τεχνολογίας λογισμικού
Computer Aided Software Engineering (CASE) tools
και αφορούν:
•Σχεδιασμός έργου.
•Διαχείριση έργου.
•Τεκμηρίωση.
•Πρωτότυπα και προσομοίωση.
•Σχεδίαση διεπαφής.
•Προγραμματισμός.
Ο κύκλος ζωής του λογισμικού

Σχήμα: Ο κύκλος ζωής του λογισμικού.


Πηγή: BROOKSHEAR (2004) .

11

Η παραδοσιακή φάση ανάπτυξης

Σχήμα: Η παραδοσιακή φάση ανάπτυξης.


Πηγή: BROOKSHEAR (2004) .
Ανάλυση
Απαιτήσεις.
• Προσανατολισμένες στην εφαρμογή.
Προδιαγραφές
• Τεχνικά προσανατολισμένες.
Έγγραφο απαιτήσεων λογισμικού.
Συνήθως οι απαιτήσεις δεν είναι ομαλές - δεν είναι πλήρεις.
Η διάκριση μεταξύ απαιτήσεων - σχεδιασμού και παραγωγής
είναι πολύ θολή.
Δεν υπάρχει φυσική αναπαραγωγή του συστήματος για
έλεγχο.

13

Σχεδιασμός
• Μεθοδολογίες και εργαλεία (στη συνέχεια).
• Διεπαφή χρήστη (ψυχολογία και εργονομία).
Υλοποίηση
• Κατασκευή συστήματος από σχεδιασμό.
• Γράψιμο προγραμμάτων.
• Δημιουργία αρχείων δεδομένων.
• Ανάπτυξη βάσεων δεδομένων.
• Ο ρόλος του αναλυτή λογισμικού απέναντι στον
προγραμματιστή.

15

Έλεγχος
• Έλεγχος εγκυρότητας.
• Επιβεβαίωση ότι το σύστημα ακολουθεί τις
προδιαγραφές.
• Έλεγχος κακοτεχνιών.
• Εύρεση ελαττωμάτων (bugs).
Μεθοδολογίες τεχνολογίας
λογισμικού (1/2)
Μοντέλο καταρράκτη.
• Διαχωρισμός φάσεων απαιτήσεων και ανάπτυξης.
Εξελικτικό μοντέλο.
• Η εξειδίκευση και η ανάπτυξη γίνονται μαζί.
• Πρωτότυπα (Εξελικτικά έναντι Μιας χρήσεως-
Throwaway).
Ανάπτυξη ανοιχτού κώδικα.

17

Μεθοδολογίες τεχνολογίας
λογισμικού (2/2)
• Extreme Programming.
• Formal transformation.
• Ένα μαθηματικό συστηματικό μοντέλο
μετατρέπεται σε υλοποίηση.
• Reuse-based development.
• Το σύστημα αναπτύσσεται από υπάρχοντα
στοιχεία.
Μοντέλο καταρράκτη (1/2)

Σχήμα: Μοντέλο καταρράκτη.


Πηγή: Διδάσκων (2015).

19

Μοντέλο καταρράκτη (2/2)


• Εξειδίκευση - εντοπισμός των απαιτήσεων και
περιορισμών του συστήματος.
• Σχεδιασμός - παραγωγή μοντέλου σε χαρτί.
• Παραγωγή - ανάπτυξη του συστήματος.
• Έλεγχος αν το σύστημα ικανοποιεί την περιγραφή των
απαιτήσεων.
• Εγκατάσταση του συστήματος στον πελάτη και έλεγχος
λειτουργικότητας.
• Συντήρηση - επισκευή προβλημάτων όταν αυτά
προκύπτουν.
Κατανομή Χρόνου σε ένα τυπικό
έργο

Σχήμα: Κατανομή Χρόνου σε ένα τυπικό έργο.


Πηγή:http://java.uom.gr/OOD/slides/Intro_Software_Engineering.ppt
(Ανακτήθηκε 18 Ιουνίου, 2015).
21

Τμηματικότητα (modularity)
Αρθρωτός προγραμματισμός
Διαδικασίες – Προστακτικές γλώσσες.
• Σχεδιαγράμματα δομής.
Αντικείμενα – Αντικειμενοστραφείς γλώσσες.
• Διαγράμματα συνεργασίας.
Δομικά στοιχεία (components).
• Component architecture.
Εικόνα: Σχεδιάγραμμα απλής
δομής

Σχήμα: Σχεδιάγραμμα απλής δομής.


Πηγή: BROOKSHEAR (2004) .

23

Η δομή της PlayerClass και τα


στιγμιότυπα

Σχήμα: Η δομή της PlayerClass και τα στιγμιότυπα.


Πηγή: BROOKSHEAR (2004) .
Αλληλεπίδραση μεταξύαντικειμένων που
προκαλείται από τοσερβίς του PlayerA

Σχήμα: Αλληλεπίδραση μεταξύ αντικειμένων που


προκαλείται από το σερβίς του PlayerA.
Πηγή: BROOKSHEAR (2004) .

25

Σχεδιάγραμμα δομής με
σύζευξη δεδομένων

Σχήμα: Σχεδιάγραμμα δομής με σύζευξη


δεδομένων.
Πηγή: BROOKSHEAR (2004) .
Σύζευξη εναντίον Συνοχής
Σύζευξη.
• Σύζευξη ελέγχου.
• Σύζευξη δεδομένων.
Συνοχή.
• Λογική συνοχή.
• Λειτουργική συνοχή.

27

Λογική και λειτουργική συνοχή


μέσα σε αντικείμενο

Σχήμα: Λογική και λειτουργική συνοχή μέσα σε


αντικείμενο.
Πηγή: BROOKSHEAR (2004) .
Εργαλεία ανάπτυξης
Διάγραμμα ροής.
Διάγραμμα Οντοτήτων-Σχέσεων.
• Σχέση ένα-προς-ένα.
• Σχέση ένα-προς-πολλά.
• Σχέση πολλά-προς-πολλά.
Λεξικό δεδομένων.

29

Σχέση ένα-προς-ένα, ένα-προς-


πολλά και πολλά-προς-πολλά

Σχήμα: Σχέση ένα-προς-ένα, ένα-προς-πολλά και


πολλά-προς-πολλά.
Πηγή: BROOKSHEAR (2004) .
Απλό διάγραμμα ροής

Σχήμα: Απλό διάγραμμα ροής.


Πηγή: BROOKSHEAR (2004) .

31

Διάγραμμα απλής κλάσης

Σχήμα: Διάγραμμα απλής κλάσης.


Πηγή: BROOKSHEAR (2004) .
Ενοποιημένη γλώσσα
μοντελοποίησης
• Διαγράμματα Use Case .
• Use cases.
• Actors.
• Διαγράμματα κλάσεων.

33

Διάγραμμα απλού use case

Σχήμα: Διάγραμμα απλού use case.


Πηγή: BROOKSHEAR (2004) .
Διάγραμμα κλάσης για απεικόνιση
γενικεύσεων

Σχήμα: Διάγραμμα κλάσης για απεικόνιση


γενικεύσεων.
Πηγή: BROOKSHEAR (2004) .

35

Διάγραμμα ακολουθίας που


απεικονίζει κοινή βολή

Σχήμα: Διάγραμμα ακολουθίας που απεικονίζει


κοινή βολή.
Πηγή: BROOKSHEAR (2004) .
Πρότυπα σχεδίασης
• Καλά σχεδιασμένα πλαίσια (templates) για
επίλυση επαναλαμβανόμενων προβλημάτων
• Παραδείγματα:
• Προσαρμοστικό πρότυπο: Προσαρμογή μιας διεπαφής
τμήματος (module’s interface) στις τρέχουσες ανάγκες.
• Συνδυαστικό πρότυπο: Έλεγχος της πολυπλοκότητας
που εμπλέκεται όταν απαιτούνται πολλοί συνδυασμοί
των ίδιων δραστηριοτήτων.

37

Στρατηγικές ελέγχου λογισμικού


Glass-box testing.
• Αρχή του Pareto (80/20).
• Έλεγχος διαδρομής βάσης – όλες οι εντολές.
Black-box testing.
• Ανάλυση οριακών τιμών.
• Πλεονασματικός έλεγχος - Redundancy testing.
• Beta testing.
Στρατηγικές ελέγχου λογισμικού
(συνέχεια)
Δομημένα περάσματα.
• Θεατρικό πείραμα.
• Κάρτες κλάσης, αρμοδιότητας,
συνεργασίας.

39

Τεκμηρίωση (Documentation)
Τεκμηρίωση χρήστη.
• Βιβλία για όλους τους πελάτες.
• On-line βοήθεια.
Τεκμηρίωση συστήματος.
• Πηγαίος κώδικας.
• Έγγραφα σχεδιασμού.
Τεχνική τεκμηρίωση.
• Για εγκατάσταση, προσαρμογή, ανανέωση, κλπ.
Τεκμηρίωση
Παραγόμενα Έγγραφα
Δραστηριότητα. Παραγόμενα Έγγραφα.
Ανάλυση Απαιτήσεων. Feasibility Study.
Καθορισμός. Απαιτήσεων. Requirements
Specification.
Σχεδίαση Συστήματος. Functional Specification.
Κωδικοποίηση. Design Specification.
Έλεγχος Μονάδων. Program code.
Έλεγχος Τμημάτων. Unit test report.
Έλεγχος Συστήματος. Module test report.
System test report.
Παράδοση Προϊόντος. User Guide – Refer.
Manual.

41

Ιδιοκτησία λογισμικού (1/3)


• Copyright.
• Επιτρέπει την κυκλοφορία ενός προϊόντος
διατηρώντας την πνευματική ιδιοκτησία
• Ισχύει για όλα τα έργα:
• Προδιαγραφές.
• Πηγαίος κώδικας.
• Τελικό αποτέλεσμα.
Ιδιοκτησία λογισμικού (2/3)
• Άδεια χρήσης λογισμικού.
• Νομική συμφωνία που χορηγεί στο χρήστη
συγκεκριμένες άδειες χωρίς να του
μεταβιβάζει την κυριότητα.
• Πατέντες.
• Πρέπει να αποδείξει ότι είναι νέο, μπορεί να
χρησιμοποιηθεί και δεν είναι πρόδηλο σε άλλα
με παρόμοια υπόβαθρα.
• Διαδικασία ακριβή και χρονοβόρα.

43

Ιδιοκτησία λογισμικού (3/3)


• Οι μηχανικοί λογισμικού δεν πρέπει να
ασχολούνται μόνο με τεχνικά θέματα. Η
ευθύνη τους είναι μεγαλύτερη και αφορά
θέματα ηθικής, κοινωνικά και επαγγελματικά.
• Τα παραπάνω δεν είναι ξεκάθαρα όταν:
• Αναπτύσσονται στρατιωτικά συστήματα.
• Whistleblowing.
Evolutionary development

Σχήμα: Evolutionary development.


Πηγή: http://www.gemwriters.com/wp-
content/uploads/2014/01/Evolutionary-Process-Model.jpg (Ανακτήθηκε 18
Ιουνίου, 2015).

45

Spiral model για την Διαδικασία


Λογισμικού

Σχήμα: Spiral model για την Διαδικασία Λογισμικού.


Πηγή: http://slideplayer.gr/slide/3184447/
(διαφάνεια 24) (Ανακτήθηκε 18 Ιουνίου, 2015).
Ενότητα 7: Βάσεις Δεδομένων (Θεωρία)

Σκοποί ενότητας
• Εισαγωγή στην έννοια των βάσεων δεδομένων
και της χρήσης τους ως αφηρημένα εργαλεία για
την αναζήτηση και εξαγωγή πληροφοριών με
διαισθητικό τρόπο.
Περιεχόμενα ενότητας
Ορισμοί - Βασικές Αρχές.
Το Σχεσιακό Μοντέλο.
• Αντικειμενοστρεφείς Βάσεις Δεδομένων.
• Διατήρηση Ακεραιότητας Βάσης Δεδομένων.
• Παραδοσιακές δομές αρχείων.
Εξόρυξη δεδομένων.
Κοινωνικές επιπτώσεις.

Βάση Δεδομένων – Ορισμός


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

Βάση Δεδομένων – Ορισμός 3


• Δεδομένα είναι οι τιμές που καταχωρούμε
σε μια βάση δεδομένων. Μερικοί από τους
συνηθισμένους τύπους δεδομένων που
μπορούμε να καταχωρούμε στις βάσεις
δεδομένων είναι: Κείμενο ~ Γραφικά ~
Αριθμοί ~ Ώρες ~ Εικόνες ~ Γραφήματα ~
Ημερομηνίες.
Βάση Δεδομένων – Ορισμός 4
• Πληροφορίες είναι τα δεδομένα που
ανακτούμε από μια βάση δεδομένων, τα
οποία είναι οργανωμένα με τέτοιον τρόπο
ώστε να έχουν νόημα για το άτομο που τα
εξετάζει.
• Άρα σε μια βάση δεδομένων
αποθηκεύουμε δεδομένα και ανακτούμε
πληροφορίες.

Οργάνωση αρχείων σε σχέση με


οργάνωση βάσης δεδομένων.

Σχήμα: Οργάνωση αρχείων σε σχέση με οργάνωση βάσης δεδομένων.


Πηγή: BROOKSHEAR (2004).
Τα νοητικά επίπεδα υλοποίησης
μιας βάσης δεδομένων

Σχήμα: Τα νοητικά επίπεδα της υλοποίησης μιας βάσης δεδομένων.


Πηγή: BROOKSHEAR (2004).

11

Ο ρόλος των σχημάτων


• Σχήμα: Μία περιγραφή της δομής μιας
ολόκληρης βάσης δεδομένων που
χρησιμοποιείται από το λογισμικό της ΒΔ για τη
διατήρηση της ΒΔ.
• Subschema: Μια περιγραφή εκείνου μόνο του
τμήματος της βάσης δεδομένων που είναι
σχετικές με τις ανάγκες ενός συγκεκριμένου
χρήστη. Χρησιμοποιείται για προστασία
ευαίσθητων δεδομένων από μη εξουσιοδοτημένο
προσωπικό.
Σύστημα Διαχείρισης Βάσεων
Δεδομένων
• Σύστημα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ): Ένα
επίπεδο λογισμικού που χειρίζεται μια βάση δεδομένων
απαντώντας στα αιτήματα των εφαρμογών.
• Κατανεμημένη βάση δεδομένων: Μια βάση δεδομένων
που αποθηκεύεται σε πολλούς υπολογιστές.
• Η ΣΔΒΔ αποκρύπτει αυτή την οργανωτική λεπτομέρεια
από τους χρήστες της.
• Ανεξαρτησία δεδομένων : Η ικανότητα να αλλάζει η
οργάνωση μιας βάσης δεδομένων χωρίς να αλλάζει το
λογισμικό της εφαρμογής που την χρησιμοποιεί.

13

Μοντέλα βάσεων δεδομένων


• Μοντέλο βάσης δεδομένων: Μια νοητική
εικόνα μιας βάσης δεδομένων.
• Σχεσιακό μοντέλο βάσης δεδομένων.
• Αντικειμενοστραφές μοντέλο βάσης
δεδομένων.
Το Σχεσιακό Μοντέλο
Σχέση - Relation: Ένας ορθογώνιος πίνακας.
• Χαρακτηριστικό - Attribute: Μια στήλη στον
πίνακα.
• Πλειάδα - Tuple: Μια γραμμή στον πίνακα.

15

Μια σχέση που περιέχει


πληροφορίες υπαλλήλων

Σχήμα: Μια σχέση που περιέχει πληροφορίες υπαλλήλων.


Πηγή: BROOKSHEAR (2004).
Σχεσιακός σχεδιασμός
• Αποφυγή πολλαπλών εννοιών μέσα σε μια
σχέση
• Μπορεί να οδηγήσει σε πλεονάζοντα
δεδομένα.
• Η διαγραφή μιας πλειάδας μπορεί να
διαγράψει αναγκαίες, αλλά άσχετες
πληροφορίες.

17

Βελτιώνοντας το σχεσιακό
σχεδιασμό
• Διαίρεση - Decomposition:
Ο διαχωρισμός των στηλών μιας σχέσης σε
δύο ή περισσότερες σχέσεις, με
επανάληψη των στηλών για να
διατηρηθούν οι σχέσεις.
• Μη-απωλεστική διαίρεση: Μια «σωστή»
διαίρεση που δεν χάνει καμία πληροφορία.
Μια σχέση που περιέχει
πλεονασμό

Σχήμα: Μια σχέση που περιέχει πλεονασμό.


Πηγή: BROOKSHEAR (2004).

19

Βάση δεδομένων υπαλλήλων που


αποτελείται από τρεις σχέσεις

Σχήμα: Βάση δεδομένων υπαλλήλων που αποτελείται από τρεις σχέσεις.


Πηγή: BROOKSHEAR (2004).
Εύρεση των υπηρεσιών στις οποίες
έχει εργαστεί ο υπάλληλος 23Y34

Σχήμα: Εύρεση των υπηρεσιών στις οποίες έχει εργαστεί ο υπάλληλος


23Y34.
Πηγή: BROOKSHEAR (2004).

21

Μια σχέση και μια προτεινόμενη


διαίρεση

Σχήμα: Μια σχέση και μια προτεινόμενη διαίρεση.


Πηγή: BROOKSHEAR (2004).
Κανόνες σχεδιασμού σχεσιακής
βάσης δεδομένων (1/2)
• Κάθε οντότητα πρέπει να παριστάνεται ως
ένας ξεχωριστός πίνακας.
• Κάθε στήλη του πίνακα αντιστοιχεί σε μια
ιδιότητα της οντότητας.
• Κάθε γραμμή πρέπει να είναι μοναδική.

23

Κανόνες σχεδιασμού σχεσιακής


βάσης δεδομένων (2/2)
• Κάθε στήλη έχει μια δική της μοναδική ονομασία.
• Η στήλη που αποτελεί το πρωτεύον κλειδί μιας
οντότητας, δεν πρέπει να είναι ποτέ κενή.
• Αποκλείεται να υπάρχουν δύο ή και περισσότερες
γραμμές που να περιέχουν την ίδια τιμή στο
πρωτεύον κλειδί.
Σχεσιακές λειτουργίες
• Select: επιλογή γραμμών (εγγραφών).
• Project: επιλογή στηλών.
• Join: Συγκεντρώνει πληροφορίες από δύο ή
περισσότερες σχέσεις.

25

Η λειτουργία SELECT

Σχήμα: Η λειτουργία SELECT.


Πηγή: BROOKSHEAR (2004).
Η λειτουργία PROJECT

Σχήμα: Η λειτουργία PROJECT.


Πηγή: BROOKSHEAR (2004).

27

Η λειτουργία JOIN (1/2)

Σχήμα: Η λειτουργία JOIN.


Πηγή: BROOKSHEAR (2004).
Η λειτουργία JOIN (2/2)

Σχήμα: Η λειτουργία JOIN.


Πηγή: BROOKSHEAR (2004).

29

Μια εφαρμογή της λειτουργίας


JOIN

Σχήμα: Μια εφαρμογή της λειτουργίας JOIN.


Πηγή: BROOKSHEAR (2004).
Structured Query Language
(SQL)
• Operations to manipulate tuples.
• Insert.
• Update.
• Delete.
• Select.

31

SQL Examples
• select EmplId, Dept
from ASSIGNMENT, JOB
where ASSIGNMENT.JobId = JOB.JobId
and ASSIGNMENT.TermData = “*”
• insert into EMPLOYEE
values (‘43212’, ‘Sue A. Burt’,
’33 Fair St.’, ‘444661111’)
SQL Examples (continued)
• delete from EMPLOYEE
where Name = ‘G. Jerry Smith’
• update EMPLOYEE
set Address = ‘1812 Napoleon Ave.’
where Name = ‘Joe E. Baker’

33

Εξόρυξη δεδομένων-Data
Mining
Εξόρυξη δεδομένων: Ο τομέας της επιστήμης των
υπολογιστών που ασχολείται με την ανακάλυψη
προτύπων (patterns) σε συλλογές δεδομένων.
Data Warehouse: Μία στατιστική συλλογή
δεδομένων προς εξόρυξη.
• Data cube: Τα στοιχεία που παρουσιάζονται από
πολλές οπτικές γωνίες για την ενεργοποίηση
εξόρυξης.
Μορφές εξόρυξης δεδομένων
• Περιγραφή κλάσεων.
• Διάκριση κλάσεων.
• Ανάλυση συστάδων.
• Ανάλυση συσχτισμών.
• Ανάλυση αποκλίσεων.
• Σειριακή ανάλυση προτύπων.

35

Ενότητα 8: Βάσεις Δεδομένων ΙΙ


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

Περιεχόμενα ενότητας
Εξόρυξη δεδομένων.
Κοινωνικές επιπτώσεις.
Εξόρυξη δεδομένων
(data mining)
• Ταχύτατα αναπτυσσόμενο πεδίο.
• Είναι σύνολο τεχνικών για την ανακάλυψη
προτύπων σε συλλογές δεδομένων.
• Σημαντικό εργαλείο.
• Προσδιορισμός λειτουργιών
συγκεκριμένων γονιδίων.
• Χαρακτηρισμός ιδιοτήτων οργανισμών.

Διαφορές
• Τα παραδοσιακά ερωτήματα στις βάσεις
δεδομένων απλώς ζητούν την ανάκτηση
αποθηκευμένων στοιχείων.
• Η εξόρυξη δεδομένων εφαρμόζεται σε στατικά
σύνολα δεδομένων, τις λεγόμενες αποθήκες
δεδομένων (data warehouses).
• Οι αποθήκες είναι “στιγμιότυπα” βάσεων
δεδομένων ή συνόλων από βάσεις δεδομένων.
Στατιστική ή πληροφορική;
• Πολλοί υποστηρίζουν ότι εφόσον η
εξόρυξη δεδομένων εκτελεί στατιστική
ανάλυση σε μεγάλες συλλογές δεδομένων
διαφόρων τύπων, αποτελεί εφαρμογή της
στατιστικής και όχι κάποιο πεδίο της
επιστήμης των υπολογιστών.

Βιοπληροφορική (1/2)
• Εξόρυξη δεδομένων για την έρευνα για τον
προσδιορισμό προτύπων και την ταξινόμηση
οργανικών συστατικών.
• Το αποτέλεσμα είναι ένα πεδίο της βιολογίας που
ονομάζεται βιοπληροφορική (bioinformatics).
• Η βιοπληροφορική εμφανίστηκε αρχικά στις
προσπάθειες για την αποκωδικοποίηση του DNA.
Βιοπληροφορική (2/2)
• Τώρα χρησιμοποιείται σε εργασίες όπως η
καταγραφή των πρωτεϊνών και η κατανόηση των
ακολουθιών των αλληλεπιδράσεών τους
(ονομάζονται βιοχημικές διαδρομές).
• Παρόλο που κανονικά θεωρείται μέρος της
βιολογίας, η βιοπληροφορική αποτελεί ένα
παράδειγμα για το πώς η επιστήμη των
υπολογιστών επηρεάζει ή συνδυάζεται με άλλα
πεδία.

10

Περιγραφή και διάκριση


κλάσεων
• Δύο συνηθισμένες μορφές της εξόρυξης δεδομένων είναι η
περιγραφή κλάσεων (class description) και η διάκριση κλάσεων (class
discrimination).
• Η περιγραφή κλάσεων σχετίζεται με τον προσδιορισμό των ιδιοτήτων
που χαρακτηρίζουν μια συγκεκριμένη ομάδα στοιχείων δεδομένων.
• Η διάκριση κλάσεων ασχολείται με τον προσδιορισμό των ιδιοτήτων
που ξεχωρίζουν δύο ομάδες.
• Π.χ. οι τεχνικές της περιγραφής κλάσεων θα μπορούσαν να
χρησιμοποιηθούν για τον προσδιορισμό των χαρακτηριστικών των
ατόμων που αγοράζουν μικρά οικονομικά οχήματα, ενώ οι τεχνικές
της διάκρισης κλάσεων για τη διάκριση πελατών που αγοράζουν
μεταχειρισμένα αυτοκίνητα από εκείνους που αγοράζουν καινούργια.
Ανάλυση συστάδων
• Η ανάλυση συστάδων (cluster analysis) έχει στόχο την ανακάλυψη
κλάσεων.
• Διαφέρει από την περιγραφή κλάσεων, που έχει ως στόχο τον
εντοπισμό ιδιοτήτων σε μέλη κλάσεων που έχουν ήδη αναγνωριστεί.
Η ανάλυση συστάδων προσπαθεί να βρει ιδιότητες στοιχείων
δεδομένων που οδηγούν στην ανακάλυψη ομαδοποιήσεων.
• Λόγου χάρη, κατά την ανάλυση ηλικιών αυτών που παρακολούθησαν
μια κινηματογραφική ταινία, η ανάλυση συστάδων μπορεί να
διαπιστώσει ότι η βάση των πελατών χωρίζεται σε δύο ηλικιακές
ομάδες - μια ομάδα από 4 έως 10 ετών και μια ομάδα από 25 έως 50
ετών. (Ίσως λοιπόν η ταινία να προσέλκυσε παιδιά με τους γονείς
τους.)

12

Ανάλυση συσχετισμών
• Η ανάλυση συσχετισμών (association
analysis) σχετίζεται με την αναζήτηση
συνδέσμων μεταξύ ομάδων δεδομένων.
• Μπορεί να ανακαλύψει ότι οι πελάτες που
αγοράζουν ξηρούς καρπούς αγοράζουν
επίσης μπύρα και σόδα, ή ότι τα άτομα που
ψωνίζουν κατά τις εργάσιμες ώρες της
εβδομάδας είναι κατά κύριο λόγο
συνταξιούχοι.
Ανάλυση αποκλίσεων
• Η ανάλυση αποκλίσεων (outlier analysis) έχει
στόχο να εντοπίσει καταχωρίσεις δεδομένων που
διαφοροποιούνται από τα συνηθισμένα.
• Μπορεί να χρησιμοποιηθεί για
• τον προσδιορισμό σφαλμάτων στις συλλογές
δεδομένων.
• για περιπτώσεις υποκλοπής στοιχείων πιστωτικών
καρτών (με τον προσδιορισμό ξαφνικών διακυμάνσεων
στις κανονικές καταναλωτικές συνήθειες ενός πελάτη).
• για τον εντοπισμό πιθανών κακοποιών με την
αναγνώριση ασυνήθιστων συμπεριφορών.

14

Σειριακή ανάλυση προτύπων


• Η σειριακή ανάλυση προτύπων
(sequential pattern analysis) προσπαθεί να
προσδιορίσει πρότυπα συμπεριφοράς στο
πέρασμα του χρόνου.
• Για παράδειγμα μπορεί να ανακαλύψει
τάσεις σε οικονομικά συστήματα όπως οι
αγορές κεφαλαίων, ή σε
περιβαλλοντολογικά συστήματα όπως οι
κλιματολογικές συνθήκες.
Εφαρμογές
• Τα αποτελέσματα της εξόρυξης δεδομένων μπορούν να
χρησιμοποιηθούν για την πρόβλεψη μελλοντικής
συμπεριφοράς.
• Πολλά έργα εξόρυξης δεδομένων στοχεύουν απλώς σε
μια καλύτερη κατανόηση των δεδομένων.
Π.χ. ανακάλυψη των μυστικών του DNA.
• Το εύρος των εφαρμογών της εξόρυξης δεδομένων είναι
τεράστιο. Θα αποτελέσει ενεργό περιοχή έρευνας τα
επόμενα χρόνια.

16

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

18

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

20

Εμφανής και αφανής συλλογή


(1/2)
• Εμφανή συλλογή δεδομένων έχουμε όταν ζητείται από
κάποιον ρητά να δώσει πληροφορίες.
• Η παροχή αυτών των πληροφοριών μπορεί να γίνει
οικειοθελώς, (ερωτηματολόγια ή φόρμες εγγραφής σε
διαγωνισμούς),
ή μη οικειοθελώς, όπως όταν επιβάλλεται από
κυβερνητικούς κανονισμούς.
Μερικές φορές, το αν η παροχή πληροφοριών είναι
οικειοθελής ή μη, εξαρτάται από την οπτική γωνία του
καθενός.
Εμφανής και αφανής συλλογή
(2/2)
Για παράδειγμα, κάποιος που παρέχει προσωπικές
πληροφορίες κατά τη συμπλήρωση μιας αίτησης για δάνειο
το κάνει οικειοθελών ή όχι;
Η διάκριση εξαρτάται από το αν η λήψη του δανείου
αποτελεί για το συγκεκριμένο άτομο μία απλή διευκόλυνση
ή του είναι απαραίτητη.
Η χρήση πιστωτικής κάρτας τώρα σε κάποια καταστήματα
απαιτεί την καταγραφή της υπογραφής του κατόχου σε
ψηφιακή μορφή.
Και εδώ, το αν η παροχή αυτής της πληροφορίας γίνεται
οικειοθελώς ή όχι εξαρτάται από τη συγκεκριμένη
κατάσταση.

22

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

Αποκαλύψεις (1/3)
• Η έξαρση στη συλλογή δεδομένων
οφείλεται στην αξία των δεδομένων.
Η σύνδεση των πληροφοριών αποκαλύπτει
στοιχεία τα οποία σε διαφορετική
περίπτωση θα έμεναν κρυμμένα.
Αποκαλύψεις (2/3)
• Για παράδειγμα, οι καταναλωτικές συνήθειες των
κατόχων πιστωτικών καρτών μπορούν να
ταξινομηθούν και να διασταυρωθούν για τη
δημιουργία προφίλ πελατών με ανυπολόγιστη
διαφημιστική αξία.
• Όσοι αγόρασαν πρόσφατα γυμναστικό εξοπλισμό
μπορεί ξαφνικά να αρχίσουν να λαμβάνουν
φόρμες συνδρομής για περιοδικά μπόντυ-
μπίλντινγκ, ενώ φόρμες συνδρομών για
περιοδικά κυνόφιλων ταχυδρομούνται σε
εκείνους που στις πρόσφατες αγορές τους
περιέλαβαν σκυλοτροφές.

26

Αποκαλύψεις (3/3)
• Αρχεία πολιτών έχουν συγκριθεί με αρχεία
κακοποιών για τον εντοπισμό και τη σύλληψη
παραβατών αναστολής.
• Το 1984 η Στρατολογική Υπηρεσία των ΗΠΑ
χρησιμοποίησε παλιές λίστες γενεθλίων μιας
εταιρείας παγωτών για να εντοπίσει πολίτες που
δεν πέρασαν περιοδεύοντες.
Προβλήματα
• Νόμοι και γραφειοκρατία.
• Πώληση δεδομένων.

28

Θετικά και αρνητικά


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

30

Ενότητα 9: Τεχνητή νοημοσύνη


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

Περιεχόμενα ενότητας
Νοημοσύνη και μηχανές.
Αντίληψη.
Συλλογισμός.
Άλλοι τομείς της έρευνας.
Τεχνητά νευρωνικά δίκτυα.
Ρομποτική.
Εξετάζοντας τις συνέπειες.
Νοήμονες πράκτορες
• Πράκτορας = "συσκευή" που αποκρίνεται
στα ερεθίσματα από το περιβάλλον της:
• Αισθητήρες.
• Αποκρίσεις (Actuators).
• Ο στόχος της τεχνητής νοημοσύνης είναι να
δημιουργηθούν πράκτορες που να
συμπεριφέρονται έξυπνα.

Παζλ σε τελική διαμόρφωση

Σχήμα: Το παζλ οκτώ πλακιδίων σε λυμένη διαμόρφωση.


Πηγή: BROOKSHEAR (2009).
Η μηχανή που λύνει το παζλ

Εικόνα: Η μηχανή που λύνει το παζλ.


Πηγή: BROOKSHEAR (2009).

Επίπεδα νοημοσύνης στη


συμπεριφορά
• Αντανάκλαση: οι ενέργειες είναι
προκαθορισμένες αποκρίσεις στα δεδομένα
εισόδου
• Ευφυής απόκριση: ενέργειες που επηρεάζονται
από τη γνώση του περιβάλλοντος.
• Επιδίωξη στόχου.
• Εκμάθηση (διαδικασιακή – δηλωτική).
Ερευνητικές προσεγγίσεις τεχνητής
νοημοσύνης
• Προσανατολισμός στην απόδοση:
Ο ερευνητής προσπαθεί να μεγιστοποιήσει
την απόδοση των πρακτόρων.
• Προσανατολισμός στην προσομοίωση:
Ο ερευνητής προσπαθεί να καταλάβει πώς
οι πράκτορες παράγουν απαντήσεις.
(Γλωσσολόγοι θεωρία-πράξη).

10

Δοκιμή Turing
• Προτάθηκε από τον Alan Turing το 1950.
• Συγκριτική μέτρηση επιδόσεων για την πρόοδο
στην τεχνητή νοημοσύνη.
• Οργάνωση δοκιμής: Ο άνθρωπος-εξεταστής
επικοινωνεί με το υποκείμενο μέσω
γραφομηχανής.
• Δοκιμή: Μπορεί ο άνθρωπος-εξεταστής να
διακρίνει εάν το υποκείμενο είναι άνθρωπος ή
μηχανή;
Τεχνικές για κατανόηση εικόνων
• Ταίριασμα με προκαθορισμένα πρότυπα.
• Επεξεργασία εικόνας.
• ενίσχυση ακμών.
• εντοπισμός περιοχών.
• Εξομάλυνση.
• Ανάλυση εικόνας.

12

Επεξεργασία γλωσσών
• Συντακτική ανάλυση.
• Σημασιολογική ανάλυση.
• Θεματολογική ανάλυση (συμφραζόμενα).
• Ανάκτηση πληροφοριών.
• Εξαγωγή πληροφοριών.
• Σημασιολογικό δίκτυο.
Ένα σημασιολογικό δίκτυο

Σχήμα: Ένα σημασιολογικό δίκτυο.


Πηγή: BROOKSHEAR (2004).

14

Ένα άλλο σημασιολογικό δίκτυο

Σχήμα: Ένα άλλο σημασιολογικό δίκτυο.


Πηγή:http://www.mindmeister.com/maps/public_map_shell/284331950
(Ανακτήθηκε 18 Ιουνίου, 2015).
Συστατικά των συστημάτων
παραγωγής
1. Σύνολο καταστάσεων.
• Κατάσταση αφετηρίας ή αρχική.
• Κατάσταση προορισμού.
2. Σύνολο παραγωγών: κανόνες ή κινήσεις.
• Κάθε παραγωγή μπορεί να έχει προσυνθήκες.
3. Σύστημα ελέγχου: αποφασίζει ποια
παραγωγή θα εφαρμοστεί μετά.

16

Γράφος καταστάσεων

Σχήμα 4: Μικρό τμήμα του γράφου καταστάσεων


για το παζλ οκτώ πλακιδίων.
Πηγή: BROOKSHEAR (2004).
Επεξεργασία δεδομένων για τα
συστήματα παραγωγής
• Γράφος καταστάσεων = καταστάσεις, παραγωγές
και προσυνθήκες (χώρος προβλήματος).
• Δέντρο αναζήτησης = καταγραφή των μεταβολών
κατάστασης που ερευνήθηκαν κατά την
αναζήτηση της κατάστασης προορισμού.
• Αναζήτηση με προτεραιότητα εύρους.
• Αναζήτηση με προτεραιότητα βάθους.

18

Επαγωγικός συλλογισμός

Σχήμα: Επαγωγικός συλλογισμός στα πλαίσια ενός


συστήματος παραγωγών.
Πηγή: Brookshear (2004).
Έμπειρα συστήματα
• Έμπειρο σύστημα = πακέτο λογισμικού για
να βοηθήσει τους ανθρώπους σε
καταστάσεις όπου απαιτείται ειδική γνώση
• Παράδειγμα: ιατρική διάγνωση.
• Συχνά παρόμοια με ένα σύστημα παραγωγής .

20

Ένα άλυτο παζλ οκτώ πλακιδίων


(1/2)

Σχήμα: Ένα άλυτο παζλ οκτώ πλακιδίων.


Πηγή: Brookshear (2004).
Δείγμα δέντρου αναζήτησης

Σχήμα: Δείγμα δέντρου αναζήτησης.


Πηγή: Brookshear (2004).

22

Παραγωγές που συσσωρεύονται


για μετέπειτα εκτέλεση

Σχήμα: Παραγωγές που συσσωρεύονται για


μετέπειτα εκτέλεση.
Πηγή: Brookshear (2004).
Ένα άλυτο παζλ οκτώ πλακιδίων
(2/2)

Σχήμα: Ένα άλυτο παζλ οκτώ πλακιδίων.


Πηγή: Brookshear (2004).

24

Ευρετικές στρατηγικές
• Απαιτήσεις για καλό heuristics.
• Πρέπει να είναι πολύ ευκολότερο να
υπολογιστεί από όσο μια πλήρη λύση.
• Πρέπει να παρέχει μια λογική εκτίμηση της
εγγύτητας σε έναν στόχο.
Ξεκίνημα ευρετικής αναζήτησης

Σχήμα: Ξεκίνημα ευρετικής αναζήτησης.


Πηγή: Brookshear (2004).

26

Το δέντρο αναζήτησης μετά από


δύο περάσματα

Σχήμα: Το δέντρο αναζήτησης μετά από δύο


περάσματα.
Πηγή: Brookshear (2004).
Το δέντρο αναζήτησης μετά από
τρία περάσματα

Σχήμα: Το δέντρο αναζήτησης μετά από τρία


περάσματα.
Πηγή: Brookshear (2004).

28

Πλήρες δέντρο αναζήτησης

Σχήμα: Το πλήρες δέντρο αναζήτησης που


διαμορφώνεται από το ευρετικό μας σύστημα.
Πηγή: Brookshear (2004).
Νευρωνικά δίκτυα
• Τεχνητός νευρώνας
• Κάθε είσοδος πολλαπλασιάζεται με έναν παράγοντα
βάρους.
• Η έξοδος είναι 1 εάν το άθροισμα των σταθμισμένων
εισόδων υπερβαίνει μια κατώτατη τιμή. Αλλιώς είναι
0.
• Το δίκτυο προγραμματίζεται με τη ρύθμιση των
βαρών χρησιμοποιώντας ανατροφοδότηση από
παραδείγματα.

30

Νευρώνας σε ένα ζωντανό


βιολογικό σύστημα

Σχήμα: Νευρώνας σε ένα ζωντανό βιολογικό


σύστημα.
Πηγή: Brookshear (2004).
Οι δραστηριότητες μέσα σε μια
μονάδα επεξεργασίας

Σχήμα: Οι δραστηριότητες μέσα σε μια μονάδα


επεξεργασίας.
Πηγή: Brookshear (2004).

32

Αναπαράσταση μιας μονάδας


επεξεργασίας

Σχήμα: Αναπαράσταση μιας μονάδας


επεξεργασίας .
Πηγή: Brookshear (2004).
Νευρωνικό δίκτυο με δύο
διαφορετικά προγράμματα

Σχήμα: Νευρωνικό δίκτυο με δύο διαφορετικά


προγράμματα.
Πηγή: Brookshear (2004).

34

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

Σχήμα: Τεχνητό νευρωνικό δίκτυο για την


υλοποίηση συνειρμικής μνήμης.
Πηγή: Brookshear (2004).

36

Βήματα που οδηγούν σε μια


σταθερή διαμόρφωση

Σχήμα: Βήματα που οδηγούν σε μια σταθερή


διαμόρφωση.
Πηγή: Brookshear (2004).
Ρομποτική
• Άρχισε ως τομέας μέσα στους μηχανολόγους και
ηλεκτρολόγους μηχανικούς.
• Σήμερα καλύπτει πολύ ευρύτερο φάσμα
δραστηριοτήτων.
• Asimo.
• UAV.
• Ανταγωνισμός Robocup.
• Εξελικτική ρομποτική.

38

Σύνδεσμοι
• Deep blue.
• Αντικατάσταση εργατικού δυναμικού.
• Ο Άσημος σε ώρα δράσης.
• Robocup.
Μερικά ζητήματα που προκύπτουν
από την τεχνητή νοημοσύνη
• Πότε πρέπει να εμπιστευθούμε την απόφαση
ενός υπολογιστή αντί ενός ανθρώπου;
• Εάν ένας υπολογιστής μπορεί να κάνει μια
εργασία καλύτερα από έναν άνθρωπο, πότε θα
πρέπει οπωσδήποτε ένας άνθρωπος να κάνει
αυτήν την εργασία;
• Ποιος θα ήταν ο κοινωνικός αντίκτυπος εάν η
τεχνητή νοημοσύνη ξεπεράσει τη νοημοσύνη
πολλών ανθρώπων;

40

Ενότητα 10: Ηθικά και κοινωνικά ζητήματα στην ψηφιακή


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

Περιεχόμενα ενότητας (1/2)


Διαδικτυακή πειρατεία.
Ηθική – Ορισμός.
Πληροφοριακά συστήματα και ηθική.
Η αξία των ηθικών κανόνων.
Ηθικά ζητήματα από τις Νέες Τεχνολογίες.
Επισήμανση μη προφανών σχέσεων (NORA).
Βασικές έννοιες και βήματα για την ηθική ανάλυση.
Ηθικές αρχές.
Σύγχρονα ηθικά διλήμματα.
Περιεχόμενα ενότητας (2/2)
Οι πέντε ηθικές διαστάσεις της εποχής των πληροφοριών.
Πρόσβαση στις πληροφορίες.
• Δίκαιες Πρακτικές Πληροφοριών.
• Η ευρωπαϊκή οδηγία για την προστασία των δεδομένων.
• Διαδίκτυο και προσωπικό απόρρητο – cookies.
Πνευματική ιδιοκτησία – νομικά πλαίσια – χαρακτηριστικά.
Υπευθυνότητα, υπαιτιότητα και έλεγχος.
Ποιότητα συστημάτων και δεδομένων – σφάλματα.
Ο αντίκτυπος στην ποιότητα ζωής από τη χρήση πληροφοριακών
συστημάτων.
Κακή χρήση και εγκληματικότητα.

Διαδικτυακή Πειρατεία (1/2)


• Οι οικονομίες διαφόρων χωρών χάνουν πολλά
εκατομμύρια κάθε χρόνο σε χαμένες θέσεις εργασίας και
διαφυγόντες φόρους.
• Αντιμετώπιση 1: Παρέμβαση στις μηχανές αναζήτησης
ώστε να μην εμφανίζουν πειρατικό περιεχόμενο στα
αποτελέσματά τους.
• Αντιμετώπιση 2: Χρήση προγραμμάτων (crawlers) που
ψάχνουν πειρατικό περιεχόμενο (π.χ. NBC).
• Αντιμετώπιση 3: Προώθηση προϊόντων και υπηρεσιών
ώστε να είναι ανταγωνιστικά με το πειρατικό
περιεχόμενο.
Διαδικτυακή Πειρατεία (2/2)
• Οι νέες τεχνολογίες μπορούν είτε να
βοηθήσουν την πειρατεία είτε να την
εμποδίσουν.

Ηθική
• Μετά από άστοχη ηθική κρίση τα πληροφοριακά
συστήματα χρησιμοποιήθηκαν επιδέξια από εταιρείες για
να αποκρύψουν αποφάσεις της διοίκησης από τον
δημόσιο έλεγχο.
• Ηθική (ορισμός):
• Οι αρχές του σωστού και του λάθους που υιοθετούν τα
άτομα, ενεργώντας αυτοβούλως, για να καθορίσουν τη
συμπεριφορά τους.
Πληροφοριακά συστήματα και
ηθική
Ηθικά ερωτήματα προκύπτουν γιατί τα
πληροφοριακά συστήματα δημιουργούν ευκαιρίες
που αφορούν σε:
• Κοινωνικές αλλαγές.
• Αλλαγή στον καταμερισμό της εξουσίας,
χρημάτων, δικαιωμάτων, και υποχρεώσεων.
• Νέες μορφές εγκληματικότητας.

10

Η αξία των ηθικών κανόνων


• Οι Νέες Τεχνολογίες δημιουργούν νέες καταστάσεις και
δεδομένα που δεν μπορούν να προβλεφθούν από τους
παλιούς κανόνες.
• Οι κοινωνικοί θεσμοί αργούν να προσαρμοστούν στα νέα
δεδομένα. Η δημιουργία εθιμοτυπικών κανόνων και
νομοθετικών πλαισίων ενδέχεται να χρειαστεί χρόνια.
• Χρειάζεται κατανόηση των ηθικών κανόνων για να μπορεί
κάποιος να κάνει τις σωστές επιλογές όταν βρίσκεται σε
αχαρτογράφητες νομικά περιοχές.
Οι διαστάσεις των ηθικών,
κοινωνικών και πολιτικών ζητημάτων
• Η εισαγωγή μιας νέας τεχνολογίας πληροφοριών
αναδύει νέα ηθικά, κοινωνικά και πολιτικά
ζητήματα.
• Τα ζητήματα αυτά αφορούν σε ατομικό,
κοινωνικό και πολιτικό επίπεδο.
• Πέντε ηθικές διαστάσεις: πρόσβαση στις
πληροφορίες, πρόσβαση στην ιδιοκτησία,
ποιότητα συστημάτων, ποιότητα ζωής, και
υπευθυνότητα και έλεγχος.

12

Ηθικά ζητήματα από τις Νέες


Τεχνολογίες (1/2)
• Όσο αυξάνεται η υπολογιστική ισχύς, τόσο
περισσότεροι οργανισμοί εξαρτώνται από τους
υπολογιστές για την λειτουργία τους.
• Όσο μικραίνει το κόστος αποθήκευσης των
δεδομένων, τόσο πιο εύκολο είναι για τους
οργανισμούς να διατηρούν μεγάλες βάσεις
προσωπικών δεδομένων.
• Όσο αναπτύσσονται τα δίκτυα και το Διαδίκτυο,
τόσο διευκολύνεται η αντιγραφή δεδομένων από
ένα σημείο σε άλλο, αλλά και η πρόσβαση σε
προσωπικά δεδομένα από απόσταση.
Ηθικά ζητήματα από τις Νέες
Τεχνολογίες (2/2)
• Όσο αυξάνεται η χρήση των φορητών συσκευών, τόσο
αυξάνεται και η παρακολούθησή τους.
• Όσο εξελίσσονται οι τεχνικές ανάλυσης μεγάλων
δεξαμενών δεδομένων, τόσο:
• Περισσότεροι οργανισμοί προχωρούν σε δημιουργία
προφίλ χρηστών, δηλαδή συνδυασμού δεδομένων
από πολλές πηγές με λεπτομερείς πληροφορίες.
• Ευκολότερη γίνεται η ανάδειξη μη προφανών σχέσεων,
δηλαδή συνδυασμού δεδομένων από πολλές πηγές
για την ανακάλυψη δυσδιάκριτων πληροφοριών
(υποτίθεται για λόγους προστασίας του πολίτη).
14

Επισήμανση μη προφανών
σχέσεων (NORA)
• Η τεχνολογία NORA μπορεί να συνδυάζει
πληροφορίες από πολλές και διαφορετικές πηγές
για να βρίσκει δυσδιάκριτες σχέσεις. Π.χ. η
διασταύρωση πληροφοριών που κάνει η εφορία
για την αντιμετώπιση της φοροδιαφυγής.
Βασικές έννοιες για την ηθική
ανάλυση
• Ευθύνη: η αποδοχή του κόστους, των
καθηκόντων και των υποχρεώσεων.
• Υπευθυνότητα: η διαδικασία ταυτοποίησης των
υπαιτίων.
• Υπαιτιότητα: νομικός όρος για τη λήψη
αποζημιώσεων.
• Νόμιμη διαδικασία: οι νόμοι είναι γνωστοί και
κατανοητοί. Προβλέπεται η δυνατότητα
προσφυγής σε ανώτερες αρχές.

16

Τα βήματα της ηθικής ανάλυσης


1. Προσδιορισμός και σαφής περιγραφή των
δεδομένων.
2. Προσδιορισμός της σύγκρουσης ή του
διλήμματος και των ανώτερων αξιών που
αφορούν.
3. Προσδιορισμός εμπλεκομένων μερών.
4. Προσδιορισμός δυνατών επιλογών.
5. Προσδιορισμός πιθανών συνεπειών από τις
παραπάνω επιλογές.
Ηθικές αρχές (1)
• Κάνε στους άλλους αυτό που θα ήθελες να
κάνουν οι άλλοι σε σένα.
• Αν μια ενέργεια δεν είναι σωστή για όλους, τότε
δεν είναι σωστή για κανέναν (Καντ).
• Αν μια ενέργεια δεν επιτρέπεται να γίνεται
επανειλημμένα, τότε δεν είναι σωστό να γίνει
ούτε μία φορά (Καρτέσιος).

18

Ηθικές αρχές (2)


• Επιλογή της ενέργειας που επιτυγχάνει την
υψηλότερη ή πιο σημαντική αξία
(ωφελιμιστική αρχή).
• Επιλογή της ενέργειας που προκαλεί την ελάχιστη
ζημιά ή έχει το ελάχιστο δυνατό κόστος.
• Όλα τα υλικά και άυλα αντικείμενα είναι
ιδιοκτησία κάποιου άλλου, εκτός αν δηλώνεται
ρητά το αντίθετο.
Σύγχρονα ηθικά διλήμματα
• Χρήση της τεχνολογίας για μείωση των εργαζόμενων.
• Παρακολούθηση των δραστηριοτήτων των εργαζομένων
στους υπολογιστές τους.
• Πώληση πληροφοριών χρηστών από ιστοσελίδες σε
διαφημιστές.
• Αντιπαράθεση ομάδων συμφερόντων.
Για παράδειγμα: το δικαίωμα μιας εταιρείας να επιδιώκει
τη μέγιστη παραγωγικότητα από τους εργαζόμενους και
το δικαίωμα των εργαζομένων να χρησιμοποιούν το
Διαδίκτυο για σύντομες προσωπικές εργασίες τους.

20

Οι πέντε ηθικές διαστάσεις της


εποχής των πληροφοριών
1. Πρόσβαση στις πληροφορίες.
2. Πρόσβαση στην ιδιοκτησία.
3. Υπευθυνότητα και έλεγχος.
4. Ποιότητα συστημάτων.
5. Ποιότητα ζωής.
Ηθική Διάσταση 1:
Πρόσβαση στις πληροφορίες
• Προσωπικό απόρρητο είναι η απαίτηση κάθε
ανθρώπου:
• να έχει την ιδιωτικότητά του, χωρίς να
παρακολουθείται ή να παρενοχλείται από
άλλα άτομα ή οργανισμούς,
συμπεριλαμβανομένου του κράτους.
• να μπορεί να ελέγχει τις πληροφορίες που
αναφέρονται σε αυτόν.

22

Ηθική Διάσταση 1 (1/7)


Δίκαιες Πρακτικές Πληροφοριών.
• Αποτελούν σύνολο αρχών που αφορούν στη
χρήση των πληροφοριών.
• Αποτελούν τη βάση των περισσότερων
ευρωπαϊκών και αμερικανικών νόμων για το
προσωπικό απόρρητο.
Ηθική Διάσταση 1 (2/7)
Σύμφωνα με τις Αρχές των Δίκαιων Πρακτικών Πληροφοριών
τα άτομα πρέπει να μπορούν:
• Να γνωρίζουν τις πρακτικές των τοποθεσιών Ιστού πριν
αυτές συλλέξουν δεδομένα.
• Να διαλέγουν πώς θα χρησιμοποιηθούν οι πληροφορίες
τους για δευτερογενείς σκοπούς.
• Να ελέγχουν και να αμφισβητούν την ακρίβεια και την
πληρότητα των προσωπικών τους δεδομένων.
• Οι εταιρείες που συλλέγουν δεδομένα πρέπει να
εξασφαλίζουν την ακρίβεια και την ασφάλεια των
προσωπικών δεδομένων.
• Πρέπει να υπάρχει ένας μηχανισμός για την επιβολή των
αρχών των Δίκαιων Πρακτικών Πληροφοριών.
24

Ηθική Διάσταση 1 (3/7)


Η ευρωπαϊκή οδηγία για την προστασία των δεδομένων:
• Οι εταιρείες είναι υποχρεωμένες να πληροφορούν το
κοινό όταν συγκεντρώνουν προσωπικά δεδομένα και να
ανακοινώνουν τον τρόπο αποθήκευσης και χρήσης τους.
• Πρέπει να ενημερώνουν τον χρήστη και να εξασφαλίζουν
τη συγκατάθεσή του.
• Τα κράτη-μέλη της EE μπορούν να διαβιβάζουν
προσωπικά δεδομένα μόνο σε χώρες που έχουν
παρόμοιους κανονισμούς προστασίας προσωπικών
δεδομένων.
Ηθική Διάσταση 1 (4/7)
Προκλήσεις του Διαδικτύου για το προσωπικό
απόρρητο:
• «Μπισκότα» (cookies).
• «Υπερμπισκότα» (τεχνολογίας Flash).
• Υπηρεσίες ιστοσελίδων και διαφημιστική
στόχευση βάσει συμπεριφοράς.
• Κατασκοπευτικό λογισμικό (spyware).
• Ιστοκοριοί (Web beacons/bugs).

26

Ηθική Διάσταση 1 (5/7)


• Τα μπισκότα αποθηκεύονται από μια τοποθεσία Ιστού
στον σκληρό δίσκο του επισκέπτη.
• Όταν ο επισκέπτης επιστρέφει στην ίδια τοποθεσία, ο
διακομιστής βρίσκει την ταυτότητα από το μπισκότο και
την χρησιμοποιεί για να προσπελάσει τα δεδομένα που
έχει ο ίδιος αποθηκεύσει γι’ αυτόν τον επισκέπτη.
• Η τοποθεσία Ιστού χρησιμοποιεί αυτά τα δεδομένα για να
παρουσιάσει εξατομικευμένες πληροφορίες.
Ηθική Διάσταση 1 (6/7)
• Οι εταιρείες του Διαδικτύου προτιμούν την αυτορρύθμιση
παρά τις νομοθετικές διατάξεις περί προσωπικού
απορρήτου.
• Στις ΗΠΑ επιτρέπεται στις επιχειρήσεις να συλλέγουν
πληροφορίες συναλλαγών και στη συνέχεια να
χρησιμοποιούν τις πληροφορίες αυτές για άλλους
σκοπούς μάρκετινγκ.
• Η έκταση της ευθύνης διαφέρει:
• Δηλώσεις περί χρήσης των πληροφοριών.
• Προαιρετική αυτοεξαίρεση (opt-out) έναντι.
• Ενεργητική συγκατάθεση (opt-in).

28

Ηθική Διάσταση 1 (7/7)


Τεχνικές λύσεις.
• Αποκλεισμός ή έλεγχος «μπισκότων».
• Ανώνυμη (?) περιήγηση.
• Κρυπτογράφηση ηλεκτρονικού ταχυδρομείου.
Με αυτές τις τεχνικές λύσεις οι χρήστες δεν
προστατεύονται ικανοποιητικά κατά την περιήγησή
τους.
Ηθική Διάσταση 2 (1/2)
Πρόσβαση στην ιδιοκτησία.
Πνευματική ιδιοκτησία: Άυλο προϊόν που έχει δημιουργηθεί
από άτομα ή επιχειρήσεις. Υπόκειται σε τρία νομικά πλαίσια.
• Εμπορικό μυστικό: Κάθε πνευματική εργασία ή προϊόν που
ανήκει σε συγκεκριμένη επιχείρηση και δεν προορίζεται για
ελεύθερη χρήση.
• Πνευματικά δικαιώματα (copyright): Νομική κατοχύρωση
που προστατεύει την πνευματική ιδιοκτησία από την
αντιγραφή κατά τη διάρκεια ζωής του δημιουργού και για
70 επιπλέον χρόνια μετά το θάνατό του.
• Ευρεσιτεχνία (patent): Παρέχει στον κάτοχό της το
αποκλειστικό μονοπώλιο των ιδεών στις οποίες βασίζεται
μια εφεύρεση για 20 χρόνια.

30

Ηθική Διάσταση 2 (2/2)


Χαρακτηριστικά πνευματικής ιδιοκτησίας.
Τα ψηφιακά μέσα διαφέρουν από τα υλικά μέσα (π.χ.,
βιβλία) όσον αφορά:
• Ευκολία αντιγραφής.
• Ευκολία μετάδοσης (δίκτυα, Διαδίκτυο).
• Ευκολία αλλοίωσης.
• Συμπτυγμένη μορφή.
• Δυσκολία ταξινόμησης του λογισμικού.
• Δυσκολία στην απόδειξη της μοναδικότητας.
Κλειστά περιβάλλοντα (Amazon).
Ηθική Διάσταση 3: Υπευθυνότητα,
υπαιτιότητα και έλεγχος
• Αν το λογισμικό είναι τμήμα ενός μηχανήματος που
προκαλέσει τραυματισμό ή βλάβη, τότε είναι
δυνητικά υπαίτιοι τόσο ο δημιουργός του λογισμικού
όσο και ο χρήστης.
• Αν το λογισμικό θεωρηθεί παρόμοιο του βιβλίου,
τότε είναι δύσκολο να θεωρηθεί ο δημιουργός
υπαίτιος από την κακή χρήση του.
• Αν το λογισμικό νοείται ως υπηρεσία τότε ίσως
αντιστοιχεί στις εταιρείες τηλεφωνίας που δεν έχουν
υπαιτιότητα για τα μηνύματα που μεταδίδουν.

32

Ηθική Διάσταση 4: Ποιότητα συστημάτων


και δεδομένων-σφάλματα συστημάτων
Το απόλυτα άψογο (χωρίς σφάλματα) λογισμικό είναι
ανέφικτο.
Προσδιορισμός αποδεκτού και τεχνολογικά εφικτού
επιπέδου ποιότητας των συστημάτων.
Βασικές αιτίες για την κακή απόδοση των συστημάτων:
• Δυσλειτουργίες και σφάλματα του λογισμικού.
• Βλάβες του υλικού ή των εγκαταστάσεων.
• Σφάλματα κατά την εισαγωγή δεδομένων (ευθύνεται
μέχρι το 30% της αστοχίας των συστημάτων).
Ηθική Διάσταση 5: Ποιότητα ζωής
Τα αρνητικά αποττελέσματα από τη χρήση των
πληροφοριακών συστημάτων:
• Συγκεντρωτισμός στη λήψη αποφάσεων.
• Οι επιχειρήσεις τρέχουν για να είναι ανταγωνιστικές σε
παγκοσμιοποιημένο περιβάλλον.
• Η χρήση των Νέων Τεχνολογιών παρατείνει τη διάρκεια
της εργάσιμης ημέρας καταναλώνοντας οικογενειακό και
προσωπικό χρόνο.
• Οι οργανισμοί είναι πιο ευπαθείς γιατί εξαρτώνται
περισσότερο από τα υπολογιστικά συστήματα.

34

Κακή χρήση και εγκληματικότητα


• Η ηλεκτρονική κατάχρηση αφορά ανήθικες πράξεις αλλά όχι
παράνομες.
• Ηλεκτρονική εγκληματικότητα αφορά στη διάπραξη αξιόποινων
πράξεων με τη χρήση υπολογιστή ή εναντίον υπολογιστή. Ο
υπολογιστής λειτουργεί είτε ως αντικείμενο είτε ως όργανο του
εγκλήματος.
• Η ανεπιθύμητη ηλεκτρονική αλληλογραφία (spam) επιφέρει
υψηλό κόστος για τις επιχειρήσεις.
• Το (παλιό) ψηφιακό χάσμα αναφέρεται στις πληθυσμιακές
ομάδες που έχουν λιγότερες ευκαιρίες πρόσβασης σε
υπολογιστές ή στο Διαδίκτυο.
• Το (νέο) ψηφιακό χάσμα αναφέρεται στις πληθυσμιακές ομάδες
που χρησιμοποιούν με μη παραγωγικό τρόπο τις Νέες
Τεχνολογίες.

You might also like