Μηχανικός λογισμικού: Διαφορά μεταξύ των αναθεωρήσεων

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
μ Αντικατάσταση παρωχημένου προτύπου με references tag
προσθήκη παραπομπών, διόρθωση ορθογραφικά και συντακτικά λάθη
Γραμμή 1:
{{πηγές|15|01|2015}}
'''Μηχανικός λογισμικού''' ([[αγγλική γλώσσα|αγγλ.]]: ''software engineer''), καλείται ο επαγγελματίας πτυχιούχος Πληροφορικής <ref name=":0">{{Cite journal|url=https://el.wikipedia.org/w/index.php?title=%CE%A0%CE%BB%CE%B7%CF%81%CE%BF%CF%86%CE%BF%CF%81%CE%B9%CE%BA%CE%AE&oldid=7125259|title=Πληροφορική|date=2018-07-12|journal=Βικιπαίδεια|language=el}}</ref> <ref name=":1">{{Cite journal|url=https://el.wikipedia.org/w/index.php?title=%CE%95%CF%80%CE%B9%CF%83%CF%84%CE%AE%CE%BC%CE%B7_%CF%85%CF%80%CE%BF%CE%BB%CE%BF%CE%B3%CE%B9%CF%83%CF%84%CF%8E%CE%BD&oldid=6351675|title=Επιστήμη υπολογιστών|date=2017-04-13|journal=Βικιπαίδεια|language=el}}</ref>, που εφαρμόζει τις τυποποιημένες αρχές της [[μηχανική λογισμικού|μηχανικής λογισμικού]]. Προγραμματιστής ονομάζεται ο τεχνικός επαγγελματίας ο οποίος είτε ασχολείται αποκλειστικά με μια από τις εργασίες ενός μηχανικού λογισμικού και συγκεκριμένα την υλοποιήσηυλοποίηση ενός πρόγραμμάτοςπρογράμματος (βλ.παρακάτω για τις υπόλοιπες φάσεις ανάπτυξης), είτε δεν έχει σπουδάσει Πληροφορική σε κάποιο τριτοβάθμιο ίδρυμα και ως εκ τούτου δεν έχει πιστοποιηθεί στην εφαρμογή των τυποποιημένων αρχών ανάπτυξης λογισμικού, είτε και τα δυο.
 
== Σπουδές ==
Πριν επιχειρηθεί η αποτύπωση των απαραίτητων σπουδών ενός Μηχανικού Λογισμικού μαζί με το αναλυτικό προγράμμαπρόγραμμα μαθημάτων και τα προσδοκόμεναπροσδοκώμενα μαθησιακά αποτελεσμάτααποτελέσματα τους, είναι σημαντικό να διαφοροποιηθούν οι έννοιες Λογισμικό και Πρόγραμμα: το πρόγραμμα είναι υποσύνολο του λογισμικού, καθώς υπολείπεται τουλάχιστον στην Τεκμηρίωση (software documentation)<ref>{{cite web
| title = 'Software' from Collins Concise English Dictionary
| website = Wordreference.com
Γραμμή 9:
| location = [[Princeton, NJ]]
| url = http://www.wordreference.com/definition/software
| accessdate = 2007-08-19 }}</ref><ref>{{cite web|title=Software|url=http://en.wikipedia.org/wiki/Software|publisher=Wikipedia}}</ref><ref>{{cite web|title=Software Documentation|url=http://en.wikipedia.org/wiki/Software_documentation|publisher=Wikipedia}}</ref><ref>{{cite book|last=Sommerville|first=Ian|title=Software Documentation|year=2001|publisher=Lancaster University|location=Lancaster|url=http://www.literateprogramming.com/documentation.pdf}}</ref> αν όχι και σε άλλες φάσεις ανάπτυξης του λογισμικού (πιστοποιήσηπιστοποίηση, εγκυροποιήσηςεγκυροποίησης, προδιαγραφή κ.α.)<ref>{{cite web|title=Software Engineering|url=http://en.wikipedia.org/wiki/Software_engineering|publisher=Wikipedia|accessdate=20 January 2015}}</ref>. Γίνεται έτσι κατανοητό ότι ένα πρόγραμμα δεν είναι απαραίτητο να ακολουθεί τις διαδικασίες και τις τυποποιημένες αρχές ανάπτυξης που ακολουθεί το λογισμικό.
 
Η παραπάνω διάκριση διαφοροποιεί επομένως τον προγραμματιστή από τον μηχανικό λογισμικού. Στην Ελλάδα, τα τελευταία έτη έχουν δημιουργηθεί και ρητά κατευθύνσεις Μηχανικών Λογισμικού (όπως και Μηχανικών Δικτύων και Μηχανικών Υπολογιστών) στα τμήματα Πληροφορικής της τριτοβάθμιας εκπαίδευσης (ΤΕΙ)<ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.cs.teiath.gr/%CF%83%CF%80%CE%BF%CF%85%CE%B4%CE%AD%CF%82/%CF%80%CF%81%CE%BF%CF%80%CF%84%CF%85%CF%87%CE%B9%CE%B1%CE%BA%CE%AD%CF%82/%CE%BD%CE%AD%CE%BF-%CF%80%CF%81%CF%8C%CE%B3%CF%81%CE%B1%CE%BC%CE%BC%CE%B1-%CF%83%CF%80%CE%BF%CF%85%CE%B4%CF%8E%CE%BD-2014/%CF%80%CF%81%CF%8C%CE%B3%CF%81%CE%B1%CE%BC%CE%BC%CE%B1-%CF%83%CF%80%CE%BF%CF%85%CE%B4%CF%8E%CE%BD-2/|publisher=ΤΕΙ Αθηνών, Τμήμα Πληροφορικής|accessdate=20 January 2015}}</ref> <ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.it.teithe.gr/el/bachelor/objectives|publisher=ΤΕΙ Θεσσαλονίκης, Τμήμα Πληροφορικής|accessdate=20 January 2015}}</ref><ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.webgram.teikal.gr/unistudent/getProgramCourses.asp?mnuID=program;submnu1&level=1&depID=494&prID=125|publisher=ΤΕΙ Καβάλας, Τμήμα Πληροφορικής|accessdate=20 January 2015}}</ref> ενώ παλιότερα ειδικά στα Πανεπιστήμια, όπου επιτρέπονταν οι κατευθύνσεις υπήρχαν παράγωγες, σύνθετες ή παρόμοιες ονομασίες των ενδεικτικά τριών εφαρμοσμένων κατευθύνσεων της Πληροφορικής <ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.csd.auth.gr/directions-of-study.php|publisher=ΑΠΘ, Τμήμα Πληροφορικής|accessdate=20 January 2015}}</ref><ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.di.uoa.gr/undergraduate/coursesnew|publisher=ΕΚΠΑ, Τμήμα Πληροφορικής & Τηλεπικοινωνιών|accessdate=20 January 2015}}</ref>
<ref>{{cite web|title=Κατευθύνσεις Πληροφορικής|url=http://www.csd.uoc.gr/studies/list-of-courses/lessons.html|publisher=Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης των Υπολογιστών|accessdate=20 January 2015}}</ref>: πχ
* κατεύθυνση Αρχιτεκτονικής Υπολογιστών και Συστημάτων (δηλαδή Μηχ. Υπολογιστών),
* κατεύθυνση Πληροφοριακών Συστημάτων και Εφαρμογών (δηλδηλαδή Μηχ. Λογισμικού),
* κατεύθυνση Τηλεπικοινωνιών και Δικτύων (δηλδηλαδή Μηχ. Δικτύων),
* κατεύθυνση Τεχνητής Νοημοσύνης και Εφαρμογών
* κ.α.
 
Παλιότερα, ο όρος προγραμματιστής, σε εκπαιδευτικό επίπεδο, συναντότανσυναντιόταν στα πτυχία - απολυτήρια που εξέδιδαν τα Τεχνικά Λύκεια (ΤΕΛ, ΤΕΕ) <ref>{{Cite journal|url=https://el.wikipedia.org/w/index.php?title=%CE%9B%CF%8D%CE%BA%CE%B5%CE%B9%CE%BF&oldid=7078259|title=Λύκειο|date=2018-06-14|journal=Βικιπαίδεια|language=el}}</ref>, ενώ αργότερα ο όρος αυτός αντικαταστάθηκε από τίτλους (ΕΠΑΛ, ΙΕΚ) <ref>{{Cite journal|url=https://en.wikipedia.org/w/index.php?title=IEK&oldid=697199467|title=IEK|date=2015-12-28|journal=Wikipedia|language=en}}</ref> όπως: "τεχνικός εφαρμογών πληροφορικής", "τεχνικός λογισμικού", "τεχνικός υποστήριξης συστημάτων" κ.α. <ref>{{cite web|title=Αντιστοιχίες ειδικοτήτων τμημάτων ΤΕΕ, ΤΕΛ για εγγραφές στα ΕΠΑΛ: Απόσπασμα από την αρ.πρωτ.141641/08-09-2014/|url=http://edu.klimaka.gr/leitoyrgia-sxoleivn/anakoinvseis/1232-antistoichies-eidikothtes-tee-tel-me-epal.html|publisher=ΥΠΑΙΘ, Υπουργείο Παιδείας και Αθλητισμού}}</ref><ref>{{Cite web|url=https://www.eoppep.gr/index.php/el/qualification-certificate/professional-rights|title=Επαγγελματικά Δικαιώματα|last=Desiniotis|first=Christos|website=www.eoppep.gr|language=el-gr|accessdate=2018-10-14}}</ref>
Εξίσου σημαντική, για τον προσδιορισμό του όρου "Μηχανικός Λογισμικού", είναι και η κείμενη νομοθεσία των πτυχιούχων Πληροφορικής Πανεπιστήμιων<ref>{{cite web|title=Επαγγελματική κατοχύρωση των διπλωματούχων μηχανικών και των πτυχιούχων πανεπιστημιακής εκπαίδευσης στα αντικείμενα πληροφορικής και τηλεπικοινωνιών |url=http://www.proslipsis.gr/cmCat_treePrd.php?&cm_catid=344&cm_prdid=7247|publisher=ΦΕΚ 58Α/2009, ΠΔ.44/2009|accessdate=20 January 2015}}</ref> και ΤΕΙ<ref>{{cite web|title=Καθορισμός επαγγελματικών δικαιωμάτων των πτυχιούχων ΤΕΙ των Τμημάτων Πληροφορικής|url=https://nomoi.info/%CE%A6%CE%95%CE%9A-%CE%91-246-2008-%CF%83%CE%B5%CE%BB-1.html|publisher=ΦΕΚ 246Α/2008, ΠΔ.183/2008|accessdate=20 January 2015}}</ref> στην οποία όλες οι φάσεις ανάπτυξης του Λογισμικού αλλά και των Συστημάτων Υπολογιστών, Δικτύων κ.α αντιστοιχίζεται ρητά με τις ακαδημαϊκές γνώσεις τις οποίες αυτοί έχουν λάβει κατά την διάρκεια της φοίτησης τους. Σε κάθε περίπτωση μια τέτοιου είδους κατωχύρωσηκατοχύρωση, όσον αφορά την Πληροφορική, δεν υφίσταται για μη πτυχιούχους τριτοβάθμιων ιδρυμάτων Πληροφορικής.
 
Μερικές (ενδεικτικά) από τις τυπικές εργασίες που ασκεί ένας μηχανικός λογισμικού είναι οι εξής <ref>{{cite web|title=Software Engineering|url=http://en.wikipedia.org/wiki/Software_engineering|publisher=Wikipedia|accessdate=20 January 2015}}</ref>:
Γραμμή 32:
* Με τον όρο "developer" συνηθίζεται να αποκαλείται ο μηχανικός λογισμικού που ασκεί ανάλυση, σχεδίαση και υλοποίηση ταυτόχρονα <ref>{{cite web|title=Developer|url=http://en.wikipedia.org/wiki/Developer|publisher=Wikipedia|accessdate=20 January 2015}}</ref>
 
Από την παραπάνω κατηγοροποίησηκατηγοριοποίηση φαίνεται ότι ο παρεμφερής όρος "προγραμματιστής" αναφέρεται περιοριστικά σε μια από τις εργασίες ενός μηχανικού λογισμικού. Με αυτόν τον τρόπο καταδεικνύεται ότι ενώ ο μηχανικός λογισμικού μπορεί να είναι (και) προγραμματιστής το αντίθετο δεν ισχύει πάντα. Η διάκριση αυτή αφορά στο αν ο προγραμματιστής είναι πτυχιούχος τμήματος Πληροφορικής ή όχι.
 
Όσον αφορά τα μαθήματα μηχανικής λογισμικού προπτυχιακού επιπέδου, τα οποία πρέπει να καλύψει ένα τμήμα Πληροφορικής <ref>{{Cite web|url=https://cst.uop.gr/index.php/links-other-depts.html|title=Σύνδεσμοι σε Τμήματα Πληροφορικής|website=cst.uop.gr|language=el-gr|accessdate=2018-10-14}}</ref> αναφέρονται με λεπτομέρεια στο SWEBOOK <ref>{{cite web|title=ISO/IEC TR 19759:2005, Software Engineering -- Guide to the Software Engineering Body of Knowledge (SWEBOK)|url=http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=33897|publisher=ISO Organization|accessdate=20 January 2015}}</ref> τα οποία στο μεγαλύτερο τους πλήθος καλύπτονται από τα 4ετή/5ετή4-ετή και 5-ετή προγράμματα σπουδών τριτοβάθμιας εκπαίδευσης<ref>{{Cite πληροφορικήςjournal|url=https://el.wikipedia.org/w/index.php?title=%CE%95%CE%BA%CF%80%CE%B1%CE%AF%CE%B4%CE%B5%CF%85%CF%83%CE%B7_%CF%83%CF%84%CE%B7%CE%BD_%CE%95%CE%BB%CE%BB%CE%AC%CE%B4%CE%B1&oldid=7045193|title=Εκπαίδευση στην Ελλάδα|date=2018-05-21|journal=Βικιπαίδεια|language=el}}</ref> Πληροφορικής <ref name=":0" /> <ref name=":1" /> της Ελλάδας <ref>{{cite web|title=Πληρότητα Σπουδών Πληροφορικής ΑΕΙ|url=http://review.epe.org.gr/doc.php?q=5&d=cs|publisher=ΕΠΕ, Ένωση Πληροφορικών Ελλάδας|accessdate=20 January 2015}}</ref><ref>{{cite web|title=Πρότυπο Πρόγραμμα Σπουδών Πληροφορικής ΑΕΙ|url=http://review.epe.org.gr/doc.php?q=4|publisher=ΕΠΕ, Ένωση Πληροφορικών Ελλάδας|accessdate=20 January 2015}}</ref>
 
== Δείτε επίσης ==
Γραμμή 41:
* [[Προγραμματισμός]]
* [[Πληροφορική|Επιστήμες Πληροφορικής]]
*[[Τεχνητή νοημοσύνη]]
 
==Πηγές==