You are on page 1of 9

BIRLA INSTITUTE OF TECHNOLOGY & SCIENCE, PILANI

WORK INTEGRATED LEARNING PROGRAMMES


Digital
Part A: Content Design
Course Title

SOFTWARE ARCHITECTURES

Course No(s)

SS ZG653

Credit Units

Credit Model

3+1+1

Content Authors
Lecture Delivery

Prof. SANTONU SARKAR


Ms. Rizwan Parveen

Course Objectives
No
CO1

To introduce the concept of architectural design of software and its practice.

CO2

To study the various architectural styles used in software design.

CO3

To understand the evaluate designs of existing software systems from an architectural


perspective.

Text Book(s)
T1
Bass, Len . Software Architecture in Practice. Pearson Education, 3rd Ed.
T2

Buschmann, F. Pattern Oriented Software Architecture. Vol 1, Wiley Student Edition, 2002.

Reference Book(s) & other resources


R1
Taylor et al, Software Architecture: Foundations, Theory, and Practice, Wiley, 2009
R2

Mary Shaw & David Garlan, Software Architecture Perspectives on an Emerging


Discipline, PHI,1996.

R3

Gamma. Design Patterns: Elements of Reusable Object Oriented Software, Addison


Wesley, 1995

R4

Pressman, Software Engineering A Practitioner's Approach 7th Edition

Content Structure
1.
Software Architecture - Introduction
1.1.
Motivation
1.2.
What is Software Architecture
1.3.
Importance of Software Architecture
1.4.
A Typical Software Architecture
1.5.
Components of Software Architecture
2.
Structure of Software Architecture
2.1.
Three structures
3.
Software Quality
3.1.
Quality classes, quality attribute, quality attribute scenario and

4.

architectural tactics
3.2.
Usability and its tactics
3.3.
Availability and its tactics
3.4.
Modifiability and its tactics
3.5.
Performance and its tactics
3.6.
Security and its tactics
3.7.
Testability and its tactics
3.8.
Interoperability and its tactics
Documenting Software Architecture
4.1.
Introduction to OO Design
4.2.
Introduction to UML
4.3.
Documenting Architecture using UML
4.4.
Introducing Agile methodology
4.5.
Rational Unified Process

5.

Patterns in Understanding and Creating Architectures


5.1.
Patterns and Software Architecture
5.2.
The Various Categories of Patterns
5.3.
Mud to Structure Category of Architectural Patterns
5.4.
Layered Architecture
5.5.
Pipes and Filters Architecture
5.6.
Blackboard Architecture
5.7.
Distributed System
5.8.
MVC Intro, detailed and MVC in Ajax Model
5.9.
Microkernel
5.10.
Reflection

6.

Design Patterns

6.1.
6.2.
6.3.
6.4.
6.5.
6.6.
6.7.
6.8.
6.9.
7.

Introduction
Creational Pattern
Decorator
Adapter
Proxy
Iterator and Observer
Strategy
Visitor
Command

Architecture for Next Generation Platform- Cloud Computing


7.1.
Introduction and Virtualization basic
7.2.
IAAS and Data storage
7.3.
Quality attribute revisited
7.4.
CAP Theorem and its implication to Architecture
7.5.
Microservice pattern and design for failure

Learning Outcomes:
No

Learning Outcomes

LO1

To illustrate the current state of the discipline of Software Architecture and examine the
ways in which architectural design can affect software design.

LO2

To study the various architectural styles used in software engineering.

LO3

To understand the evaluate designs of existing software systems from an architectural


perspective.

LO4

To provide the intellectual building blocks for designing new systems in principled ways,
using well-understood architectural paradigms.

LO5

To learn architectural paradigm for modern platform- specially Cloud Computing

Part B: Learning Plan

Academic Term
Course Title
Course No
Lead Instructor

First Semester 2016-2017


SOFTWARE ARCHITECTURES
SS ZG653

