Software Engineering (SE550) Course Detail

Course Name Course Code Season Lecture Hours Application Hours Lab Hours Credit ECTS
Software Engineering SE550 1. Semester 3 0 0 3 5
Pre-requisite Course(s)
N/A
Course Language English
Course Type Compulsory Departmental Courses
Course Level Natural & Applied Sciences Master's Degree
Mode of Delivery Face To Face
Learning and Teaching Strategies Lecture.
Course Coordinator
Course Lecturer(s)
Course Assistants
Course Objectives The objective of this course is to provide basic foundations of a general engineering discipline to problem solving for computer based applications rather than to focus on specific methods, techniques, and methodologies. Hence, it emphasizes empirical and quantitative methods, analysis and design techniques, project scheduling and management techniques, software testing activities, software documentation details, quality assurance, and other software engineering issues.
Course Learning Outcomes The students who succeeded in this course;
  • Discuss formal methods for the analysis, design and maintenance of software systems Analyse and design quality software
  • Distinguish between different software development methodologies
  • Demonstrate knowledge and understanding of UML model elements.
  • Categorize, summarize, model, and analyse requirements
  • Realize model elements for creating efficient design elements
  • Recall the basics of software project, configuration and risk management
  • Describe different software testing strategies
  • Describe testing strategies for conventional and OO systems
  • Explain software product, process and project metrics
Course Content Introduction to software engineering and related topics; software process and project metrics; project planning; scheduling and tracking; configuration management; software quality assurance; requirement analysis; data flow diagrams and related topics; design concepts and methods; implementation; testing methods and test strategies; object-oriented

Weekly Subjects and Releated Preparation Studies

Week Subjects Preparation
1 Introduction & Software Engineering Concepts Ch.1, 2 (main text)
2 Software Process Structure, Process Models Ch.3, Ch.4 (4.1.1-4.1.3)
3 Agile Development Ch.5 (5.1-5.3, 5.4.1, 5.5.1)
4 Understanding Requirements Ch. 8
5 Requirements Modeling Ch. 9, Ch. 10
6 Requirements Modeling Ch.11 (11.1-11.4)
7 Design Concepts Ch. 12
8 Architectural and Component-Level Design Ch.13, Ch.14 (14.1-14.3)
9 User Interface (UI) Design Ch.15 (15.1-15.4)
10 Software Testing Strategies Ch.22 (22.1-22.4, 22.7-22.9), Ch.23(23.1-23.6)
11 Product Metrics Ch.30 (30.1-30.3.3)
12 Process and Project Metrics Ch.32 (32.1-32.2)
13 Estimation for Software Projects Ch.33 (33.1-33.7)
14 Basics of Software Maintenance Lecture notes
15 Final Exam
16 Final Exam

Sources

Course Book 1. Pressman, R. S. and B. R. Maxim, Software Engineering, McGraw Hill, 8th. Ed., 2014
Other Sources 2. Sommerville, I., Software Engineering, Addison-Wesley, 10th. Ed., 2015
3. ISO/IEC TR 19759:2005, Software Engineering - Guide to the Software Engineering Body of Knowledge (SWEBOK), ANSI, 2007
4. Van Vliet, H., Software Engineering: Principles and Practice, Wiley, 2008 (1st edition)
5. Tsui, F. F., Karam, O., Essentials of Software Engineering, Jones & Bartlett Publishers, 2006 (1st edition)
6. Schach, S. R., Object-oriented and Classical Software Engineering, McGraw Hill, 2006 (7th edition)

Evaluation System

Requirements Number Percentage of Grade
Attendance/Participation 1 5
Laboratory - -
Application - -
Field Work - -
Special Course Internship - -
Quizzes/Studio Critics - -
Homework Assignments 4 25
Presentation - -
Project - -
Report - -
Seminar - -
Midterms Exams/Midterms Jury 1 30
Final Exam/Final Jury 1 40
Toplam 7 100
Percentage of Semester Work
Percentage of Final Work 100
Total 100

Course Category

Core Courses X
Major Area Courses
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) 16 3 48
Laboratory
Application
Special Course Internship
Field Work
Study Hours Out of Class 16 2 32
Presentation/Seminar Prepration
Project
Report
Homework Assignments 4 5 20
Quizzes/Studio Critics
Prepration of Midterm Exams/Midterm Jury 1 10 10
Prepration of Final Exams/Final Jury 1 20 20
Total Workload 130