Εμπειρικό μελϋτη για την διαπύςτωςη τησ επύδραςησ των αρχιτεκτονικών προτύπων ςτισ διϊφορεσ κατηγορύεσ ποιότητασ κατϊ ISO-9126

Σχετικά έγγραφα
ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

Η αξρή ζύλδεζεο Client-Server

Κεθάλαιο 1. Ενόηηηα 2 Πλάνο Μάρκεηινγκ. Εξγαιεία Μάξθεηηλγθ. Dr. Andrea Grimm Dr. Astin Malschinger

Ενδεικτικά Θέματα Στατιστικής ΙΙ

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

Α. Εηζαγσγή ηεο έλλνηαο ηεο ηξηγσλνκεηξηθήο εμίζσζεο κε αξρηθό παξάδεηγκα ηελ εκx = 2

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

ΑΠΑΝΤΗΣΔΙΣ ΓΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ II ΔΠΑΛ

Οδηγίες τρήζης για λειηοσργία μεηαθοράς καναλιών ζε υηθιακό δέκηη OST-7060 HD

ΔΦΑΡΜΟΜΔΝΑ ΜΑΘΗΜΑΣΙΚΑ ΣΗ ΧΗΜΔΙΑ Ι ΘΔΜΑΣΑ Α επηέκβξηνο Να ππνινγηζηνύλ νη κεξηθέο παξάγσγνη πξώηεο ηάμεο ηεο ζπλάξηεζεο f(x,y) =

ΛΙΜΝΗ ΤΣΑΝΤ. Σρήκα 1. Σρήκα 2

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

Constructors and Destructors in C++

Απνηειέζκαηα Εξσηεκαηνινγίνπ 2o ηεηξάκελν

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

ΑΝΤΗΛΙΑΚΑ. Η Μηκή ζθέθηεθε έλαλ ηξόπν, γηα λα ζπγθξίλεη κεξηθά δηαθνξεηηθά αληειηαθά πξντόληα. Απηή θαη ν Νηίλνο ζπλέιεμαλ ηα αθόινπζα πιηθά:

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

ΦΥΣΙΚΗ ΤΩΝ ΡΕΥΣΤΩΝ. G. Mitsou

Οργάνωση και Δομή Παρουσιάσεων

ΕΝΤΟΛΕΣ WINDOWS ΚΑΙ UNIX

Εςθςή ζςζηήμαηα επισειπήζεων και αξιολόγηζη

Α Ο Κ Η Α Μ Α Ζ Η Η Ρ Η ( S E A R C H )

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 4 ΣΥΝΔΥΑΣΤΙΚΑ ΚΥΚΛΩΜΑΤΑ

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

TOOLBOOK (μάθημα 2) Δεκηνπξγία βηβιίνπ θαη ζειίδσλ ΠΡΟΑΡΜΟΓΗ: ΒΑΛΚΑΝΙΩΣΗ ΔΗΜ. ΕΚΠΑΙΔΕΤΣΙΚΟ ΠΕ19 1 TOOLBOOK ΜΑΘΗΜΑ 2

5 η Δργαζηηριακή Άζκηζη Κσκλώμαηα Γσαδικού Αθροιζηή/Αθαιρέηη

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

Διαδικαζία μεηαθοράς δεδομένων Εκκαθαριζηικής για ηο Eιδικό ζημείωμα περαίωζης Φ.Π.Α

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

ΙΣΤΟΡΙΑ ΤΟΥ ΑΡΧΑΙΟΥ ΚΟΣΜΟΥ

ΜΑΘΗΜΑ / ΤΑΞΗ : ΗΛΕΚΤΡΟΛΟΓΙΑ/Γ ΛΥΚΕΙΟΥ ΣΕΙΡΑ: ΗΜΕΡΟΜΗΝΙΑ: 08/09/2014

Case Study. Παξαθάηω παξνπζηάδνπκε βήκα - βήκα κε screenshots έλα παξάδεηγκα ππνβνιήο κηαο εξγαζίαο θαη ηελ παξαγωγή ηνπ Originality Report.

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

Μορθές Κακόβοσλοσ Κώδικα (Malicious Code)

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

Η επιζκόπηζη ηης έμμιζθης ενηολής ζηην Αλλοδαπή. Καηεξίλα Γαιαλνπνύινπ, Intellectual Property Manager, Microsoft Ειιάο Α.Ε.

ΕΓΧΕΙΡΙΔΙΟ ΕΚΔΟΗ 8.0.0

ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ. Οξηδόληηα θαη θαηαθόξπθε κεηαηόπηζε παξαβνιήο

Πολυεπίπεδα/Διασυμδεδεμέμα Δίκτυα

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

Η. Απζίλνο Αλ. Καζεγεηήο Αζιεηηθή δηνίθεζε. ΟΓΗΓΟ ΠΣΤΥΙΑΚΗ ΔΡΓΑΙΑ ζηελ Αζιεηηθή δηοίθεζε. Θέκα πηστηαθής (κε ηε κνξθή εξωηήκαηνο):...

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

ΜΑΘΗΜΑΣΑ ΦΩΣΟΓΡΑΦΙΑ. Ειζαγωγή ζηη Φωηογραθία. Χριζηάκης Σαζεΐδης EFIAP

Άσκηση 1 - Μοπυοποίηση Κειμένου

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

EL Eνωμένη στην πολυμορυία EL A8-0046/319. Τροπολογία

ΜΕΛΕΣΗ E.O.K. ΜΕ ΑΙΘΗΣΗΡΑ ΘΕΗ

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

ΔΓΤ Μεηαπηπρηαθφ Πξφγξακκα «Γηνίθεζε Τπεξεζηψλ Τγείαο»

ΣΕΙ ΙΟΝΙΩΝ ΝΗΩΝ ΣΜΗΜΑ: ΣΕΥΝΟΛΟΓΙΑ ΠΛΗΡΟΦΟΡΙΚΗ ΚΑΙ ΣΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ Ρέππα Μαξγαξίηα

ΜΗΧΑΝΟΛΟΓΙΚΟ ΣΧΔΓΙΟ ΙΙ

γηα ηνλ Άξε Κσλζηαληηλίδε

ΒΗΜΑ 2. Εηζάγεηε ηνλ Κωδηθό Πξόζβαζεο πνπ ιακβάλεηε κε SMS & δειώλεηε επηζπκεηό Όλνκα Πξόζβαζεο (Username) θαη ην ζαο

ΑΓΩΜΘΡΘΙΞΘ ΤΩΠΞΘ ΡΘΡ ΛΘΙΠΕΡ ΗΚΘΙΘΕΡ ΛΘΤΑΗΚΘΔΗΡ Τ.

Σημεία Ασύπματηρ Ππόσβασηρ (Hot-Spots)

EL Eνωμένη στην πολυμορυία EL A8-0046/92. Τροπολογία. Sylvie Goddyn εμ νλόκαηνο ηεο νκάδαο ENF

Δπαστηπιότητα 1 - ανάπτςξη, μεταγλώττιση, αποσυαλμάτωση και. εκτέλεση ππογπάμματορ

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Η Αξιολόγηζη ηηρ Πεπίλητηρ Κειμένος Παιδαγυγικό Ινζηιηούηο

ΧΩΡΙΚΕΣ ΣΧΕΣΕΙΣ ΚΑΙ ΓΕΩΜΕΤΡΙΚΕΣ ΕΝΝΟΙΕΣ

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

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

ΟΣΑ Επηρεηξεζηαθή Ννεκνζύλε. Ελόηεηα: Ad1.2.2 «Ση θξύβεηαη» πίζω από κηα Επηρεηξεζηαθή Αλαθνξά (report): XML & XSD γηα αξράξηνπο

6 η Εργαζηηριακή Άζκηζη Επαλήθεσζη Λειηοσργίας Βαζικών Φλιπ-Φλοπ

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο

Επωηήζειρ Σωζηού Λάθοςρ ηων πανελλαδικών εξεηάζεων Σςναπηήζειρ

ΕΞΟΡΤΞΗ ΔΕΔΟΜΕΝΩΝ ΚΑΙ Η ΧΡΗΗ ΣΟΤ ΣΑ ΟΤΠΕΡΜΑΡΚΕΣ ΠΣΤΧΙΑΚΗ ΕΡΓΑΙΑ

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

Αντισταθμιστική ανάλυση

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Διαηιμήζεις για Αιολικά Πάρκα. Κώδικες 28, 78 και 84

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

Περιεχόμενο 10ης διάλεξης ΒΑΙΚΔ ΑΡΥΔ ΑΘΛΗΣΙΚΟΤ ΜΑΡΚΔΣΙΝΓΚ

Σύνθεζη ηαλανηώζεων. Έζησ έλα ζώκα πνπ εθηειεί ηαπηόρξνλα δύν αξκνληθέο ηαιαληώζεηο ηεο ίδηαο ζπρλόηεηαο πνπ πεξηγξάθνληαη από ηηο παξαθάησ εμηζώζεηο:

x x x x tan(2 x) x 2 2x x 1

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

Τηλζφωνο: Ε-mail: Ώρες διδασκαλίας: 16:00 19:15 μμ

ΔΡΓΑΙΑ 1. Γιαδικησακά πληροθοριακά σζηήμαηα. Ομάδα Δργαζίας: Μεηαπηστιακοί Φοιηηηές. ηέθανος Κονηοβάς ΑΔΜ :283. Πάζτος Βαζίλειος ΑΔΜ :288

ΣΡΑΠΕΖΑ ΘΕΜΑΣΩΝ Α ΛΤΚΕΙΟΤ

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)


Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1

β) (βαζκνί: 2) Έζησ όηη ε ρξνλνινγηθή ζεηξά έρεη κέζε ηηκή 0 θαη είλαη αληηζηξέςηκε. Δίλεηαη ην αθόινπζν απνηέιεζκα από ην EViews γηα ηε :

Image J Plugin particle tracker για παρακολούθηση της κίνησης σωματιδίων

Σύνθετα Δίκτυα. com+plex: with+ -fold (having parts) Διδάζκων Δημήηριος Καηζαρός

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

Η «έμππλε» ρξεκαηνδόηεζε ηεο λεαληθήο επηρεηξεκαηηθόηεηαο Υξεκαηνδνηψληαο εθπαίδεπζε, θίλεηξα θαη εξγαιεία

Transcript:

Εμπειρικό μελϋτη για την διαπύςτωςη τησ επύδραςησ των αρχιτεκτονικών προτύπων ςτισ διϊφορεσ κατηγορύεσ ποιότητασ κατϊ ISO-9126 Πτυχιακή εργασία Ιανουάριος 2010 Στέας Στυλιανός Α.Ε.Μ.:1147 Επιβλέπων καθηγητής: Ιωάννης Σταμέλος Αξηζηνηέιεην Παλεπηζηήκην Θεζζαινλίθεο Σκήκα Πιεξνθνξηθήο

2

Εσταρηστώ γηα τελ ποιύτηκε βοήζεηά τοσς, Τολ θ. Ιφάλλε Στακέιο θαη τολ θ. Γεώργηο Καθαρόλτδα. 3

Περιεχόμενα Πεξηερφκελα... 4 Δηζαγσγή... 6 1. Η εκπεηξηθή κειέηε ελφο πξνβιήκαηνο... 8 1.1 Σχπνη εκπεηξηθήο έξεπλαο... 8 1.2 Δκπεηξηθέο ηξαηεγηθέο... 9 1.3 χγθξηζε ησλ εκπεηξηθψλ ζηξαηεγηθψλ... 10 1.4 Η εκπεηξηθή κειέηε ζηα πιαίζηα ηεο ηερλνινγίαο ινγηζκηθνχ... 11 2. Σν κνληέιν ISO-9126... 12 3. Σα αξρηηεθηνληθά πξφηππα... 17 3.1 Layers... 17 3.2 Blackboard... 19 3.3 Publisher-Subscriber... 20 3.4 Reflection... 22 3.5 Broker (Mediator)... 23 3.6 Microkernel... 24 3.7 Process Coordinator... 25 3.8 Pipes and Filters (Pipeline Architecture)... 26 4. Η αλάιπζε ησλ απνηειεζκάησλ κηαο εκπεηξηθήο κειέηεο κε εξσηεκαηνιφγηα... 28 4.1 Έιεγρνο... 28 4.2 Κσδηθνγξάθεζε... 29 4.3 Μεραλνγξαθηθή επεμεξγαζία... 29 4.4 ηαηηζηηθή Αλάιπζε... 30 4.4.1 Γεηγκαηνιεςία... 30 4.4.2 θάικα δεηγκαηνιεςίαο (Sample Error Estimation)... 32 4.4.3 ηάζκηζε κεηαβιεηψλ (Weighting)... 33 4.4.4 Με δεηγκαηνιεπηηθφ ζθάικα (Non-sampling Error)... 34 4.4.5 Μεηαηξνπή (Recode)... 35 4

4.4.6 πρλφηεηεο... 36 4.4.7 Πηλαθνπνίεζε... 36 4.4.8 Παιηλδξφκεζε... 36 4.4.9 Γξαθηθά θαη Γηαγξάκκαηα... 37 4.4.10 Ο πληειεζηήο Cronbach's α... 37 4.4.11 Reliability... 38 ΠΑΡΑΡΣΗΜΑ... 40 Σα εξσηεκαηνιφγηα γηα ηελ δηελέξγεηα εκπεηξηθήο κειέηεο ζε εηαηξείεο αλάπηπμεο ινγηζκηθνχ θαη έξγα αλνηρηνχ ινγηζκηθνχ γηα ηελ δηαπίζησζε ηεο επίδξαζεο αξρηηεθηνληθψλ πξνηχπσλ ζηηο δηάθνξεο θαηεγνξίεο πνηφηεηαο ινγηζκηθνχ θαηά ISO-9621... 40 Βηβιηνγξαθία... 96 5

