150 likes | 349 Views
Influence of undergraduate course Software design and architecture to postgraduate course Architecture, design and patterns. Magdalena Kostoska Nevena Ackovska Faculty of Computer Science and Engineering (FCSE) UKIM, Skopje, Macedonia. Introduction (About courses).
E N D
13thDAAD Workshop on “Software Engineering Education and Reverse Engineering” , Bansko, Bulgaria 26th August – 31th August 2013 Influence of undergraduate courseSoftware design and architectureto postgraduate courseArchitecture, design and patterns Magdalena Kostoska NevenaAckovska Faculty of Computer Science and Engineering (FCSE) UKIM, Skopje, Macedonia
Introduction (About courses) • Undergraduate course: Software design and architecture • Postgraduate course: Architecture, design and patterns • Teacher: NevenaAckovska • Teaching Assistant: Magdalena Kostoska • Two independent courses, different students enroll this courses – NOT ANY MORE!!!
Software design and architecture (SDA) • The course become part of the syllabus in 2008 • Our first experience with the course – 2009 • Experience & Surveys => Improvements • Out intention: To prepare students for ADP
SDA - Topics • Introduction to software architecture, design and patterns • Design patterns • Factory, Prototype, Composite, Adapter, Decorator, Observer, Template Method, Strategy and finally MVC • Refactoring and refactoring patterns • Introduction to refactoring and many refactoring patterns • More about SA modularity, cohesion and examples of specific software architecture
SDA - Grading • Homework – assignments every week • One project (refactoring) • Exams (for theory and practice) • Challenges & activity • Java oriented
Architecture, design and patterns (ADP) • Course syllabus created as part of the TEMPUS Software Engineering studies • Lectures – inherited (Thanks to prof. Jurca & prof. Budimac) • Our first experience with the course – 2010 • The first generation - None studied design and software patterns in Undergraduate studies
ADP - Topics • Introduction to Software Architecture (SA) • Analogy with Classical Architecture • The Deliverables of SA • Elements of SA • Analysis and Evaluation of SA • Architecture, processes, and organization • Model Driven Architecture • Design patterns • Frameworks and tools
ADP - Gradings • Homework – read, write, execute • Two projects • In the begging: patterns & refactoring • Now (depending of the background knowledge): refactoring & metrics • No Exam - students prefer projects • Challenges & activity • Java and C# oriented
News • This year FCSE re-accredited the undergraduate studies, but slightly changed • The course Software design and architecture – part of the curricula again, but topics are changed !!! • Reason: optimizing the number of courses and their content
SDA – New Topics • Physical model construction • Software decomposition and components • Design principles (correctness, robustness, flexibility…) • Refactoring • Design patterns • OO analysis and design • Design characteristics and metrics
Analysis Software Construction
Analysis • Lots of partial or complete topics overlaps • The new SDA course will be activated this year • What happens when this students graduate and enroll ADP in master studies??? • The first students from this program are expected to graduate in 2 years (2015)
Analysis • Strategies to deal with overlaps: • Strategy 1: Let the topics overlap, in undergraduate course teach the basics (core), in master course expand the knowledge • Strategy 2: Divide the shared topics among these two courses
Conclusion • Syllabus evolve – adjusting required • Compromise with the other professors • General goal: give the students the required knowledge