Μηχανική Λογισμικού για Εφαρμογές Μεγάλης Κλίμακας

(Software Engineering for Large-Scale Applications / )

Υπεύθυνος Μαθήματος: Γ. Κακαρόντζας,   Μονάδες ECTS: 6,   Εξάμηνο: Α’

Συνοπτική Περιγραφή

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

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

  • Βασίλης Γερογιάννης, Γιώργος Κακαρόντζας, Αχιλλέας Καμέας, Γιάννης Σταμέλος, Πάνος Φιτσιλής: «Αντικειμενοστρεφής ανάπτυξη λογισμικού με τη UML», Κλειδάριθμος, 2006
  • Craig Larman: «Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition)», Prentice Hall, 2004
  • Felix Bachmann, Len Bass, Paul C. Clements, David Garlan, James Ivers, Reed Little, Paulo Merson, Robert Nord, Judith A. Stafford : « Documenting Software Architectures: Views and Beyond, Second Edition», Addison-Wesley Professional, 2010
  • Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: «Design Patterns: Elements of Reusable Object-Oriented Software», Addison-Wesley, 1995
    Lanza, Michele, Marinescu, Radu: «Object-Oriented Metrics in Practice», Springer-Verlag Berlin Heidelberg, 2006
  • Chidamber, S.R. and Kemerer, C.F.: «A metrics suite for object oriented design», IEEE Transactions on Software Engineering, vol.20, no.6, pp.476,493, June 1994