Μηχανικός λογισμικού (αγγλ.: software engineer) καλείται ο επαγγελματίας πτυχιούχος Πληροφορικής[1][2][3][4][5], που εφαρμόζει τις τυποποιημένες αρχές της μηχανικής λογισμικού. Προγραμματιστής[1] ονομάζεται ο τεχνικός επαγγελματίας ο οποίος είτε ασχολείται αποκλειστικά με μια από τις εργασίες ενός μηχανικού λογισμικού και συγκεκριμένα την υλοποίηση ενός προγράμματος (βλ. παρακάτω για τις υπόλοιπες φάσεις ανάπτυξης), είτε δεν έχει σπουδάσει Πληροφορική σε κάποιο τριτοβάθμιο ίδρυμα[1][2][3][4][5][6][7][8], και ως εκ τούτου δεν έχει πιστοποιηθεί στην εφαρμογή των τυποποιημένων αρχών ανάπτυξης λογισμικού, είτε και τα δυο.

Σπουδές Επεξεργασία

Πριν επιχειρηθεί η αποτύπωση των απαραίτητων σπουδών ενός Μηχανικού Λογισμικού μαζί με το αναλυτικό πρόγραμμα μαθημάτων και τα προσδοκώμενα μαθησιακά αποτελέσματα τους, είναι σημαντικό να διαφοροποιηθούν οι έννοιες Λογισμικό και Πρόγραμμα: το πρόγραμμα είναι υποσύνολο του λογισμικού, καθώς υπολείπεται τουλάχιστον στην Τεκμηρίωση (software documentation)[9][10] αν όχι και σε άλλες φάσεις ανάπτυξης του λογισμικού (πιστοποίηση, εγκυροποίηση, προδιαγραφή κ.α.)[11]. Γίνεται έτσι κατανοητό ότι ένα πρόγραμμα δεν είναι απαραίτητο να ακολουθεί τις διαδικασίες και τις τυποποιημένες αρχές ανάπτυξης που ακολουθεί το λογισμικό.

Η παραπάνω διάκριση διαφοροποιεί επομένως τον προγραμματιστή από τον μηχανικό λογισμικού. Στην Ελλάδα, τα τελευταία έτη έχουν δημιουργηθεί και ρητά κατευθύνσεις Μηχανικών Λογισμικού (όπως και Μηχανικών Δικτύων και Μηχανικών Υπολογιστών) στα τμήματα Πληροφορικής της τριτοβάθμιας εκπαίδευσης (ΤΕΙ)[12] [13][14] ενώ παλιότερα ειδικά στα Πανεπιστήμια, όπου επιτρέπονταν οι κατευθύνσεις υπήρχαν παράγωγες, σύνθετες ή παρόμοιες ονομασίες των ενδεικτικά τριών εφαρμοσμένων κατευθύνσεων της Πληροφορικής [6][7][8]: π.χ.

  • κατεύθυνση Αρχιτεκτονικής Υπολογιστών και Συστημάτων (δηλαδή Μηχανικών Υπολογιστών),
  • κατεύθυνση Πληροφοριακών Συστημάτων και Εφαρμογών (δηλαδή Μηχανικών Λογισμικού),
  • κατεύθυνση Τηλεπικοινωνιών και Δικτύων (δηλαδή Μηχανικών Δικτύων),
  • κατεύθυνση Τεχνητής Νοημοσύνης και Εφαρμογών
  • κ.α.

Παλιότερα, ο όρος προγραμματιστής, σε εκπαιδευτικό επίπεδο, συναντιόταν στα πτυχία - απολυτήρια που εξέδιδαν τα Τεχνικά Λύκεια (ΤΕΛ, ΤΕΕ), ενώ αργότερα ο όρος αυτός αντικαταστάθηκε από τίτλους (ΕΠΑΛ, ΙΕΚ) όπως: "τεχνικός εφαρμογών πληροφορικής", "τεχνικός λογισμικού", "τεχνικός υποστήριξης συστημάτων" κ.α. [15]

