Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ: ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΑΣ ΕΡΓΑΣΤΗΡΙΟ ΕΝΣΥΡΜΑΤΗΣ ΤΗΛΕΠΙΚΟΙΝΩΝΙΑΣ Διπλωματική Εργασία του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών της Πολυτεχνικής Σχολής του Πανεπιστημίου Πατρών Τρεχλή Ρωμανού-Αντώνιου του Βλασίου Αριθμός Μητρώου: 5846 Θέμα «Υλοποίηση συστήματος παραγγελιοδοσίας ηλεκτρονικού καταστήματος με χρήση υπηρεσιών διαδικτύου» Επιβλέπων Κουκιάς Μιχαήλ Αριθμός Διπλωματικής Εργασίας: Πάτρα, Ιούνιος 2013

2

3 ΠΙΣΤΟΠΟΙΗΣΗ Πιστοποιείται ότι η Διπλωματική Εργασία με θέμα «Υλοποίηση συστήματος παραγγελιοδοσίας ηλεκτρονικού καταστήματος με χρήση υπηρεσιών διαδικτύου» Του φοιτητή του Τμήματος Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Τρεχλή Ρωμανού-Αντώνιου του Βλασίου Αριθμός Μητρώου: 5846 Παρουσιάστηκε δημόσια και εξετάστηκε στο Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών στις.../../ Ο Επιβλέπων Ο Διευθυντής του Τομέα Κουκιάς Μιχαήλ Φακωτάκης Νικόλαος Επίκουρος Καθηγητής Καθηγητής

4

5 Αριθμός Διπλωματικής Εργασίας: Θέμα: «Υλοποίηση συστήματος παραγγελιοδοσίας ηλεκτρονικού καταστήματος με χρήση υπηρεσιών διαδικτύου» Φοιτητής: Τρεχλής Ρωμανός-Αντώνιος Επιβλέπων: Κουκιάς Μιχαήλ Περίληψη Η παρούσα διπλωματική εργασία πραγματεύεται τον σχεδιασμό και την υλοποίηση συστήματος για ηλεκτρονικές προμήθειες με χρήση της τεχνολογίας υπηρεσιών διαδικτύου. Ως ηλεκτρονική προμήθεια ορίζεται η διαδικασία με την οποία ένας φορέας προμηθεύεται τις υπηρσίες ή/και τα αγαθά που τον ενδιαφέρουν, με τη χρήση σύγχρονων διαδικτυακων και υπολογιστικών υπηρεσιών. Ο φορέας που μελετάμε εδώ είναι ένα ηλεκτρονικό βιβλιοπωλείο. Οι ηλεκτρονικές προμήθειες είναι ένα είδος ηλεκτρονικού εμπορίου, συνεπώς θα προηγηθεί μια θεωρητική ανάλυση σχετικά με το ηλεκτρονικό εμπόριο και, έπειτα, σχετικά με τις ηλεκτρονικές προμήθειες. Εν συνεχεία παρατίθεται η υλοποίηση ενός συστήματος ηλεκτρονικών προμηθειών με χρήση της τεχνολογίας των υπηρεσιών διαδικτύου, δηλαδή η σύσταση ενός ιστότοπου, ο οποίος περιέχει όλες τις απαραίτητες λειτουργίες ενός ηλεκτρονικού καταστήματος αγορών και, επιπλέον, το σύστημα ημιαυτοματοποιημένων προμηθειών, το οποίο περιλαμβάνει αντίστοιχες βάσεις δεδομένων για τις δοκιμές του συστήματος και τις υπηρεσίες διαδικτύου που το υλοποιούν. Στο σύστημα υπάρχουν τρία είδη χρηστών: οι πελάτες, οι προμηθευτές και ο διαχειριστής. Οι πελάτες έχουν τη δυνατότητα να κάνουν λιανικές αγορές. Οι προμηθευτές δεν χειρίζονται το σύστημα, αλλά οι πληροφορίες τους είναι αποθηκευμένες στη βάση δεδομένων. Τέλος, ο διαχειριστής διευθύνει τον ιστότοπο, βλέπει τις παραγγελίες που έχουν πραγματοποιηθεί και ενεργοποιεί το σύστημα παραγγελιών. Το σύστημα ομαδοποιεί τις αγορές σε καλάθια σύμφωνα με τις πιο συμφέρουσες τιμές και, μετά από έγκριση του διαχειριστή, προχωρεί σε παραγγελίες από τους προμηθευτές.

6 Για τη δημιουργία του ιστοτόπου χρησιμοποιήθηκε η τεχνολογία Java. Συγκεκριμένα, για τη δημιουργία δυναμικού περιεχομένου χρησιμοποιήθηκαν οι γλώσσες HTML, JSP, EL(Expression Language) και Java Servlet για ελεγκτή, ενώ για τη βάση δεδομένων χρησιμοποιήθηκαν POJO's (Plain Old Java Objects) με Annotations της βιβλιοθήκης Persistence και η βιβλιοθήκη Hibernate η οποία ανέλαβε τον ρόλο του διαμεσολαβητή με την υποκείμενη MySQL βάση δεδομένων. Το όλο σύστημα στήθηκε για λόγους ευκολίας στο NetBeans IDE και τρέχει στον εξυπηρετητή εφαρμογών Glassfish της Oracle, ο οποίος διατίθεται με άδεια Common Development and Distribution License (CDDL) και GNU General Public License (GPL).

7 Abstract This thesis discusses the design and implementation of an e-procurement system using the Web Services technology. E-procurement is defined as the process by which an entity procures services or/and goods that are of interest by using modern computing and internet services. The organization studied here is an electronic bookstore. Electronic procurement is a type of electronic commerce, thus a theoretical analysis of e-commerce and e-procurement is primarily necessary. The implementation of an electronic procurement system is then presented, specifically about the establishment of a website that contains all the necessary functions for an e-bookstore plus the semiautomatic system of e-procurment, that includes the databases needed to test it and the web services that implement it. The created system has mainly three kinds of users: clients, suppliers and administrator. Clients can create carts and make orders. The supplier's info are stored in the database. Finally, administrator manage the site and is responsible for tending to orders made by the clients and the initialization of e-procurment system. Then the system groups products into carts by their price and, after administrator's approval, proceed to commit the order. To create the site Java technologies were used. Specifically, for creating the dynamic web pages content, we used HTML, JSP, EL(Expression Language) and Java Servler for controller, while for managing the database we used POJO's with Persistence library annotations and the Hibernate Library for communication with the underlying MySQL database. The system was build with the help of NetBeans IDE and runs over Oracle Glassfish Application Server.

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

9 Εισαγωγή Σκοπός της Διπλωματικής αυτής εργασίας είναι η ανάπτυξη και υλοποίηση ενός συστήματος ηλεκτρονικών προμηθειών με τη χρήση υπηρεσιών διαδικτύου (web services). Για να γίνει περισσότερο κατανοητός ο όρος αυτός, χρειάζεται πρώτα να αναλυθεί ο όρος ηλεκτρονικό εμπόριο, αφού οι ηλεκτρονικές προμήθειες είναι ένα είδος ηλεκτρονικού εμπορίου. Ως ηλεκτρονικό εμπόριο ορίζεται το εμπόριο που πραγματοποιείται με ηλεκτρονικά μέσα, βασίζεται δηλαδή στην ηλεκτρονική μετάδοση δεδομένων. Αντίστοιχα, ως ηλεκτρονικές προμήθειες ορίζουμε τις προμήθειες οι οποίες πραγματοποιούνται με ηλεκτρονικά μέσα, όπου με τη λέξη προμήθειες ορίζεται η απόκτηση υλικών αγαθών ή/και υπηρεσιών με οικονομικό αντάλλαγμα. Το ηλεκτρονικό εμπόριο όπως και οι ηλεκτρονικές προμήθειες έχουν ένα κοινό χαρακτηριστικό: είναι και οι δύο υπηρεσίες εξ αποστάσεως, δηλαδή χρειάζεται ένας τρόπος επικοινωνίας μεταξύ των αγοραστών και των πωλητών για να πραγματοποιηθούν. Ο καλύτερος τρόπος είναι το διαδίκτυο, γι αυτόν τον λόγο το σύστημα ηλεκτρονικών προμηθειών που επιλέχτηκε για υλοποίηση στην παρούσα διπλωματική εργασία είναι ένας ιστότοπος, μέσω του οποίου εκτελούνται οι απαραίτητες λειτουργίες ενός συστήματος ηλεκτρονικών προμηθειών. Ο φορέας που επιλέχθηκε για να υλοποιηθεί είναι ένα ηλεκτρονικό βιβλιοπωλείο. Για να γίνει σαφής η σημασία της χρήσης υπηρεσιών διαδικτύου, θα πρέπει να μελετήσουμε τα μέσα τα οποία χρησιμοποιούνται σήμερα για την παραγγελιοδοσία των ηλεκτρονικών καταστημάτων προς τους προμηθευτές. Η μεθοδολογία που ακολουθείται είναι: 1. Τηλεφωνική επικοινωνία μεταξύ του ηλεκτρονικού καταστήματος και του προμηθευτή, για να βρεθούν τα ζητούμενα προιόντα. 2. Αποστολή φόρμας παραγγελείας μέσω ηλεκτρονικού ταχυδρομίου. 3. Πέρασμα της παραγγελίας στη βάση δεδομένων και επεξεργασία. Στην παραπάνω διαδικασία θα πρέπει να προστεθούν τα τηλεφωνήματα για επιβεβαίωση λήψεων, συμπληρωματικών παραγγελιών κ.λπ. Μπορεί κανείς να ισχυριστεί ότι με τις παραπάνω μεθόδους η διαδικασία παραγγελιοδοσίας διεξάγεται επιτυχώς. Όμως, δεν λαμβάνεται υπόψη αυτός που αναδεικνύεται ως ο κρίσιμος παράγοντας αυτής της διαδικασίας λόγω της μεγάλης ανταγωνιστικότητας της αγοράς στην εποχή μας: η πληθώρα των προμηθευτών, σε συνδυασμό με την ανάγκη μείωσης του κόστους και καλύτερης εξυπηρέτησης των πελατών. Με τις έως σήμερα χρησιμοποιούμενες μεθόδους, η διαδικασία επιλογής της πιο συμφέρουσας προμήθειας παραμένει χειροκίνητη και αυτό την καθιστά πολύ περίπλοκη και χρονοβόρα. Με το σύστημα που προτείνεται σε αυτήν τη διπλωματική εργασία, ολόκληρη η διαδικασία απλοποιείται, και ειδικότερα επιταχύνεται η παραγγελιοδοσία και η επιλογή του πιο συμφέροντος προμηθευτή, με τη χρήση της τεχνολογίας των υπηρεσιών διαδικτύου. Σε αυτήν την περίπτωση η διαδικασία έχει ως εξής: 1

10 1. Μέσω υπηρεσιών διαδικτύου, αποστέλλουμε σε όλους τους προμηθευτές μια λίστα με προϊόντα που επιθυμούμε να αγοράσουμε. 2. Μέσω υπηρεσιών διαδικτύου, το σύστημα του προμηθευτή μας απαντά αποστέλλοντας μια λίστα με προϊόντα και τιμές. 3. Χωρίζουμε τα προϊόντα σε καλάθια αγορών. Κάθε καλάθι αφορά σε έναν προμηθευτή και κάθε τέτοιο καλάθι περιέχει τα προϊόντα τα οποία συμφέρει να αγοραστούν από τον συγκεκριμένο προμηθευτή. 4. Μέσω υπηρεσιών διαδικτύου, αποστέλλουμε τις τελικές λίστες προϊόντων που θέλουμε να αγοράσουμε από κάθε προμηθευτή. Τη διαδικασία την εκκινεί και την επιβλέπει (εγκρίνει τα καλάθια αγορών) ο διαχειριστής του συστήματος, χωρίς να απαιτείται καμία προαπαιτούμενη γνώση για το σύστημα. Η υλοποίηση της εφαρμογής έχει ώς εξής: Αρχικά σχεδιάστηκαν οι οντότητες (POJO s) και ορίστηκαν τα Persistence annotations που θα τις μετέφραζαν σε MySQL script γλώσσα και, εν συνεχεία, υλοποιήθηκε το ηλεκτρονικό κατάστημα με τη χρήση των γλωσσών HTML, JSP, EL και Java Servlet. Έτσι κάναμε χρήση της αρχιτεκτονικής Μοντέλο - Παρουσίαση - Ελεγκτής (Model-View-Controller) 1, με τις οντότητες ως μοντέλο, τις σελίδες JSP ως παρουσίαση και τον Java Servlet ως ελεγκτή. Τέλος αναπτύχθηκαν σε γλώσσα Java οι απαιτούμενες Σχήμα 1: Model-View-Controller αρχιτεκτονική υπηρεσίες διαδικτύου, ώστε το ηλεκτρονικό βιβλιοπωλείο να μπορεί να επικοινωνήσει με τους προμηθευτές του και να παραγγείλει βιβλία. Η εφαρμογή παίζει πάνω από τον Oracle Glassfish εξυπηρετητή. Η εφαρμογή υποστηρίζει τρεις κατηγορίες χρηστών 2. Οι πελάτες μπορούν να εγγραφούν στον ιστότοπο, να δημιουργήσουν καλάθι αγορών και να παραγγείλουν βιβλία. Ο διαχειριστής είναι υπεύθυνος για τη συντήρηση του ιστότοπου, την επεξεργασία των παραγγελιών, τη διαχείρηση της βάσης δεδομένων και την ενεργοποίηση του συστήματος ηλεκτρονικών παραγγελιών. Οι προμηθευτές δεν χειρίζονται το σύστημα, αλλά πληροφορίες τους υπάρχουν στην βάση δεδομένων. 2

11 Σχήμα 2: Use Case Διάγραμμα Εφαρμογής Τα κεφάλαια της διπλωματικής έχουν ως εξής: Κεφάλαιο 1ο: Γίνεται μια θεωρητική ανάλυση σχετικά με το ηλεκτρονικό εμπόριο και τις ηλεκτρονικές προμήθειες. Κεφάλαιο 2ο: Γίνεται μία σύντομη ανάλυση της τεχνολογίας των υπηρεσιών διαδικτύου. Κεφάλαιο 3ο: Γίνεται ανάλυση των εργαλείων που χρησιμοποιήθηκαν για την υλοποίηση της εφαρμογής. Κεφάλαιο 4ο: Περιγράφεται η υλοποίηση της εφαρμογής (ηλεκτρονικό κατάστημα και υπηρεσίες διαδικτύου). Κεφάλαιο 5ο: Δίνονται παραδείγματα χρήσης του ιστότοπου από πελάτη και διαχειριστή. Τέλος, παρατίθεται η βιβλιογραφία και παράρτημα με τον κώδικα που αναπτύχθηκε για την υλοποίηση του συστήματος. 3

12 Περιεχόμενα 1 Ηλεκτρονικό Εμπόριο και Ηλεκτρονικές Προμήθειες Ηλεκτρονικό εμπόριο: Ορισμός Ηλεκτρονικό Εμπόριο: Δημόσιοι φορείς Μοντέλα Ηλεκτρονικών Επιχειρήσεων Ηλεκτρονική Προμήθεια: Ορισμός Πλεονεκτήματα Ηλεκτρονικού Εμπορίου Μειονεκτήματα Ηλεκτρονικού Εμπορίου Υλοποίηση Υπηρεσίες Διαδικτύου Ορισμός των Υπηρεσιών Διαδικτύου Πλεονεκτήματα έναντι παλαιότερων κατανεμημένων τεχνολογιών Web Services από επιχειρηματική σκοπιά Web Services από τεχνική σκοπιά Εφαρμογές των Web Services Εργαλεία που χρησιμοποιήθηκαν Ανοικτό λογισμικό Εξυπηρετητής Εφαρμογών(Application Server) - Glassfish MySQL J2EE JavaServer Pages JSTL Hibernate και Persistence Υλοποίηση Εφαρμογής Εισαγωγή Προαπαιτούμενα MySQL NetBeans IDE Μοντέλο - Model Παρουσίαση - View Ελεγκτής - Controller Δημιουργία ελεγκτή Ανταλαγή δεδομένων μεταξύ ελεγκτή και σελίδων Ερωτήματα στη Βάση Δεδομένων Υπηρεσίες Διαδικτύου - Web Services Δημιουργία Υλοποίηση της Λογικής Ασφάλεια

13 4.6.4 Κατανάλωση Υπηρεσιών Διαδικτύου Παραδείγματα Χρήσης Απλός Χρήστης - Πελάτης Διαχειριστής Μελλοντικές Επεκτάσεις Βιβλιογραφία 52 Αʹ Παράρτημα 56 Αʹ.1 Μοντέλο: Οντότητες και Data Beans Αʹ.2 Παρουσίαση: Σελίδες JSP Αʹ.3 Ελεγκτής: Java Servlet Αʹ.4 Υπηρεσίες Διαδικτύου Αʹ.5 Αρχεία Ρυθμίσεων

14 1 Ηλεκτρονικό Εμπόριο και Ηλεκτρονικές Προμήθειες 1.1 Ηλεκτρονικό εμπόριο: Ορισμός Ως Ηλεκτρονικό Εμπόριο (Η.Ε.) ή αλλιώς ως e-commerce, ecommerce, e-comm, όπως είναι ευρέως γνωστό, ορίζεται το εμπόριο παροχής αγαθών και υπηρεσιών που πραγματοποιείται εξ αποστάσεως με ηλεκτρονικά μέσα, βασιζόμενο δηλαδή στην ηλεκτρονική μετάδοση δεδομένων, χωρίς να καθίσταται αναγκαία η φυσική παρουσία των συμβαλλομένων μερών, πωλητή-αγοραστή. Περιλαμβάνει το σύνολο των διαδικτυακών διαδικασιών: ανάπτυξη, προώθηση, πώληση, παράδοση, εξυπηρέτηση και πληρωμή για προϊόντα και υπηρεσίες. Το εύρος των ανταλλαγών που διεξάγονται ηλεκτρονικά έχει αυξηθεί ασυνήθιστα με την ευρεία χρήση του Διαδικτύου. Η διεξαγωγή του εμπορίου με αυτόν τον καινοφανή τρόπο προκαλεί και απορροφά καινοτομίες στην ηλεκτρονική μεταφορά χρηματικών πόρων, στη διαχείριση της εφοδιαστικής αλυσίδας (supply chain management), στο διαδικτυακό μάρκετινγκ (Internet marketing), στη διεκπεραίωση διαδικτυακών διαδικασιών (online transaction processing), στην ανταλλαγή ηλεκτρονικών δεδομένων (electronic data interchange, EDI), στην καταγραφή συστημάτων διοίκησης (inventory management) και στην αυτοματοποίηση συστημάτων συγκέντρωσης δεδομένων. Το ηλεκτρονικό εμπόριο θεωρείται γενικά ως μία πτυχή του e-business. Το ηλεκτρονικό εμπόριο διακρίνεται, αναλόγως των συμβαλλομένων μερών, στους ακόλουθους τύπους: B2B. Πρόκειται για ευφυές αρκτικόλεξο του αγγλικού όρου business to business και αφορά στο ηλεκτρονικό εμπόριο το οποίο διενεργείται μεταξύ επιχειρήσεων. Αυτό μπορεί να είναι ανοιχτό σε όλα τα ενδιαφερόμενα μέρη (ανταλλαγή εμπορευμάτων) ή περιορισμένο σε συγκεκριμένους προκαθορισμένους συμμετέχοντες (ιδιωτική ηλεκτρονική αγορά). B2C. Πρόκειται ομοίως για χρήση αρκτικόλεξου από τον αγγλικό όρο business to consumer και αφορά ηλεκτρονικό εμπόριο το οποίο διενεργείται μεταξύ επιχειρήσεων (προμηθευτών ή παροχής υπηρεσιών) και καταναλωτών των προϊόντων τους. Αυτός ο τύπος ηλεκτρονικού εμπορίου διεξάγεται από εταιρίες όπως η amazon.com. Η ηλεκτρονική αγορά αποτελεί μία μορφή ηλεκτρονικού εμπορίου στην οποία ο αγοραστής συνδέεται απευθείας με τον υπολογιστή του πωλητή συνήθως μέσω internet. Δεν εμπλέκεται καμία ενδιάμεση υπηρεσία. Οι συναλλαγές, αγορά ή πώληση, ολοκληρώνονται ηλεκτρονικά και διαδραστικά σε πραγματικό χρόνο, όπως γίνεται με την amazon.com για τα νέα βιβλία. Σε ορισμένες περιπτώσεις, ένας μεσάζων μπορεί να είναι παρών σε μία συναλλαγή, όπως γίνεται με τις συναλλαγές στο ebay.com. C2C. Συναλλαγές μεταξύ καταναλωτών. Τα βασικότερα χαρακτηριστικά του ηλεκτρονικού εμπορίου μεταξύ καταναλωτών είναι οι ηλεκτρονικοί πλειστηριασμοί, οι μικρές αγγελίες κ.λπ. Μοbile E-commerce: Αυτό αφορά το επιχειρούμενο ηλεκτρονικό τηλεφωνικό εμπόριο. 6

