Learning Outcomes
Upon completion of the course, students are expected to be able to:
a) Calculate the expected cost and estimated time for software development and delivery,
b) Define a framework for managing software and the involved teams,
c) Monitor the progress of software development, identify risks, and propose mitigation measures,
d) Evaluate software quality in various dimensions according to the ISO 25010 standard,
e) Define and execute software testing and debugging plans,
f) Define and execute continuous integration/continuous delivery (CI/CD) plans,
g) Use modern DEVOPS/MLOPS/DataOPS and CI/CD tools and practices.
Course Content (Syllabus)
The course deals with modern techniques and methodologies related to the phases of software development, testing, operation, and management. The course contents include the following:
• Software project management
• Modern software development processes
• Software testing and debugging processes
• Continuous integration/continuous delivery processes
• Static and dynamic software quality evaluation
• Software technical debt
• Software security
• Software intellectual property rights
• The human factor in the software development process
• MLOPS/DataOPS software development processes
Keywords
Software Engineering, Software Project Management, Software Testing, Software Security
Course Bibliography (Eudoxus)
1. Τεχνολογία Προϊόντων Λογισμικού, Ian Sommerville (Μετ. Κ. Καρανικολός), ΚΛΕΙΔΑΡΙΘΜΟΣ, 1η/2020, Κωδ. Εύδοξος: 86200545
2. Ποιότητα Κώδικα: η προοπτική του ανοικτού λογισμικού, Διομήδης Σπινέλλης, ΚΛΕΙΔΑΡΙΘΜΟΣ, Κωδ. Εύδοξος: 138553.
3. Τεχνολογία Λογισμικού, Pressman, Αδριάνα Πρέντζα, Κωνσταντίνος Σαΐδης (επιμέλεια), ΤΖΙΟΛΑ & ΥΙΟΙ, 8η/2018, Κωδ. Εύδοξος: 68374068