Ms. Rizwan Parveen

Session 1
Type

Type

Pre CH
During
CH
RL 1.1 to RL
1.3
Post CH

Sequence

Study/HW Resource Reference

Introduction to the Course, its


objective, plan and study material

T1: Chapter 1, Chapter 2

A Brief History of Software


Architecture, its definition and
two examples
Introduction to the Styles, Views
and Rationals 4+1

Lecture Notes and Reference books

Session 2
Type

Type

Sequence

Pre CH

Three structures

During
CH

Quality classes, Quality


attribute, quality attribute
scenario and architectural
tactics

Post CH

Session 3

RL 2.1, RL
3.1,

Study/HW Resource Reference


T1: Chapter 4

Lecture Notes and Reference books

Type

Type

Sequence

Pre CH
During

Study/HW Resource Reference


T1: Chapter 11

RL 4.1

Usability and its tactics

Post CH

Lecture Notes and Reference books

Session 4
Type

Type

Sequence

Pre CH
During
CH

Study/HW Resource Reference


T1: Chapter 5

RL 4.2

Availability

Post CH

Lecture Notes and Reference books

Session 5
Type

Type

Pre CH
During
CH

Sequence

Modifiability
RL 5.1 and 5.2

Study/HW Resource Reference


T1: Chapter 7 & 8

Performance

Post CH

Lecture Notes and Reference books

Session 6
Type

Type

Sequence

Pre CH

Security

During
CH

Testability

RL 6.1RL
6.2

Study/HW Resource Reference

T1: Chapter 9 & 10

Post CH

Lecture Notes and Reference books

Session 7
Type

Type

Sequence

Pre CH
During
CH
Post CH
Session 8

Study/HW Resource Reference


T1: Chapter 6

RL 6.3

Interoperability
Lecture Notes and Reference books

Type

Type

Pre CH
During
CH

Sequence

Pattern definition and


classification
RL 9.1RL
9.3

Post CH

Study/HW Resource Reference


T2: Chapter 1, Chapter 2

9.2 Pattern category and Intro to


Layering
9.3 Layering pattern

Lecture Notes and Reference books

Session 9
Type

Type

Pre CH
During
CH

Sequence

Study/HW Resource Reference

Pipe and Filter


RL 10.1RL
10.2

T2: Chapter 2

Blackboard

Post CH

Lecture Notes and Reference books

Session 10
Type

Type

Pre CH
During
CH

RL 11.1RL
11.2

Sequence

Study/HW Resource Reference

Distributed System Intro

T2: Chapter 2

Distributed System detailed

Post CH

Lecture Notes and Reference books

Session 11
Type

Type

Pre CH
During
CH
Post CH

Sequence

Study/HW Resource Reference

MVC Introduction
RL 12.1RL
12.3

T2: Chapter 2

MVC Detailed
MVC in Ajax Model

Lecture Notes and Reference books

MID SEMESTER EXAM till Session 11

Session 12
Type

Type

Pre CH
During
CH

Sequence

Microkernel Introduction
RL 13.1RL
13.3

T2: Chapter 2

Microkernel Detailed
Reflection

Post CH

Study/HW Resource Reference

Lecture Notes and Reference books

Session 13
Type

Type

Pre CH
During
CH

RL 14.1RL
14.2

Sequence

Introduction

Study/HW Resource Reference


T2, R3

Creational Pattern

Post CH

Lecture Notes and Reference books

Session 14
Type

Type

Pre CH
During
CH

Sequence

Decorator
RL 15.1RL
15.3

T2, R3

Adapter
Proxy

Post CH

Study/HW Resource Reference

Lecture Notes and Reference books

Session 15
Type

Type

Pre CH
During
CH

RL 16.1RL
16.2

Sequence

Iterator and Observer

Study/HW Resource Reference


T2, R3

Strategy

Post CH

Lecture Notes and Reference books

Session 16
Type

