ECTS - Model Driven Software Development
Model Driven Software Development (SE555) Course Detail
Course Name | Course Code | Season | Lecture Hours | Application Hours | Lab Hours | Credit | ECTS |
---|---|---|---|---|---|---|---|
Model Driven Software Development | SE555 | Area Elective | 3 | 0 | 0 | 3 | 5 |
Pre-requisite Course(s) |
---|
N/A |
Course Language | English |
---|---|
Course Type | Software Engineering Elective Courses |
Course Level | Natural & Applied Sciences Master's Degree |
Mode of Delivery | Face To Face |
Learning and Teaching Strategies | Lecture. |
Course Lecturer(s) |
|
Course Objectives | This course will introduce model driven software development (MDD) principles, methodologies, and tools. The course will cover both practical and theoretical aspects. Students will develop a small scale metamodeling or MDD project. |
Course Learning Outcomes |
The students who succeeded in this course;
|
Course Content | Introduction to MDD; modeling languages; software reusability; domain specific modeling; metamodeling; model transformations; metamodeling tools; code generation; MOF (meta object facility); software components. |
Weekly Subjects and Releated Preparation Studies
Week | Subjects | Preparation |
---|---|---|
1 | Introduction to model driven development | Chapters 1-2 (main text) |
2 | Software quality and reusability | Other source (research papers) |
3 | Domain specific modeling | Reference book 2 |
4 | Modeling languages | Reference book 3 |
5 | Metamodeling | Chapter 6 (main text), Reference book 3 |
6 | UML Profiling | Chapter 6 (main text) |
7 | Model transformations | Chapter 10 (main text) |
8 | Metamodeling environments | Reference books, research papers |
9 | Code generation | Chapter 9 (main text) |
10 | Platform independence | Reference books, research papers |
11 | Software components, building blocks | Other source (research papers) |
12 | Object constraint language (OCL) | Reference books, research papers |
13 | Best practices, applications | Reference books, research papers |
14 | Student presentations | |
15 | Student presentations | |
16 | Final Exam |
Sources
Course Book | 1. 1. Thomas Stahl, Markus Voelter, Krzysztof Czarnecki, 2006. “Model-Driven Software Development: Technology, Engineering, Management”, Wiley. |
---|---|
2. 2. Markus Voelter, 2013. “DSL Engineering: Designing, Implementing and Using Domain-Specific Languages”, . | |
3. 3. Cesar Gonzalez-Perez, Brian Henderson-Sellers, 2008. “Metamodelling for Software Engineering”, John Wiley & Sons. | |
4. 4. Fernando S. Parreiras, 2012. “Semantic Web and Model-Driven Engineering”, Wiley-IEEE Press. | |
5. 5. Dragan Gasevic, 2010. “Model driven engineering and ontology development”, Springer. |
Evaluation System
Requirements | Number | Percentage of Grade |
---|---|---|
Attendance/Participation | - | - |
Laboratory | - | - |
Application | - | - |
Field Work | - | - |
Special Course Internship | - | - |
Quizzes/Studio Critics | - | - |
Homework Assignments | 1 | 15 |
Presentation | 1 | 10 |
Project | 1 | 20 |
Report | - | - |
Seminar | - | - |
Midterms Exams/Midterms Jury | 1 | 20 |
Final Exam/Final Jury | 1 | 35 |
Toplam | 5 | 100 |
Percentage of Semester Work | |
---|---|
Percentage of Final Work | 100 |
Total | 100 |
Course Category
Core Courses | |
---|---|
Major Area Courses | X |
Supportive Courses | |
Media and Managment Skills Courses | |
Transferable Skill Courses |
The Relation Between Course Learning Competencies and Program Qualifications
# | Program Qualifications / Competencies | Level of Contribution | ||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
1 | An ability to apply advanced knowledge of computing and/or informatics to solve software engineering problems. | X | ||||
2 | Develop solutions using different technologies, software architectures and life-cycle approaches. | X | ||||
3 | An ability to design, implement and evaluate a software system, component, process or program by using modern techniques and engineering tools required for software engineering practices. | X | ||||
4 | An ability to gather/acquire, analyze, interpret data and make decisions to understand software requirements. | X | ||||
5 | Skills of effective oral and written communication and critical thinking about a wide range of issues arising in the context of working constructively on software projects. | X | ||||
6 | An ability to access information in order to follow recent developments in science and technology and to perform scientific research or implement a project in the software engineering domain. | X | ||||
7 | An understanding of professional, legal, ethical and social issues and responsibilities related to Software Engineering. | |||||
8 | Skills in project and risk management, awareness about importance of entrepreneurship, innovation and long-term development, and recognition of international standards of excellence for software engineering practices standards and methodologies. | X | ||||
9 | An understanding about the impact of Software Engineering solutions in a global, environmental, societal and legal context while making decisions. | |||||
10 | Promote the development, adoption and sustained use of standards of excellence for software engineering practices. | X |
ECTS/Workload Table
Activities | Number | Duration (Hours) | Total Workload |
---|---|---|---|
Course Hours (Including Exam Week: 16 x Total Hours) | |||
Laboratory | |||
Application | |||
Special Course Internship | |||
Field Work | |||
Study Hours Out of Class | 16 | 4 | 64 |
Presentation/Seminar Prepration | 1 | 5 | 5 |
Project | 1 | 45 | 45 |
Report | |||
Homework Assignments | 1 | 20 | 20 |
Quizzes/Studio Critics | |||
Prepration of Midterm Exams/Midterm Jury | 1 | 16 | 16 |
Prepration of Final Exams/Final Jury | 1 | 30 | 30 |
Total Workload | 180 |