0% found this document useful (0 votes)
484 views

Allama Iqbal Open University Islamabad: Assignment No. 1

This document contains information about a course on design patterns for Allama Iqbal Open University. It includes warnings about plagiarism and outlines two assignments related to design patterns. The course covers creational, structural, and behavioral patterns over nine units. Students will learn how to select appropriate patterns to solve design problems. The assignments and exam will evaluate students' understanding of core design patterns and applying patterns to improve software design.

Uploaded by

gulzar ahmad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
484 views

Allama Iqbal Open University Islamabad: Assignment No. 1

This document contains information about a course on design patterns for Allama Iqbal Open University. It includes warnings about plagiarism and outlines two assignments related to design patterns. The course covers creational, structural, and behavioral patterns over nine units. Students will learn how to select appropriate patterns to solve design problems. The assignments and exam will evaluate students' understanding of core design patterns and applying patterns to improve software design.

Uploaded by

gulzar ahmad
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 4

ALLAMA IQBAL OPEN UNIVERSITY ISLAMABAD

(Department of Computer Science)

WARNING
1. PLAGIARISM OR HIRING OF GHOST WRITER(S) FOR SOLVING
THE ASSIGNMENT(S) WILL DEBAR THE STUDENT FROM AWARD OF
DEGREE/CERTIFICATE, IF FOUND AT ANY STAGE.
2. SUBMITTING ASSIGNMENTS BORROWED OR STOLEN FROM
OTHER(S) AS ONE’S OWN WILL BE PENALIZED AS DEFINED IN “AIOU
PLAGIARISM POLICY”.

Course: Design Patterns (3481) Semester: Spring, 2021


Level: Bachelors Total Marks: 100
Pass Marks: 50
Assignment No. 1
(Units: 1-4)
Note: All questions carry equal marks.

Q. 1. (a) What is meant by the term “Design Pattern”? How design Patterns
solve design Problems. Explain t he concept in detail with the help of
proper examples.
(b) How are design patterns different from Algorithms and Data
Structure? Explain it with the help of suitable example.
(20)
Q. 2. Answer the following Question properly: (20)
There are two methods for propagating data to observers with the observer
design pattern: the push model and the pull model. Why would one model
be preferable over the other? What are the trade-offs of each model?

Q. 3. Differentiate the following terms: (20)


 Creational Pattern and Structural Pattern
 Composite and Decorator

Q. 4. Explain the relationship between commonality/variability analysis and the


three perspectives of looking at a problem. Why is it better to start out
focusing on motivations rather than on implementation? Give an example
where this has helped you. (20)

1
Q.5. Write short notes on the following terms: (20)
 Bridge
 Façade
 Builder
 Prototype

Assignment No. 2
(Units: 1-4)
Marks: 100
Pass Marks: 50

Note: All questions carry equal marks.

Q. 1. What are the three fundamental principles proposed by the Gang of Four
that guides how to anticipate change? What are the basic elements of a
sequence diagram? (20)

Q. 2. What is Alexander’s view of how to use patterns? Does he advocate


starting with the solution first or the problem to be solved first? Why this
pattern is called “Abstract Factory”? (20)

Q.3 (a) Differentiate the following terms:


 Mediator and Memento
 State and Strategy
(b) What are the most commonly used Design patterns? Explain them in
detail with the help of proper examples.
(20)
Q. 4. How does the Factory Method pattern fit in with other factories? As you
learn patterns, what five forces and concepts do I urge you to look for? Can
any design solution be considered a design Pattern? (20)

Q. 5. Write short notes on the following terms: (20)


 Design Problems
 Document structure
 User Interface
 Chain of Responsibility
2
3451 ARTIFICIAL INTELLIGENCE
Course Code: 3481
Course Title: Design Patterns
Credit Hours: 3 (3 + 0), 3 hours lecture per week
Session Offered: As per offering schedule
Recommended Book: Design Pattern Elements of Reusable Object-Oriented
Software by Erich Gamma, Richard Helm, Ralph
Johnson and John Vissides
A/V / Multimedia
As defined by the Instructor / MOOCs links
Content:
Reference Book: 1) Design Patterns Explained: A new Perspective on
Object-Oriented Design (software) patterns series) by
Alam Shalloway and James Trott, 2nd Edition (2004)
2) Patterns in Design, Art and Architecture:
Birkhauser by Petra Schmidt (2006)
Pre-Requisite: N/A
Course Coordinator: Ch. Muhammad Shahbaz Anjum
Teaching Methodology: Face-to-Face/Online/Blended
Computer Usage: Student is desired to use Internet for self-learning in this course.
Course Introduction
Design Patterns form an advanced area in software design and architecture.
Deign patterns focus on solution to problems commonly found in design of
object oriented programs. This course discusses the fundamentals of the core
patterns: creational, behavioral, structural and system pattern.
Course Objectives
At the end of the course the students are expected to be able to:
1. Illustrate what is pattern and how patterns are design using various techniques.
2. Demonstrate the understanding of Design Patterns in Software development domain.
3. Learn how to select a design pattern appropriate for a particular design problem.
Evaluation Criteria:
i. Assignments and/or quizzes as per instructor’s choice 10%
ii. Mid Term theory/practical/ presentation/ mini projects as per instructor’s choice 20%
iii. Final Examination 70%
COURSE OUTLINES
Unit # 1 Introduction
Introduction, Describing Design Patterns, The Catalog of Design Pattern
Organizing the Catalog, How Design Patterns Solve Design Problems,
Selecting, Design Pattern, Use of Design Pattern

3
Unit # 2 Creational Patterns-I
Abstract Factory, Builder, Factory Method
Unit # 3 Creational Patterns-II
Prototype, Singleton, Discussion of Creational Patterns
Unit # 4 Structural Pattern-I
Adapter, Bridge, Composite, Decorator, Facade
Unit # 5 Structural Pattern-II
Flyweight, Proxy, Discussion of Structural Patterns
Unit # 6 Behavioral Patterns-I
Chain of Responsibility, Command, Interpreter, Integrator, Mediator,
Moment Observer, State, Strategy
Unit # 7 Behavioral Patterns-II
Template Method, Visitor, Discussion of Behavioral Patterns
What to Expect from Design Patterns, A Brief History, The
Pattern Community, An Invitation, A Parting Thought
Unit # 8 A Case Study: Designing a Document Editor-I
Design Problems, Document Structure, Formatting, Embellishing the
User Interface, Supporting Multiple Look-and-Feel Standards
Unit # 9 A Case Study: Designing a Document Editor-II
Supporting Multiple Window Systems, User Operations, Spelling
Checking Hyphenation, Summary
Activities/ Practical
1. Explore Software Design patterns technique? How design of software can be
improved using various techniques?
2. Select a case study and apply techniques of Design Patterns.

Note: The instructor may assign additional activities.

Last revised: June 2015

You might also like