15 Εσωτερικό εμπόριο. Στόχος είναι η αποτελεσματικότερη λειτουργία των δραστηριοτήτων μιας επιχείρησης, ώστε να μπορεί να προσφέρει καλύτερα προιόντα και υπηρεσίες στους πελάτες της. Οι εφαρμογές του συνήθως εντάσσονται στη λειτουργία ενός τοπικού δικτύου (Intranet) και μπορούν να είναι: επικοινωνία μεταξύ ομάδων εργασίας, ηλεκτρονική δημοσίευση(άμεση διανομή πληροφοριών) κ.λπ. Τέλος, μπορούμε να ορίσουμε το ηλεκτρονικό εμπόριο από τέσσερις διαφορετικές οπτικές γωνίες: Επιχειρήσεις. Ως εφαρμογή νέων τεχνολογιών προς την κατεύθυνση του αυτοματισμού των συναλλαγών και της ροής εργασιών. Υπηρεσίες. Ως μηχανισμό που έχει στόχο να ικανοποιήσει την κοινή επιθυμία προμηθευτών και πελατών για καλύτερη ποιότητα υπηρεσιών, μεγαλύτερη ταχύτητα εκτέλεσης συναλλαγών και μικρότερο κόστος. Απόσταση. Ως δυνατότητα αγοραπωλησίας προιόντων και υπηρεσιών μεσω του διαδικτύου, ανεξάρτητα από τη γεωγραφική απόσταση. Επικοινωνία. Ως δυνατότητα παροχής πληροφοριών, προιόντων ή υπηρεσιών και πληρωμών μέσα από δίκτυα ηλεκτρονικών υπολογιστών. 1.2 Ηλεκτρονικό Εμπόριο: Δημόσιοι φορείς Η κατηγορία αυτή έχει δημιουργηθεί τα τελευταία χρόνια και αποτελεί κομμάτι ενός νέου αναπτυσσόμενου κλάδου, της ηλεκτρονικής διακυβέρνησης (e-government). Η μορφή αυτή περιλαμβάνει κυρίως δύο πλαίσια δραστηριοτήτων: Τη συνεργασία των δημοσίων φορέων με τις επιχειρήσεις (Business to Government- B2G): Καλύπτει κάθε μορφή ηλεκτρονικής επικοινωνίας μεταξύ επιχειρήσεων και κρατικών φορέων, τόσο για διεκπεραίωση φορολογικών ή άλλων υποχρεώσεων (διεκπεραίωση των συναλλαγών τους ηλεκτρονικά), όσο και για την αυτοματοποίηση της διαδικασίας των δημοσίων προμηθειών. Αφορά δραστηριότητες όπως: ηλεκτρονική παροχή πληροφοριών (ενημέρωση των επιχειρήσεων για διαγωνισμούς, προκηρύξεις, δημοπρασίες), ηλεκτρονική υποβολή αιτήσεων, ηλεκτρονική έκδοση πιστοποιητικών, προμήθειες δημοσίου, διευκόλυνση και αυτοματοποίηση των συναλλαγών, ηλεκτρονική πιστοποίηση της επιχείρησης, δυνατότητα ηλεκτρονικής πληρωμής κ,ά. Σε προηγμένες χώρες, η πρότυπη και μεθοδική λειτουργία του ηλεκτρονικού εμπορίου σ αυτήν τη μορφή έχει ως αποτέλεσμα τη μείωση των λειτουργικών εξόδων, την παροχή καλύτερων υπηρεσιών και τον αποτελεσματικότερο έλεγχο εσόδων και διαφάνειας. Σιγά-σιγά τίθενται και στη χώρα μας σε λειτουργία εφαρμογές οι οποίες θα οδηγήσουν σε ανάλογα αποτελέσματα (όπως, για παράδειγμα, η ηλεκτρονική υποβολή δηλώσεων ΦΠΑ και φόρου εισοδήματος). 7

16 Την επικοινωνία του κράτους με τον πολίτη (Consumer to Government - C2G), που περιλαμβάνει την ενημέρωση των πολιτών για τις υπηρεσίες τις οποίες παρέχει το κράτος και τη διεκπεραίωση των υποθέσεων τους σε σχέση με τις δημόσιες υπηρεσίες με ηλεκτρονικό τρόπο. Σ αυτήν την κατηγορία εντάσσονται δραστηριότητες όπως: ηλεκτρονική παροχή πληροφοριών, ηλεκτρονική πιστοποίηση πολιτών, ηλεκτρονική υποβολή αιτήσεων φορολογικών δηλώσεων, ηλεκτρονική έκδοση πιστοποιητικών και δυνατότητα ηλεκτρονικής πληρωμής από τον πολίτη. 1.3 Μοντέλα Ηλεκτρονικών Επιχειρήσεων Τα βασικά μοντέλα ηλεκτρονικών επιχειρήσεων είναι το ηλεκτρονικό κατάστημα (eshop), η ηλεκτρονική προμήθεια (e-procurment), η ηλεκτρονική δημοπρασία (e-auction), τα ηλεκτρονικά εμπορικά κέντρα (e-malls) και η ηλεκτρονική πύλη (e-portal). 1.4 Ηλεκτρονική Προμήθεια: Ορισμός Ηλεκτρονικές προμήθειες είναι ένας ευρύς όρος ο οποίος χρησιμοποιείται για να περιγράψει τη χρήση ηλεκτρονικών μεθόδων, μέσω Διαδικτύου, για τη διενέργεια συναλλαγών μεταξύ των επιχειρήσεων-αγοραστών και των επιχειρήσεων-προμηθευτών. Η διαδικασία Ηλεκτρονικών Προμηθειών καλύπτει όλες τις διαδικασίες της συναλλαγής και γενικά θα μπορούσε να αποτυπωθεί ως μια διαδικασία 3 βασικών σταδίων (Source-Procure-Analyze): Ανεύρεση προμηθευτή και διαπραγμάτευση (Source) Εκτέλεση Προμήθειας (Procure) Ανάλυση (Analyze) Οι ηλεκτρονικές προμήθειες ανήκουν κυρίως στη μορφή Β2Β Ηλεκτρονικού Εμπορίου (Επιχείρηση προς Επιχείρηση). Η δεύτερη, μικρότερη κατηγορία, είναι αυτή του Β2C Ηλεκτρονικού Εμπορίου (Επιχείρηση προς Καταναλωτή). Όταν ο φορέας είναι δημόσια υπηρεσία, τότε μιλάμε για δημόσιες ηλεκτρονικές προμήθειες B2G Ηλεκτρονικού Εμπορίου (Επιχείρηση προς Κράτος). Η νέα γενιά E-Procurement είναι πλέον on-demand ή ένα softwareas-a-service. Πρωταρχικός στόχος του e-procurement είναι να καταστεί δυνατή η ηλεκτρονική διαχείριση εφοδιαστικής αλυσίδας, που μπορεί να επιτευχθεί είτε αυτόνομα, είτε από κοινού είτε από ολοκληρωμένα εργαλεία λογισμικού. Υπάρχουν επτά βασικοί τύποι E-Procurement (Baily, P. J. H., 2008): Web-based ERP (Enterprise Resource Planning): Η δημιουργία και έγκριση παραγγελιοληψίας, η διάθεση εντολών αγοράς και η λήψη αγαθών/υπηρεσιών με τη χρήση ενός web-based συστήματος λογισμικού. e-mro (Maintenance, Repair and Overhaul): Όμοιο με το ERP, εκτός από το ότι τα αγαθά/υπηρεσίες που έχουν παραγγελθεί δεν σχετίζονται με τα προϊόντα συντήρησης, επισκευής και επιθεώρησης (MRO). 8

17 e-sourcing: Προσδιορισμός νέων προμηθευτών για μια ειδική κατηγορία αγοράς προϊόντων μέσω Διαδικτυακής τεχνολογίας. e-tendering: Αποστολή αιτημάτων για πληροφορίες και τιμές στους προμηθευτές και παραλαβή των απαντήσεών τους, μέσω Διαδικτυακής τεχνολογίας. e-reverse auctioning: Η χρήση της τεχνολογίας του Διαδικτύου για αγορά αγαθών/υπηρεσιών από διάφορους γνωστούς ή άγνωστους προμηθευτές. e-informing: Συγκέντρωση και διάχυση πληροφοριών αγοράς από- και προς εσωτερικές και εξωτερικές πηγές χρησιμοποιώντας Διαδικτυακή τεχνολογία. e-marketsites: Επεκτάσεις στο Web-based ERP για να επεκταθούν οι αλυσίδες αξίας. Αγοράζοντας από ηλεκτρονικές κοινότητες μπορούν να έχουν πρόσβαση στα προϊόντα και τις υπηρεσίες των επιθυμητών προμηθευτών, προσθέτοντάς τα σε shopping carts, μπορούν να κάνουν παραγγελίες, να ζητούν έγκριση, να αγοράζουν και να έχουν πρόσβαση σε ηλεκτρονικά τιμολόγια για την αλυσίδα προμηθειών από την πλευρά των προμηθευτών σε συνδυασμό με τα οικονομικά συστήματα των αγοραστών. 1.5 Πλεονεκτήματα Ηλεκτρονικού Εμπορίου Τα πλεονεκτήματα που προκύπτουν από τις εφαρμογές του ηλεκτρονικού εμπορίου είναι πολλά, γι αυτό μπορούμε να τα διακρίνουμε με βάση την πλευρά στην οποία προσπορίζουν όφελος. Έτσι, τα διακρίνουμε σε τρεις κατηγορίες με βάση: τα οφέλη για τους καταναλωτές, τα οφέλη για τους οργανισμούς και τα οφέλη για την κοινωνία γενικότερα. 1. Οφέλη για τους καταναλωτές: Καλύτερη και ταχύτερη εξυπηρέτηση πελατών: Το ΗΕ επιτρέπει στους πελάτες να αγοράζουν ή να κάνουν άλλου είδους συναλλαγές 24 ώρες το 24ωρο, όλο το έτος και σχεδόν από οποιοδήποτε μέρος, αυτοματοποιώντας τη διαδικασία απάντησης στις πιο συχνές και συνηθισμένες ερωτήσεις και επιτρέποντας έτσι στο ανθρώπινο δυναμικό της επιχείρησης να ασχοληθεί με τις περιπτώσεις οι οποίες πραγματικά απαιτούν προσοχή. Οι καταναλωτές μπορούν να λάβουν λεπτομερείς πληροφορίες μέσα σε λίγα λεπτά, δίχως απώλεια χρόνου και ταλαιπωρία, ενώ μειώνονται και οι μετακινήσεις. Η παράδοση των προϊόντων και των υπηρεσιών γίνεται ταχύτερα, ενώ για μερικά προϊόντα (π.χ. ψηφιακά) η παράδοση μπορεί να είναι άμεση. Δυνατότητα αλληλεπίδρασης με άλλους πελάτες: Το ΗΕ επιτρέπει στους πελάτες να έρχονται σε επαφή με άλλους πελάτες σε ηλεκτρονικές κοινότητες, στο πλαίσιο των οποίων μπορούν να ανταλλάσσουν απόψεις και να συγκρίνουν τις εμπειρίες τους. Μεγαλύτερη γκάμα προϊόντων: Προσφέρονται στους πελάτες περισσότερες επιλογές. Μπορούν να επιλέξουν μέσα από μεγάλη γκάμα προϊόντων και υπηρεσιών 9

18 από περισσότερες πηγές και ανεξάρτητα από τον τόπο διαμονής τους, αφού έχουν τη δυνατότητα πραγματοποίησης παγκόσμιων αγορών με ταυτόχρονη δυνατότητα εύκολης και γρήγορης σύγκρισης των προϊόντων αυτών. Χαμηλότερες τιμές προϊόντων: Η μείωση των τιμών των προϊόντων αποτελεί έμμεσο αποτέλεσμα της μείωσης του κόστους των συναλλαγών (κόστος παραγωγής και διακίνησης). Αν λάβουμε υπόψη μας ότι το λειτουργικό κόστος ενός ηλεκτρονικού καταστήματος είναι πολύ μικρότερο από το κόστος των αντίστοιχων φυσικών καταστημάτων, οδηγούμαστε στο λογικό συμπέρασμα ότι και τα προϊόντα που διακινούνται ή πωλούνται μέσω του διαδικτύου είναι επίσης φθηνότερα από τα αντίστοιχα των φυσικών καταστημάτων. Επιπλέον, το ηλεκτρονικό εμπόριο συμβάλλει στην τόνωση του ανταγωνισμού, με αποτέλεσμα τη δημιουργία προσφορών, εκπτώσεων και τη διάθεση αγαθών σε καλύτερες τιμές 2. Οφέλη για τις επιχειρήσεις: Πρόσβαση σε νέες αγορές: Το ΗΕ διευρύνει τον κύκλο εργασιών σε εθνικές και διεθνείς αγορές. Πρόκειται για σημαντικό όφελος, καθώς δίνει τη δυνατότητα στις επιχειρήσεις να έχουν παγκόσμια παρουσία. Αυτό τους δίνει την ευκαιρία (και ειδικά στις μικρομεσαίες επιχειρήσεις) να διευρύνουν τον κύκλο εργασιών τους σε νέες αγορές και σε καινούριο αγοραστικό κοινό. Περιορισμός άμεσου κόστους: Η χρήση ενός ψηφιακού δικτύου για τη δημοσίευση και τη μετάδοση πληροφοριών σε ηλεκτρονική μορφή μπορεί να μειώσει το κόστος σε σύγκριση με την επικοινωνία και τη δημοσίευση σε έντυπη μορφή (μειώνει το κόστος της δημιουργίας, επεξεργασίας, διανομής, αποθήκευσης και ανάκτησης πληροφοριών οι οποίες βρίσκονται σε χαρτί). Έτσι έχουμε μείωση του κόστους μια σειράς διαδικασιών που λαμβάνουν χώρα σε μια επιχείρηση, όπως: λειτουργικό κόστος, κόστος προώθησης/διαφήμισης, λειτουργικό κόστος ενδοπληροφόρησης, κόστος επικοινωνίας με τους προμηθευτές και αυτοματοποίηση της διαχείρισης παραγγελιών, διαχείριση της αποθήκης, καθώς και το κόστος υποστήριξης των πελατών σε 24ωρη βάση χωρίς την ανάγκη λειτουργίας ενός τηλεφωνικού κέντρου. Επίσης, το ΗΕ μειώνει σημαντικά το κόστος παραγωγής και διανομής των αγαθών, ειδικά σε προϊόντα τα οποία μεταφέρονται ηλεκτρονικά. Ταχύτερη παράδοση προϊόντων: Χάρη στην αμεσότητα της πρόσβασης στις νέες πληροφορίες, το ηλεκτρονικό εμπόριο επιτρέπει τη συντόμευση του χρόνου που απαιτείται για την παραγωγή και την παράδοση πληροφοριών και υπηρεσιών. Αυτό είναι ιδιαίτερα σημαντικό σε κλάδους οι οποίοι εξαρτώνται από την έγκαιρη παράδοση κρίσιμων πληροφοριών, όπως τα μέσα ενημέρωσης και η χρηματιστηριακή αγορά. Η βελτίωση της εικόνας της επιχείρησης, λόγω της ταχύτερης διεκπεραίωσης, τόσο των συναλλαγών της με τους καταναλωτές όσο και της επικοινωνίας με τις 10

19 άλλες επιχειρήσεις, επιτρέπει να αυξήσουν την ανταγωνιστικότητα τους, ανταποκρινόμενες περισσότερο στις ανάγκες του πελάτη. Καλύτερος έλεγχος αποθεμάτων: Οι ηλεκτρονικές επικοινωνίες επιταχύνουν την ολοκλήρωση των συναλλαγών, αυξάνοντας έτσι την ευελιξία στις προμήθειες των επιχειρήσεων. Οι επιχειρήσεις αξιοποιούν τη δυνατότητα αυτή με την εφαρμογή του συστήματος JIT (Just-In-Time), το οποίο μειώνει τα περιθώρια ανανέωσης των αποθεμάτων, περιορίζοντας έτσι σημαντικά το κόστος παραγωγής - διάθεσης των προϊόντων τους. Γενικότερα, ισχύει ο κανόνας ότι, όσο λιγότερος χρόνος απαιτείται για την ολοκλήρωση μιας παραγγελίας, τόσο μικρότερο απόθεμα είναι υποχρεωμένη να διατηρεί μια επιχείρηση, ώστε να μην υπάρξει διακοπή στις δραστηριότητές της. Έτσι, η αποθήκευση των προϊόντων ανταποκρίνεται στην πραγματική ζήτηση. Εξατομίκευση προϊόντων και υπηρεσιών: Το ΗΕ επιτρέπει τη λεπτομερή παρακολούθηση και καταγραφή του αγοραστικού προφίλ των πελατών μιας επιχείρησης, δίνοντας έτσι τη δυνατότητα, μέσα από συστήματα pull, παροχής εξατομικευμένων προϊόντων και υπηρεσιών σ αυτούς. 3. Οφέλη για την κοινωνία: Το ΗΕ επιτρέπει σε περισσότερα άτομα να εργάζονται στο σπίτι και να κάνουν λιγότερες μετακινήσεις για αγορές, με αποτέλεσμα να υπάρχει λιγότερη κίνηση στους δρόμους και μικρότερη μόλυνση του περιβάλλοντος. Βελτιώνει το πρόσωπο των δημοσίων υπηρεσιών του κράτους, προσφέροντας καλύτερη ποιότητα συναλλαγών με τον πολίτη και διευκολύνοντας την παροχή δημοσίων υπηρεσιών σ αυτούς, όπως: υπηρεσίες υγείας, εκπαίδευσης, φορολογικές (εφορία) κ.α., παρέχοντας εύκολη και γρήγορη εξυπηρέτηση. Επιτρέπει την πώληση αγαθών και την παροχή υπηρεσιών σε χαμηλότερες τιμές, δίνοντας τη δυνατότητα σε άτομα από λιγότερο ευνοημένες κοινωνικές ομάδες να αγοράσουν, βελτιώνοντας έτσι το βοιωτικό τους επίπεδο. Τέλος, επιτρέπει σε ανθρώπους από αναπτυσσόμενες χώρες και από αγροτικές περιοχές να απολαμβάνουν προϊόντα και υπηρεσίες που αλλιώς δεν θα ήταν διαθέσιμα για αυτούς. 1.6 Μειονεκτήματα Ηλεκτρονικού Εμπορίου Εκτός όμως από τα προαναφερθέντα πλεονεκτήματα, το ηλεκτρονικό εμπόριο παρουσιάζει και μια σειρά από μειονεκτήματα και κινδύνους που σχετίζονται με τις εμπορικές επικοινωνίες και τις συναλλαγές. Τους κινδύνους και τα μειονεκτήματα αυτά θα μπορούσαμε να τα διακρίνουμε σε δυο κατηγορίες: 1. Τεχνολογικής φύσης: 11

