Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Λογισμικό Ανοικτού Κώδικα

Panagiotis Tsarchopoulos
December 02, 2011
71

Λογισμικό Ανοικτού Κώδικα

Άδειες χρήσης, παραδείγματα, μοντέλα αξιοποίησης, εργαλεία & κοινότητες υποστήριξης

Panagiotis Tsarchopoulos

December 02, 2011
Tweet

Transcript

  1. Λογισμικό Ανοικτού Κώδικα Άδειες χρήσης, παραδείγματα, μοντέλα αξιοποίησης, εργαλεία &

    κοινότητες υποστήριξης Παναγιώτης Τσαρχόπουλος Ερευνητική Μονάδα URENIO http://www.urenio.org
  2. Ο όρος «Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα» περιγράφει λογισμικό

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

    2. Ελευθερία μελέτης και τροποποίησης του λογισμικού 3. Ελευθερία αναδιανομής 4. Ελευθερία βελτίωσης του λογισμικού και δημοσίευσης των βελτιώσεων στο ευρύ κοινό. http://www.gnu.org/philosophy/free-sw.html Απαραίτητη προϋπόθεση η πρόσβαση στον πηγαίο κώδικα
  4. 10 Κριτήρια 1. Ελεύθερη διανομή 2. Πρόσβαση στον πηγαίο κώδικα

    3. Δικαίωμα αλλαγής του πηγαίου κώδικα και ανάπτυξης παράγωγου έργου 4. Σεβασμός της ακεραιότητας του πηγαίου κώδικα του αρχικού δημιουργού 5. Απαγόρευση διακρίσεων εις βάρος προσώπων και ομάδων
  5. 10 Κριτήρια 6. Απαγόρευση διακρίσεων εις βάρος συγκεκριμένων σκοπών 7.

    Διανομή της άδειας 8. Προστασία του προγράμματος και όχι του προϊόντος 9. Η άδεια δεν πρέπει να εμποδίζει άλλα προϊόντα 10.Η άδεια πρέπει να είναι ουδέτερη όσον αφορά την τεχνολογία
  6. Άδειες Χρήσης • Άρουν τους περιορισμούς χρήσης και θέτουν περιορισμούς

    διανομής. • Οι άδεις χρήσης ΕΛ/ΛΑΚ συνήθως απαγορεύουν: – Την παρεμπόδιση της ελεύθερης διανομής του λογισμικού – Τη στέρηση του πηγαίου κώδικα από όσους λαμβάνουν το λογισμικό – Την αφαίρεση του δικαιώματος τροποποίησης από όσους λαμβάνουν το λογισμικό – Την εφαρμογή οποιονδήποτε διακρίσεων σχετικά με το ποιος μπορεί να χρησιμοποιήσει καθώς και για ποιόν σκοπό το λογισμικό • Εξασφαλίζουν τη διατήρηση των 4 ελευθεριών (εκτέλεσης, μελέτης, αναδιανομής, βελτίωσης) του ελεύθερου λογισμικού σε όσους το λαμβάνουν.
  7. Ελεύθερες με δικαίωμα αντιγραφής «μολυσματικές» Ελεύθερες με δικαίωμα αντιγραφής (copylefted)

    «μη μολυσματικές» Ελεύθερες χωρίς δικαίωμα αντιγραφής (non-copylefted) Πηγή: Fabernovel consulting: Business models of open source software and free software: a few landmarks Δυνατότητα διεκδίκησης διαφορετική άδεια χρήσης + ανοχή - ανοχή Καθένας μπορεί να τροποποιήσει τον κώδικα χωρίς αναφορά στον αρχικό δημιουργό • Apache License Δεν θέτουν περιορισμούς στην επιλογή άδειας διανομής στους δημιουργούς παράγωγων έργων, εφόσον διατηρήσουν τις σημειώσεις copyright και τη μνεία των αρχικών δημιουργών • Berkeley Software Distribution (BSD) • MIT License Υποχρεώνουν τους δημιουργούς παράγωγων έργων να τα διανέμουν αποκλειστικά κάτω από την ίδια άδεια • General Public License (GPL) • Mozilla Public License (MPL)
  8. Open Source Initiative • Διεθνώς αναγνωρισμένος μη κερδοσκοπικός οργανισμός για

    την εξέταση και έγκριση αδειών χρήσης συμβατών προς τον ορισμό του λογισμικού ανοιχτού κώδικα. • Οι περίπου 70 εγκεκριμένες άδειες χρήσης είναι διαθέσιμες στη διεύθυνση: http://www.opensource.org/licenses/
  9. Μειονεκτήματα Χρήσης ΕΛ/ΛΑΚ • Λιγότερες επιλογές επαγγελματικής υποστήριξης • Ασυμβατότητες

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

    χρόνοι υλοποίησης πληροφοριακών συστημάτων • Υιοθέτηση διεθνών βέλτιστων πρακτικών • Ύπαρξη πληθώρας επιλογών και δοκιμασμένων λύσεων • Προώθηση του ανταγωνισμού των εταιρειών λογισμικού
  11. Πλεονεκτήματα Χρήσης ΕΛ/ΛΑΚ • Διαλειτουργικότητα ακόμα και μεταξύ λογισμικού διαφορετικών

    προμηθευτών • Αποφυγή «παγίδευσης» λόγω υιοθέτησης συγκεκριμένων κλειστών τεχνολογιών • Αξιοπιστία • Ασφάλεια
  12. Βασικά Κριτήρια Επιλογής • Η καταλληλότητα για τις ανάγκες της

    επιχείρησης ή του οργανισμού • Η άδεια χρήσης • Ο αριθμός των ενεργών μελών της κοινότητας που το υποστηρίζουν • Η ύπαρξη στελεχών που είναι σε θέση να αναλάβουν την υποστήριξη του λογισμικού στην επιχείρηση ή στον οργανισμό ή εναλλακτικά η επιλογή εταιρείας πληροφορικής με τεχνογνωσία και εμπειρία στην υποστήριξη του επιλεγμένου ΕΛΛΑΚ λογισμικού
  13. ΕΛ/ΛΑΚ vs. Ιδιόκτητο Λογισμικό • Libre Projects: 143 free web

    services & alternatives (http://libreprojects.net) • http://ellak.gr/index.php?option=com_openw iki&Itemid=103&id=ellak:pinakas_2008_2009
  14. 4 Επιχειρηματικά Μοντέλα Παροχής υπηρεσιών ή έμμεσο μοντέλο αξιοποίησης Μοντέλο

    προστιθέμενης αξία διανομής Διπλής αδειοδότησης ή μοντέλο εμπορικής άδειας χρήσης Μοντέλο παροχής συμπληρωματικών προϊόντων Επιχειρηματικά Μοντέλα Πηγή: Fabernovel consulting: Business models of open source software and free software: a few landmarks
  15. Η δημιουργία μιας κοινότητας που ενεργά υποστηρίζει την ανάπτυξη ενός

    ανοιχτού λογισμικού είναι ο βασικότερος παράγοντας επιτυχίας του
  16. Ρόλοι Χρηστών • Σχεδίαση και ανάπτυξη λογισμικού • Προτάσεις για

    βελτίωση της λειτουργικότητας • Υποστήριξη των χρηστών • Συγγραφή εγχειριδίων χρήσης • Μετάφραση σε διάφορες γλώσσες • Χρηματική υποστήριξη μέσω δωρεών • Διάδοση και προώθηση • Διασφάλιση της ποιότητας • Γραφικά και σχεδιασμός
  17. Open Source vs. Crowdsourcing Πηγή: Why the open source way

    trumps the crowdsourcing way (http://opensource.com)
  18. Εργαλεία Υποστήριξης 4 βασικά εργαλεία: • Website: για τη διάδοση

    του σκοπό και της κατάσταση του έργου σε κάθε χρονική στιγμή • Developer mailing list: για ανταλλαγή ιδεών, σχεδίων και πληροφοριών • Version control: για τη διαχείριση του κώδικα και τη δυνατότητα αλλαγών από πολλούς χρήστες • Issue tracking / project management: για τη συλλογή σφαλμάτων και τον προγραμματισμό των εργασιών
  19. Εργαλεία Επικοινωνίας • Blogs • Wiki • Forums • Syndication

    • Social networks and micro-blogging • Mailing lists • Mail archives
  20. Πλατφόρμες δημιουργίας κοινοτήτων SourceForge.net (http://sourceforge.net) • 3.400.000 developers έχουν δημιουργήσει

    πάνω από 324.000 έργα. • 46.000.000 χρήστες έχουν κατεβάσει αυτά τα έργα με ρυθμό 4,000,000 downloads την ημέρα.
  21. Πλατφόρμες δημιουργίας κοινοτήτων • Google Code (http://code.google.com) • OSOR.eu (http://www.osor.eu)

    • GitHub (http://github.com) • CodePlex (http://www.codeplex.com/) (Microsoft) • Launchpad (http://launchpad.net/) Σύγκριση των διαθέσιμων επιλογών https://en.wikipedia.org/wiki/Comparison_of_o pen_source_software_hosting_facilities
  22. Launchpad Πρόκειται για μια συνεργατική πλατφόρμα ανάπτυξης λογισμικού που προσφέρει:

    • Bug tracking • Code hosting • Code reviews • Translations • Mailing lists • Answer tracking and FAQs • Specification tracking
  23. Τα Συστήματα Διαχείρισης Περιεχομένου (CMS) είναι εφαρμογές που επιτρέπουν στο

    χρήστη να διαχειρίζεται το δικτυακό του περιεχόμενο, προσθέτοντας κείμενα, εικόνες, βίντεο, πίνακες κ.λπ., με εύκολο τρόπο, συνήθως παρόμοιο με αυτόν της χρήσης ενός κειμενογράφου
  24. WordPress: Χαρακτηριστικά • Δημιουργία περιεχομένου με χρονολογική σειρά (posts) αλλά

    και στατικού (pages) • Σύστημα εγγραφής χρηστών • Πολλαπλοί συγγραφείς • Ύπαρξη Workflow • Δημιουργία καταλόγου συνδέσεων • Η παρουσίαση είναι βασισμένη σε θέματα • Σχόλια • Προστασία από ανεπιθύμητα σχόλια • Εύκολη μορφοποίηση του κειμένου
  25. WordPress: Χαρακτηριστικά • Προστασία περιεχομένου με κωδικό • Εύκολη εισαγωγή

    περιεχομένου από άλλα CMS • XML-RPC interface • Εργαλεία για γρήγορη δημοσίευση • Αυτόματη ενημέρωση των μηχανών αναζήτησης για προσθήκη νέου περιεχομένου • Επικοινωνία με άλλα CMS μέσω (Trackback και Pingback) • Πλήρης υποστήριξη των προτύπων του W3C • Εύκολη εγκατάσταση και αναβάθμιση
  26. Κριτήρια Επιλογής ενός CMS Ανοιχτού Κώδικα • Ευκολία στη χρήση

    από τον τελικό χρήστη • Μέγεθος της κοινότητας • Πλήθος διαθέσιμων επεκτάσεων / βελτιώσεων / πρόσθετων μονάδων • Τεκμηρίωση / Βοήθεια / Υποστήριξη • Ρυθμός ανάπτυξης και την επεκτασιμότητα • Θέματα παρουσίασης / κοινότητα σχεδιαστών • Ολοκλήρωση με άλλα συστήματα
  27. WordPress: Μοντέλο Λειτουργίας • Δημιουργήθηκε από τον Matt Mullenweg •

    Υποστηρίζεται από την εταιρεία Automattic η οποία είναι ο βασικός μοχλός ανάπτυξης του κώδικα και πουλάει συμπληρωματικές υπηρεσίες • Χιλιάδες χρήστες δημιουργούν themes και plugins τα οποία βελτιώνουν και τροποποιούν τα χαρακτηριστικά της εφαρμογής • Το 2011 δημιουργήθηκε το WordPress Foundation με στόχο την περεταίρω ανάπτυξη τόσο του WordPress όσο και άλλων εφαρμογών ανοιχτού κώδικα
  28. WordPress: Συστατικά Επιτυχίας • Χρήση ευρέως διαδεδομένων τεχνολογιών ανοιχτού κώδικα

    (apache, php, mySQL) • Ενθάρρυνση της ανάπτυξης μιας κοινότητας γύρω από το προϊόν • Η συνεχιζόμενη υποστήριξη από έναν καλοπροαίρετο δικτάτορα (φυσικό ή νομικό πρόσωπο) του οποίου το συνεχιζόμενο ενδιαφέρον για την ανάπτυξη του προϊόντος υποστηρίζεται από το εμπορικό κέρδος στο προϊόν
  29. Βιβλιογραφία • Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα (http://ellak.gr/) •

    Open Source Open World (http://www.focus.com/fyi/open-source-open-world/) • Ελεύθερο Λογισμικό / Λογισμικό Ανοικτού Κώδικα, Κωνσταντίνος Τόγιας, DAISy Group - Ερευνητικό Ακαδημαϊκό Ινστιτούτο Τεχνολογίας Υπολογιστών (http://daisy.cti.gr/files/Free%20Software_0.pdf) • Business models of open source software and free software: a few landmarks • Creative Commons - Ελλάδα (http://www.creativecommons.gr/) • OSCON 2011 Speaker Slides & Video (http://www.oscon.com/oscon2011/public/schedule/proceedings) • Jordan Open Source Association – (http://jordanopensource.org) • Open Source Procurement Toolkit (http://www.cabinetoffice.gov.uk/resource-library/open-source-procurement-toolkit) • 2010 Trends in Open Source Systems Management http://community.zenoss.org/blogs/zenossblog/2010/08/10/2010- trends-in-open-source-systems-management • Leadership in open source communities (http://opensource.com) • The social structure of Free and Open Source software development (http://www.firstmonday.org/htbin/cgiwrap/bin/ojs/index.php/fm/article/view/1207/1127) • Why the open source way trumps the crowdsourcing way (http://opensource.com) • Producing Open Source Software - How to Run a Successful Free Software Project, Karl Fogel (http://producingoss.com/en/producingoss.html) • How to build an open source community (http://www.oss-watch.ac.uk/resources/howtobuildcommunity.xml) • Roles in open source projects (http://www.oss-watch.ac.uk/resources/rolesinopensource.xml) • Which Open Source Backend Platform Suits Your Needs? (http://news.deviousmedia.com/which-open-source-backend- platform-suits-your) • 3 Lessons from WordPress on Open Source Community Development (http://doal.me/2011/open-source-community- development)