Εξίσου σημαντική, για τον προσδιορισμό του όρου "Μηχανικός Λογισμικού", είναι και η κείμενη νομοθεσία των Πληροφορικών (πτυχιούχων Πληροφορικής) Πανεπιστήμιων[16] και ΤΕΙ[17] στην οποία όλες οι φάσεις ανάπτυξης του Λογισμικού αλλά και των Συστημάτων Υπολογιστών, Δικτύων κ.α αντιστοιχίζεται ρητά με τις ακαδημαϊκές γνώσεις τις οποίες αυτοί έχουν λάβει κατά την διάρκεια της φοίτησης τους. Σε κάθε περίπτωση μια τέτοιου είδους κατοχύρωση, όσον αφορά την Πληροφορική, δεν υφίσταται για μη πτυχιούχους τριτοβάθμιων ιδρυμάτων Πληροφορικής.

Μερικές (ενδεικτικά) από τις τυπικές εργασίες που ασκεί ένας μηχανικός λογισμικού είναι οι εξής :

  • Ανάλυση (ως αναλυτής / software analyst)
  • Σχεδίαση (ως σχεδιαστής/ software designer)
  • Υλοποίηση (ως προγραμματιστής / programmer)
  • Έλεγχος - Εγκυροποίηση (ως ελεγκτής / tester)
  • Διασφάλισης Ποιότητας και Πιστοποίηση (ως quality assurance specialist)
  • Τεκμηρίωση (ως τεχνικός συγγραφέας / software writer)
  • Με τον όρο "developer" συνηθίζεται να αποκαλείται ο μηχανικός λογισμικού που ασκεί ανάλυση, σχεδίαση και υλοποίηση ταυτόχρονα

Από την παραπάνω κατηγοριοποίηση φαίνεται ότι ο παρεμφερής όρος "προγραμματιστής" αναφέρεται περιοριστικά σε μια από τις εργασίες ενός μηχανικού λογισμικού. Με αυτόν τον τρόπο καταδεικνύεται ενώ ο μηχανικός λογισμικού μπορεί να είναι (και) προγραμματιστής το αντίθετο δεν ισχύει πάντα. Η διάκριση αυτή αφορά στο αν ο προγραμματιστής είναι πτυχιούχος τμήματος Πληροφορικής ή όχι.

Όσον αφορά τα μαθήματα μηχανικής λογισμικού προπτυχιακού επιπέδου, τα οποία πρέπει να καλύψει ένα τμήμα Πληροφορικής αναφέρονται με λεπτομέρεια στο SWEBOOK [18] τα οποία στο μεγαλύτερο τους πλήθος καλύπτονται από τα 4ετή/5ετή προγράμματα σπουδών τριτοβάθμιας εκπαίδευσης πληροφορικής της Ελλάδας [19][20]

Δείτε επίσης Επεξεργασία

