Upload
nathaniel-gaines
View
213
Download
0
Embed Size (px)
Citation preview
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
13th DAAD Workshop on “Software Engineering Education and Reverse Engineering” , Bansko, Bulgaria 26th August – 31th August 2013
Introduction (About courses)
• Undergraduate course: Software design and architecture
• Postgraduate course: Architecture, design and patterns
• Teacher: Nevena Ackovska• Teaching Assistant: Magdalena Kostoska
• Two independent courses, different students enroll this courses – NOT ANY MORE!!!
• 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
Software design and architecture (SDA)
• 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 - Topics
• Homework – assignments every week• One project (refactoring)• Exams (for theory and practice)• Challenges & activity
• Java oriented
SDA - Grading
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
• 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 - Topics
• 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
ADP - Gradings
• 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
News
• Physical model construction• Software decomposition and components• Design principles (correctness, robustness, flexibility…)
• Refactoring• Design patterns• OO analysis and design• Design characteristics and metrics
SDA – New Topics
Introduction to Software Architecture
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
Refactoring
Physical model construction
OO analysis and design
Software decomposition and components
Design principles
Design patterns
Refactoring
Design characteristics and metrics
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
Analysis
• Syllabus evolve – adjusting required
• Compromise with the other professors
• General goal: give the students the required knowledge
Conclusion
Questions?