• Türkçe
  • English
Course Code: 
ACM 413
Course Period: 
Autumn
Course Type: 
Area Elective
P: 
3
Lab: 
0
Credits: 
3
ECTS: 
6
Prerequisite Courses: 
Course Language: 
İngilizce
Course Objectives: 
This subject introduces the student to the object-oriented programming paradigm, and to the basic concepts of the discipline called "Bottom-up software development". Object-oriented programming in an approach to writing software which is based around the idea of building specific data structures to represent the parts of the problem (and/or the parts of the solution), and then defining how those data structures inter-relate and interact. Software development is the study and practice of a collection of concepts, techniques and tools which enable programmers to design and build, and maintain large software systems in a reliable and cost effective way.
Course Content: 

Revision of Object Oriented Concepts: Abstraction and Encapsulation, Typing and Inheritance, Polymorphism and Overloading, Genericity and Persistence, Overview of OOP in C++, The Software Development Process,  Software Characteristics and Metrics, Object Oriented Design, Templates, libraries, Software Validation, Verification, Debugging, and Testing, Software Maintenance. Enterprise Applications.

Course Methodology: 
1: Lecture, 2: Question-Answer, 3: Discussion
Course Evaluation Methods: 
A: Testing, C: Homework

Vertical Tabs

Course Learning Outcomes

Learning Outcomes

Teaching Methods

Assessment Methods

1 Understand the fundamental principles underlying Object-Oriented software design in C++ and C#.

1,2,3

A,C

2 Employ formal methods to produce effective software designs as solutions to specific tasks.

1,2,3

A,C

3 Develop structured sets of simple user-defined classes using Object-Oriented principles to achieve overall programming goals.

1,2,3

A,C

4 Develop error identification and testing strategies for code development.

1,2,3

A,C

5 Plan and write assignments, within the specified parameters and to a professional standard..

1,2,3

A,C

 

Course Flow

Recommended Sources

Textbook

Lippman, S. & Lajoie, J., "C++ Primer, 3rd Edition", Addison Wesley, 1998.

Stroustrup, B., "The C++ Programming Language, 3rd Ed.", Addison Wesley, 1997.

Fowler, M. (with Kendall Scott), "UML Distilled", 2nd Ed., Addison Wesley, 2000.

Additional Resources

 

 

Assessment

IN-TERM STUDIES

NUMBER

PERCENTAGE

Mid-terms

1

60

Quizzes

1

20

Homework

1

20

Total

 

100

CONTRIBUTION OF FINAL EXAMINATION TO OVERALL GRADE

 

60

CONTRIBUTION OF IN-TERM STUDIES TO OVERALL GRADE

 

40

Total

 

100

 

COURSE CATEGORY

Expertise/Field Courses

 

Course’s Contribution to Program

No

Program Learning Outcomes

Contribution

1

2

3

4

5

 

1

Information Systems graduates have the knowledge and the skills to design and develop the complete systems for multi-media visual user interface.

X

 

 

 

 

 

2

Information Systems graduates have advanced the knowledge and skills to design, develop and install the application systems for multi-media.

 

X

 

 

 

 

3

Information Systems graduates have the knowledge and the skills to design, develop and apply algorithms and data structures to solve the basic problems of information processing, within the framework of discrete mathematics.

 

 

 

 

X

 

4

Information Systems graduates have the knowledge and the skills to design and develop computer applications, based on user specificed requirements, using modern structured development tools and install them on various hardware platforms and deploy their usage.

 

 

 

 

X

 

5

Information Systems graduates have the knowledge and the skills to design and develop computer applications, based on user specificed requirements, using modern object-oriented development tools and install them on various hardware platforms and deploy their usage.

 

 

 

 

X

 

6

Information Systems graduates know the logic of computer operating systems, the basic set of system commands, how to control access to system resources by users of different departments and how to monitor the running of jobs in the system.

 

 

 

X

 

 

7

Information Systems graduates have the knowledge and the skills to design and develop data models serving different requirements, database applications that would access and process data using various types of software, including queries, reports and business applications.

 

 

X

 

 

 

8

Information Systems graduates have the knowledge and the skills to design and develop business applications that would provide data acess, modification and processing for data kept in enterprise database systems.

 

 

X

 

 

 

9

Information Systems graduates have the knowledge about computer networks, and have  the skills to design,  develop and monitor  computer networks, how to configure them  and how to maintain their performance.

x

 

 

 

 

 

10

Information Systems graduates have the knowledge and the skills to design and develop visual user interfaces for the web, web-based applications for n-tier client/server configurations, how to deploy them in enterprises.

x

 

 

 

 

 

 

ECTS

Activities

Quantity

Duration
(Hour)

Total
Workload
(Hour)

Course Duration (Including the exam week: 16x Total course hours)

16

4

64

Hours for off-the-classroom study (Pre-study, practice)

16

3

48

Mid-terms

1

10

10

Quiz

1

8

8

Homework

1

10

10

Final examination

1

10

10

Total Work Load

 

 

150

Total Work Load / 25 (h)

 

 

6

ECTS Credit of the Course

 

 

6

 
None