Software Design and Architecture: Principles, Patterns  and Practices

Software Design and Architecture: Principles, Patterns and Practices

Software design patterns are reusable solutions that solve the design challenges software developers face over and over again in their career.

course at a glance

  • Date : 12 Jul - 16 Aug 2019
  • No. of Classes/ Sessions : 11
  • Total Hours : 32
  • Last Date of Registration : 11 Jul 2019
  • Class Schedule :
    • Thursday - 6 PM - 9 PM
    • Friday - 6 PM - 9 PM
  • venue : 11 Bir Uttam AK Khandakar Road, 31 Mohakhali Commercial Area, Colombia Super Market, 4th Floor, Wireless Gate, 1213

Price: TK. 10,000
(Excluding VAT & TAX)
Early Bird Registration Going On Valid Until 11th July, 2019 Tk @ 9000

This training is jointly organized by BITM & UY LAB

Training will be held in UY LAB.

This Software Design Patterns and Architecture course offers a comprehensive introduction to software design principles and patterns, code smells, refactoring.

The course will help participants understand good object-oriented design through the medium of highly useful design patterns and help them for doing clean design and code.

After completing this course, you will be able to:

  • Improve logical design thinking using design patterns.
  • Recognize that software engineering is more that writing code.
  • Understand the meaning of clean code.
  • Implement programming solutions using multiple approaches and recognize tradeoffs.
  • Use object-oriented concepts including interfaces and abstract classes for solving complex design issues.
  • Understand what are good code and what are bad code.
  • Understand what are good design and what are bad design
  • Recognize the code smell and find the appropriate refactoring solution.
  • Understand the design principles and implement them in writing object-oriented code.


Course Outline

1.Quick overview on object oriented programming and concept.

2.What is software design?

3.What is software architecture? What are roles of a software architect?

4.Is design dead?

5.Code smells and refactoring techniques.

6.Design Patterns:

a.Creational Patterns

i)Abstract Factory


iii)Factory Method



b.Structural Patterns








c.Behavioral Patterns

i)Chain of Responsibility








ix)Template Method

x)Null object pattern

7.Design Principles

a. Single Responsibility Principle (SRP)

b. Open Closed Principle (OCP)

c. Liskov Substitution Principle (LSP)

d. Interface Segregation Principle (ISP)

e. Dependency Inversion Principle (DIP)

f. DRYDon’t Repeat yourself

g. Once and only once

h.Tell Don’t Ask

i.The Law of Demeter

j. Inversion of Control

k. Dependency Injection




Module Software Design and Architecture: Principles, Patterns and Practices 32 Hrs

Tentative Class Start

12th July, 2019

Available Seat

10 / 24

who can join

Software Engineer, Programmer, Developer, Team Lead, Project Manager.