Εησαγφγή Η ρξήζε ηνπ ινγηζκηθνχ ζηηο κέξεο καο γίλεηαη φιν θαη πην ζπρλή. Οη εθαξκνγέο πνπ ρξεζηκνπνηνχληαη γίλνληαη νινέλα θαη κεγαιχηεξεο, πνιππινθφηεξεο θαη ζεκαληηθέο γη απηνχο πνπ ηηο ρξεζηκνπνηνχλ. Η νκαιή ιεηηνπξγία ηνπο είλαη πνιιέο θνξέο θξίζηκε γηα ηνπο νξγαληζκνχο θαη ηηο επηρεηξήζεηο πνπ ηηο ρξεζηκνπνηνχλ, ή αθφκα θαη γηα αλζξψπηλεο δσέο. Η απμαλφκελε απηή αλάγθε γηα ινγηζκηθφ, θαζηζηά ηελ πνηφηεηά ηνπ πνιχ ζεκαληηθή. Η πνηφηεηα ελφο ινγηζκηθνχ αληηκεησπίδεηαη απφ δηάθνξεο νπηηθέο γσλίεο. Απηφ νδήγεζε ζηελ δεκηνπξγία δηαθφξσλ κνληέισλ γηα ηνλ πξνζδηνξηζκφ ησλ ηδηνηήησλ ηεο πνηφηεηαο. Αλ θαη δελ ππάξρεη έλαο γεληθά απνδεθηφο νξηζκφο γηα ην «πνηνηηθφ ινγηζκηθφ», είλαη επξέσο απνδεθηφ ην γεγνλφο φηη ε πνηφηεηα ηνπ ζπζηήκαηνο επεξεάδεηαη θαηά θχξην ιφγν απφ ηελ αξρηηεθηνληθή ηνπ ινγηζκηθνχ. Η έξεπλα, αιιά θπξίσο ε εκπεηξία, έρεη νδεγήζεη ζηελ ζπιινγή νξηζκέλσλ αξρηηεθηνληθψλ ζρεδίσλ ηα νπνία δίλνπλ ιχζε ζε ζπγθεθξηκέλα πξνβιήκαηα. Σα ζρέδηα απηά νλνκάδνληαη «Αξρηηεθηνληθά πξφηππα» (Architectural Patterns). Η ιεπηνκεξήο θαηαλφεζε ηεο επίδξαζεο ηνπ θάζε πξνηχπνπ ζηα ραξαθηεξηζηηθά ηνπ θάζε κνληέινπ πνηφηεηαο είλαη πνιχ ζεκαληηθή γηα ηελ επηηπρία ελφο κεραληθνχ ινγηζκηθνχ. Έλα απφ ηα πην δηαδεδνκέλα κνληέια πνηφηεηαο ινγηζκηθνχ είλαη ην ISO Model. Πξφθεηηαη γηα έλα κνληέιν πνπ δεκηνπξγήζεθε απφ ηνλ International Organization for Standardization (ISO) θαη ηελ International Electrotechnical Committee (IEC). Πην ζπγθεθξηκέλα ην ISO Model πνπ αθνξά ηελ πνηφηεηα ηνπ ινγηζκηθνχ είλαη ην ISO 9126. Σν κνληέιν απηφ δεκηνπξγήζεθε απφ ηελ αλάγθε γηα έλα εληαίν δηεζλέο κνληέιν. Σα πην γλσζηά θαη επξέσο δηαδεδνκέλα αξρηηεθηνληθά πξφηππα είλαη ηα εμήο: Layers, Pipes and Filters (Pipeline Architecture),Blackboard, Broker (Mediator), Publisher- Subscriber, Reflection, Microkernel, Process Coordinator. Σα πξφηππα απηά αληηκεησπίδνπλ ην θαζέλα θάπνην ζπγθεθξηκέλν πξφβιεκα φζνλ αθνξά ηελ πνηφηεηα. Έηζη θαηά ηνλ ζρεδηαζκφ θαη ηελ αλάπηπμε ελφο ινγηζκηθνχ, πξέπεη λα γίλεη ζσζηή επηινγή ηνπ θαηαιιειφηεξνπ πξνηχπνπ, αλάινγα κε ηελ ζπκπεξηθνξά ηνπ ζηηο ζπγθεθξηκέλεο απαηηήζεηο πνηφηεηαο ηνπ ινγηζκηθνχ. Έρνπλ γίλεη ζεσξεηηθέο κειέηεο ζρεηηθά κε ηελ παξερφκελε πνηφηεηα ηνπ θάζε πξνηχπνπ, ζχκθσλα κε ην ISO 9126. Όκσο ν βαζκφο ζηνλ νπνίν ηα δηάθνξα πξφηππα επεξεάδνπλ ηελ πνηφηεηα ηνπ ινγηζκηθνχ δελ κπνξεί λα είλαη αθξηβήο ρσξίο λα πξνεγεζεί θάπνηα εκπεηξηθή κειέηε. Η εκπεηξηθή κειέηε έρεη σο ζθνπφ ηελ επηβεβαίσζε ή κε ησλ απνηειεζκάησλ πνπ έρνπλ πξνθχςεη απφ ηελ ζεσξεηηθή κειέηε ελφο πξνβιήκαηνο. Δίλαη κηα δηαδηθαζία θαηά ηελ νπνία νη εξεπλεηέο πξνζπαζνχλ λα εμάγνπλ ζπκπεξάζκαηα κε ηελ δηαδηθαζία ησλ πεηξακάησλ θαη ησλ δνθηκψλ. Έλαο ηξφπνο δηεμαγσγήο κηαο εκπεηξηθήο κειέηεο είλαη κέζσ ηεο έξεπλαο κε ηελ ρξήζε εξσηεκαηνινγίσλ. Η κέζνδνο απηή επηηξέπεη ζηνλ εξεπλεηή λα εμάγεη ζπκπεξάζκαηα κε πην γξήγνξν θαη 6

απνηειεζκαηηθφ ηξφπν, θαζψο δελ ζα ρξεηαζηεί λα θάλεη ηα πεηξάκαηα ν ίδηνο, αιιά ζα ρξεζηκνπνηήζεη ηελ ήδε ππάξρνπζα γλψζε ησλ άιισλ αλζξψπσλ πνπ αζρνινχληαη κε ην αληηθείκελν ηεο έξεπλαο. Σα εξσηεκαηνιφγηα πνπ ζα πξέπεη λα δεκηνπξγήζεη ν εξεπλεηήο γηα λα πξαγκαηνπνηήζεη κηα ηέηνηα έξεπλα ζα πξέπεη λα είλαη αθξηβή σο πξνο ηε δηαηχπσζε ησλ εξσηήζεσλ πνπ ζα πεξηέρνπλ. Θα πξέπεη λα πεξηέρνπλ ηηο θαηάιιειεο εξσηήζεηο ψζηε λα εμαρζνχλ ηα ζσζηά ζπκπεξάζκαηα. Ωο πξνο ην θνηλφ πνπ ζα απεπζπλζεί ν εξεπλεηήο πξνθεηκέλνπ λα ζπκπιεξσζνχλ ηα εξσηεκαηνιφγηα ζα πξέπεη λα δηαζέηεη θάπνηα ραξαθηεξηζηηθά. Θα πξέπεη λα είλαη θαινί γλψζηεο ηνπ αληηθεηκέλνπ ηεο έξεπλαο, πξνθεηκέλνπ λα ππάξρνπλ ζσζηά δεδνκέλα πξνο αλάιπζε κεηά ην πέξαο ηεο έξεπλαο. Δπίζεο ζα πξέπεη λα έρνπλ ηελ δηάζεζε αιιά θαη ηνλ απαηηνχκελν ρξφλν γηα λα ζπκκεηάζρνπλ ζηελ έξεπλα, ψζηε λα κελ γίλεη βηαζηηθά ε δηαδηθαζία, πξάγκα πνπ κπνξεί λα νδεγήζεη ζε κε πξνζεθηηθή ζπκπιήξσζε ησλ εξσηεκαηνινγίσλ θαη ζπλεπψο ζε εζθαικέλα απνηειέζκαηα. Ο εξεπλεηήο ζα πξέπεη λα θξνληίζεη ηνπο παξάγνληεο πνπ θαζηζηνχλ πην αμηφπηζηε ηελ έξεπλα, φπσο γηα παξάδεηγκα λα είλαη ην δείγκα ηνπ αξθεηά κεγάιν θαη αληηπξνζσπεπηηθφ, ψζηε λα κελ ηχρεη ζε εηδηθέο πεξηπηψζεηο. Δπίζεο ζα πξέπεη λα ιάβεη ππφςε εάλ ην θνηλφ πνπ ζπκπιήξσζε ηα εξσηεκαηνιφγηα ήηαλ αξθεηά αμηφπηζην ψζηε λα έρεη ζσζηά απνηειέζκαηα ζην ηέινο ηεο έξεπλαο. Μεηά ηελ δηαδηθαζία ηεο ζπιινγήο πιεξνθνξηψλ κε ηελ ρξήζε ησλ εξσηεκαηνινγίσλ ν εξεπλεηήο ζα πξέπεη λα πξαγκαηνπνηήζεη αλάιπζε ησλ απνηειεζκάησλ. Η δηαδηθαζία απηή είλαη θπξίσο ζηαηηζηηθή. ηα επφκελα θεθάιαηα ζα αλαθεξζνχλ πην ιεπηνκεξψο ε δηαδηθαζία κηαο εκπεηξηθήο κειέηεο, ηα ραξαθηεξηζηηθά ηνπ ISO 9126, ηα αξρηηεθηνληθά πξφηππα πνπ αλαθέξζεθαλ παξαπάλσ, ε δηαδηθαζία αλάιπζεο ησλ απνηειεζκάησλ κηαο εκπεηξηθήο έξεπλαο, πνπ έρεη σο ζθνπφ ηελ εκπεηξηθή κειέηε ηνπ βαζκνχ ζηνλ νπνίν επεξεάδνπλ ηα δηάθνξα αξρηηεθηνληθά πξφηππα ηελ πνηφηεηα ηνπ ινγηζκηθνχ, θαζψο επίζεο θαη ηα θαηάιιεια εξσηεκαηνιφγηα γηα ηελ δηεμαγσγή κηαο ηέηνηαο έξεπλαο. 7

1. Η εκπεηρηθή κειέτε ελός προβιήκατος 1.1 Τύποη εκπεηρηθής έρεσλας Η εκπεηξηθή κειέηε είλαη έλαο ηξφπνο έξεπλαο, ε νπνία αληιεί ηα δεδνκέλα ηεο κέζσ ηεο άκεζεο παξαηήξεζεο ή ηεο δηεμαγσγήο πεηξακάησλ. Ο εξεπλεηήο πξνζπαζεί λα πεξηγξάςεη κε αθξίβεηα ηελ νληφηεηα πνπ ζέιεη λα κειεηήζεη ψζηε λα εμάγεη ζπκπεξάζκαηα, ηα νπνία ζηελ ζπλέρεηα ζα ζπγθξίλεη κε ζεσξεηηθέο κειέηεο πνπ έρνπλ πξνεγεζεί. Μεηά ηελ ζπιινγή δεδνκέλσλ απφ ηνλ εξεπλεηή αθνινπζεί ε αλάιπζε ηνπο ε νπνία γίλεηαη ζπλήζσο κε ζηαηηζηηθέο κεζφδνπο. Η αθξηβήο αλάιπζε ησλ δεδνκέλσλ κε ηε ρξήζε ηππνπνηεκέλσλ ζηαηηζηηθψλ κεζφδσλ είλαη θξίζηκε γηα ηνλ θαζνξηζκφ ηεο ηζρχνο ηεο εκπεηξηθήο έξεπλαο. Τπάξρνπλ δχν είδε έξεπλαο πνπ έρνπλ ε θάζε κία δηαθνξεηηθή πξνζέγγηζε ηεο εκπεηξηθήο κειέηεο. Η Πνηνηηθή έξεπλα έρεη λα θάλεη κε ηελ κειέηε ησλ αληηθεηκέλσλ κε ηα θπζηθά ηνπο ραξαθηεξηζηηθά. Έλαο πνηνηηθφο εξεπλεηήο πξνζπαζεί λα εξκελεχζεη έλα θαηλφκελν βαζηζκέλνο ζε εμεγήζεηο πνπ ιακβάλεη απφ ηνλ θφζκν. Η πνηνηηθή έξεπλα ζηεξίδεηαη ζηελ παξαδνρή φηη ππάξρεη έλα εχξνο δηαθνξεηηθψλ ηξφπσλ εξκελείαο. Ο εξεπλεηήο ελδηαθέξεηαη γηα ηελ κειέηε ησλ ππνζέζεσλ πνπ παξαηεξνχληαη, θαζψο επίζεο θαη γηα ηελ θαηαλφεζε ηνπ ηξφπνπ αληηκεηψπηζεο ηνπ πξνβιήκαηνο πνπ κειεηάηαη. Η Πνζνηηθή έξεπλα θπξίσο έρεη λα θάλεη κε ηελ πνζνηηθνπνίεζε κηαο ζρέζεο ή ηελ ζχγθξηζε δχν ή πεξηζζνηέξσλ νκάδσλ. Ο ζηφρνο ηεο είλαη ν πξνζδηνξηζκφο ηεο ζρέζεο αηηίαο-απνηειέζκαηνο ζε κία ζρέζε. Η πνζνηηθή έξεπλα ζπρλά δηεμάγεηαη κε ηελ δεκηνπξγία ειεγρφκελσλ πεηξακάησλ, ή κε ηελ ζπιινγή δεδνκέλσλ κέζσ κειεηψλ. Η πνζνηηθή έξεπλα είλαη θαηάιιειε φηαλ γίλεηαη έιεγρνο θάπνησλ ρεηξηζκψλ ή δξαζηεξηνηήησλ. Έλα πιενλέθηεκα είλαη φηη ηα πνζνηηθά δεδνκέλα ζπκβάιινπλ ζηελ ρξήζε ζπγθξίζεσλ θαη ζηαηηζηηθψλ αλαιχζεσλ. Δίλαη πηζαλφ ε πνηνηηθή αιιά θαη ε πνζνηηθή έξεπλα λα κειεηνχλ ην ίδην ζέκα φκσο ε θάζε κία λα απεπζχλεηαη ζε δηαθνξεηηθφ ηχπν εξψηεζεο. Γηα παξάδεηγκα κηα πνζνηηθή έξεπλα ζα κπνξνχζε λα ρξεζηκνπνηεζεί γηα λα κειεηήζεη ην πφζν κηα λέα κέζνδνο επηζεψξεζεο κεηψλεη ηνλ αξηζκφ ησλ ιαζψλ πνπ εληνπίδνληαη ζε έλα test. Γηα λα απαληεζεί φκσο ην εξψηεκα ζρεηηθά κε ηελ πεγή νξηζκέλσλ κεηαβνιψλ κεηαμχ δηαθφξσλ επηζεσξνχκελσλ νκάδσλ ζα κπνξνχζε λα ρξεζηκνπνηεζεί κηα πνηνηηθή κέζνδνο. Πιεξνθνξίεο ζρεηηθά κε ηηο εκπεηξηθέο κειέηεο παξνπζηάδνληαη εθηελέζηεξα ζηελ παξαθάησ ηζηνζειίδα: http://en.wikipedia.org/wiki/empirical_method 8