20 Υπάρχει έλλειψη κοινά αποδεκτών προτύπων ποιότητας, πρωτοκόλλων επικοινωνίας, καθώς και έλλειψη ασφαλείας και αξιοπιστίας. Υπάρχει ανεπαρκές εύρος ζώνης τηλεπικοινωνιών. Το δίκτυο αντιμετωπίζει σοβαρά προβλήματα κυκλοφορίας και έλλειψης επάρκειας στη μεταφορά δεδομένων λόγω της ραγδαίας αύξησης των συνδεδεμένων χρηστών. Μολονότι οι δικτυακές τεχνολογίες εξελίσσονται με ταχύτητα, η ανάγκη για μεγαλύτερο εύρος ζώνης και, κατά συνέπεια, ταχύτητα στη μεταφορά δεδομένων αυξάνεται με ακόμη μεγαλύτερο ρυθμό. Μέχρι τη στιγμή που αυτή η δυσκολία θα αντιμετωπιστεί, τα προβλήματα που σχετίζονται με την ποιότητα των υπηρεσιών θα παραμένουν. Επιπλέον απαιτούμενο κόστος για την υποδομή. Μολονότι οι εταιρείες αναγνωρίζουν τη σημασία του ηλεκτρονικού εμπορίου στο σύγχρονο επιχειρηματικό περιβάλλον, οι επενδύσεις υποδομής είναι ένας παράγοντας που πρέπει να εκτιμηθεί και να ληφθεί σοβαρά υπόψη. Τα εργαλεία ανάπτυξης λογισμικού είναι ακόμη υπό εξέλιξη. Υπάρχουν δυσκολίες στο συνδυασμό Διαδικτυακών εφαρμογών HE με υπάρχουσες εφαρμογές και βάσεις δεδομένων. Η εξυπηρέτηση διαδικασιών μεγάλης κλίμακας απαιτεί υψηλά αυτοματοποιημένα συστήματα και αποθήκες προϊόντων. 2. Μη τεχνολογικής φύσης: Τα θέματα ασφαλείας και προστασίας προσωπικών δεδομένων αποτρέπουν πιθανούς πελάτες. Είναι ένα από τα σημαντικότερα μειονεκτήματα του ΗΕ. Στο internet δύσκολα μπορεί κανείς να εγγυηθεί απόλυτη ασφάλεια στις συναλλαγές. Κι αυτό λειτουργεί ως ένας ψυχολογικός φραγμός για τον καταναλωτή, ο οποίος διστάζει να δώσει τα στοιχεία του (πιστωτική κάρτα) στο internet. Βέβαια, οι μέθοδοι κρυπτογράφησης και διασφάλισης απορρήτου βελτιώνονται συνεχώς, οι κίνδυνοι έχουν μειωθεί στο ελάχιστο και οι περιπτώσεις ηλεκτρονικής απάτης αποτελούν ασήμαντο ποσοστό. Επίσης, η γενικότερη έλλειψη εμπιστοσύνης στα συστήματα HE και σε άγνωστους προμηθευτές αποτρέπουν τους πιθανούς πελάτες. Οι πελάτες δεν εμπιστεύονται έναν άγνωστο, απρόσωπο πωλητή, τις συναλλαγές χωρίς έντυπες αποδείξεις αγοράς και τα ηλεκτρονικά χρήματα. Δεν υπάρχει φυσική επαφή του πελάτη με τα προϊόντα. Στο ΗΕ μεγάλο μειονέκτημα αποτελεί και το γεγονός ότι ο πελάτης δεν έχει τη δυνατότητα να επεξεργαστεί προσωπικά το προϊόν πριν το επιλέξει. Οι πελάτες νιώθουν μεγαλύτερη σιγουριά όταν έχουν άμεση επαφή με το προϊόν, για το λόγο αυτό υπάρχει μεγάλη επιφύλαξη στις ηλεκτρονικές αγορές προϊόντων και ιδιαίτερα στη χώρα μας. Πολλά ζητήματα που σχετίζονται με νομικά θέματα, κανονισμούς (π.χ. Φορολογικά θέματα), κυβερνητικές ρυθμίσεις κ.ά. παραμένουν ανεπίλυτα. 12

21 Τα αποτελέσματα και οι συνέπειες του ΗΕ δεν έχουν ακόμα πλήρως μελετηθεί και αξιολογηθεί. Το ΗΕ είναι ένας τομέας που μεταβάλλεται με ραγδαίο ρυθμό και έως σήμερα έχουν γίνει μόνον υποθέσεις σχετικά με την επιτυχία του. Υπάρχουν βέβαια επιτυχημένα παραδείγματα, αλλά μόλις τώρα διανύουμε το στάδιο της ωριμότητας. Και πολλοί οργανισμοί διστάζουν να εφαρμόσουν ηλεκτρονικές συναλλαγές. Στις περισσότερες περιπτώσεις δεν υπάρχει επαρκής αριθμός (κρίσιμη μάζα) των αγοραστών και των πωλητών που είναι απαραίτητοι για κερδοφόρες δραστηριότητες HE. Η σύνδεση στο internet κατά τόπους παραμένει ακριβή και άβολη και δεν είναι διαθέσιμη για όλους. Έτσι, εάν το πλατύ κοινό δεν έχει πρόσβαση στο διαδίκτυο, η προσπάθεια η οποία γίνεται δεν φτάνει στον τελικό καταναλωτή. 1.7 Υλοποίηση Στην διπλωματική αυτή ασχοληθήκαμε με την υλοποίηση ενός συστήματος ημιαυτοματοποιημένων ηλεκτρονικών προμηθειών μεταξύ επιχειρήσεων (Β2Β), με φορέα ένα ηλεκτρονικό βιβλιοπωλείο (e-shop). Το σύστημα υλοποιεί το e-tendering για τη λήψη πληροφοριών οι οποίες θα συμβάλλουν στο κομμάτι Web-based ERP για τη δημιουργία και έγκριση παραγγελιοδοσίας. 13

22 2 Υπηρεσίες Διαδικτύου 2.1 Ορισμός των Υπηρεσιών Διαδικτύου Υπάρχουν πολλοί ορισμοί για το τι είναι οι υπηρεσίες διαδικτύου (στο εξής web services ή, για συντομία, WS), περίπου όσοι και οι εταιρίες πληροφορικής οι οποίες αναπτύσσουν εργαλεία για τα web services. Ένας πολύ καλός ορισμός προέρχεται από την IBM: Τα web services είναι μια τεχνολογία που επιτρέπει στις εφαρμογές να επικοινωνούν μεταξύ τους ανεξαρτήτως πλατφόρμας και γλώσσας προγραμματισμού. Ένα web service είναι μια διεπαφή λογισμικού (software interface) που περιγράφει ένα άθροισμα από λειτουργίες προσέγγισιμες από το δίκτυο μέσω πρότυπων μηνυμάτων XML. Χρησιμοποιεί πρότυπα βασισμένα στη γλώσσα XML για να περιγράψει μία λειτουργία (operation) προς εκτέλεση, καθλως και τα δεδομένα προς ανταλλαγή με κάποια άλλη εφαρμογή. Μια ομάδα από web services οι οποίες αλληλεπιδρούν μεταξύ τους καθορίζει μια εφαρμογή web services. H Microsoft μέσα από το MSDN της καταλήγει ότι όλα τα web services έχουν τρία (3) κοινά χαρακτηριστικά: Τα web services εκθέτουν χρήσιμη λειτουργικότητα σε χρήστες του διαδικτύου μέσα από ένα πρότυπο δικτυακό πρωτόκολλο. Στις περισσότερες περιπτώσεις αυτό το πρωτόκολλο είναι το SOAP (Simple Object Access Protocol). Τα web services παρέχουν ένα τρόπο για να περιγράψουν τις διεπαφές τους με αρκετή λεπτομέρεια, ώστε να επιτρέψουν στον χρήστη τους να χτίσει μια εφαρμογή πελάτη η οποία να επικοινωνεί μαζί τους. Η περιγραφή συνήθως παρέχεται σε ένα έγγραφο XML το οποίο ονομάζεται έγγραφο WSDL (Web Services Description Language). Τα web services καταχωρούνται, ώστε οι δυνητικοί χρήστες να μπορούν να τα βρουν εύκολα. Αυτό γίνεται με το UDDI (Universal Discovery Description and Integration). Τα web services, λοιπόν, αποτελούν μία αρχιτεκτονική κατανεμημένων συστημάτων κατασκευασμένη από πολλά διαφορετικά υπολογιστικά συστήματα τα οποία επικοινωνούν μέσω του δικτύου ώστε να δημιουργήσουν ένα σύστημα. Αποτελούνται από ένα σύνολο προτύπων τα οποία επιστρέπουν στους υπεύθυνους για την ανάπτυξη (προγραμματιστές - developers) να υλοποιήσουν κατανεμημένες εφαρμογές (χρησιμοποιώντας διαφορετικά εργαλεία από διαφορετικούς προμηθευτές), ώστε να κατασκευάσουν εφαρμογές που χρησιμοποιούν έναν συνδυασμό από ενότητες λογισμικού (software modules) οι οποίες καλούνται από συστήματα τα οποία ανήκουν σε διαφορετικά τμήματα ενός οργανισμού ή σε διαφορετικούς οργανισμούς. 14

23 2.2 Πλεονεκτήματα έναντι παλαιότερων κατανεμημένων τεχνολογιών Μία εύλογη ερώτηση είναι τι διαφορετικό έχει να προσφέρει αυτή η τεχνολογία σε σχέση με προηγούμενες κατανεμημένες τεχνολογίες. 1. Ευκολότερος χειρισμός δεδομένων. Παραδοσιακά το κυριότερο πρόβλημα στις κατανεμημένες τεχνολογίες ήταν το λεγόμενο tight-coupling ή, στα ελληνικά, η ισχυρή συνδεδιμότητα. Μια εφαρμογή που καλούσε μια άλλη απομακρυσμένη ήταν αυστηρά δεμένη με αυτήν από την κλήση λειτουργίας (function call) που εκτελούσε και τις παραμέτρους που περνούσε. Στα περισσότερα συστήματα πριν από την έλευση των web services, ο τρόπος επικοινωνίας ήταν μια σταθερή διεπαφή με λίγη έως καθόλου ευελεξία ή προσαρμοστικότητα στα περιβάλλοντα ή στις συνεχώς μεταβαλλόμενες ανάγκες. Τα web services χρησιμοποιούν τη γλώσσα XML, η οποία μπορεί να περιγράψει οποιαδήποτε δεδομένα σε ένα πραγματικά ανεξάρτητο από πλατφόρμα τρόπο για ανταλλαγή αυτών των δεδομένων μεταξύ συστημάτων. Με αυτόν τον τρόπο οδηγούμαστε σε εφαρμογές με χαλαρή συνδεσιμότητα (loosely-coupled). Επιπλέον, τα web services μπορούν να λειτουργήσουν σε πιο αφηρημένο επίπεδο, στο οποίο μπορούν να επαναξιολογήσουν, να τροποποιήσουν ή να χειριστούν τύπους δεδομένων δυναμικά κατά περίπτωση. Έτσι, σε τεχνικό επίπεδο, τα web services μπορούν να χειριστούν δεδομένα πολύ ευκολότερα και να επιτρέψουν στο λογισμικό να επικοινωνεί πιο ελεύθερα. 2. Απλότητα πρωτοκόλλου επικοινωνίας. Τα web services χρησιμοποιούν ως πρωτόκολλο επικοινωνίας το SOAP. Το πρωτόκολλο αυτό είναι πολύ πιο απλό από πρωτόκολλα παλαιότερων τεχνολογιών, όπως αυτά που χρησιμοποούνταν από τα κατανεμημένα περιβάλλοντα CORBA, DCOM, RPC. Έτσι, το να δημιουργήσει κανείς μια υλοποίηση SOAP που υπόκειται στα πρότυπα (standards-compliant) είναι πολύ πιο εύκολο. Σήμερα μπορεί να βρει κανείς υλοποιήσεις του SOAP από τις μεγαλύτερες εταιρίες πληροφορικής, αλλά ακόμη και από μεμονωμένους προγραμματιστές, πράγμα αδιανόητο για παλαιότερες κατανεμημένες τεχνολογίες. 3. Απλότητα υποδομής. Τα web services λειτουργούν με πρότυπες γλώσσες και πρωτόκολλα όπως η XML, το HTTP και το TCP/IP. Η πλειονότητα των εταιριών έχουν ήδη τη δικτυακή υποδομή, καθώς και ανθρώπινο δυναμικό με γνώσεις και εμπειρία ώστε να την συντηρούν. Έτσι, το κόστος για την εφαρμογή των web services είναι σημαντικά μικρότερο από αυτό των προηγούμενων τεχνολογιών. 4. Ευκολία στην επικοινωνία. Με τις προηγούμενες τεχνολογίες η συνεργασία μεταξύ εταιριών αποτελούσε ένα σημαντικό πρόβλημα, διότι κατανεμημένες τεχνολογίες όπως CORBA και DCOM χρησιμοποιούσαν μη πρότυπες πόρτες. Αυτό είχε ως αποτέλεσμα η συνεργασία να προκαλεί άνοιγμα οπών στα τείχη προστασίας (firewalls), πράγμα το οποίο πολλές φορές δεν ήταν αποδεκτό από τους υπεύθυνους της πληροφορικής σε μια εταιρία, διότι έθετε σε κίνδυνο την ασφάλεια των συστημάτων. Επιπροσθέτως, 15

24 η χειροκίνητη διαδικασία η οποία απαιτούνταν για τη συνεργασία μιας εταιρίας με τους συνεργάτες της δεν επέτρεπε την ανάπτυξη μιας δυναμικής συνεργασίας. Τα web services μπορούν να χρησιμοποιήσουν (μεταξύ άλλων) το HTTP ως πρωτόκολλο μεταφοράς και τα περισσότερα τείχη προστασίας επιτρέπουν την πρόσβαση μέσω της θύρας 80 (πρότυπη θύρα για το HTTP). Με αυτόν τον τρόπο οδηγούμαστε σε ευκολότερες και δυναμικές συνεργασίες μεταξύ των συστημάτων των εταιριών. 5. Διαλειτουργικότητα και ευκολία ανάπτυξης νέων εφαρμογών. Οι προηγούμενες κατανεμημένες τεχνολογίες υπέφεραν από προβλήματα διαλειτουργικότητας, διότι κάθε προμηθευτής (vendor) υλοποιούσε το δικό του πρότυπο για distributed object messaging. Με την XML ως αποκλειστικό πρότυπο στα web services, συστήματα φτιαγμένα από διαφορετικές τεχνολογίες, όπως η Java και το.net, μπορούν να επικοινωνήσουν μεταξύ τους. Επιπλέον, λόγω της απλότητας της XML είναι πολύ πιο εύκολο να υλοποιηθούν νέες εφαρμογές σε μικρό χρονικό διάστημα. 2.3 Web Services από επιχειρηματική σκοπιά Σε ένα υψηλότερο εννοιολογικό επίπεδο, μπορούμε να δούμε τα web services ως μονάδες εργασίας (units of work). Κάνοντας ένα βήμα περαιτέρω, αυτές οι μονάδες μπορούν να συνδυαστούν σε εργασίες επιχειρησιακού προσανατολισμού για να χειριστούν συγκεκριμένες επιχειρησιακές λειτουργίες. Αυτό, με τη σειρά του, επιτρέπει σε μη καταρτισμένους τεχνικά ανθρώπους να σχεδιάσουν εφαρμογές οι οποίες μπορούν να χειριστούν τα επιχειρησιακά ζητήματα συνδυάζοντας τα web services σε ροές εργασίας. Το πλεονέκτημα που προκύπτει από αυτήν την πτυχή είναι ότι τα web services βοηθούν στη γεφύρωση του χάσματος ανάμεσα στους ανθρώπους του επιχειρείν και στους ανθρώπους της πληροφορικής σε ένα οργανισμό. Οι άνθρωποι του επιχειρείν μπορούν να περιγράψουν γεγονότα και δραστηριότητες και οι τεχνικοί μπορούν να τα συνδέσουν με τις κατάλληλες υπηρεσίες. Με καθολικά καθορισμένες διεπαφές και καλά σχεδιασμένες λειτουργίες, γίνεται επίσης εύκολο να επαναχρησιμοποιηθούν αυτές οι λειτουργίες. άρα, και οι εφαρμογές που αντιπροσωπεύουν. Η επαναχρησιμοποιήση μιας εφαρμογής λογισμικού σημαίνει καλύτερη απόδοση της επένδυσης (return on investment), διότι με τους ίδιους πόρους επαυξάνει την παραγωγικότητα. Επιτρέπει στους ανθρώπους να εξετάσουν το ενδεχόμενο να χρηιμοποιήσουν μια ήδη υπάρχουσα εφαρμογή με διαφορετικό τρόπο ή το ενδεχόμενο να προσφέρουν αυτήν την εφαρμογεί σε κάποιον συνεργάτη για να την χρησιμοποιήσει εκείνος με τρόπο που να προσιδιάζει στις δικές του ανάγκες, αυξάνοντας ενδεχομένως τις επιχειρησιακές συναλλαγές μεταξύ των συνεργατών. Επομένως, τα κύρια ζητήματα τα οποία προσπαθούν να λύσουν τα web services είναι τα ζητήματα ολοκλήρωσης (integration) δεδομένων και εφαρμογών και αυτά της μεταμόρφωσης των τεχνικών λειτουργιών σε υπολογιστικές λειτουργίες επιχειρησιακού προσανατολισμού. 16

25 2.4 Web Services από τεχνική σκοπιά Προκειμένου να επωφεληθούμε από όλα τα δυναμικά χαρακτηριστικά των web services, ώστε να συνδυάσουμε υπηρεσίες σε εφαρμογές, χρειάζεται πρώτα να χτίσουμε αυτές τις υπηρεσίες. Οι γλώσσες προγραματισμού στην πληροφορική συνεχώς εξελίσσονται. Ξεκινήσαμε δεκαετίες πριν με την ιδέα της function στην οποία παρέχουμε μερικές παραμέτρους, εκτελεί μια λειτουργία με αυτές τις παραμέτρους και επιστρέφει μια τιμή βασισμένη στους υπολογισμούς που πραγματοποιήθηκαν. Τελικά, αυτή η πρώτη έννοια εξελίχθηκε σε αντικείμενο (object), όπου κάθε αντικείμενο είχε όχι απλώς έναν αριθμό από λειτουργίες (functions) τις οποίες μπορεί να εκτελέσει, αλλά και τις δικές του ιδιωτικές μεταβλητές (private data variables), αντί να στηρίζεται σε εξωτερικές μεταβλητές του συστήματος που στο παρελθόν έκαναν πιο περίπλοκη την ανάπτυξη εφαρμογών. Δεδομένου ότι οι εφαρμογές άρχισαν να επικοινωνούν μεταξύ τους, η έννοια του καθορισμού καθολικών διεπαφών (universal interfaces) για αντικείμενα έγινε σημαντική, επιτρέποντας αντικείμενα σε διαφορετικές πλατφόρμες να επικοινωνούν, ακόμη και αν είχαν αναπτυχθεί σε διαφορετικές γλώσσες προγραμματισμού και εκτελούνταν σε διαφορετικά λειτουργικά συστήματα. Στο πιο πρόσφατο βήμα, τα web services κινήθηκαν προς την κατεύθυνση των διεπαφών και επικοινωνιών καθορισμένων με XML, ενώνοντας τελικά κάθε είδους εφαρμογή με οποιαδήποτε άλλη και παρέχοντας την ελευθερία στις εφαρμογές να αλλάξουν και να εξελιχθούν με τον χρόνο, αρκεί να είναι σχεδιασμένες σύμφωνα με την κατάλληλη διεπαφή. Η μεταβλητότητα της XML είναι αυτό που κάνει τα web services διαφορετικά από τεχνολογίες προηγούμενων γενεών. Επιτρέπει τον διαχωρισμό της γραμματικής δομής (syntax) και της γραμματικής έννοιας (semantics) και τον τρόπο με τον οποίο αυτά υποβάλλονται σε επεξεργασία και κατανοούνται από μία υπηρεσία και το περιβάλλον μέσα στο οποίο αυτή η υπηρεσία υπάρχει. Έτσι λοιπόν τώρα τα αντικείμενα μπορούν να καθοριστούν σαν υπηρεσίες οι οποίες επικοινωνούν με άλλες υπηρεσίες σε γραμματική καθορισμένη σε XML, με την οποία κάθε υπηρεσία μεταφράζει και αναλύει το μήνυμα σύμφωνα με την τοπική της υλοποίησης και το περιβάλλον της. Κατά συνέπεια, μια διακτυακή εφαρμογή μπορεί πραγματικά να συντεθεί από πολλαπλές οντότητες διαφόρων υλοποιήσεων και σχεδιασμών, εφόσον προσαρμόζονται στους κανόνες που καθορίζονται από την προσανατολισμένη στις υπηρεσίες αρχιτεκτονική τους. Κατά συνέπεια, τα web services μας επιτρέπουν: Την αλληλεπίδραση μεταξύ υπηρεσιών σε οποιαδήποτε πλατφόρμα, γραμμένες σε οποιαδήποτε γλωσσα προγραμματισμού. Να αντιληφθούμε λειτουργίες εφαρμογών ως εργασίες, οδηγούμενοι σε ανάπτυξη και ροές εργασιών προσανατολισμένες σε εργασίες. Αυτό επιτρέπει μια υψηλότερη αφαίρεση του λογισμικού το οποίο μπορεί να υιοθετηθεί από λιγότερο τεχνικά καταρτισμένους χρήστες. Τη χαλαρή συνδεσιμότητα μεταξύ εφαρμογών, πράγμα που σημαίνει ότι οι αλληλεπιδράσεις μεταξύ υπηρεσιών δεν θα διακόπτονται κάθε φορά που υπάρχει κάποια 17

