BTP600 Course Outline

Course Code: BTP600
Course Name: Data Patterns in UML
Offered Date: Winter - 2018 | Other versions
Print Outline
Course Description:
Traditionally, OO designers have developed their own private "catalogs" of solutions to recurring design problems. More recently, advocates of design patterns have created public repositories of patterns that more formally a) identify these recurring design problems b) document possible solutions to these problems through the general arrangement and composition of objects and classes c) discuss the advantages and disadvantages of the various solutions and d) provide implementation examples. This course will introduce the student to the concept of design patterns, examine several patterns in detail, apply these patterns to specific problems, and point the student to design pattern resources.
Credit Status: 1 credit (3 units)
Required for BSD - Bachelor of Technology (Software Development)
Prerequisite: BTS430 and BTP500
Mode of Instruction: Modes: In-class lecture, in-class exercises, and hands-on activity
Hours per week: 4
Room configurations: Classroom
Typical scheduling pattern: Fall and Winter terms
Learning Outcomes:
  •     describe solutions to programming problems using design pattern nomenclature
  •     develop and maintain programs using common design patterns and frameworks
  •     identify and implement appropriate solutions to recurring programming problems by consulting technical documentation and specifications, including design pattern catalogs and existing source code
  •     summarize the advantages and disadvantages of using design pattern variants
  •     discuss and implement the Gang of Four (GoF) design patterns, for example: creational patterns (Singleton, Factory, Abstract Factory), structural patterns (Adapter, Composite, Facade) behavioral patterns (Iterator, Observer), etc.
  •     given a problem, select an applicable design pattern or patterns
  •     use Windows and/or UNIX to implement programs using Object Oriented languges such as C++, Java, C# and design patterns
Topic Outline:
  •     Patterns and their Architectural Heritage, Introduction to "A Pattern Language"
  •     Techniques for Reading/Understanding Source Code
  •     What is a Design Pattern? Introduction to Gang of Four Patterns
  •     Survey of Patterns:
    •         Factory Method
    •         Strategy
    •         Decorator
    •         Composite
    •         Iterator
    •         Template Method
    •         Abstract Factory
    •         Builder
    •         Singleton
    •         Proxy
    •         Adapter
    •         Bridge
    •         Mediator
    •         Observer
    •         Memento
    •         Command
    •         Prototype
    •         State
    •         Facade
Prescribed Text(s):
Design Patterns: Elements of Reusable Object-Oriented Software (1995)
by Gamma
Published by Pearson Education
ISBN 0-201-63361-2
Reference Material:
Head First Design Patterns
by Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra
published by O'Reilly and Associates (2004)
ISBN 978-0596007126
Promotion Policy:
To obtain a credit in this course, a student must:
  •     Pass the weighted average of all assessments
  •     Pass the weighted average of all tests
  •     Successfully complete all of the assignments and exercises. Submissions that do not meet specifications will be returned to the student for revision and resubmission.

Grading Policy
A+ 90%  to  100%
A 80%  to  89%
B+ 75%  to  79%
B 70%  to  74%
C+ 65%  to  69%
C 60%  to  64%
D+ 55%  to  59%
D 50%  to  54%
F 0%    to  49% (Not a Pass)
EXC Excellent
SAT Satisfactory
UNSAT Unsatisfactory

For further information, see a copy of the Academic Policy, available online (http://www.senecacollege.ca/academic-policy) or at Seneca's Registrar's Offices.

Presentations 20%
Assignments (approximately 8) 40%
Tests (approximately 8) 40%

Approved By:
Mary-Lynn Manton
Cheating and Plagiarism:
Each student should be aware of the College's policy regarding Cheating and Plagiarism. Seneca's Academic Policy will be strictly enforced.

To support academic honesty at Seneca College, all work submitted by students may be reviewed for authenticity and originality, utilizing software tools and third party services. Please visit the Academic Honesty site on http://library.senecacollege.ca for further information regarding cheating and plagiarism policies and procedures.
Discrimination and Harassment:
All students and employees have the right to study and work in an environment that is free from discrimination and/or harassment. Language or activities that defeat this objective violate the College Policy on Discrimination/Harassment and shall not be tolerated. Information and assistance are available from the Student Conduct Office at student.conduct@senecacollege.ca.
Accomodation for Students with Disabilities
The College will provide reasonable accommodation to students with disabilities in order to promote academic success. If you require accommodation, contact the Counselling and Disabilities Services Office at ext. 22900 to initiate the process for documenting, assessing and implementing your individual accommodation needs.

Program Information