/AssignmentGantt /AssignmentSchedule /Resources /tmrjnaqfewdetnoykxtadsjrm /vhgcxixkfbaapuyegolh |
- Week 1
Read online: UML Tutorial in 7 days by Slobodan Kalajdziski; You may also download a zipped copy from here for reading offline.
Read in the train: Introduction to the Unified Modeling Language (PDF) by Terry Quatrani; Also a local copy here.
Refreshing your Java Objects: Thinking in Java. Local copies: Zipped HTML, PDF
- Chapter 1: introduction to Objects (skip "Java and the Internet", "Why Java succeeds" and "Java vs C++")
- Chapter 16: Analysis and Design
- Start thinking about how to model a product you designed, using UML diagrams.
Task 1, to be finished in 2 weeks:
Practice UML diagrams using Microsoft Visio 2003 (available as a campus software package). You may also want UML 2.0 stencils from Pavel Hruby
Continue Task 1.
Lecture: Object Reloaded (OOA & OOD) (07-03 15.45-17.30 HG 2.80)
Essense of Object Oriented Programming Several chapters of this book by Wampler are available online. Chapter 2 is a very good overview of object-orientation.
Again: UML Tutorial in 7 days by Slobodan Kalajdziski. This time you should focus more on the analysis and design. Read RAD (Rapid Application Development) (Day 1), Day 5 and Day 6.
Object-Oriented Analysis and Design using CRC Cards CRC (Control, Responsibilities, and Collaborators) cards are an important tool for identifying and defining the classes you need for your program. They are an excellent low-tech method requiring only index cards.
Task 2, to be finished in 2 weeks:
Modeling ( not programming) a product designed by yourself, using use case diagrams, class diagrams, sequence diagrams and activity diagrams.
- Week 4
Reading: The Design Patterns java Companion
- You may also refer to the following famous books (if you are lucky, you may grab a copy from the university library):
Non-Software Examples of Software Design Patterns (PDF) by Michael Duell. A bit old (1998), but if you can't manage to understand the design patterns in Java, this artical may help.
Continue Task 2.
Task 3, to be finished in 2 weeks
Find a program you wrote before, for example, the program you wrote for Java A or Java B, or any other programs in any language
- Read your program again.
- Now, how would you like to impprove your design using a object-oriented approach?
- Show me your original code,
- identify the problems if there is any,
- redesign it using object-oriented approach,
- apply design patterns in your desgin,
- try to communicate your object-oriented new desgin with me using UML diagrams.
Implementation of your new design is appreciated, but not obligatory.
Continue Task 3
Feedback, Q&A