26 αλλαγή. Την προσαρμογή ήδη υπάρχουσων εφαρμογών στις μεταβαλλόμενες επιχειρησιακές συνθήκες και ανάγκες των πελατών. Να παρέχουμε υπάρχουσες εφαρμογές λογισμικού με διαπαφές υπηρεσιών χωρίς να αλλάξουμε τις αρχικές εφαρμογές, επιτρέποντάς τους να λειτουργούν πλήρως στο περιβάλλον των υπηρεσιών. Να εισάγουμε άλλες διοικητικές λειτουργίες ή λειτυοργίες διαχείρισης διαδικασιών, όπως η αξιοπιστία, η υπευθυνότητα, η ασφάλεια, κ.λπ., ανεξάρτητες από την αρχική λειτουργία μιας εφαρομογής, αυξάνοντας κατά συνέπεια τη μεταβλητότητα και τη χρησιμότητά της στο επιχειρησιακό περιβάλλον. 2.5 Εφαρμογές των Web Services Τα πρώτα web services στόχευαν να αποτελέσουν πηγές πληροφορίας τις οποίες μπορεί κανείς πολύ εύκολα να ενσωματώσει στις εφαρμογές του: τιμές μετοχών, προβλέψεις καιρού, αποτελέσματα αθλητικών παινιδιών κ.λπ. Είναι εύκολο να φανταστεί κανείς μια ολόκληρη κατηγορία εφαρμογών που μπορεί να κατασκευάσει ώστε να αναλύει και να συνδυάζει πληροφορία που τον ενδιαφέρει και να την παρουσιάζει με ποικίλους τρόπους. Για παράδειγμα, θα μπορούσαμε να έχουμε ένα λογιστικό φύλλο (spreadsheet) το οποίο συνοψίζει όλη την οικονομική μας εικόνα: μετοχές, τραπεζικούς λογαριασμούς, δάνεια κ.λπ. Αν αυτή η πληροφορία ήταν διαθέσιμη μέσω web services, το λογιστικό φύλλο θα μπορούσε να ενημερώνεται συνεχώς. Οι περισσότερες από αυτές τις πληροφορίες είναι ήδη διαθέσιμες στον παγκόσμιο ιστό, αλλά τα web services θα κάνουν την προγραμματιστική πρόσβαση σε αυτές πιο εύκολη και πιο αξιόπιστη. Εκθέτοντας ήδη υπάρχουσες εφαρμογές ως web services, θα επιτρέψει στους χρήστες να κατασκευάσουν νέες πιο ισχυρές εφαρμογές οι οποίες χρησιμοποιούν τα web services σαν δομικά στοιχεία. Για παράδειγμα, ένας χρήστης θα μπορούσε να αναπτύξει μια εφαρμογή προμηθειών η οποία να παίρνει αυτόματα τιμές από προμηθευτές, να επιστρέπει στο χρήστη να επιλέξει προμηθευτή, να υποβάλει την παραγγελία και να παρακολουθεί την αποστολή έως ότου γίνει η παραλαβή της. Η εφαρμογή του προμηθευτή, εκτός από το να εκθέτει τις υπηρεσίες της στον ιστό, θα μπορούσε να χρησιμοποιήσει άλλα web services για να ελέγξει την πιστοληπτική ικανότητα του πελάτη, να χρεώσει τον τραπεζικό λογαριασμό του πελάτη και να καθορίσει την αποστολή με μια εταιρία μεταφορών. Στο άμεσο μέλλον, μερικά από τα πιο ενδιαφέροντα web services θα υποστηρίζουν εφαρμογές που χρησιμοποιούν τον ιστό για να κάνουν πράγματα τα οποία σήμερα φαντάζουν ανέφικτα. Για παράδειγμα, μία από τις υπηρεσίες που τα web services θα κάνουν δυνατή είναι η υπηρεσία ημερολογίου. Αν ο οδοντίατρος ή ο μηχανικός σας δημοσιοποιούσαν τα ημερολόγιά τους μέσω μιας τέτοιας web service, θα μπορούσατε να προγραμματίσετε τα ραντεβού σας με αυτούς ή θα μπορούσαν να προγραμματίσουν αυτοί τα ραντεβού κατευθείαν 18

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

28 3 Εργαλεία που χρησιμοποιήθηκαν Για την υλοποίηση της διπλωματικής εργασίας έχουμε χρησιμοποιήσει εργαλεία της τεχνολογίας Java. Αυτά περιλαμβάνουν την JSP (JavaServer Pages), JSTL (JSP Standard Tag Library), Java Servlet, Java Web Services και τις βιβλιοθήκες Persistence και Hibernate. Επιπλέον, χρησιμοποιήσαμε για εξυπηρετητή βάσης δεδομένων τον MySQL Server και για εξυπηρετητή εφαρμογών και υπηρεσιών διαδικτύου τον Oracle GlassFish Server Open Source Edition. Χαρακτηριστικό των παραπάνω εργαλειών είναι ο τύπος των αδειών χρήσης. Είναι δηλαδή λογισμικά ανοικτού κώδικα ή ελεύθερα λογισμικά. 3.1 Ανοικτό λογισμικό Το ελεύθερο λογισμικό, όπως ορίζεται από το Ίδρυμα Ελευθέρου Λογισμικού (Free Software Foundation), είναι λογισμικό που μπορεί να χρησιμοποιηθεί, αντιγραφεί, μελετηθεί, τροποποιηθεί και αναδιανεμηθεί χωρίς περιορισμό. Η ελευθερία από τέτοιους περιορισμούς είναι βασικό στοιχείο στην ιδέα του ελεύθερου λογισμικού. Το αντίθετο του ελεύθερου λογισμικού είναι το ιδιόκτητο λογισμικό και όχι το λογισμικό που πωλείται για κέρδος, δηλαδή το εμπορικό λογισμικό. Το ελεύθερο λογισμικό ορισμένες φορές αναφέρεται και σαν ανοιχτό λογισμικό ή λογισμικό ανοιχτού κώδικα, αλλά οι δύο έννοιες δεν είναι ταυτόσημες. Σύμφωνα με τον Richard Stallman, δεν είναι κάθε λογισμικό ελεύθερο μόνο και μόνο επειδή είναι ανοιχτού κώδικα. Eπίσης, πολλές συζητήσεις έχουν γίνει σχετικά με τη δυναμική και τα ιδιαίτερα γνωρίσματα των μοντέλων παραγωγής του Eλεύθερου Λογισμικού ως προτύπου μιας νέας μορφής κοινωνικής, οικονομικής και πολιτικής οργάνωσης. Εν γένει, σύμφωνα με την ισχύουσα νομοθεσία περί πνευματικής ιδιοκτησίας, η ελεύθερη αντιγραφή, διανομή και τροποποίηση του λογισμικού δεν επιτρέπεται. Για τον λόγο αυτό, οι εκδόσεις ελεύθερου λογισμικού κάνουν χρήση ειδικής άδειας (free software licence) με την οποία παραχωρείται στους χρήστες το δικαίωμα αντιγραφής, τροποποίησης και αναδιανομής του λογισμικού. Σύμφωνα με το Ίδρυμα Ελεύθερου Λογισμικού, οι άδειες χρήσης ελεύθερου λογισμικού πρέπει να περιλαμβάνουν τις εξής ελευθερίες [13]: Ελευθερία 0: Ελευθερία χρήσης του προγράμματος για οποιονδήποτε σκοπό. Ελευθερία 1: Ελευθερία μελέτης και τροποποίησης του προγράμματος. Ελευθερία 2: Ελευθερία αντιγραφής του προγράμματος. Ελευθερία 3: Ελευθερία βελτίωσης του προγράμματος και επανέκδοσης του, προς το συμφέρον της κοινότητας των χρηστών. Οι ελευθερίες 1 και 3 προϋποθέτουν την πρόσβαση των χρηστών στον πηγαίο κώδικα του λογισμικού. 20

29 3.2 Εξυπηρετητής Εφαρμογών(Application Server) - Glassfish Ο Glassfish είναι ένας ανοικτού κώδικα εξυπηρετητής εφαρμογών που ξεκίνησε από την Sun Microsystems για την πλατφορμα της Java EE και χορηγείται πλέον από την Oracle. Η υποστηριζόμενη έκδοση ονομάζεται Oracle GlassFish Server. Ο GlassFish είναι ελεύθερο λογισμικό με διπλή άδεια: την Common Development and Distribution License (CDDL) και την GNU General Public License (GPL). Ο GlassFish είναι η υλοποίηση αναφοράς της Java EE και, ως τέτοια, υποστηρίζει Enterprise JavaBeans, JPA, JavaServer Faces, JMS, RMI, JavaServer Pages, servlets, κ.λπ. Αυτό επιτρέπει στους developers να δημιουργούν εφαρμογές φορητές και επεκτάσιμες και οι οποίες μπορούν να ενσωματώσουν legacy τεχνολογίες. Ο GlassFish βασίζεται στον πηγαίο κώδικα που δημοσιοποιήθηκε από τη Sun και την Oracle. 3.3 MySQL Η MySQL είναι ένα σύστημα διαχείρισης σχεσιακών βάσεων δεδομένων που μετρά περισσότερες από 11 εκατομμύρια εγκαταστάσεις. Έλαβε το όνομά της από την κόρη του Μόντυ Βιντένιους, τη Μάι (αγγλ. My). Το πρόγραμμα τρέχει έναν εξυπηρετητή (server) παρέχοντας πρόσβαση πολλών χρηστών σε ένα σύνολο βάσεων δεδομένων. Ο κωδικός του εγχειρήματος είναι διαθέσιμος μέσω της GNU General Public License, καθώς και μέσω ορισμένων ιδιόκτητων συμφωνιών. Ανήκει και χρηματοδοτείται από μία και μοναδική κερδοσκοπική εταιρία, τη σουηδική MySQL AB, η οποία σήμερα ανήκει στην Oracle. Η MySQL είναι δημοφιλής βάση δεδομένων για διαδικτυακά προγράμματα και ιστοσελίδες. Χρησιμοποιείται σε κάποιες από τις πιο διαδεδομένες διαδικτυακές υπηρεσίες, όπως το Flickr, το YouTube, η Wikipedia, το Google, το Facebook και το Twitter. 3.4 J2EE Η πλατφόρμα J2EE χρησιμοποιεί το διανεμημένο πρότυπο εφαρμογής. Αυτό σημαίνει ότι η λογική της εφαρμογής διαιρείται σε συστατικά σύμφωνα με τη λειτουργία και τα διάφορα τμήματα της εφαρμογής που την συναποτελούν, εγκαθίστανται σε διαφορετικές μηχανές, ανάλογα με το επίπεδο μέσα στο περιβάλλον J2EE που ανήκουν JavaServer Pages Οι Java Server Pages είναι ένα χρήσιμο πακέτο προγραμματισμού δυναμικών ιστοσελίδων που χρησιμοποιεί συνδυασμό HTML και Java. Είναι μια τεχνολογία σύγχρονη, συνεχώς εξελισσόμενη και παρέχει τεράστιες ευκολίες στον προγραμματιστή ανεξαρτήτως πλατφόρμας ή λειτουργικού συστήματος. Εντάσσεται στο πακέτο J2EE της εταιρείας Sun Microsystems που περιλαμβάνει και άλλες τεχνολογίες όπως Servlets και JavaBeans οι οποίες μπορούν να συνδυαστούν με τις Java Server Pages με πολύ καλά αποτελέσματα. 21

30 Οι JSP διαθέτουν και όλα τα πλεονεκτήματα της Java με κυριότερο ότι οι JSP είναι multi - platform. Οι σελίδες JSP τρέχουν σε οποιοδήποτε web server (Apache, IIS, κλπ) σε οποιοδήποτε λειτουργικό σύστημα (Windows, Unix κ.λπ) με τον ίδιο ακριβώς τρόπο. Αυτό το σημαντικό πλεονέκτημα των JSP προκύπτει από την Java Virtual Machine η οποία πραγματοποιεί όλες τις απαραίτητες ενέργειες ώστε ο κώδικας Java να τρέχει με τον ίδιο ακριβώς τρόπο σε κάθε μηχανή. Αυτό όπως υποστηρίζει κατηγορηματικά η Sun- είναι και το μεγαλύτερο πλεονέκτημα των JSP σε σχέση με την ανταγωνίστρια τεχνολογία της Microsoft,την ASP.NET JSTL H JSTL είναι μια βιβλιοθήκη από JSP tags, όμοια με τα HTML tags, με τα οποία μπορούν να γίνονται ενέργειες όπως, π.χ., loops και if-else αποφάσεις. Το πλεονέκτημα των JSTL tags σε σύγκριση με τον ισοδύναμο Java scriptlet κώδικα είναι ότι με τα tags η JSP σελίδα είναι αρκετά πιο ευανάγνωστη. Έτσι, συνδυάζοντας JSP Beans με την JSTL πετυχαίνουμε τον μέγιστο διαχωρισμό του presentation (HTML) από τη λογική (Java). 3.5 Hibernate και Persistence Το Hibernate είναι ένα open source object relational mapping tool για Java. Προσφέρει υψηλής απόδοσης object/relational persistence και query service για Java. Με το Hibernate μπορούμε να φτιάξουμε persistent classes και με τη Hibernate Query Language μπορούμε να γεφυρώσουμε τις σχέσεις σε όλες τις βάσεις δεδομένων. Μπορούμε να χρησημοποιήσουμε native SQL ή Java-based Κριτήρια. Αυτήν τη στιγμή το Hibernate είναι το πλέον δημοφιλές object/relational mapping solution για Java. Η αρχιτεκτονική του Hibernate φαίνεται στο παρακάτω διάγραμμα: Σχήμα 3: Διάγραμμα Αρχιτεκτονικής Hibernate 22

31 Όπως βλέπουμε παραπάνω, το Hibernate χρησημοποιεί τη βάση δεδομένων και τα αρχεία ρυθμίσεων για να υλοποιήσει persistence services (και persistent objects) στην εφαρμογή. Για να χρησημοποιήσουμε το Hibernate, πρέπει να φτιάξουμε Java classes (entities) για τον κάθε πίνακα στη βάση δεδομένων και μετά να κάνουμε αντιστοιχίες μεταβλητών σε κολώνες. Το Hibernate έχει τρεις βασικούς πυλώνες: Connection Management: Ο Hibernate Connection management κάνει τη διαχείρηση των συνδέσεων με τη βάση δεδομένων. Αυτή γενικά η διαδικασία είναι η πιο ακριβή από πλευράς πόρων για την εφαρμογή. Transaction management: Το Transaction management service χρησημοποιείται για να εκτελούνται πολλά ταυτόχρονα queries. Object relational mapping: Το Object relational mapping είναι μια τεχνική για τη σχεσιακή σύνδεση, η οποία μετατρέπει ένα μοντέλο σε ένα σχεσιακό μοντέλο. Αυτό το κομμάτι στο hibernate χρησημοποιείται για να κάνει τα select, insert, update and delete από τους πίνακες. Όταν καλούμε τη Session.save() μέθοδο σε ένα object, τότε αυτό διαβαζει τις μεταβλητές και εκτελεί τα queries. Ένα από τα πολύ ισχυρά όπλα του Hibernate είναι ότι μπορεί να συνδεθεί σχεδόν μέ όλες τις βάσεις δεδομένων χωρίς να χρειάζεται ΚΑΜΙΑ αλλαγή στην εφαρμογή μας παρά μόνον ένα XML Tag. Το Hibernate υποστηρίζει τις εξής διαλέκτους: DB2 - org.hibernate.dialect.db2dialect HypersonicSQL - org.hibernate.dialect.hsqldialect Informix - org.hibernate.dialect.informixdialect Ingres - org.hibernate.dialect.ingresdialect Interbase - org.hibernate.dialect.interbasedialect Pointbase - org.hibernate.dialect.pointbasedialect PostgreSQL - org.hibernate.dialect.postgresqldialect Mckoi SQL - org.hibernate.dialect.mckoidialect Microsoft SQL Server - org.hibernate.dialect.sqlserverdialect MySQL - org.hibernate.dialect.mysqldialect Oracle (any version) - org.hibernate.dialect.oracledialect Oracle 9 - org.hibernate.dialect.oracle9dialect 23

32 Progress - org.hibernate.dialect.progressdialect FrontBase - org.hibernate.dialect.frontbasedialect SAP DB - org.hibernate.dialect.sapdbdialect Sybase - org.hibernate.dialect.sybasedialect Sybase Anywhere - org.hibernate.dialect.sybaseanywheredialect To Hibernate χρησιμοποιεί Plain Old Java Objects (POJOs) για να κάνει map στους πίνακες της βάσης. 24

33 4 Υλοποίηση Εφαρμογής 4.1 Εισαγωγή Το σύστημα έχει ως φορέα ένα ηλεκτρονικό κατάστημα (βιβλιοπωλείο), στο οποίο παρέχεται η δυνατότητα να εκτελέσει παραγγελίες από τους προμηθευτές του με τη χρήση υπηρεσιών διαδικτύου. Πιο συγκεκριμένα: 1. Αρχικά υλοποιήθηκαν οι βασικές λειτουργίες ενός ηλεκτρονικού καταστήματος αγορών (καλάθι αγορών - κονσόλα διαχειριστή - βάση δεδομένων κ.λπ.) σύμφωνα με την αρχιτεκτονική Μοντέλο-Παρουσίαση-Ελεγκτής (Model-View-Controller). Μοντέλο (Model): ορίζει τα δεδομένα που θα χρησιμοποιηθούν από την εφαρμογή, καθώς και τις λειτουργίες (methods) που μπορούν να εκτελεστούν πάνω σε αυτά. Στην παρούσα εφαρμογή, το Μοντέλο είναι τα Data Bean. Κάποια από τα Data Bean είναι σημειωμένα με τη χρήση της βιβλιοθήκης Persistence. Αυτά αρχικά θα μετατραπούν σε οντότητες της βάσης δεδομένων και, για τον υπόλοιπο κύκλο ζωής, θα αντανακλούν αυτές τις οντότητες. Βασικές οντότητες της εφαρμογής είναι: η οντότητα Client (Client.java), η οποία περιέχει τα γνωρίσματα του χρήστη, η οντότητα Product (Product.java), η οποία περιέχει τα γνωρίσματα του προϊόντος, η οντότητα Supplier (Supplier.java), η οποία περιέχει τα γνωρίσματα του προμηθευτή, οι οντότητες ClientOrder, OrderedProduct, OrderProductPK, οι οποίες περιέχουν τα στοιχεία μιας συγκεκριμένης παραγγελίας και τα προϊόντα που αυτή περιλαμβάνει, και οι οντότητες SupplierOrder, SupplyOrderedProduct, SupplyOrderedProductPK, οι οποίες αποθηκεύουν τοπικά την παραγγελία που κάνει το κατάστημα στον προμηθευτή. Παρουσίαση (View): εμφανίζει τα δεδομένα στον χρήστη, χωρίς προηγούμενη επεξεργασία. Συνήθως υπάρχουν πολλαπλές παρουσιάσεις σε μία εφαρμογή. Για παράδειγμα, κάθε JSP είναι μία διαφορετική παρουσίαση. Ελεγκτής (Controller): είναι το πρόγραμμα το οποίο δένει τις παρουσιάσεις με τα μοντέλα. Στην παρούσα εφαρμογή, Ελεγκτής είναι ο Java Servlet. Ο Ελεγκτής είναι σημαντικός, επειδή διαχειρίζεται τα αιτήματα (request) από τον φυλλομετρητή και επιστρέφει την απάντηση (response) στον server. 2. Κατόπιν υλοποιήθηκε το ημιαυτόματο σύστημα παραγγελιοδοσίας, το οποίο, με τη χρήση υπηρεσιών διαδικτύου, παίρνει προσφορές από τους προμηθευτές του καταστήματος, συγκρίνει τα προϊόντα με κριτήριο το κόστος τους, δημιουργεί ένα καλάθι αγορών ανά προμηθευτή το οποίο περιέχει τα προϊόντα που συμφέρει να αγοραστούν από τον συγκεκριμένο προμηθευτή, εκτελεί την παραγγελία και παρακολουθεί την κατάστασή της. Η υλοποίηση της εφαρμογής χωρίζεται σε τέσσερα μέρη. Τα τρία πρώτα είναι η υλοποίηση της αρχιτεκτονικής Μοντέλο-Παρουσίαση-Ελεγκτής (Model-View-Controller). Το πρώτο 25

