Haifa University   CS Home   Software Engineering

Software Engineering Course - Winter 2008-9

Course Info

*** Subscribe to the course mailing list here ***

Lecturer:
Dr. Amir Tomer
amirt@cs.haifa.ac.il

Reception hours:

Before/after class - Only by prior arrangement!

Course Outline

This course is intended to provide the students with an overall view over Software Engineering as an engineering discipline and with insight into the processes of software development. Based on the contents of the SWEBOK , the course highlights a number of important Software Engineering topics, mainly:

·       Software Life-cycle Models

·       Software Requirements

·       Object Oriented Analysis and Design
(using UML)

·       Software Integration and Testing

·       Support Processes and Software Quality

Reference Books

•         Schach, S. R., Object Oriented and Classical Software Engineering, 7th edition, McGraw-Hill, 2007

•         Pressman R. S. and Ince D., Software Engineering – A Practitioner’s Approach, McGraw-Hill, 2007

•         Sommerville, I., Software Engineering, 8th edition, Addison Wesley, 2006

•         Thayer, R.H. and Christiansen, M. J., Software Engineering, Volume 1: The Development Process, 3rd edition, Wiley & Sons, 2005

•         Thayer, R. H. and Dorfman, M., Software Engineering, Volume 2: The Supporting Processes, 3rd edition, Wiley & Sons, 2005

•         Gamma E. et al,  Design patterns: Elements of reusable object-oriented software, Addison-Wesley, 1995

•         Rambaugh J., Jacobson I. and Booch G., The Unified Modeling Language Reference Manual Addison-Wesley, 2005

•         Fowler M., UML Distilled, Addison-Wesley, 3rd edition, 2004

•         Cockburn, A., Writing Effective Use Cases, Addison-Wesley, 2001

 

News

·        HW 4 submission postponed to Sun. 22/2/09, 23:59

Lecture Notes (Hebrew PDF)

[Note: The slides appear one per page for easy viewing. Recommended printing format: B/W, 2 or 4 per page]

·       00 - About the course

·       01 - Introduction

·       02 – The Development Process

·       03 - Requirements Development and Management

·       04 - System Analysis and Architecture

·       05 - Software Analysis and Architecture

·       06 – Object Oriented Design – Part A

·       07 – Object Oriented Design – Part B

·       08 – Coding and Unit Testing

·       09 – Integration and Testing

·       10 – Life Cycle Models and Evolution

·       11 – Support Processes & Software Quality Assurance

Class Tutorials

·        RoboLib - The Robotic Library – Client's Story (word)

·        RoboLib – Requiremens Table – Ver.1 (excel)

·        RoboLib – SRS (word)

·        RoboLib – Requiremens Table – Ver.2 (excel)

·        RoboLib – SDD (word)

·        RoboLib – Requiremens Table – Ver.3 (excel)

Complementary Materials & References

·       The Software Engineering Body of Knowledge (SWEBOK)

·       Charette: Why Software Fails?

·       Brooks: No Silver Bullet

·       The SE Code of Ethics

·       UML 2.1.2 Language Specification

·          

·       80 Rehearsal Questions + Solutions

Project Assignments and Materials

·        Submission Guide

·        FAQ – questions to client + answers (important!)

·        Project Definition

·        eShop – The Automatic Supermarket – Client's Story (word)

·        Assignment #1 [Submission: 30/11/2008, 23:59]

·        Assignment #2 [Submission: 24/12/2008, 23:59]

·        Assignment #3 [Submission: 21/01/2009, 23:59]

·        eShop – Client's Story – Demo Version

·        eShop – Demo Specification

·        Assignment #4 [Submission: 22/02/2009, 23:59]

·        eShop – STD/STR template (excel)

·        HW4 case analysis written by past students

 

Free UML Tools

·       Argo UML

·       Visual Paradigm (community edition)

Grades

·       Homework grades

•