Type

Pre CH

RL 16.3RL

Sequence

Study/HW Resource Reference


T2, R3

During
CH

Visitor
16.4

Post CH

Command

Lecture Notes and Reference books

Session 17
Type

Type

Sequence

Pre CH

Study/HW Resource Reference


T1

During
CH

RL 7.1

Introduction to OO Design

Post CH

Lecture Notes and Reference books

Session 18
Type

Type

Pre CH
During
CH

Sequence

Introduction to UML
RL 7.2, RL 8.1

Study/HW Resource Reference


T1

Documenting Architecture
using UML

Post CH

Lecture Notes and Reference books

Session 19
Type

Type

Sequence

Study/HW Resource Reference

Introducing Agile methodology

T1, R4 (Ch 2.5, 3.5.5, 3.5.8, 5.5.1


Analysis class to design class 6.5.1),
T2

Pre CH
During
CH

RL 8.2RL
8.3

Rational Unified Process

Post CH

Lecture Notes and Reference books

Session 20
Type

Type

Pre CH
During
CH

RL 17.1RL
17.2

Sequence

Introduction and Virtualization


basic

Study/HW Resource Reference


T1: Chapter 26

IAAS and Data storage

Post CH

Lecture Notes and Reference books

Session 21
Type

Type

Pre CH

RL 18.1RL

Sequence

Study/HW Resource Reference


T1

During
CH

Quality attribute revisited


18.2

Post CH

CAP Theorem and its


implication

Lecture Notes and Reference books

Session 22
Type

Type

Sequence

Study/HW Resource Reference


T1

RL 18.3

Microservice pattern and design


for failure

Pre CH
During
CH
Post CH

Lecture Notes and Reference books

Evaluation Scheme:
Legend: EC = Evaluation Component; AN = After Noon Session; FN = Fore Noon Session
No
Name
Type
Duration Weight Day, Date, Session, Time
EC-1
Quiz-I
Online
5%
September 1-10, 2016
Quiz-II
Online
5%
October 1-10, 2016
Lab
Online
10%
To be announced
EC-2
Mid-Semester Test
Closed
2 hours
30%
24/09/2016 (FN) 10 AM 12 Noon
Book
EC-3
Comprehensive
Open
3 hours
50%
05/11/2016 (FN) 9 AM 12 Noon
Exam
Book
Syllabus for Mid-Semester Test (Closed Book): Topics in Session Nos. 1 To 11
Syllabus for Comprehensive Exam (Open Book): All topics (Session Nos. 1 to 22)
Important links and information:
Elearn portal: https://elearn.bits-pilani.ac.in
Students are expected to visit the Elearn portal on a regular basis and stay up to date with the
latest announcements and deadlines.
Contact sessions: Students should attend the online lectures as per the schedule provided on the
Elearn portal.
Evaluation Guidelines:
1. EC-1 consists of either two Assignments or three Quizzes. Students will attempt them
through the course pages on the Elearn portal. Announcements will be made on the
portal, in a timely manner.
2. For Closed Book tests: No books or reference material of any kind will be permitted.
3. For Open Book exams: Use of books and any printed / written reference material (filed
or bound) is permitted. However, loose sheets of paper will not be allowed. Use of
calculators is permitted in all exams. Laptops/Mobiles of any kind are not allowed.
Exchange of any material is not allowed.
4. If a student is unable to appear for the Regular Test/Exam due to genuine exigencies, the
student should follow the procedure to apply for the Make-Up Test/Exam which will be
made available on the Elearn portal. The Make-Up Test/Exam will be conducted only at
selected exam centres on the dates to be announced later.

It shall be the responsibility of the individual student to be regular in maintaining the self
study schedule as given in the course handout, attend the online lectures, and take all the
prescribed evaluation components such as Assignment/Quiz, Mid-Semester Test and
Comprehensive Exam according to the evaluation scheme provided in the handout.

You might also like