Παραπομπές Επεξεργασία

  1. 1,0 1,1 1,2 «Τμήμα Μηχανικών Πληροφορικής ΤΕ - ΤΕΙ Δυτικής Ελλάδας - Σπουδές - Πρόγραμμα Σπουδών - Κατευθύνσεις - Μηχανικοί Λογισμικού». www.cied.teiwest.gr. Αρχειοθετήθηκε από το πρωτότυπο στις 28 Δεκεμβρίου 2018. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. 
  2. 2,0 2,1 «» Μηχανική Λογισμικού Ι». www.it.teithe.gr. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. [νεκρός σύνδεσμος]
  3. 3,0 3,1 «Μηχανικοί Λογισμικού Τ.Ε. | Τμήμα Μηχανικών Πληροφορικής | ΤΕΙ Κρήτης». www.teicrete.gr. Αρχειοθετήθηκε από το πρωτότυπο στις 13 Ιουνίου 2016. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. 
  4. 4,0 4,1 «» Οργάνωση Μαθημάτων». www.it.teithe.gr. Αρχειοθετήθηκε από το πρωτότυπο στις 21 Απριλίου 2015. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. 
  5. 5,0 5,1 «Τμήμα Μηχανικών Πληροφορικής ΤΕ | Πρόγραμμα Σπουδών». Αρχειοθετήθηκε από το πρωτότυπο στις 10 Ιανουαρίου 2019. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. 
  6. 6,0 6,1 «Κατευθύνσεις Πληροφορικής». ΑΠΘ, Τμήμα Πληροφορικής. Ανακτήθηκε στις 30 Δεκεμβρίου 2018. 
  7. 7,0 7,1 «Κατευθύνσεις Πληροφορικής». ΕΚΠΑ, Τμήμα Πληροφορικής & Τηλεπικοινωνιών. Αρχειοθετήθηκε από το πρωτότυπο στις 15 Φεβρουαρίου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  8. 8,0 8,1 «Κατευθύνσεις Πληροφορικής». Πανεπιστήμιο Κρήτης, Τμήμα Επιστήμης των Υπολογιστών. Αρχειοθετήθηκε από το πρωτότυπο στις 28 Οκτωβρίου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  9. «'Software' from Collins Concise English Dictionary». Wordreference.com. Princeton, NJ: Princeton University. Ανακτήθηκε στις 19 Αυγούστου 2007. 
  10. Sommerville, Ian (2001). Software Documentation (PDF). Lancaster: Lancaster University. Αρχειοθετήθηκε από το πρωτότυπο (PDF) στις 13 Φεβρουαρίου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  11. «Software Engineering». Wikipedia. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  12. «Κατευθύνσεις Πληροφορικής». ΤΕΙ Αθηνών, Τμήμα Πληροφορικής. Αρχειοθετήθηκε από το πρωτότυπο στις 14 Ιανουαρίου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  13. «Κατευθύνσεις Πληροφορικής». ΤΕΙ Θεσσαλονίκης, Τμήμα Πληροφορικής. Ανακτήθηκε στις 20 Ιανουαρίου 2015. [νεκρός σύνδεσμος]
  14. «Κατευθύνσεις Πληροφορικής». ΤΕΙ Καβάλας, Τμήμα Πληροφορικής. Αρχειοθετήθηκε από το πρωτότυπο στις 7 Φεβρουαρίου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  15. «Αντιστοιχίες ειδικοτήτων τμημάτων ΤΕΕ, ΤΕΛ για εγγραφές στα ΕΠΑΛ: Απόσπασμα από την αρ.πρωτ.141641/08-09-2014/». ΥΠΑΙΘ, Υπουργείο Παιδείας και Αθλητισμού. 
  16. «Επαγγελματική κατοχύρωση των διπλωματούχων μηχανικών και των πτυχιούχων πανεπιστημιακής εκπαίδευσης στα αντικείμενα πληροφορικής και τηλεπικοινωνιών». ΦΕΚ 58Α/2009, ΠΔ.44/2009. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  17. «Καθορισμός επαγγελματικών δικαιωμάτων των πτυχιούχων ΤΕΙ των Τμημάτων Πληροφορικής». ΦΕΚ 246Α/2008, ΠΔ.183/2008. Αρχειοθετήθηκε από το πρωτότυπο στις 1 Ιουλίου 2014. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  18. «ISO/IEC TR 19759:2005, Software Engineering -- Guide to the Software Engineering Body of Knowledge (SWEBOK)». ISO Organization. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  19. «Πληρότητα Σπουδών Πληροφορικής ΑΕΙ». ΕΠΕ, Ένωση Πληροφορικών Ελλάδας. Αρχειοθετήθηκε από το πρωτότυπο στις 4 Μαρτίου 2016. Ανακτήθηκε στις 20 Ιανουαρίου 2015. 
  20. «Πρότυπο Πρόγραμμα Σπουδών Πληροφορικής ΑΕΙ». ΕΠΕ, Ένωση Πληροφορικών Ελλάδας. Αρχειοθετήθηκε από το πρωτότυπο στις 29 Μαΐου 2015. Ανακτήθηκε στις 20 Ιανουαρίου 2015.