Title Software Engineering
Lesson Code 321-4000
Semester 5
ECTS 5
Hours (Theory) 4
Hours (Lab) 0
Faculty Kritikos Kiriakos

Syllabus

Introduction to Software Engineering (History, Motivation, Team Programming, The Software Process). Software Lifecycle Models (Waterfall, Rapid-Prototype, Incremental, Spiral). Requirements (Functional and Non-Functional Specifications, Requirements Planning and Scheduling, CASE Tools, Software Requirements Specification Document). Design (Data Centric design, Object centric design, Service centric design). Implementation and Integration (Coding Standards and Practices, Configuration Control, Team Organization). Testing (white box and black box, validation and verification). Modern methods and prototype (Agile programming, MSF, extreme programming).

Learning Outcomes

Students who will have successfully completed the course (θεματική ενότητα εννοεί μάθημα;;;) will be able to:

  • analyze the requirements of a problem and produce solutions following the object-oriented approach.
  • apply their theoretical knowledge in solving problems.
  • follow a critical approach in producing solutions.
  • look for qualitative solutions by evaluating their plans according to the quality criteria that they apply on checkpoints in the development process.
  • install and utilize Computer-Aided Software Engineering (CASE) tools.

Prerequisite Courses

Not required.

Basic Textbooks

1. Ian Sommerville: “Software Engineering”, Pearson Education, 2007. 2. Γιακουμάκης Εμμανουήλ, Διαμαντίδης Νικόλαος: “Τεχνολογία Λογισμικού”, ΕΚΔΟΣΕΙΣ ΣΤΑΜΟΥΛΗ, 2010 3. ΓΕΡΟΓΙΑΝΝΗΣ, ΚΑΚΑΡΟΝΤΖΑΣ, ΚΑΜΕΑΣ, ΣΤΑΜΕΛΟΣ, ΦΙΤΣΙΛΗΣ, ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΠΤΥΞΗ ΛΟΓΙΣΜΙΚΟΥ ΜΕ ΤΗ UML 1η έκδοση/2006 Κωδικός Βιβλίου στον Εύδοξο: 13597 ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ 4. IEEE Software Engineering Standards, IEEE publications, 1998. 5. Android Development Toolkit, Google Corporation, 2012. 6. Microsoft Solutions Framework 4.0, Microsoft Corporation, 2011.

Additional References

IEEE Transactions on Software Engineering Advances in Engineering Software Information and Software Technology Journal of Systems and Software Requirements Engineering

Teaching and Learning Methods

 

Activity Semester workload
Lectures 39 hours
Laboratory hours 26 hours
Personal study 57 hours
 
Final exams 3 hours
Course total 125 hours (5 ECTS)

 

Student Performance Evaluation

Final examination and lab exercises (theoretical and programming). The mark of laboratory should be ≥ 5 for attendance in the final examinations. The mark of final examination should be ≥ 5 for successful course completion. The final mark is computed as follows: 0.5 * (Mark of Exercises) + 0.5 * (Mark of Examination). For each examination/exercises subject clearly specified evaluation criteria are given. The students can see their exam paper after the final examination and inspect their faults. The overall distribution of marks is announced on eClass, so that students can evaluate their performance.

Language of Instruction and Examinations

Greek, English (for Erasmus students)

Delivery Mode

Face-to-face.