34 μέρος, Μοντέλο, είναι η δημιουργία των οντοτήτων με τα γνωρίσματά τους και το σχήμα της βάσης δεδομένων. Το δεύτερο μέρος, Παρουσίαση, περιλαμβάνει τις σελίδες JSP και τις εκφράσεις EL που δημιουργούν το δυναμικό περιεχόμενο. Το τρίτο μέρος είναι η υλοποίηση του ελεγκτή μαζί με τις βοηθητικές μεθόδους και κλάσεις. Το τέταρτο και τελευταίο μέρος είναι η υλοποίηση των υπηρεσιών διαδικτύου. Η εφαρμογή έχει στηθεί σε υπολογιστή με λειτουργικό Linux, αλλά μπορεί εξίσου εύκολα να τρέξει και σε υπολογιστή με λειτουργικό Windows. 4.2 Προαπαιτούμενα MySQL Θα πρέπει, πριν ξεκινήσουμε την υλοποίηση, να ετοιμάσουμε το σύστημά μας με τα απαραίτητα εργαλεία. Στην συγκεκριμένη περίπτωση, πρέπει να έχουμε εγκαταστήσει τη MySQL βάση δεδομένων, το NetBeans IDE, τον Glassfish εξυπηρετητή και να έχουμε ξεκινήσει ένα νέο Project. Για να εγκαταστήσουμε τη MySQL γράφουμε στη γραμμή εντολών: apt-get install mysql-server Με την εντολή θα εκγατασταθεί στον υπολογιστή η MySQL και όσες βιβλιοθήκες χρειάζεται για να τρέξει. Θα δημιουργήσουμε μια νέα βάση δεδομένων αργότερα χρησιμοποιώντας το NetBeans NetBeans IDE Κατεβάζουμε από τον ιστότοπο netbeans.org το NetBeans IDE για Linux και προσέχουμε να περιλαμβάνει υποστήριξη για Java EE και τον εξυπηρετητή Glassfish. Αφού κατέβει, τρέχουμε από τη γραμμή εντολών την εντολή: sh netbeans-7.xx-javaee-linux.sh η οποία εγκαθιστά το NetBeans IDE. Κατά τη διάρκεια της εγκατάστασης μας ζητούνται κωδικοί για τον εξυπηρετητή Glassfish. Εισάγουμε κάποιο κωδικό, τον οποίο πρέπει να τον συγκρατήσουμε, και το αφήνουμε να συνεχίσει την προεπιλεγμένη εγκατάσταση. Στο τέλος τρέχουμε το NetBeans IDE. Από το menu, επιλέγουμε File->New Project και επιλέγουμε Web Application4. 26

35 Σχήμα 4: Επιλέγουμε τι project θέλουμε να δημιουργήσουμε Πατάμε το κουμπί Next και εμφανίζεται μια φόρμα στην οποία συμπληρώνουμε το όνομα του project5. Σχήμα 5: Επιλέγουμε το όνομα του project Πατάμε το κουμπί Next και εμφανίζεται μια λίστα με εξυπηρετητές από τους οποίους επιλέγουμε τον Glassfish6 27

36 Σχήμα 6: Επιλέγουμε τον εξυπηρετητή που θα τρέξει την εφαρμογή Τέλος πατάμε το κουμπί Finish. Για να δημιουργήσουμε μια νέα βάση δεδομένων, πηγαίνουμε από το menu και επιλέγουμε Window->Services και εμφανίζεται δεξιά ένα νέο tab7. Σχήμα 7: Λίστα με τις υπηρεσίες που είναι συνδεδεμένες με το NetBeans IDE Επιλέγουμε Databases και μας εμφανίζει μια λίστα με τις βάσεις δεδομένων που υπάρχουν στον υπολογιστή μας. Κάνουμε δεξί κλίκ στη MySQL Server και επιλέγουμε Connect. Μας ζητά κωδικό για να συνδεθεί και μας εμφανίζει μια λίστα με MySQL βάσεις δεδομένων8. 28

37 Σχήμα 8: Βάσεις Δεδομένων MySQL Πατώντας δεξί κλίκ μπορούμε να δημιουργήσουμε μια νέα κενή βάση δεδομένων. Με αυτά ρυθμισμένα μπορούμε να ξεκινήσουμε να σχεδιάζουμε την εφαρμογή. 4.3 Μοντέλο - Model Για τη δημιουργία των οντοτήτων του μοντέλου χρησιμοποιούμε τις βιβλιοθήκες Hibernate και Persistence. Αρχικά δημιουργούμε ένα σχήμα για τη βάση δεδομένων ώστε να γνωρίζουμε τι πρέπει να φτιάξουμε9. Σχήμα 9: Database schema Για τη δημιουργία των οντοτήτων εργαζόμαστε ως εξής: Αρχικά, με δεξί κλικ στο project και επιλέγοντας New, δημιουργούμε ένα Entity Class. Εισάγουμε όνομα κλάσης και όνομα πακέτου και πατάμε Next10 29

