This course introduces an engineering approach to building software systems. Students will work in teams towards building a software product while going through certain phases including a feasibility study, requirements analysis, object-oriented design, implementation, testing, and delivery to the client. The course will also provide advanced topics such as project management and risk analysis.
Course Content
This course contains; The Product and Process,Project Planning and Organization,Software Engineering Practice,Requirements Engineering,Analysis Methods,Elements of software design,Midterm,Design Methods - I,Design Methods - II,Testing Strategies,Testing Methods,Umbrella Activities,Advanced topics,Project Final Presentation.
Dersin Öğrenme Kazanımları
Teaching Methods
Assessment Methods
Understand the software development process.
Understand the advantages and disadvantages of current software life cycle models
Use the best methods to plan, analyze, design, test, measure, and manage software projects
Understand that good people are one of, if not the most important, requirements for successful projects
Learn how to work on a team project.
Teaching Methods:
Assessment Methods:
Course Outline
Order
Subjects
Preliminary Work
1
The Product and Process
2
Project Planning and Organization
3
Software Engineering Practice
4
Requirements Engineering
5
Analysis Methods
6
Elements of software design
7
Midterm
8
Design Methods - I
9
Design Methods - II
10
Testing Strategies
11
Testing Methods
12
Umbrella Activities
13
Advanced topics
14
Project Final Presentation
Resources
Software Engineering: A practitioner’s Approach by Roger S. Pressman and Bruce Maxim, 8th edition, Mc Graw Hill, 2015.
Lecture notes that will be delivered during the classes.
Course Contribution to Program Qualifications
Course Contribution to Program Qualifications
No
Program Qualification
Contribution Level
1
2
3
4
5
1
An ability to apply knowledge of mathematics, science, and engineering
2
An ability to identify, formulate, and solve engineering problems
3
An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
4
An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
5
An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
6
An ability to function on multidisciplinary teams
7
An ability to communicate effectively
8
A recognition of the need for, and an ability to engage in life-long learning
9
An understanding of professional and ethical responsibility
10
A knowledge of contemporary issues
11
The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
12
Capability to apply and decide on engineering principals while understanding and rehabilitating the human body
Assessment Methods
Contribution Level
Absolute Evaluation
Rate of Midterm Exam to Success
30
Rate of Final Exam to Success
70
Total
100
ECTS / Workload Table
Activities
Number of
Duration(Hour)
Total Workload(Hour)
Course Hours
14
3
42
Guided Problem Solving
0
0
0
Resolution of Homework Problems and Submission as a Report
12
10
120
Term Project
0
0
0
Presentation of Project / Seminar
2
15
30
Quiz
0
0
0
Midterm Exam
1
15
15
General Exam
1
25
25
Performance Task, Maintenance Plan
0
0
0
Total Workload(Hour)
232
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(232/30)
8
ECTS of the course: 30 hours of work is counted as 1 ECTS credit.
Detail Informations of the Course
Course Description
Course
Code
Semester
T+P (Hour)
Credit
ECTS
SOFTWARE ENGINEERING
-
Fall Semester
3+0
3
8
Course Program
Prerequisites Courses
Recommended Elective Courses
Language of Course
English
Course Level
First Cycle (Bachelor's Degree)
Course Type
Elective
Course Coordinator
Prof.Dr. Selim AKYOKUŞ
Name of Lecturer(s)
Assist.Prof. Muhsin Zahid UĞUR
Assistant(s)
Aim
This course introduces an engineering approach to building software systems. Students will work in teams towards building a software product while going through certain phases including a feasibility study, requirements analysis, object-oriented design, implementation, testing, and delivery to the client. The course will also provide advanced topics such as project management and risk analysis.
Course Content
This course contains; The Product and Process,Project Planning and Organization,Software Engineering Practice,Requirements Engineering,Analysis Methods,Elements of software design,Midterm,Design Methods - I,Design Methods - II,Testing Strategies,Testing Methods,Umbrella Activities,Advanced topics,Project Final Presentation.
Dersin Öğrenme Kazanımları
Teaching Methods
Assessment Methods
Understand the software development process.
Understand the advantages and disadvantages of current software life cycle models
Use the best methods to plan, analyze, design, test, measure, and manage software projects
Understand that good people are one of, if not the most important, requirements for successful projects
Learn how to work on a team project.
Teaching Methods:
Assessment Methods:
Course Outline
Order
Subjects
Preliminary Work
1
The Product and Process
2
Project Planning and Organization
3
Software Engineering Practice
4
Requirements Engineering
5
Analysis Methods
6
Elements of software design
7
Midterm
8
Design Methods - I
9
Design Methods - II
10
Testing Strategies
11
Testing Methods
12
Umbrella Activities
13
Advanced topics
14
Project Final Presentation
Resources
Software Engineering: A practitioner’s Approach by Roger S. Pressman and Bruce Maxim, 8th edition, Mc Graw Hill, 2015.
Lecture notes that will be delivered during the classes.
Course Contribution to Program Qualifications
Course Contribution to Program Qualifications
No
Program Qualification
Contribution Level
1
2
3
4
5
1
An ability to apply knowledge of mathematics, science, and engineering
2
An ability to identify, formulate, and solve engineering problems
3
An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
4
An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
5
An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
6
An ability to function on multidisciplinary teams
7
An ability to communicate effectively
8
A recognition of the need for, and an ability to engage in life-long learning
9
An understanding of professional and ethical responsibility
10
A knowledge of contemporary issues
11
The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
12
Capability to apply and decide on engineering principals while understanding and rehabilitating the human body