Software and System Engineering

Περιγραφή Μαθήματος

Το μάθημα εισάγει Software and System Engineering practices που είναι απαραίτητες για την ανάπτυξη των σύγχρονων πολύπλοκων σημερινών συστημάτων. Από τα συστήματα Μηχανοτρονικής και τα Cyber-Physical συστήματα στο Διαδίκτυο των Αντικειμένων (ΙοΤ).

Παρουσιάζει Mεθοδολογίες, Τεχνικές, Σημειολογίες (notations) που χρησιμοποιούνται στην ανάπτυξη συστημάτων με ιδιαίτερη έμφαση στις φάσεις της Ανάλυσης και του Σχεδιασμού του Συστήματος.

Γενικές Πληροφορίες για το μάθημα (Επιδιωκόμενα μαθησιακά αποτελέσματα, Δεξιότητες, Προαπαιτήσεις, Πιστωτικές μονάδες ECTS, κλπ) εδώ

English version

Στόχος

Στόχος είναι να δώσει την γνώση που απαιτείται ώστε ο Μηχανικός να μπορεί να παράγει plans and specifications:

a) to communicate to the builder (programmer) the client’s needs and requirements for the development of the system, and,

b) to effectively refine these specs to executable specifications.

Επιδιωκόμενα μαθησιακά αποτελέσματα του μαθήματος

Εκμάθηση των βασικών εννοιών της μεθοδολογίας της δομημένης ανάλυσης (SA) και της αντικειμενοστρεφούς ανάλυσης και σχεδιασμού συστήματος.

Εξοικείωση με την σημειολογία της Unified Modeling Language (UML).

Εξοικείωση με τις βασικές έννοιες της βασισμένης σε μοντέλα ανάπτυξης συστήματος (model driven development).

Εκμάθηση των βασικών αρχών των βασισμένων σε συνιστώσες (component based) και υπηρεσίες (service oriented) παραδειγμάτων ανάπτυξης συστήματος και τις δυνατότητες που τα παραδείγματα αυτά παρέχουν για την ανάπτυξη διαδικτυωμένων ενσωματωμένων συστημάτων (networked embedded systems). Η μετάβαση στο Διαδίκτυο των Αντικειμένων. Εξοικείωση με την γλώσσα μοντελοποίησης συστήματος SysML.

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

1. Εισαγωγή στη Μηχανιστική Λογισμικού (Software Engineering). Ενσωματωμένα Συστήματα, συστήματα Μηχανοτρονικής, Cyber Physical Systems, ΙοΤ. Κύκλος ζωής διαδικασίας ανάπτυξης συστήματος.

2. Η έννοια του μοντέλου. Μοντέλα κύκλου ζωής λογισμικού. Φάσεις διαδικασίας ανάπτυξης συστήματος λογισμικού. H μεθοδολογία Scrum.

3. Η μεθοδολογία της σύγχρονης δομημένης ανάλυσης. Τεκμηρίωση προδιαγραφών συστήματος, Διαγράμματα ροής δεδομένων, Λεξικό δεδομένων, τεκμηρίωση συναρτήσεων, Διαγράμματα συσχέτισης οντοτήτων (ERDs), διαγράμματα αλλαγής καταστάσεων (STDs).

4. Η μετάβαση στη φάση του σχεδιασμού. Ποιότητα σχεδιασμού, σύζευξη, συνεκτικότητα.

5. Τεχνολογία αντικειμένων. Η UML ως γλώσσα αναπαράστασης μοντέλων ανάλυσης και σχεδιασμού. Βασικά διαγράμματα. Μοντέλα δομής και συμπεριφοράς.

6. Αρχιτεκτονική Συστήματος. Μοντέλα αρχιτεκτονικής.

7. Ανάπτυξη βασισμένη στην έννοια του μοντέλου (model driven development). Model-to-model transformations.

8. Ανάπτυξη συστήματος βασισμένη στην έννοια της συνιστώσας (component-based development).

9. Ανάπτυξη βασισμένη στην έννοια της υπηρεσίας. Αρχιτεκτονικές με βάση την έννοια της υπηρεσίας (SOA). Βασικές έννοιες και τεχνολογίες. Η αρχιτεκτονική CORBA.

