BBS656 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT

Course Name Code Semester Theory
(hours/week)
Application
(hours/week)
Credit ECTS
OBJECT-ORIENTED SOFTWARE DEVELOPMENT BBS656 Any Semester/Year 3 0 3 6
Prequisites-
Course languageTurkish
Course typeElective 
Mode of DeliveryFace-to-Face 
Learning and teaching strategiesLecture
 
Instructor (s)Staff of Computer Engineering Dept.  
Course objectiveTo teach the fundamentals of object oriented software  
Learning outcomes
  1. The ability of appliying principles of OOP
Course ContentDesign patterns in OOP. Benefits, focuses, principles of design patterns; pattern classification, anti-pattern approach, architectural patterns, case studies 
ReferencesLarman C., Applying UML and Patterns, Prentice Hall, 2005.  

Course outline weekly

WeeksTopics
Week 1Basic concepts of OOP
Week 2Basic concepts of OOP
Week 3Encapsulation
Week 4Encapsulation
Week 5Cases studies
Week 6Midterm exam
Week 7Separation of object responsibilities
Week 8Separation of object responsibilities
Week 9Cases studies
Week 10Creational classes and patterns
Week 11Midterm exam
Week 12Object families
Week 13Composite objects
Week 14Customizable objects
Week 15Review
Week 16Final exam

Assesment methods

Course activitiesNumberPercentage
Attendance00
Laboratory00
Application00
Field activities00
Specific practical training00
Assignments00
Presentation00
Project00
Seminar00
Midterms250
Final exam150
Total100
Percentage of semester activities contributing grade succes050
Percentage of final exam contributing grade succes050
Total100

WORKLOAD AND ECTS CALCULATION

Activities Number Duration (hour) Total Work Load
Course Duration (x14) 14 3 42
Laboratory 0 0 0
Application000
Specific practical training000
Field activities000
Study Hours Out of Class (Preliminary work, reinforcement, ect)14228
Presentation / Seminar Preparation000
Project000
Homework assignment2510
Midterms (Study duration)23060
Final Exam (Study duration) 14040
Total Workload3380180

Matrix Of The Course Learning Outcomes Versus Program Outcomes

D.9. Key Learning OutcomesContrubition level*
12345
1. Has detailed knowledge about Information Systems (IS).  X  
2. Understands the interaction of theory and practice and the links between them.  X  
3. Has a good understanding of common concepts such as abstraction, complexity, security, concurrency, software lifecycle and applies their expertise to the effective design, development and management of IS.  X  
4. Has the ability to think at different levels of abstraction and detail; understands that an IS can be considered in different contexts, going beyond narrowly identifying implementation issues.  X  
5. Solves any technical or scientific problem independently and presents the best possible solution; has the communication skills to clearly explain the completeness and assumptions of their solution.  X  
6. Completes a project on a larger scale than an ordinary course project in order to acquire the skills necessary to work efficiently in a team.    X
7. Recognises that the field of informatics is rapidly evolving. Follows the latest developments, learns and develops skills throughout their career.    X
8. Recognises the social, legal, ethical and cultural issues related to informatics practice and conduct professional activities in accordance with these issues.    X
9. Can make oral presentations in English and Turkish to different audiences face-to-face, in writing or electronically.    X
10. Recognises that informatics has a wide range of applications and opportunities.  X  
11. Is aware that informatics interacts with different fields, can communicate with experts from different fields and can learn necessary field knowledge from them.   X 
12. Define a research problem and use scientific methods to solve it.   X  

*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest