トップページへ

2020 Faculty Courses School of Computing Undergraduate major in Computer Science

Object-Oriented Design

Academic unit or major
Undergraduate major in Computer Science
Instructor(s)
Motoshi Saeki
Class Format
Lecture (Zoom)
Media-enhanced courses
-
Day of week/Period
(Classrooms)
1-4 Wed (W934)
Class
-
Course Code
CSC.T361
Number of credits
200
Course offered
2020
Offered quarter
3Q
Syllabus updated
Jul 10, 2025
Language
Japanese

Syllabus

Course overview and goals

[Purpose]
Students learn practical skills about object-oriented analysis and design.

[Overview]
Students learn through practical training techniques and practical skills about software design by using object oriented design, design patterns, etc. Make experiences in usefulness of these techniques.

Course description and aims

By taking this course, students learn skills get skills of software development including requirements analysis using use case modeling, developing class diagrams, implementation and testing.

Keywords

Object oriented design, Class diagram, Use case modeling, Design pattern, Test, Metrics, Refactoring, UML, Java

Competencies

  • Specialist skills
  • Intercultural skills
  • Communication skills
  • Critical thinking skills
  • Practical and/or problem-solving skills

Class flow

Each lecture is combined with a simple exercise.

Course schedule/Objectives

Course schedule Objectives
Class 1 Introduction to Software Development Processes and reviews of Java programming Java programming
Class 2 Software design led to high modifirability Understanding software designs with super classes and module independence
Class 3 Class diagram Writing class diagrams
Class 4 Writing class diagrams with a tool (exercise) Writing class diagrams with Eclipse
Class 5 Unit Test Understanding the usage of JUnit in Eclipse
Class 6 Characteristics of object oriented design Understanding data abstraction, polymorphism, abstract classes and basic ides of design patterns
Class 7 Design pattern (1) Using design patterns for structure and behavior
Class 8 Design pattern (2) Using design patterns for creation
Class 9 Improvement of design: Software metrics Understanding and using software metrics
Class 10 Improvement of design: Refactoring Understanding and using refactoring techniques
Class 11 Introduction to requirements analysis and Use case modeling Understanding requirements analysis, and writing use case diagrams and descriptions
Class 12 Derivation of class diagrams from requirements documents Understanding the usage of use case models and CRC method
Class 13 Derivation of class diagrams by CRC method (Exercise) Using practically CRC method
Class 14 Introduction to UML diagrams Understanding UML and writing a sequence diagram
Class 15 none none

Study advice (preparation and review)

To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.

Textbook(s)

None. Slides of lectures are available via the home page.

Reference books, course materials, etc.

None

Evaluation methods and criteria

Evaluating exercises in lectures (30-40%), several small assignments (30-40%) and a practical exercise (30-40%). Obtain 50% of full marks in each category.

Related courses

  • CSC.T273 : Object-Oriented Programming

Prerequisites

Can make Java programs and use basically Eclipse for programming