Dr Rami Bahsoon

Senior Lecturer in Software Engineering, School of Computer Science

The University of Birmingham

 

crest

 

University-of-Birmingham-logo

 

Home   Profile   Research   Publications   Teaching     

 

2018/2019 Spring Semester:

BSc/M-Level (Second Year). Software Engineering II. 10 credits.

-Module syllabus can be found here

- Slides will be available online prior to the start of each unit.

- An effort has been made to make sure that the below units are self-contained. You are encouraged to consult the listed references for more reading.

Unit Number

Download

Content

References

Unit 0

Section Introduction

Module introduction and assessment

 

Unit 1

Brief Overview of Software Lifecycle

Agile Software Development

Scrum

DevOps

Extra video content:

-       Link to Scrum in 10 minutes

-       Scrum in Practice Microsoft Labs Seattle

-       Explaining Agile - Martin Fowler and Neil Ford at USI

-       DevOps introduction by Rackspace

-       DevOps tools

 

Unit 2

Engineering OO Software with Unified Modelling Language (UML)

 

 

Overview/review of UML notions for Engineering OO and CBS Software

-       Introduction

-       Use case modelling

-       Scenarios

-       Activity diagrams

-       Class analysis and object diagrams

-       Interaction diagrams

-       State diagrams

-       Component and deployment

Extra Videos- Credit to Alex Orso

Use Case modelling

Role of Use Cases

Example: use case modelling

Class Diagram

Relationships in class diagrams

Generalisation in class diagrams

Class Diagram Analysis - Attributes

Class Diagram: Operations

Sequence Diagram

State Diagram

State Transition Diagram: Example

Component Diagram

Deployment Diagram

UML Distilled: A Brief Guide to the Standard Object Modeling Language, Martin Fowler

Using UML: Software Engineering With Objects and Components, Perdita Stevens, Rob Pooley

Unit 4

Introduction to Software Architecture and Styles

 

 

Software Architecture Definition

 

On Styles: Sample

Software Engineering, Ian Somerville

The Software Architecture: Foundations,Theory, and Practice Richard N. Taylor, by Nenad Medvidović, and Eric M. Dashofy

Further reading by Garlan and Shaw:

 

Unit 5

Software Architecture Evaluation and Trade-offs Analysis Method

 

Architecture Tradeoff Analysis Method".

Carnegie Mellon Software Engineering Institute.

Unit 6

Introduction to Service-oriented Architecture and Cloud SaaS

 

 

Misc. Topics

 

Introduction to Microservices

 

How to Interview an Architect?

 

Revision

Revision Highlight,for Guidance only!

 

 

Unit 6: Industrial Presentations on Advanced Topics in Software Architecture

IBM

Agile for Leaders

 

 

Coursework

 

Coursework

Theme: Software Engineering for Data Science Applications, Case of BIFOR

 

Useful Videos

 

Sample Dataset

 

Tree Tweets

 

Links to BIFOR

 

BIFOR Face

Group of 4-5 members

 

Coursework released 29/1

Deadline: 25th March 2019

 

Early submission is strongly encouraged to ease face-to-face design

walkthrough feedback

Demonstrators and Courtesy Feedback Sessions prior to submission:

 

Sara Hassan

Rami Bahsoon

 

 

 

Sample Solution for UML Exercises

UML Sample 1

UML Sample 2

UML Sample 3(Flight booking)

 

 

Please do not use my e-mail account.

 

 

 

The University of Birmingham, Edgbaston, Birmingham, B15 2TT, UK
copyright of The University of Birmingham

 

http://www.ipstat.com/cgi-bin/ipstat?name=ramibham