38 Σχήμα 10: Οθόνη εισαγωγής στοιχείων Οντότητας Εμφανίζεται τότε μια δεύτερη οθόνη. Σε αυτήν φροντίζουμε να επιλέξουμε Table Generation Strategy: Drop and Create. Με αυτήν την επιλογή, όποτε του ζητάμε να δημιουργήσει την οντότητα ως πίνακα στη βάση δεδομένων, πρώτα θα καταστρέφει τον παλιότερο πίνακα αφόσον υπάρχει. Τέλος, πατάμε Finish. Αυτόματα δημιουργείται μια νέα κλάση η οποία περιέχει κάποια βασικά Persistence annotations. package ent; import java.io.serializable; import javax.persistence.entity; import javax.persistence.generatedvalue; import javax.persistence.generationtype; import public class NewEntity implements Serializable { private static final long serialversionuid = GenerationType.AUTO) private Long id; public Long getid() { return id; public void setid(long id) { this.id = id; 30

39 @Override public int hashcode() { int hash = 0; hash += (id!= null? id.hashcode() : 0); return public boolean equals(object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof NewEntity)) { return false; NewEntity other = (NewEntity) object; if ((this.id == null && other.id!= null) (this.id!= null &&!this.id.equals(other.id))) { return false; return public String tostring() { return "ent.newentity[ id=" + id + " ]"; Υλοποιούμε, λοιπόν, για κάθε μία οντότητα μια τέτοια κλάση και ξεκινάμε να προσθέτουμε σε κάθε μία τα δικά της γνωρίσματα, εισάγοντας δηλαδή τα Persistence Annotations και τις μεθόδους get και set. Στο Παράρτημα βρίσκεται ο συνολικός κώδικας για τις κλάσεις οντοτήτων. 4.4 Παρουσίαση - View Για την παρουσίαση των δυναμικών σελίδων χρησιμοποιούμε την τεχνολογία JSP της Java και τη γλώσσα EL. Με τη δημιουργία του project έχει δημιουργηθεί μία σελίδα JSP, η index.jsp. Τις υπόλοιπες σελίδες θα τις δημιουργήσουμε μέσα στον φάκελο WEB-INF, ώστε να μην είναι προσβάσιμες από τη γραμμή URL του φυλλομετρητή. Γι αυτόν τον λόγο δημιουργούμε έναν νέο φάκελο εντός του φακέλου WEB-INF, τον οποίο ονομάζουμε view. Για να δημιουργήσουμε τον νέο φάκελο, κάνουμε δεξί κλικ στον φάκελο WEB-INF και επιλέγουμε New -> Folder. Με δεξί κλικ στον φάκελο view μπορούμε να δημιουργήσουμε νέες σελίδες JSP. Δημιουργούμε τις σελίδες που φαίνονται στο σχήμα 11 31

40 Σχήμα 11: O φάκελος view και οι σελίδες JSP εντός του Στις σελίδες αυτές δημιουργούμε τις φόρμες οι οποίες στέλνουν δεδομένα στον ελεγκτή και τις εκτυπώσεις δεδομένων από τον ελεγκτή. Παρατίθεται ο κώδικας της σελίδας results.jsp που παρουσιάζει τα αποτελέσματα της αναζήτησης και εξηγείται. <%@taglib prefix="c" uri=" <!-- Κ1 --> <form name="searchquery" method="post" action="view"> <input type="text" name="query" value="${helper.searchquery.query" /> name="searchbutton" value="search" /> </form>... <!-- Κ2 --> <table id="producttable"> <c:foreach var="product" items="\${database" varstatus="iter"> <td>${product.id</td> <td>${product.sku</td> <td>${product.name</td> <td>${product.price </td> 32

41 <td> <p> <form action="view" method="post"> <input type="hidden" name="sku" value="${product.sku" /> name="addtocart" value="add To Cart" /> </form> </td> </c:foreach> </table> H πρώτη γραμμή εισάγει τη βιβλιοθήκη jstl η οποία είναι απαραίτητη για τη δημιουργία βρόγχου επανάληψης όπως φαίνεται στο 2ο κομμάτι. Η εντολή EL $database δηλώνει μια λίστα αντικειμένων που έχει σταλεί από τον ελεγκτή με την εντολή: request.setattribute("database", list); Αντίστοιχα η εντολή EL $helper.searchquery.query τυπώνει στην οθόνη το αλφαριθμητικό query του αντικειμένου searchquery το οποίο στάλθηκε από τον ελεγκτή με τη βοήθεια του helper. Το σύνολο του κώδικα για το κομμάτι της παρουσίασης υπάρχει στο Παράρτημα. 4.5 Ελεγκτής - Controller Ο πυρήνας του ηλεκτρονικού καταστήματος είναι ο ελεγκτής. Είναι αυτός που αποφασίζει τι θα εκτελεστεί και πότε. Για τον ελεγκτή χρησιμοποιήσαμε την τεχνολογία Java Servlet Δημιουργία ελεγκτή Δημιουργούμε τον ελεγκτή κάνοντας δεξί κλικ στο project και επιλέγοντας New -> Servlet. Στην οθόνη που εμφανίζεται, εισάγουμε το όνομα του ελεγκτή και το όνομα του πακέτου. Πατάμε Next και εμφανίζεται μια δεύτερη οθόνη στην οποία τσεκάρουμε την επιλογή Add information to deployment description (web.xml)

42 Σχήμα 12: Η δεύτερη οθόνη της δημιουργίας του ελεγκτή Εκτός από τον ελεγκτή δημιουργείται στον φάκελο WEB-INF το αρχείο web.xml το οποίο περιέχει πληροφορίες για τον ελεγκτή. <?xml version="1.0" encoding="utf-8"?> <web-app version="3.0" xmlns=" xmlns:xsi=" xsi:schemalocation=" <servlet> <servlet-name>newservlet</servlet-name> <servlet-class>contr.newservlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>newservlet</servlet-name> <url-pattern>/newservlet</url-pattern> </servlet-mapping> <session-config> <session-timeout> 30 </session-timeout> </session-config> </web-app> Πρέπει να παρατηρήσουμε δύο σημεία. Το πρώτο είναι το όνομα του ελεγκτή. Από την παράθεση του κώδικα του results.jsp βλέπουμε στη φόρμα το όρισμα action. H τιμή του ορίσματος πρέπει να είναι το όνομα του ελεγκτή ώστε να μπορεί να επικοινωνήσει μαζί του. Το δεύτερο είναι το url pattern. Με αυτό ελέγχουμε τι εμφανίζεται στην μπάρα του φυλλομετρητή. Έτσι, αντί να φαίνεται η διαδρομή και το όνομα της σελίδας, φαίνεται μόνον 34

43 το url pattern. Θα το δούμε καλύτερα στη συνέχεια. Ανοίγοντας τώρα τον ελεγκτή βλέπουμε τέσσερις μεθόδους γραμμένες. Θα μας αποσχολήσουν οι δύο. Η doget και η dopost. Με αυτές ανταλλάσσουμε δεδομένα με τις jsp σελίδες Ανταλαγή δεδομένων μεταξύ ελεγκτή και σελίδων Για να στείλουμε δεδομένα στον ελεγκτή υλοποιούμε τη μέθοδο executebuttonmethod και με Java Annotations μαρκάρουμε τον κώδικα της public String searchmethod() { fillbeanfromrequest(searchquery); String query = searchquery.getquery(); List list; list = HibernateHelper.getListData(Product.class, "name", query); request.setattribute("database", list); return jsplocation("results.jsp"); Από την παράθεση του κώδικα του results.jsp βλέπουμε πως στο κουμπί υπάρχει το όρισμα name. name="searchbutton" value="search" /> Η τιμή του ορίσματος πρέπει να είναι ίδια με την τιμή του annotation (στο παράδειγμα είναι το searchbutton). Με αυτόν τον τρόπο ελέγχουμε τη ροή της εκτέλεσης από- και προς τις σελίδες jsp. Έχουμε εκτελέσει, λοιπόν, τον σωστό κώδικα. Πρέπει τώρα να πάρουμε τα δεδομένα της φόρμας ώστε να τα επεξεργαστούμε. Αυτό το καταφέρνουμε με τη μέθοδο fillbeanfromrequest και data beans. public void fillbeanfromrequest(object data) { try { org.apache.commons.beanutils.beanutils.populate(data, request.getparametermap()); catch (Exception e) { Χρησιμοποιούμε τη βιβλιθήκη commons-beanutils.jar και τη μέθοδο populate. Εδώ πρέπει να προσέξουμε τα ονόματα των ορισμάτων των data beans και των οντοτήτων να είναι ίδια με τις τιμές των πεδίων στις φόρμες των σελίδων. Στην εφαρμογή χρησιμοποιούμε μόνον τη μέθοδο post, οπότε ρυθμίζουμε τη μέθοδο του ελεγκτή dopost ως εξής: protected void dopost(httpservletrequest request, HttpServletResponse response) 35

44 throws ServletException, IOException { this.request = request; this.response = response; if (HibernateHelper.testDB(response)) { addhelpertosession("helper", SessionData.READ); String address = executebuttonmethod(); request.getrequestdispatcher(address).forward(request, response); Με τη μέθοδο addhelpertosession δίνουμε τη δυνατότητα αποστολής δεδομένων στις σελίδες μέσω του αντικειμένου helper. Με τη μέθοδο executebuttonmethod κάνουμε την επεξεργασία των δεδομένων και αποφασίζουμε σε ποια σελίδα θα κατευθυνθεί ο χρήστης. Τέλος, με την τελευταία εντολή κατευθύνουμε τη ροή της εκτέλεσης και στέλνουμε τα δεδομένα στις σελίδες Ερωτήματα στη Βάση Δεδομένων Για να επικοινωνήσουμε με τη βάση δεδομένων χρησιμοποιούμε τη βιβλιοθήκη Hibernate και τα data beans και τις εντότητες που έχουμε υλοποιήσει. Για ευκολία δημιουργούμε τη στατική κλάση HibernateHelper. Βασικά σημεία της κλάσης είναι: η μέθοδος που προετοιμάζει τους πίνακες και την επικοινωνία με τη βάση δεδομένων. Εκτελείται από τον ελεγκτή και βασική της λειτουργία είναι η δημιουργία του SessionFactory καλώντας τη μέθοδο createfactory. static public void initsessionfactory(properties props, Class... mappings) { if (addmappings(listclasses, mappings)) { closefactory(sessionfactory); sessionfactory = createfactory(props, listclasses); Σε συνεργασία με τον ελεγκτή, η κλάση μπορεί να δημιουργήσει τους πίνακες μέσω της μεθόδου createtable. static public void createtable(properties props, Class... mappings) { List<Class> templist = new ArrayList<Class>(); SessionFactory tempfactory; addmappings(templist, mappings); if (props == null) props = new Properties(); 36

45 props.setproperty(environment.hbm2ddl_auto, "create"); tempfactory = createfactory(props, templist); closefactory(tempfactory); Αφού εκτελεστεί η createtable για όλες τις οντότητες, έχουμε δημιουργήσει το σχήμα της βάσης δεδομένων που ορίσαμε πιο πάνω. Την πρώτη φορά που εκτελείται ο ελεγκτής, τρέχει τη μέθοδο inithibernate: public void init() { boolean create = Boolean.parseBoolean(getInitParameter("createDB")); Properties props = new Properties(); props.setproperty("hibernate.dialect", "org.hibernate.dialect.mysqldialect"); props.setproperty("hibernate.connection.driver_class", "com.mysql.jdbc.driver"); props.setproperty("hibernate.connection.url", "jdbc:mysql://localhost:3306/whitebuffalo?zerodatetimebehavior=converttonull"); props.setproperty("hibernate.connection.username", "root"); props.setproperty("hibernate.connection.password", "password"); if (create) { HibernateHelper.createTable(props, Supplier.class, SupplierOrder.class, SupplyOrderedProduct.class, Client.class, Product.class, ClientOrder.class, OrderedProduct.class); HibernateHelper.initSessionFactory(props, Supplier.class, SupplierOrder.class, SupplyOrderedProduct.class, Client.class, Product.class, ClientOrder.class, OrderedProduct.class); Στην πρώτη γραμμή διαβάζει την τιμή που έχει η παράμετρος createdb στο αρχείο web.xml. <init-param> <description>if value is true then tables are created every time the applications starts.</description> 37

46 </init-param> <param-name>createdb</param-name> <param-value>false</param-value> Αν αυτή είναι αληθής, τότε δημιουργούνται από την αρχή οι πίνακες της βάσης δεδομένων και προετοιμάζονται για χρήση. Με το αντικείμενο Properties περνάμε ως παραμέτρους τον οδηγό και τα συνθηματικά ώστε να προετοιμαστεί η βάση δεδομένων. Τέλος, κάθε φορά που εκτελείται ο ελεγκτής, με τη μέθοδο dopost ελέγχουμε αν η βάση δεδομένων τρέχει. Χρησιμοποιούμε γι αυτόν το λόγο τη μέθοδο testdb της κλάσης HibernateHelper. 4.6 Υπηρεσίες Διαδικτύου - Web Services Το κομμάτι της υλοποίησης των υπηρεσιών διαδικτύου χωρίζεται σε τέσσερα μέρη: τη δημιουργία του interface, την υλοποίηση του bussiness logic, την ασφάλεια και την κατανάλωση των υπηρεσιών διαδικτύου Δημιουργία Με δεξί κλικ στο όνομα του project επιλέγουμε New -> WebService. Στην οθόνη που εμφανίζεται εισάγουμε το όνομα των υπηρεσιών διαδικτύου, το όνομα του πακέτου και επιλέγουμε Create Web Service From Scratch 13. Σχήμα 13: Δημιουργία Interface υπηρεσιών διαδικτύου 38

47 14. Ανοίγοντας το αρχείο επιλέγουμε να το εμφανίσουμε σχεδιαστικά και όχι ως κώδικα Σχήμα 14: Design View Στη συνέχεια πατάμε το κουμπί Add Operation και συμπληρώνουμε τη φόρμα που εμφανίζεται 15. Σχήμα 15: Εισαγωγή παραμέτρων Εισάγουμε τις παραμέτρους που δέχεται και πατάμε ΟΚ. Εάν πάμε τώρα στον κώδικα, θα δούμε τις παραμέτρους που ορίσαμε να δέχεται και τι επιστρέφει. 39

48 @WebMethod(operationName = "findproducts") public List<WSProductInfo> findproducts(@webparam(name = "clientcode") String = "wsproducts") List<WSProductInfo> wsproducts) {... Με αυτόν τον τρόπο δημιουργούμε web methods, δηλαδή μεθόδους που μπορούν να κληθούν απομακρυσμένα. Ταυτόχρονα, το NetBeans αναλαμβάνει να κατασκευάσει τα artifacts που χρειάζονται, τρέχοντας την εντολή της Java, wsgen καθώς και το wsdl αρχείο Υλοποίηση της Λογικής Επειδή η υπηρεσία θέλουμε να κάνει ερωτήματα στη βάση δεδομένων, χρησιμοποιούμε την κλάση HibernateHelper. Επίσης, δημιουργούμε την κλάση WSController η οποία αναλαμβάνει να διεκπεραιώσει τα ερωτήματα στη βάση. Με τις υπηρεσίες διαδικτύου υλοποιούμε τις εξής διαδικτυακές μεθόδους: 1. findproducts: δέχεται ως παραμέτρους έναν κωδικό χρήστη και μια λίστα προϊόντων, και επιστρέφει μια λίστα προϊόντων με τις αντίστοιχες τιμές τους, 2. commitorder: δέχεται ως παραμέτρους έναν κωδικό χρήστη και μια λίστα προϊόντων, και επιστρέφει έναν αριθμό επιβεβαίωσης παραγγελίας, 3. orderinfo: δέχεται ως παραμέτρους έναν κωδικό χρήστη και έναν αριθμό επιβεβαίωσης παραγγελίας και επιστέφει την κατάσταση της παραγγελίας. Η υλοποίηση έχει ως εξής: πρώτα δημιουργούμε ένα instance του WSController, στη συνέχεια καλούμε τη μέθοδο findproducthelper με όρισμα τη λίστα των προϊόντων που μας έχει αποστείλει ο χρήστης. Το αποτέλεσμα της εκτέλεσης το αποθηκεύουμε σε μια νέα λίστα την οποία επιστρέφουμε στον = "findproducts") public List<WSProductInfo> findproducts(@webparam(name = "clientcode") String = "wsproducts") List<WSProductInfo> wsproducts) { WSController controller = new WSController(); List<WSProductInfo> responce; responce = controller.findproducthelper(wsproducts); return responce; 40

49 Η υλοποίηση της μεθόδου findproducthelper έχει ως εξής: για κάθε ένα προϊόν ρωτάμε από τη βάση την τιμή του και τη διαθεσιμότητά του, στη συνέχεια τοποθετούμε τις νέες πληροφορίες σε μια λίστα την οποία επιστρέφουμε στη διαδικτυακή μέθοδο. public List<WSProductInfo> findproducthelper(list<wsproductinfo> productlist) { List<WSProductInfo> responce = new ArrayList<WSProductInfo>(); for (Object obj : productlist) { wsproduct = (WSProductInfo) obj; WSProductInfo temp = findproduct(wsproduct); if (temp!= null) { responce.add(temp); return responce; public WSProductInfo findproduct(wsproductinfo wsproduct) { Object dbobj = HibernateHelper.getFirstMatch(Product.class, "sku", wsproduct.getsku()); if (dbobj!= null) { Product p = (Product) dbobj; WSProductInfo temp = new WSProductInfo(); temp.setsku(p.getsku()); temp.setprice(p.getprice()); if (wsproduct.getquantity() == p.getquantity()) { temp.setquantity(wsproduct.getquantity()); else { temp.setquantity(p.getquantity()); return temp; else { return null; Αντίστοιχα, υλοποιούνται και οι άλλες δύο διαδικτυακές μέθοδοι Ασφάλεια Για την ασφάλεια χρησιμοποιήσαμε όνομα χρήστη και κωδικό πρόσβασης. Αυτό σημαίνει πως ο χρήστης των υπηρεσιών διαδικτύου θα πρέπει, πριν τις χρησιμοποιήσει, να έχει επικοινωνήσει με τον προμηθευτή για να πάρει όνομα και κωδικό. Η ρύθμιση ασφάλειας γίνεται επιλέγοντας από τη σχεδιαστική εμφάνιση το κουμπί Edit Web Service Attributes. Στην οθόνη που εμφανίζεται 16, 41

50 Σχήμα 16: Ασφάλεια Υπηρεσιών Διαδικτύου τσεκάρουμε τις επιλογές Reliable Message Delivery και Secure Service. Από τη λίστα Security Mechanism επιλέγουμε Username Authentication with Symmetric Key. Για την εφαρμογή χρησιμοποιούμε τους κωδικούς ανάπτυξης, επομένως τσεκάρουμε και την επιλογή Use Development Defaults. Θα αναφερθούμε στις ενέργειες του χρήστη σχετικά με την ασφάλεια, ώστε να χρησιμοποιήσει τις υπηρεσίες διαδικτύου, στο επόμενο υποκεφάλαιο Κατανάλωση Υπηρεσιών Διαδικτύου Αναφέραμε πιο πάνω πως το αρχείο wsdl δημοσιοποιείται αυτόματα από το NetBeans. Για να καταναλώσουμε τις υπηρεσίες διαδικτύου, θα πρέπει να γνωρίζουμε τη διεύθυνση του wsdl. Συνήθως έχει την μορφή: Name>/<WS Interface Name>?wsdl Εφόσον βρούμε τη διεύθυνση του wsdl, με δεξί κλικ στο όνομα του project επιλέγουμε New -> Web Service Client. Στην οθόνη που εμφανίζεται 17 42

51 Σχήμα 17: Κατανάλωση Υπηρεσιών Διαδικτύου επιλέγουμε WSDL URL και εισάγουμε εκεί τη διεύθυνση του wsdl αρχείου. Στη συνέχεια τσεκάρουμε την επιλογή Generate Dispatch code και πατάμε το κουμπί Finish. Εμφανίζεται ένας νέος φάκελος στα αρχεία του project με το όνομα Web Service Reference 18. Σχήμα 18: Web Service Reference Τον ανοίγουμε και κάνουμε δεξί κλικ στο περιεχόμενο. Επιλέγουμε το Edit Web Service Attributes. Στην οθόνη που εμφανίζεται 19, τσεκάρουμε την επιλογή της Ασφάλειας Use develpment defaults. 43

52 Σχήμα 19: Web Service Consumer Security Το NetBeans IDE αναλαμβάνει, εκτελώντας την Java εντολή wsimport, να δημιουργήσει τα artifacts που χρειάζονται για να επικοινωνήσει ο χρήστης με τις υπηρεσίες διαδικτύου 20. Σχήμα 20: Generated Sources Τα artifacts αποθηκεύονται στον φάκελο του project Generated Sources (jax-ws). 44

53 Για να χρησιμοποιήσουμε τις υπηρεσίες διαδικτύου, αφού έχουμε ολοκληρώσει την προεργασία, κάνουμε το εξής: δημιουργούμε μια υπηρεσία, ύστερα δημιουργούμε μια θύρα και, με τη βοήθεια της θύρας, εκτελούμε τη διαδικτυακή μέθοδο. CommerceWS_Service service1 = new CommerceWS_Service(); CommerceWS port1 = service1.getcommercewsport(); list = port1.findproducts("subarof.rt@gmail.com", cart1); Οι τρεις πάνω γραμμές είναι αρκετές για να περάσουμε στη list τα προϊόντα με τις τιμές τους. Παρατίθεται το sequence διάγραμμα διαδικασίας ανεύρεσης τιμών προϊόντων 21. Σχήμα 21: Sequence Διάγραμμα ανεύρεσης τιμών προϊόντων Αρχικά βρίσκει όλα τα προϊόντα των οποίων η ποσότητα είναι κάτω από μία τιμή. Στη συνέχεια αποστέλλει τη λίστα των προϊόντων σε όλους τους προμηθευτές μέσω των υπηρεσιών διαδικτύου. Οι προμηθευτές απαντούν αποστέλλοντας ο καθένας ξεχωριστή λίστα προϊόντων με τις αντίστοιχες τιμές τους. Στη συνέχεια, το σύστημα συγκρίνει τις τιμές των προϊόντων που έχουν στείλει οι προμηθευτές και δημιουργεί καλάθια αγορών για κάθε προμηθευτή, σύμφωνα με τις πιο συμφέρουσες τιμές. Τέλος, εμφανίζει τα καλάθια αγορών στον διαχειριστή για να εγκρίνει την παραγγελία. Αντίστοιχα, μόλις ο διαχειριστής πατήσει το κουμπί έγκρισης της παραγγελίας, αποστέλλεται το αίτημα παραγγελίας μαζί με το ιδιαίτερο καλάθι αγορών σε κάθε προμηθευτή, μέσω υπηρεσιών διαδικτύου. Οι προμηθευτές απαντάνε με των κωδικό επιβεβαίωσης παραγγελίας (confirmation code). Μόλις το σύστημα λάβει τον κωδικό, αποθηκεύει την παραγγελία τοπικά. Τέλος, όποτε επιθυμεί ο διαχειριστής να λάβει ενημέρωση της κατάστασης παραγγελίας, απλά πατάει το κουμπί το οποίο στέλνει, μέσω υπηρεσιών διαδικτύου, τον κωδικό επιβεβαίωσης. Ο προμηθευτης απαντά με τη νέα κατάσταση της παραγγελίας. Το σύστημα 45

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

55 5 Παραδείγματα Χρήσης Στο κεφάλαιο αυτό θα δείξουμε τον τρόπο λειτουργίας της εφαρμογής για τον πελάτη και για τον διαχειριστή. Ταυτόχρονα, θα καταδείξουμε τα σημεία εκείνα στα οποία υπάρχουν αδυναμίες και τους λόγους που αυτές δημιουργήθηκαν και θα προτείνουμε πιθανές μελλοντικές επακτάσεις που μπορούν να γίνουν στην εφαρμογή. 5.1 Απλός Χρήστης - Πελάτης Ο πελάτης, ανοίγοντας τον ιστότοπο, το πρώτο πράγμα που αντιμετωπίζει είναι μια ειδοποίηση ληγμένου πιστοποιητικού 22. Σχήμα 22: Ληγμένο Πιστοποιητικό Αυτό αντιμετωπίζεται πατώντας το κουμπί Proceed anyway, οπότε φορτώνει η κεντρική σελίδα του ιστότοπου 23. Σχήμα 23: Αρχική Σελίδα Στη συνέχεια ο πελάτης κάνει μια αναζήτηση στη βάση δεδομένων. Ο ιστότοπος τον προωθεί στη σελίδα αποτελεσμάτων

56 Σχήμα 24: Σελίδα Αποτελεσμάτων Πατώντας το κουμπί Add To Cart, καταχωρεί στο καλάθι αγορών του το επιλεγμένο προϊόν. Ταυτόχρονα, στο κουμπί του καλαθιού (Cart) εμφανίζεται ο αριθμός των προϊόντων που περιέχει 25. Σχήμα 25: Καλάθι αγορών Από εδώ μπορεί είτε να συνεχίσει τις αγορές του, είτε να προχωρήσει στο Checkout. Πατώντας στο κουμπί Checkout προωθείται σε μια σελίδα σύνδεσης με τον λογαριασμό του 26. Σχήμα 26: Σελίδα σύνδεσης Θεωρώντας πως δεν είναι εγγεγραμένος, πατά το κουμπί Register. Οδηγείται σε μια φόρμα προσωπικών στοιχείων

Εισαγωγή στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης

Εισαγωγή στο Ηλεκτρονικό Επιχειρείν. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης Εισαγωγή στο Ηλεκτρονικό Επιχειρείν ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης 1 Ορισμός e-επιχειρείν Ένα σύνολο από ενδο- και δι- επιχειρηματικές στρατηγικές και προηγμένες

Διαβάστε περισσότερα

ΑΡΘΡΟ «ΕΞΙ ΣΤΟΥΣ ΔΕΚΑ ΕΛΛΗΝΕΣ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΠΛΕΟΝ ΚΑΘΗΜΕΡΙΝΑ ΤΟ ΔΙΑΔΙΚΤΥΟ»

ΑΡΘΡΟ «ΕΞΙ ΣΤΟΥΣ ΔΕΚΑ ΕΛΛΗΝΕΣ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΠΛΕΟΝ ΚΑΘΗΜΕΡΙΝΑ ΤΟ ΔΙΑΔΙΚΤΥΟ» ΑΡΘΡΟ «ΕΞΙ ΣΤΟΥΣ ΔΕΚΑ ΕΛΛΗΝΕΣ ΧΡΗΣΙΜΟΠΟΙΟΥΝ ΠΛΕΟΝ ΚΑΘΗΜΕΡΙΝΑ ΤΟ ΔΙΑΔΙΚΤΥΟ» Ηλεκτρονικό Εμπόριο Ως Ηλεκτρονικό Εμπόριο ή ευρέως γνωστό ως e- commerce, είναι το εμπόριο παροχής αγαθών και υπηρεσιών που

Διαβάστε περισσότερα

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress ΚΟΤΣΟΓΙΑΝΝΙΔΗΣ ΛΑΖΑΡΟΣ Επιβλέπων καθηγητής Σφέτσος Παναγιώτης ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Ως Ηλεκτρονικό Εμπόριο ή

Διαβάστε περισσότερα

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ Μάθημα Πρώτο Εισαγωγή στις Υπηρεσίες Ιστού (Web Services) Μοντέλα WS JSON Χρήση (consume) WS μέσω python Πρόσβαση σε WS και άντληση δεδομένων Παραδείγματα

Διαβάστε περισσότερα

Διαδικτυακές Εφαρμογές. Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ

Διαδικτυακές Εφαρμογές. Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ Διαδικτυακές Εφαρμογές Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΠΡΟΔΙΑΓΡΑΦΕΣ ΕΝΟΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΚΑΤΑΣΤΗΜΑΤΟΣ

ΠΡΟΔΙΑΓΡΑΦΕΣ ΕΝΟΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΚΑΤΑΣΤΗΜΑΤΟΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΕΝΟΣ ΗΛΕΚΤΡΟΝΙΚΟΥ ΚΑΤΑΣΤΗΜΑΤΟΣ Σύμφωνα με όλα τα παραπάνω ο τρόπος ανάπτυξης των ηλεκτρονικών καταστημάτων μπορεί να αναλυθεί με κάποιες συγκεκριμένες προδιαγραφές, οι οποίες μπορεί να είναι

Διαβάστε περισσότερα

Συστήματα Διοίκησης ΕΙΣΑΓΩΓΗ. Ηλεκτρονικές Συναλλαγές. Καθηγητής Δ. Ασκούνης, Δ. Πανόπουλος

Συστήματα Διοίκησης ΕΙΣΑΓΩΓΗ. Ηλεκτρονικές Συναλλαγές. Καθηγητής Δ. Ασκούνης, Δ. Πανόπουλος ΕΙΣΑΓΩΓΗ Ηλεκτρονικές Συναλλαγές Καθηγητής Δ. Ασκούνης, Δ. Πανόπουλος Ηλεκτρονικές Συναλλαγές 2017 Ορισμοί «Ηλεκτρονική Συναλλαγή» είναι οποιαδήποτε μορφή συναλλαγής που υποστηρίζεται σημαντικά από Τεχνολογίες

Διαβάστε περισσότερα

e-market: Παρουσίαση του μοντέλου των Ηλεκτρονικών Αγορών B2B βήμα προς βήμα Σπανού Σοφία

e-market: Παρουσίαση του μοντέλου των Ηλεκτρονικών Αγορών B2B βήμα προς βήμα Σπανού Σοφία e-market: Παρουσίαση του μοντέλου των Ηλεκτρονικών Αγορών B2B βήμα προς βήμα Σπανού Σοφία Internet & Επιχειρήσεις Internet & Επιχειρήσεις Παλαιότερα: Η αγορά αγαθών από την οθόνη του υπολογιστή έμοιαζε

Διαβάστε περισσότερα

ΗΛΕΚΤΡΟΝΙΚΟ ΕΠΙΧΕΙΡΕΙΝ

ΗΛΕΚΤΡΟΝΙΚΟ ΕΠΙΧΕΙΡΕΙΝ ΤΕΙ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΗΛΕΚΤΡΟΝΙΚΟ ΕΠΙΧΕΙΡΕΙΝ ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ : ΑΝΑΛΥΣΗ ΕΠΙΧΕΙΡΗΣΗΣ ΠΡΟΣ ΚΑΤΑΝΑΛΩΤΗ (B2C) 1 Παρουσίαση πτυχιακής εργασίας από την Τζέκου Σταυρούλα υπό την επίβλεψη

Διαβάστε περισσότερα

B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ ΜΕΡΟΣ Β

B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ ΜΕΡΟΣ Β B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ ΜΕΡΟΣ Β Ηλεκτρονική Αγορά Προσανατολισμένη σς Ενδιάμεσους : Η περίπτωση PART της BOEING Η Boeing στην προκειμένη περίπτωση, παίζει το ρόλο ενδιάμεσου στην παροχή ανταλλακτικών συντήρησης

Διαβάστε περισσότερα

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία

Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης. Μικρομεσαίες Επιχειρήσεις και Καινοτομία Τεχνολογίες Ανάπτυξης Ηλεκτρονικού Καταστήματος Μικρομεσαίας Επιχείρησης Μικρομεσαίες Επιχειρήσεις και Καινοτομία Ηλεκτρονικό Εμπόριο H δυνατότητα των καταναλωτών και των εμπορικών καταστημάτων να κάνουν

Διαβάστε περισσότερα

ΤΕΧΝΟΛΟΓΙΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΜΠΟΡΙΟΥ ΠΜΣ 513. Ακαδημαϊκό Έτος Εαρινό Εξάμηνο

ΤΕΧΝΟΛΟΓΙΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΜΠΟΡΙΟΥ ΠΜΣ 513. Ακαδημαϊκό Έτος Εαρινό Εξάμηνο ΤΕΧΝΟΛΟΓΙΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΜΠΟΡΙΟΥ ΠΜΣ 513 Ακαδημαϊκό Έτος 2014-2015 Εαρινό Εξάμηνο Agenda για σήμερα Διδάσκοντες Διδασκαλία και Εξέταση μαθήματος Περιεχόμενο Μαθήματος Εισαγωγή στο Η-Εμπόριο Εφαρμογές Η-Εμπορίου

Διαβάστε περισσότερα

Ηλεκτρονικό εμπόριο. Ψηφιακή οικονομία επιχειρηματικά μοντέλα ηλεκτρονικού εμπορίου

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

Διαβάστε περισσότερα

Κεφάλαιο 4 ο. Η ψηφιακή επιχείρηση: Ηλεκτρονικό εμπόριο και ηλεκτρονικό επιχειρείν

Κεφάλαιο 4 ο. Η ψηφιακή επιχείρηση: Ηλεκτρονικό εμπόριο και ηλεκτρονικό επιχειρείν Κεφάλαιο 4 ο Η ψηφιακή επιχείρηση: Ηλεκτρονικό εμπόριο και ηλεκτρονικό επιχειρείν Διδακτικοί στόχοι Να εξηγηθεί πώς το διαδίκτυο μετασχηματίζει τις επιχειρήσεις Να συγκριθούν οι κατηγορίες του ηλεκτρονικού

Διαβάστε περισσότερα

Ηλεκτρονική Επιχειρηματικότητα

Ηλεκτρονική Επιχειρηματικότητα ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ Ι Ο Ν Ι Ω Ν Ν Η Σ Ω Ν Σ Χ ΟΛ Η Δ Ι Ο Ι Κ Η Σ Η Σ Κ Α Ι Ο Ι ΚΟ Ν Ο Μ Ι Α Σ Τ Μ Η Μ Α Δ Ι Ο Ι Κ Η Σ Η Σ Ε Π Ι Χ Ε Ι Ρ Η Σ Ε Ω Ν ΕΙΣΑΓΩΓΙΚΗ ΚΑΤΕΥΘΥΝΣΗ: ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

Διαβάστε περισσότερα

Οδηγός Ηλεκτρονικού Επιχειρείν

Οδηγός Ηλεκτρονικού Επιχειρείν ΕΠΙΜΕΛΗΤΗΡΙΟ ΧΑΝΙΩΝ Σειρά Σεμιναρίων 2013 «Ηλεκτρονικό εμπόριο η επιχείρηση στη νέα ψηφιακή εποχή» Οδηγός Ηλεκτρονικού Επιχειρείν Δρ. Μάρκος Κουργιαντάκης Διδάκτορας Τμ. Οικονομικών Επιστημών Πανεπιστημίου

Διαβάστε περισσότερα

Ηλεκτρονικό Εμπόριο. Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ηλεκτρονικό Εμπόριο. Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ηλεκτρονικό Εμπόριο Ενότητα 7: Διαχείριση Εφοδιαστικής Αλυσίδας Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Ηλεκτρονικό Εμπόριο. Alexandros Socratous Λύκειο Αγίου Νεοφύτου Εμπορικά Β Λυκείου. Alexandros Socratous Economics

Ηλεκτρονικό Εμπόριο. Alexandros Socratous Λύκειο Αγίου Νεοφύτου Εμπορικά Β Λυκείου. Alexandros Socratous Economics Ηλεκτρονικό Εμπόριο Alexandros Socratous Λύκειο Αγίου Νεοφύτου Εμπορικά Β Λυκείου 1 Διάγραμμα ύλης 1. Στοιχεία ορισμού του η/ε 2. Απαραίτητη τεχνική υποδομή 3. Οφέλη από το η/ε 4. Περιορισμοί στην εξάπλωση

Διαβάστε περισσότερα

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

ΜΟΝΤΕΛΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ ΚΕΦΑΛΑΙΟ 3 ΜΟΝΤΕΛΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ Στο παρόν κεφάλαιο παρουσιάζουμε επιγραμματικά τα σημαντικότερα μοντέλα ηλεκτρονικών επιχειρήσεων. Στα επόμενα κεφάλαια αναλύουμε διεξοδικότερα κάθε ένα από

Διαβάστε περισσότερα

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

Διαβάστε περισσότερα

Ηλεκτρονικό Εμπόριο. Ενότητα 1: Εισαγωγικές Έννοιες. Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ηλεκτρονικό Εμπόριο. Ενότητα 1: Εισαγωγικές Έννοιες. Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ηλεκτρονικό Εμπόριο Ενότητα 1: Εισαγωγικές Έννοιες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

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

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ ΘΕΣΣΑΛΟΝΙΚΗ, 2016 ΕΙΣΑΓΩΓΗ Μια διαδικτυακή υπηρεσία μπορεί να περιγραφεί απλά σαν μια οποιαδήποτε

Διαβάστε περισσότερα

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture) Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture) Χρήστος Ηλιούδης Πλεονεκτήματα των Υπηρεσιών Ιστού Διαλειτουργικότητα: Η χαλαρή σύζευξή τους οδηγεί στην ανάπτυξη ευέλικτου λογισμικού

Διαβάστε περισσότερα

Ενότητα 4: Πληροφοριακά συστήματα για την επιχείρηση

Ενότητα 4: Πληροφοριακά συστήματα για την επιχείρηση Ενότητα 4: Πληροφοριακά συστήματα για την επιχείρηση Χρηματοοικονομική διοίκηση Χρηματοοικονομικό ΠΣ: επιχειρησιακό ΠΣ που υπάρχει σχεδόν σε κάθε οργανισμό και υποστηρίζει χρηματοοικονομικούς λογαριασμούς

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ- ΤΜΗΜΑ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΑΝΑΠΤΥΞΗΣ, ΜΑΘΗΜΑ: ΔΙΑΧΕΙΡΙΣΗ ΑΝΘΡΩΠΙΝΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΠΟΡΩΝ- ΧΡΙΣΤΟΣ ΑΠ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΣΤΕΡΕΑΣ ΕΛΛΑΔΑΣ- ΤΜΗΜΑ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΟΙΚΟΝΟΜΙΚΗΣ ΑΝΑΠΤΥΞΗΣ, ΜΑΘΗΜΑ: ΔΙΑΧΕΙΡΙΣΗ ΑΝΘΡΩΠΙΝΩΝ ΚΑΙ ΦΥΣΙΚΩΝ ΠΟΡΩΝ- ΧΡΙΣΤΟΣ ΑΠ. Χ. ΑΠ. ΛΑΔΙΑΣ Το ERP είναι ένα ολοκληρωμένο πληροφοριακό σύστημα διαχείρισης επιχειρησιακών πόρων. Διαχειρίζεται και συντονίζει όλες τις λειτουργίες και διαδικασίες που λαμβάνουν χώρα σε μια επιχείρηση.

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΜΟΝΤΕΛΑ SCOR ΕΝΝΟΙΑ SCOR Ορισμός των μοντέλων SCOR Το μοντέλο SCOR είναι ένα μοντέλο αναφοράς διαδικασιών για την εφοδιαστική αλυσίδα (η ονομασία του προέρχεται από τα αρχικά γράμματα

Διαβάστε περισσότερα

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15

ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15 ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος του συγγραφέα...11 Πρόλογος του καθηγητή Γεωργίου Δουκίδη...13 ΜΕΡΟΣ ΠΡΩΤΟ: Θεωρητική Προσέγγιση...15 ΚΕΦΑΛΑΙΟ 1. Η ΕΠΙΧΕΙΡΗΣΗ...17 Ορισμός της έννοιας της επιχείρησης και οι μορφές

Διαβάστε περισσότερα

* Enterprise Resource Planning ** Customer Relationship Management

* Enterprise Resource Planning ** Customer Relationship Management Υπηρεσιοστρεφείς Επιχειρησιακές ιαδικασίες ιαµοιρασµός και Επαναχρησιµοποίηση Αποτελούν βασικές απαιτήσειςκατά το σχεδιασµό και την ολοκλήρωση (integration) επιχειρησιακών διαδικασιών ιαµοιρασµός: πολλοί

Διαβάστε περισσότερα

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

Διαβάστε περισσότερα

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης Κωστής Αϊβαλής Μηχανικός Πληροφορικής TU-Berlin 2/5/2008 ΕΑΠ-ΓΤΠ61-Κωστής Αϊβαλής 1 Εισαγωγή Η ταχύτητα επεξεργασίας των εφαρµογών διαδικτυακών υπηρεσιών

Διαβάστε περισσότερα

Ηλεκτρονικό Επιχειρείν & Νέες Τεχνολογίες για Επιχειρηματικότητα ΔΕΟ45

Ηλεκτρονικό Επιχειρείν & Νέες Τεχνολογίες για Επιχειρηματικότητα ΔΕΟ45 Ηλεκτρονικό Επιχειρείν & Νέες Τεχνολογίες για Επιχειρηματικότητα ΔΕΟ45 ΤΟΜΟΣ Α «Ηλεκτρονικό Επιχειρείν» πηγή: ibm.com Ηλεκτρονικό Επιχειρείν Η εφαρμογή τεχνολογιών πληροφορίας και επικοινωνίας (ΤΠΕ) για

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Ηλεκτρονικό Εμπόριο Αναπτύσσοντας ένα Ηλεκτρονικό Κατάστημα Ηλεκτρονικό Εμπόριο Θέματα Προσδιορισμός επιχειρηματικού μοντέλου

Διαβάστε περισσότερα

Οι ηλεκτρονικές αγορές αποτελούν χρήσιμο

Οι ηλεκτρονικές αγορές αποτελούν χρήσιμο ΕΡΓΑΣΤΗΡΙΟ ΗΛΕΚΤΡΟΝΙΚΟΥ ΕΜΠΟΡΙΟΥ(ELTRUN) Οι ηλεκτρονικές αγορές αποτελούν χρήσιμο ε εργαλείο διευκόλυνσης των εταιρικών συναλλαγών εξελίσσονται οι Σ ηλεκτρονικές αγορές (e-marketplaces), σύμφωνα με έρευνα

Διαβάστε περισσότερα

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

Διαβάστε περισσότερα

Ηλεκτρονικά Καταστήματα E Shops

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

Διαβάστε περισσότερα

Δρ. Δημήτριος Α. Κουτσομητρόπουλος. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Α.Τ.Ε.Ι. Πάτρας 2012-2013

Δρ. Δημήτριος Α. Κουτσομητρόπουλος. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Α.Τ.Ε.Ι. Πάτρας 2012-2013 e-επιχειρείν Δρ. Δημήτριος Α. Κουτσομητρόπουλος Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Α.Τ.Ε.Ι. Πάτρας 2012-2013 Σκοπός του Μαθήματος Να μελετηθούν: Τι είναι το e-εμπόριο και το

Διαβάστε περισσότερα

κώστας βεργίδης εισαγωγή στις βασικές έννοιες των επιχειρησιακών διεργασιών γραφείο 322 κτίριο Γ kvergidis@uom.gr 2310 891 637

κώστας βεργίδης εισαγωγή στις βασικές έννοιες των επιχειρησιακών διεργασιών γραφείο 322 κτίριο Γ kvergidis@uom.gr 2310 891 637 εισαγωγή στις βασικές έννοιες των επιχειρησιακών διεργασιών κώστας βεργίδης λέκτορας τμ. Εφαρμοσμένης Πληροφορικής γραφείο 322 κτίριο Γ kvergidis@uom.gr 2310 891 637 συστήματα ηλεκτρονικού εμπορίου εισαγωγή

Διαβάστε περισσότερα

Επιχειρησιακά Πληροφοριακά Συστήματα. Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com. Στόχος Σκοπός μαθήματος

Επιχειρησιακά Πληροφοριακά Συστήματα. Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com. Στόχος Σκοπός μαθήματος Επιχειρησιακά Πληροφοριακά Συστήματα Διδάσκων: Αγγελόπουλος Γιάννης Δευτέρα 3-5 Τρίτη 4-6 Εργαστήριο Α Site: www.aggelopoulos.tk e-mail: ioannis.aggelopoulos@gmail.com 1 Στόχος Σκοπός μαθήματος Σκοπός:

Διαβάστε περισσότερα

Τεχνολογίες Πληροφορικής και Επικοινωνιών (ΤΠΕ) στις Μικρομεσαίες Επιχειρήσεις (ΜΜΕ)

Τεχνολογίες Πληροφορικής και Επικοινωνιών (ΤΠΕ) στις Μικρομεσαίες Επιχειρήσεις (ΜΜΕ) Τεχνολογίες Πληροφορικής και Επικοινωνιών (ΤΠΕ) στις Μικρομεσαίες Επιχειρήσεις (ΜΜΕ) Γιώργος Μανής Επίκουρος Καθηγητής Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων Τι είναι οι Τεχνολογίες

Διαβάστε περισσότερα

GoDigital.Store E-Commerce Platform

GoDigital.Store E-Commerce Platform GoDigital.Store E-Commerce Platform Πλήρης διαχείριση καταλόγου και καταστήματος banet Α.Ε. Βαλαωρίτου 20 54625 Θεσσαλονίκη Τ.2310253999 F.2310253998 www.banet.gr info@banet.gr GoDigital.Store Γενική περιγραφή

Διαβάστε περισσότερα

Οι Β2Β Ηλεκτρονικές Αγορές µε απλά λόγια

Οι Β2Β Ηλεκτρονικές Αγορές µε απλά λόγια Οι Β2Β Ηλεκτρονικές Αγορές µε απλά λόγια Κουργιαντάκης Μάρκος Υποψήφιος ιδάκτορας Τµήµατος Οικονοµικών Πανεπιστηµίου Κρήτης- Συνεργάτης του Επιµελητηρίου για τη δηµιουργία του Ηλεκτρονικού Κέντρου Εµπορίου

Διαβάστε περισσότερα

Ομαδοποίηση των απαιτήσεων του προτύπου ISO Σύστημα ποιότητας Ευθύνη της διοίκησης Διαχείριση πόρων Υλοποίηση του προϊόντος

Ομαδοποίηση των απαιτήσεων του προτύπου ISO Σύστημα ποιότητας Ευθύνη της διοίκησης Διαχείριση πόρων Υλοποίηση του προϊόντος Ομαδοποίηση των απαιτήσεων του προτύπου ISO 9001:2000 Σύστημα ποιότητας Ευθύνη της διοίκησης Διαχείριση πόρων Υλοποίηση του προϊόντος / Παροχή της υπηρεσίας Μέτρηση ανάλυση και βελτίωση Εισαγωγή στα Συστήματα

Διαβάστε περισσότερα

Διαχείριση Εφοδιαστική Αλυσίδας. ΤΕΙ Κρήτης / Τμήμα Διοίκησης Επιχειρήσεων

Διαχείριση Εφοδιαστική Αλυσίδας. ΤΕΙ Κρήτης / Τμήμα Διοίκησης Επιχειρήσεων Διαχείριση Εφοδιαστική Αλυσίδας ΤΕΙ Κρήτης / Τμήμα Διοίκησης Επιχειρήσεων Εισαγωγικές Έννοιες Δρ. Ρομπογιαννάκης Ιωάννης 1 Διαχείριση Εφοδιαστικής Αλυσίδας Ορισμοί - 1 - Εφοδιαστική/ Logistics: Η ολοκληρωμένη

Διαβάστε περισσότερα

ΤΕΙ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΚΑΤΕΥΘΥΝΣΗ : ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ

ΤΕΙ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΚΑΤΕΥΘΥΝΣΗ : ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΤΕΙ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΚΑΤΕΥΘΥΝΣΗ : ΔΙΟΙΚΗΣΗ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ & ΚΟΙΝΩΝΙΚΑ ΔΙΚΤΥΑ ELECTRONIC COMMERCE & SOCIAL MEDIA ΆΝΤΕΛ

Διαβάστε περισσότερα

B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ

B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ B2B ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Ο τομέας του ηλεκτρονικού εμπορίου που ονομάζουμε δι-επιχειρησιακό ηλεκτρονικό εμπόριο (business-to-business electronic commerce B2B B E.C), E ή πιο απλά δι- επιχειρησιακές συναλλαγές,

Διαβάστε περισσότερα

ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ

ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Εκφώνηση Υποχρεωτικής

Διαβάστε περισσότερα

e-επιχειρείν Ορισμοί και Βασικές Έννοιες

e-επιχειρείν Ορισμοί και Βασικές Έννοιες e-επιχειρείν Ορισμοί και Βασικές Έννοιες Δρ. Δημήτριος Α. Κουτσομητρόπουλος Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Α.Τ.Ε.Ι. Πάτρας 2012-2013 Εισαγωγή Σύμφωνα με την ECA (Electronic

Διαβάστε περισσότερα

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S.

Στρατηγική Επιλογή Capital B.O.S. Capital B.O.S. Στρατηγική Επιλογή Το ταχύτατα μεταβαλλόμενο περιβάλλον στο οποίο δραστηριοποιούνται οι επιχειρήσεις σήμερα, καθιστά επιτακτική -όσο ποτέ άλλοτε- την ανάπτυξη ολοκληρωμένων λύσεων που θα διασφαλίζουν,

Διαβάστε περισσότερα

Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas

Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas Πολιτική Ασφαλείας Δεδομένων Πιστοποίηση ISO 27001:2013 από την TÜV Austria Hellas Αποστολή της Retail@Link & Πολιτική Ασφαλείας 12 χρόνια εμπειρίας Στη διασύνδεση επιχειρήσεων με >11.500.000 Ηλεκτρονικά

Διαβάστε περισσότερα

Πανεπιστήμιο Αιγαίου Σχολή Κοινωνικών Επιστημών Τμήμα Πολιτισμικής Τεχνολογίας Και Επικοινωνίας

Πανεπιστήμιο Αιγαίου Σχολή Κοινωνικών Επιστημών Τμήμα Πολιτισμικής Τεχνολογίας Και Επικοινωνίας Πανεπιστήμιο Αιγαίου Σχολή Κοινωνικών Επιστημών Τμήμα Πολιτισμικής Τεχνολογίας Και Επικοινωνίας Ψηφιακό Περιεχόμενο & Ηλεκτρονικό Εμπόριο (Δ εξάμηνο) Διάλεξη # 7η: Marketing και Διαδίκτυο Το «προϊόν» της

Διαβάστε περισσότερα

Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο)

Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο) Τεχνολογίες Πληροφορίας και Επικοινωνίας στον Τουρισμό (Γ εξάμηνο) Ακαδ. Έτος 2014-15 e-tourism και internet Β. Φερεντίνος από την πλευρά της επιχείρησης ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ - ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ

Διαβάστε περισσότερα

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

ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΠΟΡΩΝ ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΠΟΡΩΝ ΚΕΦΑΛΑΙΟ 4 Τεχνολογική Υποδομή ERP Βασίλειος Ταμπακάς, Καθηγητής Αθανάσιος Καλογεράς, Επ. Συνεργάτης Τεχνικά Χαρακτηριστικά ERP Αποτελεί σύνθεση ολοκληρωμένων

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Ηλεκτρονικό Εμπόριο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Ηλεκτρονικό Εμπόριο Αναπτύσσοντας ένα Ηλεκτρονικό Κατάστημα Ηλεκτρονικό Εμπόριο Λειτουργικότητα Εφαρμογής Κατάλογος προϊόντων Καλάθι

Διαβάστε περισσότερα

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

ΕΓΧΕΙΡΙΔΙΟ ΟΡΘΩΝ ΠΡΑΚΤΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΜΕΣΟΛΟΓΓΙΟΥ ΕΓΧΕΙΡΙΔΙΟ ΟΡΘΩΝ ΠΡΑΚΤΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΜΕΣΟΛΟΓΓΙΟΥ σελ. 1 Κατανοώντας το Ηλεκτρονικό Εμπόριο Τι είναι; Ο όρος ηλεκτρονικό εμπόριο (e-commerce) αφορά στις επιχειρήσεις

Διαβάστε περισσότερα

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Γενικά Η αρχιτεκτονική ανάπτυξης τους πληροφοριακού συστήµατος Γραµµατεία 2000 υποσύστηµα διαχείρισης προσωπικού

Διαβάστε περισσότερα

Dynamic Business Systems. Παρουσίαση Εφαρμογής

Dynamic Business Systems. Παρουσίαση Εφαρμογής Παρουσίαση Εφαρμογής Διαχείριση Αποθήκης Ειδών, Μητρώου και Τιμοκαταλόγων Προμηθευτών, Αξιολόγηση Προμηθειών μέσω Προσφορών Ειδών Dynamic Business Systems (Dynamic Supplies) Περιεχόμενα A. Η Εφαρμογή Dynamic

Διαβάστε περισσότερα

Επιχειρηματικά Μοντέλα στο Ηλεκτρονικό Εμπόριο. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης

Επιχειρηματικά Μοντέλα στο Ηλεκτρονικό Εμπόριο. ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης Επιχειρηματικά Μοντέλα στο Ηλεκτρονικό Εμπόριο ΤΕΙ Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων - Πάτρα Κουτσονίκος Γιάννης 1 Επιχειρηματικό Μοντέλο - Ορισμός Για τη διαδικασία του Ηλεκτρονικού Επιχειρείν,

Διαβάστε περισσότερα

οικονομικές τάσεις Εκτεταμένη συνεργασία της εφοδιαστικής αλυσίδας. έργου FLUID-WIN το οποίο χρηματοδοτήθηκε από το 6ο Πρόγραμμα Πλαίσιο Παγκόσμιες

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

Διαβάστε περισσότερα

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες Εισαγωγή-Σκοπός. Τρόποι δημιουργίας δυναμικών ιστοσελίδων. Dynamic Web Pages. Dynamic Web Page Development Using Dreamweaver. Τρόποι δημιουργίας δυναμικών

Διαβάστε περισσότερα

Βασικές Έννοιες Web Εφαρμογών

Βασικές Έννοιες Web Εφαρμογών ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ Τεχνολογίες και Εφαρμογές Διαδικτύου Βασικές Έννοιες Web Εφαρμογών Κατερίνα Πραματάρη Τεχνολογίες και Εφαρμογές Διαδικτύου Περιεχόμενα

Διαβάστε περισσότερα

ιοίκηση Πληροφοριακών Συστηµάτων

ιοίκηση Πληροφοριακών Συστηµάτων ιοίκηση Πληροφοριακών Συστηµάτων ιάλεξη 4 η 4.1 Αρχιτεκτονική Επιχειρησιακών Εφαρµογών 4.2 1 Επιχειρησιακά Συστήµατα ή Επιχειρησιακά Συστήµατα ιαχείρισης Πόρων(ERPs) Συστήµατα ιαχείρισης Εφοδιαστικής Αλυσίδας

Διαβάστε περισσότερα

Η-επιχειρείν και συνεργασία σε παγκόσμιο επίπεδο

Η-επιχειρείν και συνεργασία σε παγκόσμιο επίπεδο Κεφάλαιο 2 Η-επιχειρείν και συνεργασία σε παγκόσμιο επίπεδο 2.1 ΜΑΘΗΣΙΑΚΟΙ ΣΤΟΧΟΙ Ποια είναι τα βασικά χαρακτηριστικά μιας επιχείρησης που είναι σημαντικά για την κατανόηση του ρόλου των πληροφοριακών

Διαβάστε περισσότερα

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12 Αρχιτεκτονικές κατανεμημένων συστημάτων Στόχοι Εξήγηση των πλεονεκτημάτων και των μειονεκτημάτων των αρχιτεκτονικών κατανεμημένων συστημάτων Εξέταση των αρχιτεκτονικών συστημάτων πελάτηδιακομιστή και των

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΥΠΟΔΟΜΩΝ, ΝΑΥΤΙΛΙΑΣ & ΤΟΥΡΙΣΜΟΥ ΑΠΟΦΑΣΗ ΕΠΙ ΔΗΛΩΣΗΣ ΣΗΜΑΤΟΣ ΑΠΟΦΑΣΗ ΕΞ 3113/19-6-2015

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΥΠΟΔΟΜΩΝ, ΝΑΥΤΙΛΙΑΣ & ΤΟΥΡΙΣΜΟΥ ΑΠΟΦΑΣΗ ΕΠΙ ΔΗΛΩΣΗΣ ΣΗΜΑΤΟΣ ΑΠΟΦΑΣΗ ΕΞ 3113/19-6-2015 ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΥΠΟΥΡΓΕΙΟ ΟΙΚΟΝΟΜΙΑΣ ΥΠΟΔΟΜΩΝ, ΝΑΥΤΙΛΙΑΣ & ΤΟΥΡΙΣΜΟΥ ΑΠΟΦΑΣΗ ΕΠΙ ΔΗΛΩΣΗΣ ΣΗΜΑΤΟΣ ΑΠΟΦΑΣΗ ΕΞ 3113/19-6-2015 Σύμφωνα με: α) τις διατάξεις των άρθρων 123, 124, 135 και 136 του Ν. 4072/2012

Διαβάστε περισσότερα

1 η ΕΝΟΤΗΤΑ. Δημιουργώντας εισόδημα online. Internet Μια αγορά συνεχιζόμενης ανάπτυξης. Πλεονεκτήματα

1 η ΕΝΟΤΗΤΑ. Δημιουργώντας εισόδημα online. Internet Μια αγορά συνεχιζόμενης ανάπτυξης. Πλεονεκτήματα 1 η ΕΝΟΤΗΤΑ Δημιουργώντας εισόδημα online Internet Μια αγορά συνεχιζόμενης ανάπτυξης Οι περισσότεροι σε αυτόν τον χώρο θα χαίρονταν να ακούσουν τους άλλους να λένε: «Είναι πολύ αργά τώρα, υπάρχει πολύς

Διαβάστε περισσότερα

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρομεσαίες Επιχειρήσεις»

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρομεσαίες Επιχειρήσεις» ΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΒΑΣΙΚΟΣ ΠΑΡΑΓΟΝΤΑΣ ΓΙΑ ΤΗΝ ΟΙΚΟΝΟΜΙΚΗ ΚΑΙ ΚΟΙΝΩΝΙΚΗ ΑΝΑΠΤΥΞΗ ΤΟΥ ΑΙΓΑΙΟΠΕΛΑΓΙΤΙΚΟΥ ΧΩΡΟΥ Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρομεσαίες

Διαβάστε περισσότερα

Ηλεκτρονικές ηµοπρασίες

Ηλεκτρονικές ηµοπρασίες Ηλεκτρονικές ηµοπρασίες Του Ιωάννη Βάρδα Υποψήφιου ιδάκτορα Οικονοµικών Πανεπιστηµίου Κρήτης Συνεργάτη του Επιµελητηρίου για τη δηµιουργία του Ηλεκτρονικού Κέντρου Εµπορίου Κρήτης α. Εισαγωγή Η εκρηκτική

Διαβάστε περισσότερα

Τ.Ε.Ι. ΚΡΗΤΗΣ, Σ.Δ.Ο., Τμήμα Λογιστικής. ERP Systems

Τ.Ε.Ι. ΚΡΗΤΗΣ, Σ.Δ.Ο., Τμήμα Λογιστικής. ERP Systems Τ.Ε.Ι. ΚΡΗΤΗΣ, Σ.Δ.Ο., Τμήμα Λογιστικής ERP Systems ERP puzzle ERP: Ολοκληρωμένα Πληροφοριακά συστήματα συνδεδεμένων λειτουργικών εφαρμογών (modules) τα οποία αντικαθιστούν τα ξεχωριστά αυτόνομα υπολογιστικά

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστρεφής Προγραμματισμός ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 1: Εισαγωγή Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

9. Κάθε στρατηγική επιχειρηματική μονάδα αποφασίζει για την εταιρική στρατηγική που θα εφαρμόσει. α. Λάθος. β. Σωστό.

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

Διαβάστε περισσότερα

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS)

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS) Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS) Ελένη Καλδούδη Τμήμα Ιατρικής Δημοκρίτειο Πανεπιστήμιο Θράκης 2003 θέματα το χθές, το σήμερα και το αύριο για τα PACS απαιτήσεις από

Διαβάστε περισσότερα

Πτυχιακή Εργασία Ηλεκτρονικό εμπόριο & Σημασιολογικός ιστός

Πτυχιακή Εργασία Ηλεκτρονικό εμπόριο & Σημασιολογικός ιστός Πτυχιακή Εργασία Ηλεκτρονικό εμπόριο & Σημασιολογικός ιστός Χρησιμοποιείστε για το κείμενο γραμματοσειρά courier 12 με στοίχιση πλήρης Άσκηση 3 1 Αρίθμηση σελίδων Η αρίθμηση σελίδων τοποθετείται συνήθως

Διαβάστε περισσότερα

Ηλεκτρονικό εμπόριο Απρίλιος 2011

Ηλεκτρονικό εμπόριο Απρίλιος 2011 Ηλεκτρονικό εμπόριο Απρίλιος 2011 Ηλεκτρονικό Εμπόριο 3 Ηλεκτρονικό Εμπόριο τύπου Επιχείρησης - Πελάτη 4 Οργάνωση του ηλεκτρονικού εμπορίου 5 Ιστοσελίδα του Ηλεκτρονικού Καταστήματος 6 Ηλεκτρονικές Πληρωμές

Διαβάστε περισσότερα

Σχεδιαστικά Προγράμματα Επίπλου

Σχεδιαστικά Προγράμματα Επίπλου Σχεδιαστικά Προγράμματα Επίπλου Καθηγήτρια ΦΕΡΦΥΡΗ ΣΩΤΗΡΙΑ Τμήμα ΣΧΕΔΙΑΣΜΟΥ & ΤΕΧΝΟΛΟΓΙΑΣ ΞΥΛΟΥ - ΕΠΙΠΛΟΥ Σχεδιαστικά Προγράμματα Επίπλου Η σχεδίαση με τον παραδοσιακό τρόπο απαιτεί αυξημένο χρόνο, ενώ

Διαβάστε περισσότερα

Ηλεκτρονικό Εμπόριο. Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά)

Ηλεκτρονικό Εμπόριο. Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Ηλεκτρονικό Εμπόριο Ενότητα 6: Διαχείριση Σχέσεων με Πελάτες Σαπρίκης Ευάγγελος Τμήμα Διοίκησης Επιχειρήσεων (Γρεβενά) Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Κεφάλαιο 1 ο. Διοίκηση και διαχείριση της ψηφιακής επιχείρησης

Κεφάλαιο 1 ο. Διοίκηση και διαχείριση της ψηφιακής επιχείρησης Κεφάλαιο 1 ο Διοίκηση και διαχείριση της ψηφιακής επιχείρησης Διδακτικοί στόχοι Να αναλυθεί ο ρόλος των πληροφοριακών συστημάτων στο επιχειρηματικό περιβάλλον Ναοριστείτοπληροφοριακόσύστημα, η ορολογία

Διαβάστε περισσότερα

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA

Διαδικτυακές Εφαρμογές Ενότητα 1: JPA Διαδικτυακές Εφαρμογές Ενότητα 1: JPA Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Cloud ERP. Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας

Cloud ERP. Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας Cloud ERP Αλλάξτε τον τρόπο που κάνετε τη δουλειά σας για µια ανοικτή επιχείρηση... Με τις προκλήσεις της αγοράς να αυξάνονται διαρκώς, κάθε επιχείρηση, ανεξαρτήτως μεγέθους και κλάδου δραστηριοποίησης,

Διαβάστε περισσότερα

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud

Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Η Oracle ανακοίνωσε την πιο ολοκληρωμένη λύση στον τομέα της Ανάλυσης δεδομένων στο Cloud Το Oracle Analytics Cloud αποτελεί ένα ολοκληρωμένο σύνολο δυνατοτήτων που περιλαμβάνει έτοιμο περιεχόμενο, εξειδικευμένα

Διαβάστε περισσότερα

Ερεύνα ικανοποιήσης καταστημάτων OK Any Time Marker.

Ερεύνα ικανοποιήσης καταστημάτων OK Any Time Marker. 1 Ερεύνα ικανοποιήσης καταστημάτων OK Any Time Marker. Η αλυσίδα καταστημάτων Ok Anytime Markets, στα πλαίσια της συνεχούς ανάπτυξης και βελτίωσης των υπηρεσιών της, αναζητούσε λογισμικό το οποίο θα βελτίωνε

Διαβάστε περισσότερα

Σύστημα Διαχείρισης, Ελέγχου και Παρακολούθησης Ασθενοφόρων και Περιστατικών

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

Διαβάστε περισσότερα

Ονομάζομαι Βασιλάκος Γιάννης και είμαι Αντιπρόεδρος και Διευθύνων. Σύμβουλος της Κωτσόβολος, εταιρίας του Ομίλου Dixons Carphone με

Ονομάζομαι Βασιλάκος Γιάννης και είμαι Αντιπρόεδρος και Διευθύνων. Σύμβουλος της Κωτσόβολος, εταιρίας του Ομίλου Dixons Carphone με Καλησπέρα. Ονομάζομαι Βασιλάκος Γιάννης και είμαι Αντιπρόεδρος και Διευθύνων Σύμβουλος της Κωτσόβολος, εταιρίας του Ομίλου Dixons Carphone με έδρα το Ηνωμένο Βασίλειο. Η Κωτσόβολος για όσους δεν το γνωρίζουν

Διαβάστε περισσότερα

ΟΡΓAΝΩΣΗ / ΔΙΟIΚΗΣΗ ΠΑΡΑΓΩΓHΣ: ΕΙΣΑΓΩΓΙΚEΣ EΝΝΟΙΕΣ. Διοίκηση Παραγωγής & Συστημάτων Υπηρεσιών ΕΡΓΑΣΤΗΡΙΟ ΣΥΣΤΗΜΑΤΩΝ ΑΠΟΦΑΣΕΩΝ ΚΑΙ ΔΙΟΙΚΗΣΗΣ

ΟΡΓAΝΩΣΗ / ΔΙΟIΚΗΣΗ ΠΑΡΑΓΩΓHΣ: ΕΙΣΑΓΩΓΙΚEΣ EΝΝΟΙΕΣ. Διοίκηση Παραγωγής & Συστημάτων Υπηρεσιών ΕΡΓΑΣΤΗΡΙΟ ΣΥΣΤΗΜΑΤΩΝ ΑΠΟΦΑΣΕΩΝ ΚΑΙ ΔΙΟΙΚΗΣΗΣ ΟΡΓAΝΩΣΗ / ΔΙΟIΚΗΣΗ ΠΑΡΑΓΩΓHΣ: ΕΙΣΑΓΩΓΙΚEΣ EΝΝΟΙΕΣ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Η/Υ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Διοίκηση Παραγωγής & Συστημάτων Υπηρεσιών ΕΡΓΑΣΤΗΡΙΟ ΣΥΣΤΗΜΑΤΩΝ ΑΠΟΦΑΣΕΩΝ ΚΑΙ

Διαβάστε περισσότερα

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται special report τoυ Γιώργου Φετοκάκη / gfetokakis@boussias.com Jobs scheduling Η χρυσή τοµή της αυτοµατοποίησης Μια λύση job scheduling πρέπει να είναι αρκετά περιεκτική. Πρέπει να υποστηρίζει την ενσωµάτωση

Διαβάστε περισσότερα

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ

Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ Τ.Ε.Ι. ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ & ΕΠΙΧΕΙΡΗΣΕΩΝ Η Έρευνα Μάρκετινγκ ως εργαλείο ανάπτυξης νέων προϊόντων ΕΙΣΗΓΗΤΗΣ: Δρ. Ιωάννης Σ. Τουρτούρας Μηχανικός Παραγωγής & Διοίκησης Δ.Π.Θ.

Διαβάστε περισσότερα

Τα logistics και οι επιχειρηματικές ευκαιρίες που προσφέρουν

Τα logistics και οι επιχειρηματικές ευκαιρίες που προσφέρουν Πανεπιστήμιο Πειραιά Τα logistics και οι επιχειρηματικές ευκαιρίες που προσφέρουν Κουκουράκης Δημήτρης MSc Logistics ΕΜΠ-Πανεπιστήμιο Πειραιά Μάϊος 2012 Logistics (business) Είναι το τμήμα της επιχείρησης

Διαβάστε περισσότερα

Σχεδίαση και Ανάπτυξη Ιστότοπων

Σχεδίαση και Ανάπτυξη Ιστότοπων Σχεδίαση και Ανάπτυξη Ιστότοπων Ιστορική Εξέλιξη του Παγκόσμιου Ιστού Παρουσίαση 1 η 1 Βελώνης Γεώργιος Καθηγητής Περιεχόμενα Τι είναι το Διαδίκτυο Βασικές Υπηρεσίες Διαδικτύου Προηγμένες Υπηρεσίες Διαδικτύου

Διαβάστε περισσότερα

Πληροφοριακά Συστήματα Απομακρυσμένης Εποπτείας και Μετρήσεων

Πληροφοριακά Συστήματα Απομακρυσμένης Εποπτείας και Μετρήσεων Πληροφοριακά Συστήματα Απομακρυσμένης Εποπτείας και Μετρήσεων Cloud CRM και ERP Γεωργανάκης Παναγιώτης Τμήμα Διοίκησης Επιχειρήσεων, Γρεβενά Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

1 Cosmos Business Systems SA Cosmos Consulting SA Software Solutions

1 Cosmos Business Systems SA Cosmos Consulting SA Software Solutions 1 Cosmos Business Systems SA Cosmos Consulting SA Software Solutions Microsoft Dynamics CRM Τι είναι; Το CRM αποτελεί το τεχνολογικό εργαλείο για την υλοποίηση ενιαίας, πελατοκεντρικής επιχειρηματικής

Διαβάστε περισσότερα

«Το σήμερα και το αύριο στην αγορά εργασίας» TITAN, 24/11/2017

«Το σήμερα και το αύριο στην αγορά εργασίας» TITAN, 24/11/2017 16 ο Βήμα Μεταπτυχιακού Φοιτητή «Το σήμερα και το αύριο στην αγορά εργασίας» TITAN, 24/11/2017 Νίκη Φουρλή Οι εταιρείες του σήμερα και του μέλλοντος.. Σήμερα, οι περισσότερες εταιρείες θέτουν τα θεμέλια

Διαβάστε περισσότερα

Περιεχόμενα Α ΜΕΡΟΣ. Πρόλογος των Συγγραφέων ΚΕΦΑΛΑΙΟ 1 Πληροφοριακά Συστήματα. ΚΕΦΑΛΑΙΟ 2 Πληροφοριακά Συστήματα και Σύγχρονη Επιχείρηση

Περιεχόμενα Α ΜΕΡΟΣ. Πρόλογος των Συγγραφέων ΚΕΦΑΛΑΙΟ 1 Πληροφοριακά Συστήματα. ΚΕΦΑΛΑΙΟ 2 Πληροφοριακά Συστήματα και Σύγχρονη Επιχείρηση Πρόλογος των Συγγραφέων... 21 Α ΜΕΡΟΣ ΚΕΦΑΛΑΙΟ 1 Πληροφοριακά Συστήματα 1.1 Εισαγωγή... 29 1.2 Σύστημα... 29 1.3 Πληροφοριακά Συστήματα... 31 1.3.1 Ορισμός του Πληροφοριακού Συστήματος... 31 1.3.2 Συστατικά

Διαβάστε περισσότερα

Διαχείριση Έργων. Ενότητα 5: Χρονοδιάγραμμα προμηθειών, προγραμματισμός πόρων

Διαχείριση Έργων. Ενότητα 5: Χρονοδιάγραμμα προμηθειών, προγραμματισμός πόρων Διαχείριση Έργων Ενότητα 5: Χρονοδιάγραμμα προμηθειών, προγραμματισμός πόρων Μπεληγιάννης Γρηγόριος Σχολή Οργάνωσης και Διοίκησης Επιχειρήσεων Τμήμα Διοίκησης Επιχειρήσεων Αγροτικών Προϊόντων & Τροφίμων

Διαβάστε περισσότερα

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου:

Διαβάστε περισσότερα

Η Πληροφορική Επανάσταση Η Κοινωνία των πληροφοριών

Η Πληροφορική Επανάσταση Η Κοινωνία των πληροφοριών Η Πληροφορική Επανάσταση Η Κοινωνία των πληροφοριών Πολλοί υποστηρίζουν ότι διανύουμε την αρχή μίας εποχής που μπορεί να περιγραφεί ως η Πληροφορική Επανάσταση και η οποία θα αλλάξει ριζικά την όλη δομή

Διαβάστε περισσότερα

E-SHOP.GR Η ΑΝΑΤΡΟΠΗ ΜΙΑΣ ΚΛΑΣΣΙΚΗΣ ΑΓΟΡΑΣ ΧΑΡΗ ΣΤΗΝ ΚΑΙΝΟΤΟΜΙΑ

E-SHOP.GR Η ΑΝΑΤΡΟΠΗ ΜΙΑΣ ΚΛΑΣΣΙΚΗΣ ΑΓΟΡΑΣ ΧΑΡΗ ΣΤΗΝ ΚΑΙΝΟΤΟΜΙΑ E-SHOP.GR Η ΑΝΑΤΡΟΠΗ ΜΙΑΣ ΚΛΑΣΣΙΚΗΣ ΑΓΟΡΑΣ ΧΑΡΗ ΣΤΗΝ ΚΑΙΝΟΤΟΜΙΑ Ιανουάριος 2006-1 - AGENDA E-shop.gr με μια ματιά Πληροφορική:μια κλασσική αγορά Καινοτομία στην e-shop.gr Αποτελέσματα/Συμπεράσματα - 2

Διαβάστε περισσότερα

Αναλυτική περιγραφή διδακτικών ενοτήτων. e-commerce Project Manager

Αναλυτική περιγραφή διδακτικών ενοτήτων. e-commerce Project Manager Αναλυτική περιγραφή διδακτικών ενοτήτων e-commerce Project Manager Ακαδημαϊκό Έτος 2015 2016 1. Intro to e-commerce Μάθετε σε αυτή την ενότητα τις βασικές έννοιες και αρχές του e-commerce και αποκτήστε

Διαβάστε περισσότερα

Grow Greek Tourism Online για το Πώς συνεργάζονται Internet και τουρισμός

Grow Greek Tourism Online για το Πώς συνεργάζονται Internet και τουρισμός Grow Greek Tourism Online για το 2016. Πώς συνεργάζονται Internet και τουρισμός Την πρωτοβουλία «Grow Greek Tourism Online» για το 2016, για τη στήριξη της τουριστικής βιομηχανίας της χώρας μας μέσω της

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Προγραμματισμός διαδικτυακών εφαρμογών με PHP

Προγραμματισμός διαδικτυακών εφαρμογών με PHP ΕΣΔ516: Τεχνολογίες Διαδικτύου Προγραμματισμός διαδικτυακών εφαρμογών με PHP Ερωτήματα μέσω Περιεχόμενα Περιεχόμενα Λογισμικό για εφαρμογές Web Η τριεπίπεδη αρχιτεκτονική (3-tier architecture) Εισαγωγή

Διαβάστε περισσότερα

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων: ΠΟΤΗΡΑΚΗΣ ΑΝΤΩΝΙΟΣ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΛΟΓΙΣΤΙΚΗΣ ΚΑΙ ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗΣ ΜΕΤΟΧΙΑΝΑΚΗ ΙΩΑΝΝΑ ΑΜ:6725 ΠΛΗΡΟΦΟΡΙΑΚΟ ΣΥΣΤΗΜΑ ΓΙΑ ΑΛΥΣΙΔΑ SUPERMARKET ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Επιβλέπων:

Διαβάστε περισσότερα