1.2 Εκπεηρηθές Στρατεγηθές Αλάινγα κε ηνλ ζθνπφ ηεο απνηίκεζεο πνπ ζέιεη λα θάλεη ν εξεπλεηήο, ηηο ηερληθέο ή ηηο κεζφδνπο πνπ ζα αθνινπζήζεη, θαζψο επίζεο θαη ηηο ζπλζήθεο θάησ απφ ηηο νπνίεο δηεμάγεηαη ε εκπεηξηθή κειέηε, ππάξρνπλ ηξεηο δηαθνξεηηθνί ηχπνη έξεπλαο (ζηξαηεγηθέο) απφ ηηο νπνίεο κπνξεί λα επηιέμεη. Οη ζηξαηεγηθέο απηέο είλαη νη εμήο: Έξεπλα (Survey), Μειέηε(Case Studies), Πείξακα (Experiment). (http://en.wikipedia.org/wiki/survey, http://en.wikipedia.org/wiki/case_studies, http://en.wikipedia.org/wiki/experiment ) Survey (Έρεσλα). Η Έξεπλα ρξεζηκνπνηείηαη γηα ηελ αλαζθφπεζε, φηαλ γηα παξάδεηγκα έλα εξγαιείν ή κηα ηερληθή ρξεζηκνπνηείηαη γηα έλα ρξνληθφ δηάζηεκα. Οη θπξηφηεξνη ηξφπνη γηα ηελ ζπιινγή ησλ πνηνηηθψλ ή πνζνηηθψλ δεδνκέλσλ είλαη νη ζπλεληεχμεηο θαη ηα εξσηεκαηνιφγηα. Απηά ζπκπιεξψλνληαη απφ έλα αληηπξνζσπεπηηθφ θαη κεγάιν δείγκα ηνπ πιεζπζκνχ, ηνλ νπνίν ζέιεη ν εξεπλεηήο λα κειεηήζεη. Σα απνηειέζκαηα ηεο έξεπλαο αλαιχνληαη πξνθεηκέλνπ λα πξνθχςνπλ πεξηγξαθηθά θαη επεμεγεκαηηθά ζπκπεξάζκαηα. ηε ζπλέρεηα ηα απνηειέζκαηα γεληθεχνληαη γηα ηνλ πιεζπζκφ απφ ηνλ νπνίν πάξζεθε ην δείγκα. Case Study (Μειέτε). Η Case study ρξεζηκνπνηείηαη γηα ηελ παξαθνινχζεζε θαη ηνλ έιεγρν δηαθφξσλ projects θαη δξαζηεξηνηήησλ. Σα δεδνκέλα ζπιιέγνληαη γηα θάπνηνλ ζπγθεθξηκέλν ζθνπφ κε ηελ κειέηε. Αλάινγα κε ηελ ζπιινγή δεδνκέλσλ κπνξεί λα εθηειεζηεί ζηε ζπλέρεηα θάπνηα ζηαηηζηηθή αλάιπζε. Η Case study ζθνπεχεη θπξίσο ζηελ παξαθνινχζεζε κίαο ζπγθεθξηκέλεο ζπκπεξηθνξάο, ή ζηελ επαιήζεπζε κηαο ζρέζεο κεηαμχ δηαθνξεηηθψλ ζπκπεξηθνξψλ. Σν επίπεδν ειέγρνπ ζηελ Case study ζηξαηεγηθή είλαη ρακειφηεξν απφ ηνπ πεηξάκαηνο. Η Case study είλαη κηα παξαηεξεηηθή κειέηε ζε αληίζεζε κε ην πείξακα πνπ είλαη κηα ειεγρφκελε κειέηε. Η Case study γηα παξάδεηγκα κπνξεί λα ζθνπεχεη ζηε δεκηνπξγία ελφο κνληέινπ πξφβιεςεο ηνπ αξηζκνχ ησλ ζθαικάησλ ζε κηα δνθηκαζία. πρλά ζε ηέηνηνπ είδνπο κειέηεο απαηηείηαη πνιχπινθε ζηαηηζηηθή αλάιπζε. Experiment (Πείρακα). Σα πεηξάκαηα ζπλήζσο γίλνληαη ζε εξγαζηεξηαθφ πεξηβάιινλ, ην νπνίν παξέρεη έλα πςειφ επίπεδν ειέγρνπ. Η πην αληηθεηκεληθή κέζνδνο πεηξακαηηζκνχ είλαη κε ηελ αιιαγή κηαο ή πεξηζζνηέξσλ κεηαβιεηψλ θαη ν έιεγρνο ησλ ππνινίπσλ πνπ βξίζθνληαη ζε ζηαζεξά επίπεδα. Η επίδξαζε ησλ αιιαγψλ κεηξείηαη θαη έηζη ν εξεπλεηήο βαζηζκέλνο ζηα δεδνκέλα απηά κπνξεί λα πξαγκαηνπνηήζεη ζηαηηζηηθή αλάιπζε. ε νξηζκέλεο πεξηπηψζεηο φκσο είλαη αδχλαηε ε πεηξακαηηθή κειέηε ελφο πξνβιήκαηνο νπφηε ν 9

εξεπλεηήο πηζαλψο λα ρξεηαζηεί λα εθηειέζεη «νηνλεί πείξακα» (Quasiexperiment). 1.3 ύγκριςη των εμπειρικών ςτρατηγικών Οη πξνυπνζέζεηο γηα κηα έξεπλα πεξηνξίδνπλ ηελ επηινγή ηεο ζηξαηεγηθήο ηεο κειέηεο. Η ζχγθξηζε ησλ ηξηψλ ζηξαηεγηθψλ πνπ αλαθέξζεθαλ ζηεξίδεηαη ζε έλαλ αξηζκφ απφ δηαθνξεηηθνχο παξάγνληεο. Ο παξαθάησ πίλαθαο δείρλεη ηελ επίδξαζε ηεζζάξσλ παξαγφλησλ ζηηο ηξεηο δηαθνξεηηθέο ζηξαηεγηθέο. Οη παξάγνληεο αλαιχνληαη πεξεηαίξσ ζηε ζπλέρεηα. Factor Survey Case Study Experiment Έιεγρνο Δθηέιεζεο Όρη Όρη Ναη Έιεγρνο Μεηξήζεσλ Όρη Ναη Ναη Κφζηνο Έξεπλαο Υακειφ Μεζαίν Τςειφ Δπθνιία Δπαλάιεςεο Τςειή Υακειή Τςειή Οι παπάγονηερ πος επηπεάζοςν ηην επιλογή ζηπαηηγικήρ ζε μια έπεςνα. Έιεγτος Εθτέιεσες Ο έιεγρνο εθηέιεζεο πεξηγξάθεη ην βαζκφ ζηνλ νπνίν ν εξεπλεηήο έρεη ηνλ έιεγρν ηεο κειέηεο. Γηα παξάδεηγκα ζηελ πεξίπησζε κηαο Case study, ηα δεδνκέλα ζπιιέγνληαη θαηά ηελ δηάξθεηα ηεο εθηέιεζεο ελφο project. Δάλ ε δηνίθεζε απνθαζίζεη λα ζηακαηήζεη ηελ κειέηε ηνπ project εμαηηίαο, γηα παξάδεηγκα, νηθνλνκηθψλ ιφγσλ, ν εξεπλεηήο δελ έρεη ηελ δπλαηφηεηα λα νινθιεξψζεη ηελ κειέηε. Σν αληίζεην είλαη έλα πείξακα φπνπ ν εξεπλεηήο έρεη ηνλ έιεγρν ηεο φιεο εθηέιεζεο. Έιεγτος Μετρήσεφλ Ο έιεγρνο κεηξήζεσλ είλαη ν βαζκφο ζηνλ νπνίν ν εξεπλεηήο κπνξεί λα απνθαζίζεη πνηεο κεηξήζεηο ζα ζπιιέμεη θαη ζα ζπκπεξηιάβεη ή ζα εμαηξέζεη απφ ηελ εθηέιεζε ηεο κειέηεο. Κόστος Έρεσλας Σν θφζηνο ηεο έξεπλαο πνηθίιεη αλάινγα κε ηελ ζηξαηεγηθή ηεο έξεπλαο πνπ ζα επηιεγεί. Απηφ ζρεηίδεηαη κε ην κέγεζνο ηεο έξεπλαο θαη ηελ αλάγθε γηα πφξνπο. Εσθοιία επαλάιευες Έλαο αθφκα παξάγνληαο πνπ πξέπεη λα ιεθζεί ππφςε είλαη ε πηζαλφηεηα λα ρξεηαζηεί λα επαλαιεθζεί ε έξεπλα. Ο ζθνπφο ηεο επαλάιεςεο είλαη λα θαλεί φηη ηα απνηειέζκαηα ηνπ απζεληηθνχ πεηξάκαηνο είλαη έγθπξα θαη γηα έλα κεγαιχηεξν πιεζπζκφ. Έηζη ε αλάγθε γηα επθνιία επαλάιεςεο ηεο έξεπλαο επεξεάδεη ηελ επηινγή ηεο θαηάιιειεο ζηξαηεγηθήο γηα ηελ έξεπλα πνπ ζα πξαγκαηνπνηεζεί. 10

1.4 Η εμπειρικό μελϋτη ςτα πλαύςια τησ τεχνολογύασ λογιςμικού Ο ζεκαληηθφηεξνο ιφγνο γηα ηελ εθηέιεζε πνζνηηθψλ εκπεηξηθψλ εξεπλψλ ζηα πιαίζηα ηεο ηερλνινγίαο ινγηζκηθνχ, είλαη φηη παξέρεη ζηνλ ηερλνιφγν ινγηζκηθνχ, αληηθεηκεληθά θαη ζεκαληηθά σο πξνο ηελ ζηαηηζηηθή αλάιπζε απνηειέζκαηα φζνλ αθνξά ηελ θαηαλφεζε, ηνλ έιεγρν, ηελ πξφβιεςε θαη ηελ βειηίσζε ηεο αλάπηπμεο ηνπ ινγηζκηθνχ. Γηα κηα επηηπρεκέλε αλάπηπμε ινγηζκηθνχ ππάξρνπλ θάπνηεο βαζηθέο απαηηήζεηο. Η εκπεηξηθή κειέηε είλαη ζεκαληηθή γηα ηελ επηηπρία ησλ απαηηήζεσλ απηψλ. Οη απαηηήζεηο γηα κηα επηηπρεκέλε αλάπηπμε ινγηζκηθνχ είλαη: 1. Καηαλφεζε ηεο δηαδηθαζίαο θαη ησλ πξντφλησλ ινγηζκηθνχ. 2. Οξηζκφο ηεο δηαδηθαζίαο θαη ησλ ηδηνηήησλ ηνπ πξντφληνο. 3. Αμηνιφγεζε ησλ επηηπρηψλ θαη απνηπρηψλ. 4. Αλαηξνθνδφηεζε πιεξνθνξηψλ γηα ηνλ έιεγρν ηνπ έξγνπ. 5. Μάζεζε απφ ηελ εκπεηξία. 6. πγθέληξσζε θαη επαλαρξεζηκνπνίεζε ηεο ζρεηηθήο εκπεηξίαο. 11

2. Σο μοντϋλο ISO-9126 Η αλάγθε γηα πνηφηεηα ηνπ ινγηζκηθνχ νδήγεζε ζηελ αλάπηπμε δηαθφξσλ κνληέισλ πνηφηεηαο. Μεξηθά απφ απηά είλαη ηα: McCall, Boehm, FURPS θαη FURPS+, Dromey, SATC θαη άιια. Όια απηά ηα κνληέια νδήγεζαλ ζηελ αλάγθε γηα ηελ δεκηνπξγία ελφο δηεζλνχο πξνηχπνπ. Έηζη ν Γηεζλήο Οξγαληζκφο γηα ηελ Σππνπνίεζε (International Organizations for Standardization - ISO) ζε ζπλεξγαζία κε ηελ Γηεζλή Ηιεθηξνηερληθή Δπηηξνπή (International Electrotechnical Committee - IEC) δεκηνχξγεζαλ ην πξφηππν ISO 9126 γηα ηελ πνηφηεηα ησλ πξντφλησλ ινγηζκηθνχ. To πξφηππν ISO ρξεζηκνπνηεί ηξεηο πηπρέο ηεο πνηφηεηαο: ηελ εζσηεξηθή, ηελ εμσηεξηθή θαη ηελ πνηφηεηα ρξήζεο. Σα εζσηεξηθά ραξαθηεξηζηηθά ελφο ινγηζκηθνχ επεξεάδνπλ ηα εμσηεξηθά, φηαλ ην ινγηζκηθφ ρξεζηκνπνηείηαη, θαη απηά ηα εμσηεξηθά ραξαθηεξηζηηθά επεξεάδνπλ ηελ γλψκε ηνπ ρξήζηε ζρεηηθά κε ηελ πνηφηεηα ηνπ ινγηζκηθνχ. (http://en.wikipedia.org/wiki/iso_9126) Η ζρέζε ησλ ηξηψλ απηψλ πηπρψλ ηεο πνηφηεηαο θαηά ηε δηάξθεηα ηεο αλάπηπμεο κηαο δηεξγαζίαο θαίλεηαη ζην παξαθάησ ζρήκα. Η ζσέζη μεηαξύ ηων διαθοπεηικών πηςσών ηηρ ποιόηηηαρ ζύμθωνα με ηο ISO 9126 Απηφ κπνξεί λα ζεσξεζεί ζαλ πιαίζην εξγαζίαο ζε θάζε ζηάδην ηεο αλάπηπμεο, απφ ηνλ θαζνξηζκφ ησλ απαηηήζεσλ κέρξη ηελ απνηίκεζε ηνπ ηειηθνχ πξντφληνο. χκθσλα κε ην ISO 9126 ε εζσηεξηθή πνηφηεηα εθθξάδεηαη κε έμη θχξηνπο παξάγνληεο: Functionality, Reliability, Usability, Efficiency, Maintainability θαη Portability. Οη παξάγνληεο απηνί, καδί κε ηα ππφ-ραξαθηεξηζηηθά ηνπο εκθαλίδνληαη ζην παξαθάησ δηάγξακκα. (Software Architecture, Software Components and Software Quality Athanasios Tzikas, George Kakarontzas) 12

Το μονηέλο ISO-9126 Η κεγαιχηεξε δηαθνξά ηνπ κνληέινπ ISO κε ηα ππφινηπα είλαη πσο φια ηα ππφραξαθηεξηζηηθά είλαη ζηελά ζπλδεδεκέλα κε ηνπο παξάγνληεο, θη απηφ θάλεη ην κνληέιν πην μεθάζαξν θαη εχρξεζην. Δπίζεο πεξηιακβάλεη ζηνπο παξάγνληεο ηελ ιεηηνπξγηθφηεηα (Functionality) ελψ ηα πεξηζζφηεξα άιια κνληέια πεξηιακβάλνπλ κφλν ηα κε ιεηηνπξγηθά ραξαθηεξηζηηθά. Κάζε παξάγνληαο ζρεηίδεηαη κε κηα ζπκπεξηθνξά, απηφ γίλεηαη γηα λα πεξηγξαθεί ε ηθαλφηεηα ηνπ ινγηζκηθνχ λα αληαπνθξίλεηαη ζηα standards ή ηνπο θαλφλεο ζπκπεξηθνξάο ηνπ θάζε παξάγνληα. Οη νξηζκνί ησλ ραξαθηεξηζηηθψλ πνηφηεηαο ζχκθσλα κε ην ISO 9126 είλαη: Functionality: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη νξηζκέλεο ιεηηνπξγίεο πνπ αληαπνθξίλνληαη ζηηο πξνδηαγξαθέο θαη ηηο αλάγθεο ηνπ ρξήζηε, φηαλ ην ινγηζκηθφ εθηειείηαη θάησ απφ ζπγθεθξηκέλεο ζπλζήθεο. Suitability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη ην θαηάιιειν ζχλνιν ιεηηνπξγηψλ γηα ηελ εθηέιεζε ζπγθεθξηκέλσλ θαζεθφλησλ θαη ζηφρσλ ηνπ ρξήζηε. Accuracy: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη ηα ζσζηά θαη ζπκθσλεκέλα απνηειέζκαηα ή λα αληηδξά κε ηελ πξνθαζνξηζκέλε αθξίβεηα. Interoperability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα αιιειεπηδξά κε έλα ή πεξηζζφηεξα θαζνξηζκέλα ζπζηήκαηα. Security: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα πξνζηαηεχεη ηηο πιεξνθνξίεο θαη ηα δεδνκέλα, πξνθεηκέλνπ κε εμνπζηνδνηεκέλα άηνκα ή ζπζηήκαηα λα κελ κπνξνχλ λα ηα δηαβάζνπλ ή λα ηα ηξνπνπνηήζνπλ. Δπίζεο λα κελ απαγνξεχεηαη ε πξφζβαζε ζηα εμνπζηνδνηεκέλα άηνκα. 13

Reliability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη έλα θαζνξηζκέλν επίπεδν επηδφζεσλ, φηαλ ρξεζηκνπνηείηαη θάησ απφ νξηζκέλεο ζπλζήθεο. Maturity: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα απνθεχγεη ηελ απνηπρία σο απνηέιεζκα ιαζψλ ηνπ ινγηζκηθνχ. Fault tolerance: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη έλα θαζνξηζκέλν επίπεδν επηδφζεσλ ζε πεξηπηψζεηο ιαζψλ ινγηζκηθνχ. Recoverability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα μαλάπεηπραίλεη έλα θαζνξηζκέλν επίπεδν επηδφζεσλ θαη λα αλαθηά ηα δεδνκέλα πνπ ζίγνληαη άκεζα, ζηελ πεξίπησζε κηαο απνηπρίαο. Usability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα γίλεη θαηαλνεηφ, εχθνιν ζηελ κάζεζε θαη ηελ ρξήζε, θαζψο επίζεο θαη ειθπζηηθφ πξνο ηνλ ρξήζηε, φηαλ ρξεζηκνπνηείηαη ππφ ζπγθεθξηκέλεο ζπλζήθεο. Understandability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα βνεζάεη ηνλ ρξήζηε λα θαηαιάβεη εάλ ην ινγηζκηθφ είλαη ην θαηάιιειν γη απηφ πνπ επηζπκεί λα θάλεη, πσο κπνξεί λα ρξεζηκνπνηεζεί γηα ζπγθεθξηκέλεο ιεηηνπξγίεο, θαζψο επίζεο θαη πνηνη είλαη νη φξνη ιεηηνπξγίαο ηνπ. Learnability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα βνεζήζεη ηνλ ρξήζηε λα κάζεη ηηο ιεηηνπξγίεο ηνπ. Operability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα βνεζήζεη ηνλ ρξήζηε λα ην ρεηξηζηεί θαη λα ην ειέγμεη. Attractiveness: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα είλαη ειθπζηηθφ γηα ηνλ ρξήζηε. Efficiency: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη έλα θαζνξηζκέλν επίπεδν επηδφζεσλ, αλαινγηθά κε ην κέγεζνο ησλ πφξσλ πνπ ρξεζηκνπνηνχληαη, ππφ ζπγθεθξηκέλεο ζπλζήθεο. (http://en.wikipedia.org/wiki/algorithmic_efficiency) Time behavior: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα παξέρεη θαηάιιειε απφθξηζε θαη ρξφλνπο επεμεξγαζίαο φηαλ εθηειείηαη θάησ απφ ζπγθεθξηκέλεο ζπλζήθεο. Resource utilization: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα ρξεζηκνπνηεί ην θαηάιιειν κέγεζνο θαη ηχπν πφξσλ φηαλ ην ινγηζκηθφ εθηειείηαη θάησ απφ ζπγθεθξηκέλεο ζπλζήθεο. Maintainability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα ηξνπνπνηείηαη. Οη ηξνπνπνηήζεηο κπνξεί λα πεξηιακβάλνπλ δηνξζψζεηο, βειηηψζεηο, ή πξνζαξκνγέο ηνπ ινγηζκηθνχ γηα θάπνην δηαθνξεηηθφ πεξηβάιινλ. Analysability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα αλαιπζεί, γηα ηελ δηάγλσζε ειιείςεσλ ή αηηίσλ ησλ απνηπρηψλ ζην ινγηζκηθφ, θαζψο επίζεο θαη ησλ ηκεκάησλ πνπ ζα πξέπεη λα ηξνπνπνηεζνχλ. 14

Changeability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα επηηξέπεη κηα ζπγθεθξηκέλε ηξνπνπνίεζε πνπ ρξεηάδεηαη λα γίλεη. Stability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα απνθεχγεη κε αλακελφκελεο επηδξάζεηο απφ ηξνπνπνηήζεηο πνπ πξέπεη λα γίλνπλ. Testability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα επηηξέπεη ζην ηξνπνπνηεκέλν ινγηζκηθφ λα επηθπξψλεηαη. Portability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα κεηαθέξεηαη απφ έλα πεξηβάιινλ ζε θάπνην άιιν.(http://en.wikipedia.org/wiki/software_portability) Adaptability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα πξνζαξκφδεηαη ζε θάπνην δηαθνξεηηθφ πεξηβάιινλ ρσξίο λα είλαη απαξαίηεηεο επηπιένλ ελέξγεηεο, εθηφο ησλ πξνθαζνξηζκέλσλ γηα ηνλ ζθνπφ απηφ. Installability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα εγθαζίζηαηαη ζε έλα ζπγθεθξηκέλν πεξηβάιινλ. Co-existence: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα ζπλππάξρεη κε άιια αλεμάξηεηα ινγηζκηθά ζε έλα θνηλφ πεξηβάιινλ φπνπ ζα κνηξάδεηαη ηνπο ίδηνπο πφξνπο. Replaceability: Η ηθαλφηεηα ηνπ πξντφληνο ινγηζκηθνχ λα ρξεζηκνπνηείηαη ζηελ ζέζε ελφο άιινπ ζπγθεθξηκέλνπ ινγηζκηθνχ γηα ηνλ ίδην ζθνπφ ζην ίδην πεξηβάιινλ. Σν κνληέιν γηα ηελ πνηφηεηα ζηε ρξήζε είλαη απινχζηεξν έηζη ψζηε λα αληαλαθιά ηηο πξνζδνθίεο ηνπ ρξήζηε. Υξεζηκνπνηεί κφλν ηέζζεξηο παξάγνληεο: Απνηειεζκαηηθφηεηα (Effectiveness): Η αθξηβήο θαη πιήξεο εθπιήξσζε ησλ ζηφρσλ ηνπ ρξήζηε. Παξαγσγηθφηεηα (Productivity): Οη πφξνη πνπ απαηηνχληαη γηα ηελ επίηεπμε ελφο ζηφρνπ (ρξφλνο, πξνζπάζεηα, πιηθά, ρξήκαηα). Αζθάιεηα (Safety): Η πηζαλφηεηα λα είλαη ην πξντφλ επηθίλδπλν γηα ηνπο ρξήζηεο, ηνπο νξγαληζκνχο θαη ην γεληθφηεξν πεξηβάιινλ ηνπ. Ιθαλνπνίεζε (Satisfaction): Η γεληθφηεξε ηθαλνπνίεζε ηνπ ρξήζηε ζρεηηθά κε ηελ αιιειεπίδξαζή ηνπ κε ην πξφγξακκα. Αλ θαη ην πξφηππν ISO 9126 είλαη έλα ζεκαληηθφ βήκα πξνο ηελ θαζηέξσζε ελφο εληαίνπ κνληέινπ ππάξρνπλ νξηζκέλα ζέκαηα πνπ παξακέλνπλ αλνηρηά θαζψο επίζεο θαη νξηζκέλεο επηθξίζεηο. Έλα πξψην ζέκα είλαη πσο νη παξάγνληεο πνπ ραξαθηεξίδνπλ σο πξνο ηελ πνηφηεηα ηηο ζπκπεξηθνξέο ηνπ ινγηζκηθνχ είλαη απζαίξεηνη. Δπίζεο ην πξφηππν απηφ ζηεξείηαη ινγηθήο. Γηα παξάδεηγκα πνιινί ρξήζηεο έρνπλ κηα κπεξδεκέλε αληίιεςε φζνλ αθνξά ηνπο παξάγνληεο Maintainability θαη Portability θαζψο ηα ππφ-ραξαθηεξηζηηθά ηνπο είλαη πνιχ ζρεηηθά κεηαμχ ηνπο. Δπηπιένλ, ην κνληέιν δελ δηεπθξηλίδεη ην επίπεδν ζπκκεηνρήο ηνπ θάζε επηκέξνπο ραξαθηεξηζηηθνχ, θαηά ηνλ θαζνξηζκφ ηνπ αλψηαηνπ παξάγνληα. Δάλ δελ γλσξίδνπκε ην βαζκφ ζηνλ νπνίν ηα ππφ-ραξαθηεξηζηηθά 15

επεξεάδνπλ ηνλ παξάγνληα, είλαη αδχλαην λα κεηξεζεί ν ζπληειεζηήο ηνπ. Αθφκα θαη αλ έρνπκε αθξηβή κέηξα ησλ ππφ-ραξαθηεξηζηηθψλ ζα πξέπεη λα δηακνξθψζνπκε κηα θφξκνπια πξνθεηκέλνπ λα ηα ζπλδπάζνπκε θαη λα βγάινπκε αζθαιή ζπκπεξάζκαηα γηα ηνλ παξάγνληα. Γηα απηνχο ινηπφλ ηνπο ιφγνπο ηη ISO 9126 είλαη ππφ αλαζεψξεζε θαη αλακέλεηαη λα αληηθαηαζηαζεί απφ ην ISO 25010. 16

3. Σα αρχιτεκτονικϊ πρότυπα Η αξρηηεθηνληθή ηνπ ινγηζκηθνχ έρεη λα θάλεη κε ηελ δνκή θαη ην ζρεδηαζκφ ηνπ ζπζηήκαηνο. Όπσο έρεη ήδε αλαθεξζεί έρεη παξαηεξεζεί φηη δηάθνξεο αξρηηεθηνληθέο ινγηζκηθνχ βνεζνχλ ζηελ επίιπζε ζπγθεθξηκέλσλ πξνβιεκάησλ. Έηζη κε ηελ πνηφηεηα ηνπ ινγηζκηθνχ λα είλαη νινέλα θαη ζεκαληηθφηεξε έρνπλ θαζηεξσζεί νξηζκέλα αξρηηεθηνληθά πξφηππα. Σα πην γλσζηά θαη ζπρλφηεξα ρξεζηκνπνηνχκελα είλαη ηα εμήο: Layers, Blackboard, Publisher-Subscriber, Reflection, Broker (Mediator), Microkernel, Process Coordinator, Pipes and Filters (Pipeline Architecture). http://en.wikipedia.org/wiki/design_pattern_(computer_science) ηελ ζπλέρεηα παξαηίζεληαη ηα θπξηφηεξα ραξαθηεξηζηηθά ησλ πξνηχπσλ απηψλ. 3.1 Layers Η αξρηηεθηνληθή Layers αλαιχεη ην ζχζηεκα ζε μερσξηζηέο ππνκνλάδεο, νη νπνίεο θαινχληαη layers. Κάζε έλα layer παξέρεη ππεξεζίεο ζην αλψηεξφ ηνπ θαη θάλεη αηηήζεηο ζην θαηψηεξφ ηνπ. Η απσιηεκηονική Layers. Έλα ζηξψκα κπνξεί λα απνηειείηαη απφ πνιιά ζηνηρεία ινγηζκηθνχ, πνπ αλήθνπλ ζην ίδην επίπεδν αθαίξεζεο. Η επηθνηλσλία κεηαμχ ησλ ζηξσκάησλ επηηξέπεηαη κφλν φηαλ ηα ζηξψκαηα είλαη γεηηνληθά. ε νξηζκέλεο παξαιιαγέο φκσο ηνπ πξνηχπνπ, φπσο είλαη ην Relaxed Layers νη ππεξεζίεο ελφο layer δελ είλαη νξαηέο κφλν ζηα δηπιαλά αιιά θαη ζε φια ηα αλψηεξά ηνπ. 17

Τα διάθοπα ζηοισεία λογιζμικού πος μποπεί να πεπιέσει ένα layer. Έλα παξάδεηγκα ηεο αξρηηεθηνληθήο Layers είλαη ην ζχζηεκα Client-Server. Ο client ζηέιλεη αηηήζεηο ζηνλ Server. Ο Server επεμεξγάδεηαη ηηο αηηήζεηο θαη επηθνηλσλεί κε ηελ βάζε δεδνκέλσλ γηα λα πάξεη ηα απαξαίηεηα δεδνκέλα. Σέινο ζηέιλεη ηα απνηειέζκαηα πίζσ ζηνλ client. Μηα άιιε εθαξκνγή ηεο αξρηηεθηνληθήο Layers εληνπίδεηαη ζηελ εθαξκνγή ησλ πξσηνθφιισλ OSI θαη TCP/IP. ηα πξσηφθνιια απηά ε επηθνηλσλία επηηξέπεηαη κφλν κεηαμχ ησλ ίδησλ επηπέδσλ δχν ζπλδεδεκέλσλ κεραλεκάησλ. Σα δεδνκέλα κεηαθέξνληαη κεηαμχ ησλ κεραλεκάησλ κφλν απφ ην θαηψηεξν ζηξψκα. Η επικοινωνία μεηαξύ δύο ςπολογιζηών μέζω ενόρ router με ηην σπήζη ηος ππωηοκόλλος TCP/IP. 18

3.2 Blackboard Η αξρηηεθηνληθή Blackboard παξέρεη έλα ζρέδην, φπνπ έλαο αξηζκφο απφ αλεμάξηεηα ππνζπζηήκαηα ζπλεξγάδνληαη πάλσ ζε δηακνηξαδφκελα δεδνκέλα γηα λα παξέρνπλ κηα ιχζε ζε θάπνην πξφβιεκα. Σα ππνζπζηήκαηα νλνκάδνληαη Knowledge Sources (Πεγέο Γλψζεο). Κάζε κία απφ απηέο έρεη ηνλ ξφιν ελφο εηδηθνχ ζε έλα ζπγθεθξηκέλν πεδίν γλψζεο. Έηζη ε θάζε knowledge source παξέρεη κία κεξηθή ιχζε ζην πξφβιεκα. Η νινθιεξσκέλε ιχζε ηνπ πξνβιήκαηνο κπνξεί λα πξνθχςεη ζπλδπάδνληαο ηελ δνπιεηά ησλ knowledge sources. Οη knowledge sources δελ επηθνηλσλνχλ απεπζείαο κεηαμχ ηνπο, αιιά κε ηελ ρξήζε ηνπ Blackboard. Οη κνλαδηθέο απαηηήζεηο γηα ηνλ Blackboard είλαη ε χπαξμε ελφο πξσηνθφιινπ ή ελφο ιεμηινγίνπ ην νπνίν θαζνξίδεη ηνλ ηχπν ησλ δεδνκέλσλ πνπ επηηξέπνληαη ζηνλ Blackboard αιιά θαη αλαγλσξίδνληαη απφ ηηο knowledge sources. Η θάζε knowledge source ρξεζηκνπνηεί δεδνκέλα απφ ηνλ blackboard, ηα επεμεξγάδεηαη θαη ηα ηνπνζεηεί πίζσ πξνθεηκέλνπ θάπνηα άιιε knowledge source λα ηα ρξεζηκνπνηήζεη γηα πεξεηαίξσ επεμεξγαζία. Η κεξηθή ιχζε πνπ παξάγεη ε θάζε knowledge source νλνκάδεηαη ππφζεζε. Οη ππνζέζεηο κπνξνχλ λα απνξξηθηνχλ απφ θάπνηα άιιε knowledge source θαη λα απνκαθξπλζνχλ απφ ηνλ blackboard. Η δηαδηθαζία απηή νδεγεί ζηαδηαθά ζε ιχζεηο ζηα πςειφηεξα επίπεδα αθαίξεζεο θαη ζπλερίδεηαη κέρξη λα πξνθχςεη έλα ηθαλνπνηεηηθφ απνηέιεζκα. Ο ζπγρξνληζκφο ησλ δηαθφξσλ ζηνηρείσλ θαη ν πξνγξακκαηηζκφο ησλ ιεηηνπξγηψλ, θαζψο επίζεο θαη ε απφθαζε ζρεηηθά κε ηελ θαηαιιειφηεηα ηεο ιχζεο, πνπ ζα νινθιήξσλε ηελ δηαδηθαζία, έρεη αλαηεζεί ζε έλαλ ειεγθηή (controller). Ο ειεγθηήο είλαη επίζεο ππεχζπλνο θαη γηα ηνλ θαζνξηζκφ ηεο ζηξαηεγηθήο πνπ ζα αθνινπζεζεί θαη γηα ηελ θαηεχζπλζε ηεο δηαδηθαζίαο επίιπζεο, ζχκθσλα κε ηα δεδνκέλα πνπ βξίζθνληαη ζηνλ blackboard, ηελ πξφνδν πνπ έρεη γίλεη θαη ηνπο πεξηνξηζκνχο εμαηηίαο ηεο έιιεηςεο ρξφλνπ ή πφξσλ. (http://en.wikipedia.org/wiki/blackboard_system) 19

Η απσιηεκηονική Blackboard. Η θχξηα εθαξκνγή ηεο αξρηηεθηνληθήο απηήο είλαη ζε πξνβιήκαηα κε κεληεηεξκηληζηηθέο ιχζεηο. Δπίζεο ρξεζηκνπνηείηαη θαη γηα πξνβιήκαηα πνπ καο αξθεί κηα ηθαλνπνηεηηθή πξνζέγγηζε ηεο ιχζεο. πλήζσο ηέηνηα πξνβιήκαηα είλαη απηά πνπ πεξηιακβάλνπλ δεδνκέλα εηζφδνπ πνπ πεξηέρνπλ ζφξπβν ή ιάζε, δειαδή αλαγλψξηζε εηθφλαο θαη ήρνπ, ηερλεηή λνεκνζχλε, ξνκπνηηθή φξαζε θαη άιια. 3.3 Publisher-Subscriber Η αξρηηεθηνληθή Publisher-Subscriber ρξεζηκνπνηείηαη γηα λα επηηεπρζεί ν ζπγρξνληζκφο δηαθνξεηηθψλ ζπλεξγαδφκελσλ ζηνηρείσλ, ελψ εμαζθαιίδεη θαη πςειφ βαζκφ αλεμαξηεζίαο κεηαμχ ηνπο. Όηαλ θάπνην ζηνηρείν πξνθαιεί κηα αιιαγή ζην ζχζηεκα, ηφηε πξέπεη λα ελεκεξσζνχλ φια ηα άιια ζηνηρεία πνπ ελδηαθέξνληαη γηα ηελ αιιαγή απηή. Η ιεηηνπξγία απηή πξέπεη λα γίλεηαη ρσξίο ηελ άκεζε επηθνηλσλία ησλ ζηνηρείσλ. Σν πξφηππν Publisher-Subscriber θαζνξίδεη έλα ζχλνιν απφ ζεκαηηθέο ελφηεηεο (Subjects), πνπ αληηπξνζσπεχνπλ δηαθνξεηηθά ζχλνια ελδηαθεξφλησλ ζηα νπνία κπνξεί λα ζπκβνχλ αιιαγέο. Σν ζηνηρείν πνπ πξνθαιεί κηα αιιαγή νλνκάδεηαη Publisher. Σα ζηνηρεία πνπ πξέπεη λα ελεκεξσζνχλ γηα κηα αιιαγή νλνκάδνληαη Subscribers. Όηαλ ν Publisher θάλεη κηα αιιαγή ζε έλα ζέκα, ηφηε φινη νη subscribers πνπ έρνπλ δειψζεη ελδηαθέξνλ γηα απηήλ ηελ ζεκαηηθή ελφηεηα πξέπεη λα ελεκεξσζνχλ. Σν πξφηππν απηφ επηηξέπεη ηελ «απφ πνιινχο πξνο πνιινχο» ζρέζε κεηαμχ ησλ ζηνηρείσλ, θαζψο πνιινί publishers κπνξνχλ λα ηξνπνπνηήζνπλ έλα ζέκα κηαο ζεκαηηθήο ελφηεηαο, ελψ παξάιιεια πνιινί Subscribers λα είλαη εγγεγξακκέλνη ζηελ 20

ελφηεηα απηή. Παξάιιεια ηα ζηνηρεία κπνξνχλ λα ζρεηίδνληαη κε πνιιέο ζεκαηηθέο ελφηεηεο. Η απσιηεκηονική Publisher-Subscriber. Η εηδνπνίεζε ησλ Subscribers κπνξεί λα επηηεπρζεί κε δχν ηξφπνπο: είηε κε ηε ρξήζε ησλ κεηξψσλ πνπ πεξηέρνπλ ηηο ζπλδέζεηο κεηαμχ Subscribers θαη ησλ ζεκάησλ, είηε κε ηελ κεηάδνζε κελπκάησλ απφ ηνπο Publishers. Με ηελ απνζηνιή κελπκάησλ, ην κήλπκα, ην νπνίν πεξηέρεη ην ζέκα, αιιά θαη ηηο αιιαγέο ηνπ, κεηαδίδεηαη ζε φινπο ηνπο ζπλδξνκεηέο ηνπ ζπζηήκαηνο, ζπλήζσο κέζσ ελφο δηθηχνπ. Οη Subscribers πνπ είλαη ζπλδεδεκέλνη ζην δίθηπν, ιακβάλνπλ ην κήλπκα θαη αλ είλαη θάπνην ζέκα πνπ ηνπο ελδηαθέξεη, ην ρξεζηκνπνηνχλ, αιιηψο ζα ην αγλνήζνπλ. Όζνλ αθνξά ηελ εηδνπνίεζε ησλ Subscribers ζρεηηθά κε ηελ αιιαγή ησλ δεδνκέλσλ, ππάξρνπλ δχν κνληέια. ην "Push model», νη εθδφηεο απνζηέιινπλ φια ηα δεδνκέλα πνπ άιιαμαλ ζηνπο Subscribers. ην "Pull model" κφλν κηα απιή εηδνπνίεζε ζηέιλεηαη θαη νη Subscribers θαινχληαη λα αλαθαιχςνπλ κφλνη ηνπο ηη αιιαγέο έρνπλ γίλεη θαη λα απνθαζίζνπλ αλ ζέινπλ λα αλαθηήζνπλ ηα δεδνκέλα πνπ άιιαμαλ. Μηα θνηλή εθαξκνγή ηνπ πξνηχπνπ Publisher-Subscriber είλαη ζε δηαδξαζηηθέο εθαξκνγέο φπνπ ελεκεξψλεηαη ε δηεπαθή ρξήζηε δπλακηθά, φηαλ ζπκβαίλεη κηα αιιαγή ζηα δεδνκέλα ηνπ ζπζηήκαηνο. ηελ πεξίπησζε απηή, ε δηεπαθή ρξήζηε παίδεη ην ξφιν ηνπ Subscriber. 21

3.4 Reflection Η γεληθή ηδέα πίζσ απφ ην πξφηππν Reflection είλαη λα δεκηνπξγεζεί έλα επέιηθην, δπλακηθά κεηαβαιιφκελν θαη απηνπξνζαξκνδφκελν ζχζηεκα, δηαρσξηδφκελν ζε δχν επίπεδα: ην Base Level θαη ην Meta Level. Σν Base Level πεξηέρεη ηε ινγηθή ηεο εθαξκνγήο. Σν Meta Level παξέρεη πιεξνθνξίεο ζρεηηθά κε ηηο πηπρέο ηνπ ζπζηήκαηνο, πνπ κπνξνχλ λα αιιάμνπλ δπλακηθά. Η ιεηηνπξγηθφηεηα ηνπ Base Level βαζίδεηαη ζην Meta Level. Έηζη, φηαλ ζπκβεί κηα αιιαγή ζην Meta Level, ε ζπκπεξηθνξά ηνπ Base Level ζα πξέπεη λα πξνζαξκνζηεί θαηάιιεια. Η απσιηεκηονική Reflection. Η ρξήζε ησλ δχν επηπέδσλ ρσξίδεη ηηο βαζηθέο ιεηηνπξγίεο ηνπ ζπζηήκαηνο (πνπ πινπνηνχληαη ζηα αληηθείκελα ηνπ Base Level) απφ φια ηα ζηνηρεία ηεο δνκήο θαη ηεο ζπκπεξηθνξάο ηνπ πνπ κπνξεί λα ηξνπνπνηεζνχλ (πινπνηνχληαη ζηα αληηθείκελα ηνπ Meta Level). Με ηνλ ηξφπν απηφ, θάπνηα αιιαγή δελ ζα απαηηήζεη πεξαηηέξσ ηξνπνπνηήζεηο ζην Base Level, θαζψο ηα δχν επίπεδα είλαη αλεμάξηεηα. Κάζε Meta-αληηθείκελν ελζσκαηψλεη πιεξνθνξίεο ζρεηηθά κε έλα κφλν αληηθείκελν ηνπ Base Level πνπ είλαη πηζαλφλ λα αιιάμεη. Οη πιεξνθνξίεο ζηα Meta-αληηθείκελα κπνξνχλ λα παξέρνληαη θαη λα ηξνπνπνηεζνχλ απφ ην ρξήζηε, ηα αληηθείκελα ηνπ Base Level ή ην πεξηβάιινλ ηνπ ζπζηήκαηνο. Κάζε αληηθείκελν ηνπ Base Level αληηπξνζσπεχεη κηα ππεξεζία ηνπ ζπζηήκαηνο. Πξνθεηκέλνπ λα πινπνηεζεί ε ππεξεζία ην αληηθείκελν ρξεηάδεηαη ηηο πιεξνθνξίεο πνπ πεξηέρνληαη ζηα Metaαληηθείκελα κε ηα νπνία ζρεηίδνληαη. Η πξφζβαζε ηνπ Meta-αληηθεηκέλνπ γηα αιιαγέο πξνζδηνξίδεηαη απφ ην Meta Object Protocol. Σν πξσηφθνιιν απηφ παξέρεη δηεπαθή γηα ρξήζηεο, άιιεο εθαξκνγέο ή ζηνηρεία ηνπ ζπζηήκαηνο γηα ηνλ θαζνξηζκφ ησλ αιιαγψλ ζην Meta Level. Δπίζεο είλαη ππεχζπλν γηα ηελ εθαξκνγή ησλ αιιαγψλ. 22

Απηφ κπνξεί λα πξνυπνζέηεη ηελ αληηθαηάζηαζε ησλ ππαξρφλησλ αληηθεηκέλσλ, ηε δεκηνπξγία θαηλνχξγησλ θαη ηελ αλαλέσζε ησλ ζπλδέζεψλ ηνπο κε ηα αληηθείκελα ηνπ Base Level. 3.5 Broker (Mediator) Η αξρηηεθηνληθή Broker ρξεζηκνπνηείηαη πξνθεηκέλνπ λα επηηεπρζεί δηαθάλεηα κεηαμχ εηεξνγελψλ, θαηαλεκεκέλσλ ή δπλακηθά κεηαβαιιφκελσλ ζηνηρείσλ. Η αξρηηεθηνληθή απηή πεξηιακβάλεη έλα θεληξηθφ ζηνηρείν, πνπ έρεη ηνλ ξφιν ηνπ κεζίηε (Broker) κεηαμχ πειαηψλ θαη εμππεξεηεηψλ (Clients θαη Servers). Η επζχλε ηνπ κεζίηε είλαη λα ιάβεη φιεο ηηο αηηήζεηο ησλ πειαηψλ θαη λα ηηο πξνσζήζεη ζηνπο αξκφδηνπο εμππεξεηεηέο, θαζψο επίζεο θαη λα ζηείιεη πίζσ ηα απνηειέζκαηα ζηνπο πειάηεο. Έηζη νη πειάηεο δελ ρξεηάδεηαη λα γλσξίδνπλ ιεπηνκέξεηεο ζρεηηθά κε ηνπο εμππεξεηεηέο πξνθεηκέλνπ λα επηθνηλσλήζνπλ καδί ηνπο. Έηζη κπνξνχλ λα πξνζηεζνχλ, λα αθαηξεζνχλ ή λα ηξνπνπνηεζνχλ, αξθεί λα ελεκεξσζεί ν κεζνιαβεηήο γηα ηηο αιιαγέο απηέο. Έηζη, ε θνηλνπνίεζε ησλ αιιαγψλ πεξηνξίδεηαη ζε έλα κφλν ζηνηρείν θαη φρη ζε θάζε πειάηε πνπ ελδηαθέξεηαη γηα ηε ζπγθεθξηκέλε ππεξεζία. Πξνθεηκέλνπ λα εγθαηαζηαζεί κηα ζχλδεζε, ν κεζίηεο πξέπεη λα παξέρεη κηα θνηλή δηεπαθή, ζηελ νπνία νη πειάηεο ζα θάλνπλ αηηήζεηο θαη νη εμππεξεηεηέο ζα εγγξάθνληαη. Αλάινγα κε ηελ θχζε ηεο εθαξκνγήο, ρξεηάδεηαη κηα ππεξεζία νλνκαηνδνζίαο γηα ηνπο εμππεξεηεηέο. Δπίζεο ζπρλά ππάξρεη κηα ππεξεζία δηαινγήο ησλ δεδνκέλσλ, πνπ ηα κεηαηξέπεη ζε έλα αλεμάξηεην format. Σέηνηνπ είδνπο ππεξεζίεο ελζσκαηψλνληαη ζηνλ κεζίηε. Η απσιηεκηονική Broker. 23

ηα θαηαλεκεκέλα ζπζηήκαηα πεξηιακβάλεηαη έλα πξφζζεην αληηθείκελν κεηαμχ ηνπ πειάηε θαη ηνπ κεζίηε θαζψο επίζεο θαη κεηαμχ ηνπ εμππεξεηεηή θαη ηνπ κεζίηε. Σν αληηθείκελν απηφ είλαη έλα proxy (πιεξεμνχζην), ην νπνίν αζρνιείηαη κε ηελ επηθνηλσλία κε ηνλ κεζίηε θαη θξχβεη ηηο ιεπηνκέξεηεο ηεο δηαδηθαζίαο απηήο. Έηζη ηα απνκαθξπζκέλα ζηνηρεία ινγηζκηθνχ θαίλεηαη φηη ιεηηνπξγνχλ ζε ηνπηθφ επίπεδν έηζη ψζηε λα κελ είλαη απαξαίηεην λα ηξνπνπνηεζεί ε ιεηηνπξγηθφηεηά ηνπο. Μηα παξαιιαγή ηνπ πξνηχπνπ Broker είλαη ην πξφηππν Mediator. Σν πξφηππν Broker ρξεζηκνπνηείηαη ζπλήζσο γηα κεγάια θαηαλεκεκέλα ζπζηήκαηα θαη πεξηιακβάλεη ηηο πξφζζεηεο βαζκίδεο ησλ proxies (πιεξεμνχζησλ). Σν πξφηππν Mediator αλαθέξεηαη ζε ηνπηθά ζπζηήκαηα θαη ζπλήζσο έρεη ηε κνξθή ελφο πξνηχπνπ ζρεδίαζεο. Ωζηφζν, ε ινγηθή πίζσ απφ ηα δχν κνληέια είλαη ε ίδηα. 3.6 Microkernel Σν πξφηππν Microkernel βαζίδεηαη ζε κηα πνιπεπίπεδε αξρηηεθηνληθή πνπ έρεη απνδεηρζεί επηηπρήο ζε απαηηεηηθνχο θαη πεξίπινθνπο ηνκείο φπσο ηα ιεηηνπξγηθά ζπζηήκαηα θαη ηηο virtual machines. Η ηδέα πίζσ απφ απηφ ην πξφηππν είλαη λα απνκνλσζεί ε ειάρηζηε ιεηηνπξγηθφηεηα ηνπ ππξήλα ελφο ζπζηήκαηνο πνπ απαηηείηαη γηα ηελ επηθνηλσλία κε ην hardware. Απηή ε ζεκειηψδεο ιεηηνπξγία πεξηιακβάλεηαη ζε έλα ζηνηρείν πνπ νλνκάδεηαη Microkernel. H επηπιένλ ιεηηνπξγηθφηεηα είλαη θηηζκέλε εθηφο ηνπ Microkernel. Απηφ έρεη σο απνηέιεζκα ηελ αλεμαξηεηνπνίεζε ησλ εθαξκνγψλ ηνπ ζπζηήκαηνο απφ ην hardware, θάλνληαο ην ζχζηεκα εμαηξεηηθά θνξεηφ θαη αλεμάξηεην. Σν microkernel πξέπεη λα είλαη κηθξφ πξνθεηκέλνπ λα είλαη απνδνηηθφ. Παξέρεη κφλν ζεκειηψδεηο ιεηηνπξγίεο φπσο κεραληζκνχο ρεηξηζκνχ ηεο κλήκεο θαη ηνπ επεμεξγαζηή, κεραληζκνχο επηθνηλσλίαο, ππεξεζίεο I/O θαη άιια. Πξφζζεηεο θαη πην ζχλζεηεο ρακεινχ επηπέδνπ ππεξεζίεο παξέρνληαη απφ ηνπο Internal Servers νη νπνίνη είλαη πξνζβάζηκνη κφλν απφ ηνλ Microkernel. Οη Internal Servers επεθηείλνπλ ηνλ Microkernel ζπλήζσο κε ηελ ππνζηήξημε ζπζθεπψλ πνπ δελ είλαη δσηηθήο ζεκαζίαο γηα ην ζχζηεκα. Έηζη ν Microkernel παξακέλεη κηθξφο πεξηέρνληαο κφλν ηα απνιχησο απαξαίηεηα. Δπηπιένλ ππάξρνπλ νη External Servers πνπ βξίζθνληαη έλα επίπεδν πάλσ απφ ηνλ Microkernel. Βαζίδνληαη ζηελ ζεκειηψδε ιεηηνπξγηθφηεηα ηνπ Microkernel θαη ζηνρεχνπλ ζην λα παξέρνπλ δηαθνξεηηθέο φςεηο ηνπ hardware ζηνπο δηαθνξεηηθνχο ηνκείο ησλ εθαξκνγψλ. Δθαξκφδνπλ πνιηηηθέο γηα ην πψο ζα επηηξέπεηαη ζε θάζε ηνκέα εθαξκνγψλ λα ρξεζηκνπνηεί ηηο βαζηθέο ππεξεζίεο ηνπ ππξήλα. Πάλσ απφ ηνπο External Servers ππάξρεη έλα επηπιένλ επίπεδν πνπ πεξηέρεη έλαλ αξηζκφ απφ Adaptors (πξνζαξκνγείο). Ο ζθνπφο ηνπο είλαη λα παξέρνπλ δηεπαθέο γηα 24

ηηο εθαξκνγέο πξνθεηκέλνπ λα επηθνηλσλνχλ κε ηνπο external servers. Με ηνλ ηξφπν απηφ, νη εθαξκνγέο είλαη πξαγκαηηθά αλεμάξηεηεο απφ ηνλ Microkernel, θαζψο δελ ρξεηάδεηαη λα πεξηέρνπλ πιεξνθνξίεο ζρεηηθά κε ηελ επηθνηλσλία κε ηνπο external servers. Η απσιηεκηονική Microkernel. Η αξρηηεθηνληθή Microkernel είλαη έλαο ζπλδπαζκφο ησλ αξρηηεθηνληθψλ Layers θαη Broker. Σν ζχζηεκα απνηειείηαη απφ πέληε επίπεδα απφ ην hardware κέρξη ην επίπεδν ησλ εθαξκνγψλ. Απφ ηελ άιιε κεξηά ν Microkernel παίδεη ηνλ θεληξηθφ ξφιν ζην ζχζηεκα θαη είλαη ην ζηνηρείν θιεηδί γηα ηελ ζσζηή ιεηηνπξγία ηνπ. 3.7 Process Coordinator Η αξρηηεθηνληθή Process Coordinator αθνξά ηηο εθαξκνγέο πνπ κπνξνχλ λα αλαιπζνχλ ζε πεξηζζφηεξεο δηαθνξεηηθέο, δεπηεξεχνπζεο εξγαζίεο. Κάζε κία απφ ηηο εξγαζίεο απηέο εθηειείηαη απφ έλαλ ζπγθεθξηκέλν εμππεξεηεηή. Σν θεληξηθφ ζηνηρείν ηεο δνκήο είλαη ν ζπληνληζηήο ηεο δηαδηθαζίαο (Process Coordinator). Ο ξφινο ηνπ 25

είλαη λα νξγαλψλεη ηελ ιεηηνπξγία ζηέιλνληαο δηαδνρηθά αηηήζεηο ζηνπο θαηάιιεινπο εμππεξεηεηέο. Έηζη ν Process Coordinator εκπεξηέρεη έλαλ αιγφξηζκν πνπ εθπιεξψλεη ηελ ιεηηνπξγία απηή θαη θξχβεη ηελ χπαξμε ησλ εμππεξεηεηψλ πνπ ρξεζηκνπνηνχλ ηνλ αιγφξηζκν. Δθηφο ηνπ ζπζηήκαηνο, Process Coordinator κνηάδεη κε έλα δηαθνκηζηή πνπ ιακβάλεη αηηήζεηο θαη επηζηξέθεη απνηειέζκαηα, απνθξχπηνληαο ηελ πνιππινθφηεηα ηεο δηαδηθαζίαο απηήο. Η απσιηεκηονική Process Coordinator. Η αξρηηεθηνληθή Process Coordinator κνηάδεη κε απηή ηνπ Broker δεδνκέλνπ φηη θαη απηή δηαρσξίδεη ηνπο πειάηεο κε ηνπο εμππεξεηεηέο. Η θχξηα δηαθνξά είλαη φηη ν Broker απιά δηαβηβάδεη ηα αηηήκαηα απφ ηνπο πειάηεο ζηνπο εμππεξεηεηέο ελψ ν Process Coordinator ελζσκαηψλεη θαη ηελ ινγηθή ηεο εθαξκνγήο. ηελ αξρηηεθηνληθή Broker νη πειάηεο ρξεηάδεηαη λα μέξνπλ ην φλνκα ηνπ εμππεξεηεηή, ή ηνπιάρηζηνλ ηελ ππεξεζία πνπ παξέρεη. ηελ αξρηηεθηνληθή Process Coordinator νη πειάηεο δελ γλσξίδνπλ ηελ χπαξμε ησλ δηαθφξσλ εμππεξεηεηψλ θαη απεπζχλνληαη ζηνλ ίδην ηνλ Process Coordinator. 3.8 Pipes and Filters (Pipeline Architecture) Η αξρηηεθηνληθή Pipes and Filters ή αιιηψο Pipeline απεπζχλεηαη ζηελ επεμεξγαζία ηεο ξνήο δεδνκέλσλ ζε ζηάδηα. Κάζε Φίιηξν αληηπξνζσπεχεη έλα βήκα ηεο επεμεξγαζίαο. Σα δεδνκέλα, πνπ πξνέξρνληαη απφ κηα πεγή δεδνκέλσλ, πεξλνχλ δηαδνρηθά απφ κηα ζεηξά θίιηξσλ θαη ηειηθά θαηαιήγνπλ ζε έλαλ «λεξνρχηε δεδνκέλσλ» (Data sink). Η έμνδνο ελφο θίιηξνπ είλαη είζνδνο γηα ην επφκελν. Η κεηαθνξά ησλ δεδνκέλσλ θαζψο επίζεο θαη ν ζπγρξνληζκφο κεηαμχ ηεο πεγήο δεδνκέλσλ, ησλ θίιηξσλ θαη ηνπ «λεξνρχηε», γίλεηαη απφ ηηο ζσιελψζεηο (Pipes). 26

Η πεγή δεδνκέλσλ κπνξεί λα είλαη έλα αξρείν ή έλαο αηζζεηήξαο πνπ παξέρεη ζπλερψο δεδνκέλα ζην ζχζηεκα. Οη ζσιελψζεηο είλαη ζπλήζσο κλήκεο buffer πνπ απνζεθεχνπλ πξνζσξηλά ηα δεδνκέλα εηζφδνπ θαη παξέρνπλ έμνδν ζηα θίιηξα. Απηφ επηηξέπεη ηνλ ζπγρξνληζκφ κεηαμχ ησλ δηαθνξεηηθψλ ζηνηρείσλ ηνπ ζπζηήκαηνο. Παξφια απηά ζε θάπνηα πνιχ απιή έθδνζε ηεο αξρηηεθηνληθήο απηήο, ηα δεδνκέλα πεξλνχλ απεπζείαο απφ ην έλα θίιηξν ζην άιιν. Ο «λεξνρχηεο» είλαη ζπλήζσο έλα αξρείν φπνπ γξάθνληαη ηα δεδνκέλα ή έλα άιιν ζχζηεκα ην νπνίν δέρεηαη ηα δεδνκέλα απηά ζαλ είζνδν. Η απσιηεκηονική Pipes and Filters. Ο ξφινο ησλ ζσιελψζεσλ είλαη πνιχ ζεκαληηθφο γηα έλα ζχζηεκα φπνπ κηα πεγή σζεί δεδνκέλα θαη έλαο «λεξνρχηεο» ηα ηξαβά. ε πεξίπησζε πνπ ε πεγή πξνζπαζεί λα ζηείιεη δεδνκέλα θαη ν «λεξνρχηεο» δελ είλαη έηνηκνο λα ηα δερηεί, ηφηε απηά απνζεθεχνληαη πξνζσξηλά ζηηο ζσιελψζεηο θαη έηζη εμαζθαιίδεηαη ε ιεηηνπξγία ηνπ ζπζηήκαηνο. Η επηινγή φκσο ηνπ κεγέζνπο ησλ buffers πξέπεη λα γίλεη κε πξνζνρή πξνθεηκέλνπ λα απνθεπρζεί ην θαηλφκελν ηεο ππεξρείιηζεο. Η αξρηηεθηνληθή Pipes and Filters έρεη πνιιέο νκνηφηεηεο κε απηή ησλ Layers θαη ίζσο λα ζεσξείηαη ζαλ κηα εηδηθή πεξίπησζή ηεο. Η θχξηα δηαθνξά είλαη πσο ζηελ αξρηηεθηνληθή Pipes and Filters ε ξνή δεδνκέλσλ γίλεηαη πξνο κία θαηεχζπλζε, απφ ηελ πεγή πξνο ηνλ «λεξνρχηε». Δπηπιένλ ην θάζε θίιηξν θάλεη κηα ζπγθεθξηκέλε ιεηηνπξγία, ελψ ην θάζε Layer αληηπξνζσπεχεη έλα επίπεδν αθαίξεζεο πνπ κπνξεί λα πεξηέρεη νξηζκέλα δηαθνξεηηθά ζηνηρεία, θάζε έλα απφ ηα νπνία εθηειεί κηα δηαθνξεηηθή ιεηηνπξγία. 27

4. Η ανϊλυςη των αποτελεςμϊτων μιασ εμπειρικόσ μελϋτησ με ερωτηματολόγια Όηαλ πξαγκαηνπνηείηαη κία εκπεηξηθή κειέηε ελφο πξνβιήκαηνο κε ηελ ρξήζε εξσηεκαηνινγίσλ ζπιιέγνληαη θάπνηα πνιχ ρξήζηκα δεδνκέλα γηα ηελ εμαγσγή ζπκπεξαζκάησλ. Αθνχ νινθιεξσζεί ε ζπιινγή δεδνκέλσλ πξέπεη λα γίλεη ε θαηάιιειε ζηαηηζηηθή επεμεξγαζία θαη ε αλάιπζε ησλ δεδνκέλσλ πνπ πξνθχπηνπλ. ηε ζπλέρεηα γίλεηαη ε ζχλζεζή ηνπο θαη ε δηαηχπσζε ησλ ζρεηηθψλ ζπκπεξαζκάησλ. Μπνξεί κάιηζηα θαλείο λα πεη φηη ε θάζε ηεο επεμεξγαζίαο αξρίδεη πνιχ πξηλ απφ ηελ ζπιινγή ησλ δεδνκέλσλ θαη ζπλερίδεηαη θαηά ηελ δηάξθεηά ηεο. Απηφ ζεκαίλεη φηη θαηά ηελ θάζε ηνπ ζρεδηαζκνχ, ήδε έρεη απνθαζηζζεί έλα «πιάλν» επεμεξγαζίαο πεξηζζφηεξν ή ιηγφηεξν ιεπηνκεξέο, αλάινγα κε ηε γλψζε ηνπ αληηθεηκέλνπ ηεο έξεπλαο, ηε θχζε ηεο έξεπλαο (δηεξεπλεηηθή, πεξηγξαθηθή, πεηξακαηηθή) θαη ηελ νξγάλσζή ηεο. Δπίζεο φηαλ ηα εξσηεκαηνιφγηα ζπκπιεξψλνληαη κε ηελ δηαδηθαζία ηεο ζπλέληεπμεο, θαηά ηε δηάξθεηα ηεο ζπιινγήο ησλ ζηνηρείσλ, γίλεηαη ν έιεγρνο ησλ εξσηεκαηνινγίσλ, ζπληειείηαη δειαδή ε πξψηε πξάμε ηεο επεμεξγαζίαο. Δπίζεο ε δηαδηθαζία ηεο θσδηθνγξάθεζεο γίλεηαη θαηά έλα κηθξφ ή κεγάιν πνζνζηφ παξάιιεια κε ηε ζπιινγή ησλ ζηνηρείσλ, γηα λα θεξδίδεηαη ρξφλνο. Αλ κάιηζηα, νη απαληήζεηο είλαη ήδε πιήξσο θσδηθνγξαθεκέλεο, ε θσδηθνγξάθεζε ηειεηψλεη ζρεδφλ ηαπηφρξνλα κε ηε ζπιινγή ησλ ζηνηρείσλ. Η θάζε ηεο αλάιπζεο ησλ δεδνκέλσλ απνηειείηαη απφ ηα εμήο δηαθεθξηκέλα ζηάδηα: Έιεγρνο Κσδηθνγξάθεζε Μεραλνγξαθηθή επεμεξγαζία ηαηηζηηθή αλάιπζε Αλάινγα κε ηελ θχζε ηεο έξεπλαο ε δηαδηθαζία απηή κπνξεί λα έρεη κεξηθέο δηαθνξνπνηήζεηο. 4.1 Έλεγχοσ Ο έιεγρνο θπζηθά πξέπεη λα αζθείηαη ζε φιε ηε δηάξθεηα ηεο έξεπλαο, γηα θάζε δξαζηεξηφηεηα: έιεγρνο ηεο ζσζηήο δηαηχπσζεο ησλ ζηφρσλ ηεο έξεπλαο ζην εξσηεκαηνιφγην, έιεγρνο ζηε ζσζηή εθηχπσζε ησλ εληχπσλ, θαζψο επίζεο θαη έιεγρνο ζηελ επηινγή ησλ αηφκσλ πνπ ζα θάλνπλ ηεο ζπλεληεχμεηο. Ο θπξίσο φκσο έιεγρνο γίλεηαη ζηελ θάζε ηεο αλάιπζεο ησλ εξσηεκαηνινγίσλ θαη αθνξά ηελ νξζή ζπκπιήξσζε θαη ηήξεζε ησλ θαλφλσλ δεηγκαηνιεςίαο. Γηα λα πξνρσξήζεη ε αλάιπζε ζην επφκελν ζηάδην πξέπεη πξψηα λα εμαζθαιηζζεί κέζσ ηνπ ειέγρνπ φηη ηα δεδνκέλα πνπ ζα ρξεζηκνπνηεζνχλ είλαη ζσζηά. 28

4.2 Κωδικογρϊφηςη Με ηνλ φξν θσδηθνγξάθεζε νξίδεηαη ε κεηαηξνπή ησλ απαληήζεσλ ζε αξηζκνχο ή ζχκβνια, δειαδή ην πνηνηηθφ ζηνηρείν (νιφθιεξεο θξάζεηο, έλα φλνκα, κηα θαηάθαζε ή άξλεζε θιπ) ζε πνζνηηθφ ή πνηνηηθφ-ζπκβνιηθφ.ε νξηζκέλεο πεξηπηψζεηο ε απάληεζε κπνξεί λα πεξηέρεη ήδε έλαλ αξηζκφ, νπφηε δελ ρξεηάδεηαη θάπνηα κεηαηξνπή. Απηφ φκσο ζηηο πεξηζζφηεξεο θνηλσληθέο έξεπλεο (θπξίσο δηεξεπλεηηθέο) αθνξά έλα κηθξφ πνζνζηφ ησλ απαληήζεσλ. Η θσδηθνγξάθεζε ινηπφλ, κεηαηξέπεη ηηο απαληήζεηο ζε θαηάιιειε κνξθή γηα κεηέπεηηα κεραλνγξαθηθή επεμεξγαζία. Η θσδηθνγξάθεζε κπνξεί λα πξνεηνηκαζζεί (κέρξη έλα βαζκφ) ζηε θάζε ηνπ ζρεδηαζκνχ ησλ εξσηεκαηνινγίσλ, κε ηελ θσδηθνπνίεζε ησλ πξνβιεπνκέλσλ απαληήζεσλ. Με ηνλ φξν θσδηθνπνίεζε ελλννχκε ηελ πξφβιεςε ησλ δπλαηψλ θαηεγνξηψλ απάληεζεο ζε θάζε εξψηεζε. απηήλ ηελ πεξίπησζε νη απαληήζεηο είλαη πξνθσδηθνγξαθεκέλεο θαη νη εξσηήζεηο ραξαθηεξίδνληαη «θιεηζηέο». Αληίζεηα ζηηο «αλνηρηέο» εξσηήζεηο δελ ππάξρεη πξφβιεςε απάληεζεο (δελ είλαη πξνθσδηθνγξαθεκέλεο). ε απηήλ ηελ πεξίπησζε νη απαληήζεηο νκαδνπνηνχληαη εθ ησλ πζηέξσλ θαηά θαηεγνξίεο Οη θαηεγνξίεο απηέο ραξαθηεξίδνληαη κε θσδηθνχο θαη ζηελ ζπλέρεηα θσδηθνγξαθνχληαη. 4.3 Μηχανογραφικό επεξεργαςύα Η κεραλνγξαθηθή επεμεξγαζία αθνξά ηελ εηζαγσγή ησλ ζηνηρείσλ πνπ ζπιιέρηεθαλ κε ηα εξσηεκαηνιφγηα ζηνλ ειεθηξνληθφ ππνινγηζηή. Μεηά ηελ νινθιήξσζε ησλ πξνβιεπφκελσλ ειέγρσλ θαη ηεο θσδηθνγξάθεζεο, ηα ζηνηρεία ησλ εξσηεκαηνινγίσλ είλαη έηνηκα γηα ηελ εηζαγσγή ηνπο ζηνλ ειεθηξνληθφ ππνινγηζηή. Παιαηφηεξα ε εηζαγσγή ζηνλ Η/Τ γηλφηαλ κε απνθιεηζηηθφ ζθνπφ ηελ ζηαηηζηηθή επεμεξγαζία ησλ ζηνηρείσλ, έηζη ψζηε λα απνηειέζνπλ ην πιηθφ γηα ηελ αλάιπζε ησλ απνηειεζκάησλ θαη ηελ δηαηχπσζε ησλ πνξηζκάησλ ηεο έξεπλαο. ήκεξα γηα ηελ εηζαγσγή ησλ ζηνηρείσλ ζηνλ Η/Τ δεκηνπξγείηαη κηα Βάζε Γεδνκέλσλ, ε νπνία ζπκπιεξψλεηαη κε ηα ζηνηρεία ησλ εξσηεκαηνινγίσλ θαη απνηειεί απηνηειέο πιηθφ. Γηα ηελ πεξαηηέξσ ζηαηηζηηθή επεμεξγαζία ησλ δεδνκέλσλ ρξεζηκνπνηνχληαη εμεηδηθεπκέλα ηαηηζηηθά Πξνγξάκκαηα. Έλα γλσζηφ πξφγξακκα είλαη ην SPSS, ην νπνίν ρξεζηκνπνηείηαη θαη επαγγεικαηηθά γηα ηελ ζηαηηζηηθή αλάιπζε δεδνκέλσλ. Πεξηζζφηεξεο πιεξνθνξίεο ζρεηηθά κε ην πξφγξακκα απηφ θαζψο θαη ηηο εθαξκνγέο ηνπ κπνξεί θάπνηνο λα βξεί ζηελ παξαθάησ ηζηνζειίδα: http://www.spss.gr/ 29

4.4 τατιςτικό Ανϊλυςη Αθνχ εηζαρζνχλ ηα δεδνκέλα ζηνλ ειεθηξνληθφ ππνινγηζηή, δεκηνπξγείηαη κηα Βάζε Γεδνκέλσλ θαη αθνινπζεί ε ζηαηηζηηθή αλάιπζε. Σα πξνγξάκκαηα δηαρείξηζεο Βάζεσλ Γεδνκέλσλ δελ παξέρνπλ επαξθείο ιεηηνπξγίεο γηα ηελ ζηαηηζηηθή επεμεξγαζία ησλ δεδνκέλσλ. Γηα ηνλ ζθνπφ απηφλ ππάξρνπλ εηδηθά πξνγξάκκαηα, πνπ πξνζθέξνληαη γηα απιέο θαη ζχλζεηεο ζηαηηζηηθέο επεμεξγαζίεο. Μεξηθέο απφ ηηο πιένλ ρξήζηκεο θαη ζπλήζεηο εξγαζίεο πνπ εθηεινχλ απηά ηα ηαηηζηηθά Πξνγξάκκαηα (Π) είλαη: 4.4.1 Δειγματοληψύα Όπσο έρεη ήδε αλαθεξζεί ε δηαδηθαζία ηεο ζηαηηζηηθήο αλάιπζεο πνιιέο θνξέο μεθηλάεη πξηλ αθφκα ηα εξσηεκαηνιφγηα ζπκπιεξσζνχλ, δειαδή θαηά ηελ θάζε ηνπ ζρεδηαζκνχ ηεο έξεπλαο. Έηζη είλαη ζεκαληηθφ λα γίλεη θαηάιιεινο ζρεδηαζκφο ηεο δεηγκαηνιεςίαο πνπ ζα πξαγκαηνπνηεζεί. Η δεηγκαηνιεςία είλαη ην κέξνο ηεο ζηαηηζηηθήο πξαθηηθήο πνπ αζρνιείηαη κε ηελ επηινγή ησλ επηκέξνπο παξαηεξήζεσλ, κε ζηφρν ηελ απνθφκηζε γλψζεσλ ζρεηηθά κε έλα πιεζπζκφ πνπ καο ελδηαθέξεη, θπξίσο γηα θάπνηα ζηαηηζηηθή κειέηε. (http://en.wikipedia.org/wiki/sampling_(statistics) ) Οη εξεπλεηέο ζπαλίσο κειεηνχλ ην ζχλνιν ηνπ πιεζπζκνχ γηα δχν ιφγνπο (Ader, Mellenbergh, & Hand, 2008): 1) Σν θφζηνο είλαη ππεξβνιηθά πςειφ θαη 2) Ο πιεζπζκφο κηαο έξεπλαο είλαη δπλακηθφο, δειαδή, ηα ραξαθηεξηζηηθά ηνπ πιεζπζκνχ ζα κπνξνχζαλ λα αιιάμνπλ κε ηελ πάξνδν ηνπ ρξφλνπ. Τπάξρνπλ ηξία θχξηα πιενλεθηήκαηα ηεο δηαδηθαζίαο ηεο δεηγκαηνιεςίαο: 1) Σν θφζηνο είλαη ρακειφηεξν, 2) Η ζπιινγή δεδνκέλσλ είλαη ηαρχηεξε 3) Δίλαη δπλαηφλ λα εμαζθαιηζηεί ε νκνηνγέλεηα θαη ε βειηίσζε ηεο αθξίβεηαο θαη ηεο πνηφηεηαο ησλ δεδνκέλσλ, δηφηη ηα δεδνκέλα πνπ ιακβάλεη ν εξεπλεηήο είλαη ζαθψο ιηγφηεξα. Η δηαδηθαζία απηή θαιείηαη ζηελ βηβιηνγξαθία σο «Small area estimation» θαη πξφθεηηαη γηα νπνηαδήπνηε απφ ηηο δηάθνξεο ζηαηηζηηθέο ηερληθέο πνπ πεξηιακβάλνπλ ηελ εθηίκεζε ησλ παξακέηξσλ γηα ηνπο κηθξνχο ππν-πιεζπζκνχο, ελψ ζπλήζσο 30

ρξεζηκνπνηνχληαη φηαλ ην ππφ-πιεζπζκφο πνπ καο ελδηαθέξεη πεξηιακβάλεηαη ζε κηα επξχηεξε έξεπλα. (http://www.rti.org/page.cfm/small_area_estimation) Κάζε παξαηήξεζε κέηξα κία ή πεξηζζφηεξεο ηδηφηεηεο (βάξνο, πεξηνρή, θιπ.) ησλ παξαηεξνχκελσλ νληνηήησλ, πνπ απαξηζκνχληαη πξνθεηκέλνπ λα δηαθξηζνχλ ηα αληηθείκελα ή ηα πξφζσπα. πρλά απαηηείηαη έξεπλα κε βάξε, φπνπ ζηα δεδνκέλα εθαξκφδνληαη βάξε πξνθεηκέλνπ λα πξνζαξκνζηνχλ γηα ηνλ ζρεδηαζκφ ηεο δεηγκαηνιεςίαο. Δθηελέζηεξε αλαθνξά γηα ηελ έξεπλα κε βάξε γίλεηαη ζηε ζπλέρεηα. Γηα ηνλ ζρεδηαζκφ ηεο δεηγκαηνιεςίαο απαξαίηεηνο αξρηθά είλαη ν ζρεδηαζκφο ηνπ Sampling frame ην νπνίν καο παξέρεη ηελ δπλαηφηεηα λα κπνξνχκε λα πξνζδηνξίζνπκε θάζε ζηνηρείν πνπ ζα ζπκπεξηιάβνπκε ζε θάζε δείγκα καο. Σν πην απιφ είδνο ηνπ Sampling frame είλαη κηα ιίζηα ησλ ζηνηρείσλ ηνπ πιεζπζκνχ (θαηά πξνηίκεζε ην ζχλνιν ηνπ πιεζπζκνχ) πνπ καο ελδηαθέξνπλ θαζψο επίζεο θαη νη θαηάιιειεο πιεξνθνξίεο επηθνηλσλίαο καδί ηνπ. Οη δχν θπξηφηεξεο κέζνδνη δεηγκαηνιεςίαο είλαη νη εμήο: Stratified sampling (ηξσκαηνπνηεκέλε δεηγκαηνιεςία) Όηαλ νη ππφ-πιεζπζκνί πνηθίιινπλ ζεκαληηθά, είλαη ζπκθέξσλ λα γίλεη δείγκαηνιεςία θάζε ππφ-πιεζπζκνχ (ζηξψκαηνο) αλεμάξηεηα. Η δηαζηξσκάησζε είλαη ε δηαδηθαζία ζπγθέληξσζεο ησλ κειψλ ηνπ πιεζπζκνχ ζε ζρεηηθά νκνηνγελείο ππννκάδεο πξηλ απφ ηε δεηγκαηνιεςία. Σα ζηξψκαηα πξέπεη λα αιιειναπνθιείνληαη. Πξέπεη δειαδή θάζε ζηνηρείν ηνπ πιεζπζκνχ πξέπεη λα αλαηεζεί ζε έλα κφλν ζηξψκα. Σα ζηξψκαηα ζα πξέπεη επίζεο λα είλαη ζπιινγηθά εμαληιεηηθά, δειαδή, θαλέλα ζηνηρείν ηνπ πιεζπζκνχ δελ κπνξεί λα απνθιεηζηεί απφ ηελ δηαδηθαζία. ηε ζπλέρεηα, εθαξκφδεηαη ηπραία ή ζπζηεκαηηθή δεηγκαηνιεςία ζε θάζε ζηξψκα. Απηφ βειηηψλεη ζπρλά ηελ αληηπξνζσπεπηηθφηεηα ηνπ δείγκαηνο θαζψο κεηψλεηαη ε πηζαλφηεηα γηα θάπνην δεηγκαηνιεπηηθφ ζθάικα. () Η κέζνδνο απηή αλ θαη εκθαλίδεη πνιιά πιενλεθηήκαηα, φπσο αλαθέξζεθε παξαπάλσ, παξνπζηάδεη θαη νξηζκέλα κεηνλεθηήκαηα: Απαηηεί ηελ επηινγή ησλ ζρεηηθψλ κεηαβιεηψλ ζηξσκαηνπνίεζεο, πνπ πηζαλψο λα είλαη κία δχζθνιε δηαδηθαζία. Γελ είλαη ρξήζηκε φηαλ δελ ππάξρνπλ νκνηνγελείο ππννκάδεο. Μπνξεί λα είλαη δαπαλεξή. Απαηηεί αθξηβείο πιεξνθνξίεο ζρεηηθά κε ηνλ πιεζπζκφ θαη πξνζνρή, θαζψο εάλ θαηά ηνλ δηαρσξηζκφ ησλ ζηξσκάησλ ιεθζνχλ ππφςε κεξνιεπηηθά ζηνηρεία κπνξεί λα νδεγεζεί ν εξεπλεηήο ζε ιαλζαζκέλα ζπκπεξάζκαηα. Μπνξεί λα είλαη πνιχ ρξνλνβφξα ε φιε δηαδηθαζία. Η δηαδηθαζία ηεο ηξσκαηνπνηεκέλεο δεηγκαηνιεςίαο πεξηγξάθεηαη ιεπηνκεξέζηεξα ζηηο παξαθάησ ηζηνζειίδεο http://en.wikipedia.org/wiki/stratified_sampling, http://www.jstor.org/pss/2280293 31

Multistage or cluster sampling (Γεηγκαηνιεςία δηαζπνξάο ζε πνιιά ζηάδηα) Η δεηγκαηνιεςία ζε πνιιά ζηάδηα, είλαη κηα ζχλζεηε κνξθή ηεο δεηγκαηνιεςίαο ζηξσκάησλ. Η ρξήζε φισλ ησλ ζηνηρείσλ ηνπ δείγκαηνο ζε φιεο ηηο επηιεγκέλεο νκάδεο κπνξεί λα είλαη απαγνξεπηηθά δαπαλεξφ ή αθφκα πνιιέο θνξέο δελ είλαη θαλ απαξαίηεην. Τπφ απηέο ηηο ζπλζήθεο, είλαη ρξήζηκε ε κέζνδνο ηεο δεηγκαηνιεςίαο ζε πνιιά ζηάδηα. Αληί λα ρξεζηκνπνηεζνχλ φια ηα ζηνηρεία πνπ πεξηέρνληαη ζηηο επηιεγκέλεο νκάδεο, ν εξεπλεηήο επηιέγεη ηπραία νξηζκέλα ζηνηρεία απφ θάζε νκάδα. ην πξψην ζηάδην ηεο δηαδηθαζίαο γίλεηαη ε θαηαζθεπή ησλ νκάδσλ. ην δεχηεξν ζηάδην νη εξεπλεηέο απνθαζίδνπλ πνηα ζηνηρεία ηνπ πιαίζην δεηγκαηνιεςίαο ζα ρξεζηκνπνηεζνχλ. Η ηερληθή απηή ρξεζηκνπνηείηαη ζπρλά, φηαλ δελ πθίζηαηαη έλαο πιήξεο θαηάινγνο φισλ ησλ κειψλ ηνπ πιεζπζκνχ. http://en.wikipedia.org/wiki/multistage_sampling Παξά ην γεγνλφο φηη ε δεηγκαηνιεςία δηαζπνξάο θαη ε ζηξσκαηνπνηεκέλε δεηγκαηνιεςία θέξνπλ νξηζκέλεο επηθαλεηαθέο νκνηφηεηεο, είλαη νπζησδψο δηαθνξεηηθέο. ηελ ζηξσκαηνπνηεκέλε δεηγκαηνιεςία, έλα ηπραίν δείγκα πξνέξρεηαη απφ φια ηα ζηξψκαηα, ελψ ζηελ δεηγκαηνιεςία δηαζπνξάο κφλν νη επηιεγκέλεο νκάδεο ζα κειεηεζνχλ, είηε ζε έλα εληαίν ζηάδην είηε ζε πνιιαπιά. Μηα αθφκα ζεκαληηθή δηαδηθαζία είλαη απηή ηεο εθηίκεζεο ηνπ ζθάικαηνο ηεο δεηγκαηνιεςίαο (Sample Error Estimation). Η δηαδηθαζία απηή είλαη ζεκαληηθή θαζψο βνεζάεη ηνλ εξεπλεηή λα πξνβιέςεη ην ιάζνο ζε ζρεηηθά αξρηθφ ζηάδην ηεο δηαδηθαζίαο. Τπάξρνπλ δηάθνξεο ηερληθέο αλάιπζεο ηνπ ζθάικαηνο ηεο δεηγκαηνιεςίαο νη νπνίεο αλαθέξνληαη ζηε ζπλέρεηα. Η δηαδηθαζία ηεο δεηγκαηνιεςίαο φπσο θαίλεηαη απφ ηα παξαπάλσ είλαη αξθεηά ζεκαληηθή γηα κία έξεπλα. Πξνθεηκέλνπ λα γίλεη ν θαηάιιεινο ζρεδηαζκφο ηεο δεηγκαηνιεςίαο ππάξρνπλ νξηζκέλα εξγαιεία. Έλα απφ ηα πην γλσζηά είλαη ην SUDAAN. http://www.rti.org/sudaan/ Σν εξγαιείν απηφ παξέρεη ππνζηήξημε γηα φια ηα ζηάδηα κηαο έξεπλαο. http://www.rti.org/sudaan/page.cfm?objectid=fa210070-7fae-4e83- B127D764B8C274B2 4.4.2 φϊλμα δειγματοληψύασ (Sample Error Estimation) Όζνλ αθνξά ηελ ζηαηηζηηθή, δεηγκαηνιεπηηθφ ζθάικα ή ζθάικα εθηίκεζεο είλαη ην ζθάικα πνπ πξνθαιείηαη απφ ηελ παξαηήξεζε ελφο δείγκαηνο ηνπ πιεζπζκνχ, αληί γηα ην ζχλνιν ηνπ πιεζπζκνχ. Σν ζθάικα δεηγκαηνιεςίαο κπνξεί λα βξεζεί κε ηελ δηαδηθαζία ηεο αθαίξεζεο ηεο αμίαο κηαο παξακέηξνπ απφ ηελ αμία ελφο ζηαηηζηηθνχ ζηνηρείνπ. 32