10. Μοντέλο αρχιτεκτονικής διαδικτύου Αντικειμένων (ΙοΤ).

11. Μοντελοποίηση συστήματος. Η γλώσσα μοντελοποίησης συστήματος SysML. Βασικές έννοιες.

12. Verification and Validation. Safety critical συστήματα. Safety Engineering.

13. Σύγχρονες τάσεις στην ανάπτυξη συστημάτων.

Εργασία

Ανάλυση, σχεδιασμός και υλοποίηση ενσωματωμένου συστήματος στο περιβάλλον του Διαδικτύου Αντικειμένων.

Ενδεικτικά συστήματα:

1η Εργασία - [Liqueur Plant case study]

https://sites.google.com/site/uml4iot/liqueur-plant-case-study


2η Εργασία - [ IKEA Gregor chair case study]

https://sites.google.com/view/cyber-physical-microservice/gregor-chair


4η Εργασία - [Blood Pressure Monitoring case study]

https://www.researchgate.net/publication/333149441_From_Sockets_to_WoT_The_Blood_Pressure_Monitoring_System


5η Εργασία - [FESTO MPS system]

To φυσικό σύστημα link

Περιγραφή της εργασίας link

Περιγραφή του συστήματος link


6η Εργασία - [washing machine]


7η Εργασία - [Intruder Alarm System]


8η Εργασία - [FESTO MPP system]

To φυσικό σύστημα link

Περιγραφή της εργασίας link

Περιγραφή του συστήματος link

Σχηματικό Διάγραμμα link


9η Εργασία - [Multi Cabin Elevator Control System]

Περιγραφή της εργασίας link

Εκπαιδευτικές Δραστηριότητες:

Διδασκαλία (3 ώρες/βδομάδα)

Εργασία (Project) Υποχρεωτική. Ανάπτυξη κατά βήματα (Δραστηριότητες).

Παρουσίαση και εξέταση της εργασίας.

Συγγράμματα

Βασικά Συγγράμματα


ΒΑΣΙΚΕΣ ΑΡΧΕΣ ΤΕΧΝΟΛΟΓΙΑΣ ΛΟΓΙΣΜΙΚΟΥ

Κωδικός Βιβλίου στον Εύδοξο: 13625

Έκδοση: 8η/2009

Συγγραφείς: IAN SOMMERVILLE

ISBN: 978-960-461-220-8

Διαθέτης (Εκδότης): ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ


Τεχνολογία Λογισμικού

Κωδικός Βιβλίου στον Εύδοξο: 18548873

Έκδοση: 7η Έκδοση/2011

Συγγραφείς: Pressman

ISBN: 978-960-418-330-2

Τύπος: Σύγγραμμα

Διαθέτης (Εκδότης): ΕΚΔΟΣΕΙΣ Α. ΤΖΙΟΛΑ & ΥΙΟΙ Α.Ε.


ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ: ΘΕΩΡΙΑ ΚΑΙ ΠΡΑΞΗ

Κωδικός Βιβλίου στον Εύδοξο: 13009253

Έκδοση: 2η ΑΜΕΡΙΚΑΝΙΚΗ/2011

Συγγραφείς: SHARI LAWRENCE PFLEEGER

ISBN: 978-960-461-477-6

Τύπος: Σύγγραμμα

Διαθέτης (Εκδότης): ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ


ΤΕΧΝΟΛΟΓΊΑ ΑΝΆΠΤΥΞΗΣ ΛΟΓΙΣΜΙΚΟΎ ΩΣ ΥΠΗΡΕΣΊΑΣ

Κωδικός Βιβλίου στον Εύδοξο: 68386127


Πανεπιστημιακές Παραδόσεις

Τίτλος: Ανάλυση και Σχεδιασμός Συστημάτων Λογισμικού

Συγγραφέας: Κλεάνθης Θραμπουλίδης

Εγκεκριμένος αριθμός σελίδων: 281

Πάτρα 2000. URL: http://seg.ece.upatras.gr/A&DBook


Structured Analysis Wiki http://yourdon.com/strucanalysis/wiki/index.php/Introduction


Επιπλέον βιβλιογραφία δίνεται στo βασικό σύγγραμμα