Ελληνικά
English
 

Αντικειμενοστρεφής Ανάπτυξη Λογισμικού

 

Στόχοι:

Η ανάπτυξη έργων λογισμικού μεγάλης κλίμακας αποτελεί μια εξαιρετικά σύνθετη δραστηριότητα και εμπεριέχει μεγάλες προκλήσεις τόσο από τεχνολογικής πλευράς όσο και από πλευράς διαχείρισης των σχετικών δραστηριοτήτων και πόρων. Στόχος του μαθήματος είναι η εισαγωγή στην αντικειμενοστρεφή προσέγγιση για την ανάλυση, σχεδίαση και υλοποίηση λογισμικού, που αποτελεί τον πλέον διαδεδομένο τρόπο ανάπτυξης σύγχρονων συστημάτων. Με τη χρήση της γλώσσας προγραμματισμού Java επιχειρείται η παρουσίαση συστηματικών μεθόδων που αξιοποιούνται για την αντιμετώπιση της πολυπλοκότητας μεγάλων έργων. Στο πλαίσιο του μαθήματος θα καλυφθούν βασικές και προχωρημένες έννοιες αντικειμενοστρεφούς προγραμματισμού καθώς και η διατύπωση και αποσύνθεση ενός προβλήματος (ανάλυση) και η κατάστρωση της επίλυσής του με λογισμικό (σχεδίαση). Εργαλεία CASE (Computer-Aided Software Engineering) θα αξιοποιηθούν σε διάφορα στάδια της διαδικασίας ανάπτυξης.

Δεξιότητες:

Με την επιτυχή περάτωση του μαθήματος ο φοιτητής θα είναι σε θέση:
  • να προσδιορίζει τα στάδια ανάπτυξης ενός έργου λογισμικού μεγάλης κλίμακας και να εντοπίζει τις σχετικές προκλήσεις
  • να εφαρμόζει τεχνικές αντικειμενοστρεφούς ανάλυσης και σχεδίασης για την προσέγγιση της ανάπτυξης ενός συστήματος λογισμικού
  • να υλοποιεί αντικειμενοστρεφή συστήματα λογισμικού

Προαπαιτήσεις: -

Περιεχόμενο μαθήματος:

Εισαγωγή στον αντικειμενοστρεφή τρόπο σκέψης
Ορισμός Κλάσεων, Δημιουργία Αντικειμένων
Σχέσεις μεταξύ κλάσεων, Αποστολή μηνυμάτων μεταξύ αντικειμένων
Χρήση Κλάσεων Βιβλιοθήκης
Βελτίωση της δομής αντικειμενοστρεφών συστημάτων με τη χρήση κληρονομικότητας
Αρχές Αντικειμενοστρεφούς Σχεδίασης. Αξιοποίηση Αφαιρέσεων.
Ανάπτυξη Γραφικής Διασύνδεσης Χρήστη.
Χειρισμός Συμβάντων.
Σύγχρονα περιβάλλοντα αντικειμενοστρεφούς προγραμματισμού
Εισαγωγή στην Τεχνολογία Λογισμικού. Προκλήσεις στην ανάπτυξη λογισμικού μεγάλης κλίμακας
Επισκόπηση της Ενοποιημένης Γλώσσας Μοντελοποίησης (UML)
Αντικειμενοστρεφής Ανάλυση: Μοντελοποίηση πεδίου προβλήματος, καταγραφή απαιτήσεων, περιπτώσεις χρήσης
Αντικειμενοστρεφής Σχεδίαση: Αλληλεπίδραση μεταξύ αντικειμένων, κατανομή αρμοδιοτήτων, διαγράμματα ακολουθίας, διαγράμματα κλάσεων

Προτεινόμενη βιβλιογραφία:

David J. Barnes, Michael Kolling, Αντικειμενοστρεφής προγραμματισμός σε Java, (Pearson 3rd edition), Κλειδάριθμος, 2008.
Η. Μ. Deitel and P. J. Deitel, Java: How to Program, Prentice Hall, 2009.
C. Larman, Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Prentice Hall, 2004.
D. Rosenberg, M. Stephens, Use Case Driven Object Modelling with UML: Theory and Practice, Apress, 2007.

Μέθοδοι αξιολόγησης:

60% τελική γραπτή εξέταση

40% 5 ατομικές προγραμματιστικές εργασίες

Ιστοσελίδα μαθήματος:

http://compus.uom.gr/MINF167/


επιστροφή
Tessera - Κατασκευή Ιστοσελίδων, E-Shops, Mobile & Tablet Apps