|
|
Lecture Announcements
20-May-2005
|
Project demonstrations on Monday, 23 May
(The last demo day for all projects):
COSS at 9:00, Incrediblesix at 10:30, 6-member no name team at
12:00, and others after 13:00. |
|
You should be ready at the lab
before your presentation time. That is all team members are present at
the lab, the programs are ready for presentation, the print outs of the
required project documents (SPMP, RAD, SAD, TD, UM) are on the table, and other UML design
documents are loadedon the demo computer. |
|
Coming late to your final project demo or
not being ready at the presentation time will be considered as a
negative point for your demo. You will not get an extra time for
your presentation. |
|
The members of some teams that have
unbalanced project works or have team members who did not do his/her
responsibilities will get different project grades.
|
20-April-2005
7-April-2005
|
The project teams and their
web sites are posted
here. |
|
The midterm exam date: 28
April 2005, Thursday, 2-hour exam.
|
23-March-2005
|
Please look at the Course
Materials table given below. Your second homework assignment was
posted there.
|
17-March-2005
|
Recitation hour: 21
March, Monday, 11:00 - 13:00. |
|
I`ll give information
about the course project on this Monday. Project teams will be
formed and projects
will start next week. Your project team will submit your project
proposal as a first project artifact. |
|
On Tuesday, 22 March in
class, you will be given the second quiz. Bring your books, it is
open-book. Topics for the quiz: UML and Design Patterns.
|
16-March-2005
|
The recitation hours and
program demos will be held on Mondays between 11:00 - 13:00
in the Lab.
|
10-March-2005
|
An addition to the first homework assignment
(Quiz question):
You will model the static view and dynamic view of one
of your banking transactions with an ATM machine using UML class and
sequence diagrams.
First you should identify your objects, like customer (you), ATM
machine, bank, its central bank, another bank (you may need it in
money transfer transaction), their attributes, operations and
associations. You should show the class diagrams’ relationships,
associations, aggregations and generalizations, and multiplicity
numbers in your diagrams.
Second you will take a transaction, like getBalance,
withdraw, deposit, transfer, and draw its sequence
diagram.
|
7-March-2005
|
Here
is your first homework assignment. |
|
Your TA will do some more
announcements about this assignment, please look at
his page at least once a day until the due date 16-March-2005.
|
|
I may also update
this document. Download it and
look at its version number. The first version number is 0.1.
|
15-Febrauary-2005
|
Welcome to CENG 302 Software Engineering! I hope
in this course you will master UML, and Java, learn some design patterns, methods, methodologies, and how to work with a team for conquering real complex and changing software systems.
|
|
Try to visit my
Software
Engineering page regularly, I will try to update it frequently in this
semester.
|
|
Start to visit your
Nasıf Ekiz's
course home page
regularly. He will make his
announcements
on his page. The homework solutions, some program samples and documents
related to his activities will be posted
here.
|
Course Materials
(Lecture Slides, Readings,
Programs, Technical Documents)
Lecture Slides
2003 Semester Slides
Date |
Material |
Topics Covered |
Projects |
HW/Q |
22/2 |
Overview
Lec 1 |
Course
Overview and Introduction to Software Engineering
Course Information, What is
Software Engineering? Modeling and Model Driven Development, UML, Design
Patterns, Software Development Phases, Software Process (Methodology),
Software Development using UML, Design Patterns and Processes. (chp 1) |
Project Tools:
Implementation, modeling and other tools |
|
7/3 |
Lec 2 |
Modeling with UML
What is Modeling? What is UML? UML First Pass, Use Case Diagrams, Class
Diagrams, Sequence Diagrams, Statechart Diagrams, Activity Diagrams,
Other UML Diagrams, Using the UML in Context (chp 2) |
UML |
HW1
Q1, Q2 |
17/3 |
Lec 3
MVC Sup
Samples |
Introduction to Design
Patterns
Introduction to Patterns and Frameworks, Types of Software Patterns,
Introduction to GoF Design Patterns, A Behavioral Pattern: Observer, An
Architectural Pattern: Model View Controller (MVC), Two Creational
Patterns: Factory Method and Abstract Factory, A Structural Pattern:
Facade. |
Introduction to
Design Patterns |
HW2 |
23/3 |
Lec 4
MSF,
TeamWork
Meetings
Lessons
from Birds |
Project
Organization and Communication
An Overview of Projects and Development Phases, Project Organization
Concepts, Project Communication Concepts, Organizational Activities (chp
4)
|
Projects
Start:
Teams, Project Ideas |
|
4/4 |
Lec 5.1
Lec 5.2 |
Project
Management
An Overview of Project Management: Basic Definitions, Management
Models, Phases of a Software Project.
Project Management Concepts: Tasks and Activities, Work Products,
Work Packages, Work Breakdown Structure, Task Model, Skill
Matrix, Organizations and Roles, Visualizing Organization Structures, The Software Project Management Plan (SPMP).
Project Management Activities: Planning, Organizing, Controlling,
and Terminating the Project (chp 14) |
Software Project Management Plan (SPMP) including
the Project Proposal
7 April 2005 Thursday |
|
7/4 |
Lec 6 |
Requirements
Elicitation
Software Lifecycle and
Adding Process, Requirements and System Fitness, An Overview of
Requirements Elicitation, Requirement Elicitation Concepts, Requirement
Elicitation Activities, Managing Requirements Elicitation (RAD) (chp 4) |
|
|
15/4 |
Lec 7
Projects |
Requirements
Analysis
An Overview of Analysis,
Analysis Concepts, Analysis Activities: From Use Cases to Objects,
Managing Analysis, Case Studies for Requirements Analysis (chp 5) |
Requirements Analysis
Document (RAD)
21 April 2005 Thursday |
|
6/5 |
Lec 8.1
EMS1 Case Study
EMS1 Slides |
System
Design I
Decomposing the System: An Overview of System Design,
System Design Concepts, System Design Activities: From Objects to
Subsystems: 1. Design Goals, 2. Subsystem Decomposition (Chp 6) |
|
|
9/5 |
Lec 8.2
|
System
Design II
Addressing Design Goals:
System Design Activities: Addressing Design Goals: 3. Concurrency, 4.
Hardware/Software Mapping, 5. Persistent Data Management, 6. Global
Resource Handling and Access Control, 7. Software Control, 8. Boundary
Conditions, Managing System Design, (Chp 7) |
System Architecture
Document (SAD)
Iterative Development Process Starts
5 May 2005 Thursday |
|
9/5 |
Lec 9.1
|
Object Design
I
Reusing Pattern Solutions:
An Overview of Object Design, Reuse Concepts: Solution Objects,
Inheritance and Design Patterns, Reuse Activities: Selecting Design
Patterns and Components (Chp 8) |
|
|
12/5 |
Lec 9.2
|
Object
Design II
Specifying Interfaces:
Interface Specification Concepts and Activities, Managing Object Design
(Chp 9) |
|
|
12/5 |
Lec 10
|
Mapping Models to Code
Mapping Concepts, Mapping Activities, Managing Implementation (Chp 10) |
|
|
12/5 |
Lec 11
|
Testing
Testing Concepts, Testing Activities, Managing Testing (Chp
11) |
|
|
25/5 |
Last Lesson
|
New Story of the Hare and
Tortoise |
|
|
Templates and Project Work
Document
Templates and Project Work |
Samples |
Deadline |
Percent on
Project Grade |
SPMP |
|
7 April |
15 |
RAD (Requirement
Analysis Document) |
RAD1
RAD2 |
21 April |
15 |
SAD (System
Architecture Document)
(System and Object Design Documents) |
SAD1
SAD2 |
5 May |
15 |
TD (Testing
Document)
Testing-Debugging |
|
9 May |
10 |
UM (User Manual) |
|
16 May |
10 |
Process &
Communication |
|
|
10 |
Coding
and Product |
|
19 May |
25 |
Other Samples (not ideal
projects, but some ideas ...) |
Prj1
|
Readings
Software
Processes (Methodologies) |
Date |
Material |
Comments |
|
CMM |
Key Practices of the
CMM v1.1 |
M. C. Paulk, et.al,
Carnegie Mellon University-Software Engineering
Institute, Pittsburgh, Pennsylvania 1993. |
The CMM for Software |
M. C. Paulk, et.al,
CMU-SEI,
Pittsburgh, Pennsylvania |
Effective CMM-Based Process
Improvement |
M. C. Paulk,
CMU-SEI, Pittsburgh,
Pennsylvania 1993. |
Extreme Programming
from a CMM Perspective |
Mark C. Paulk,
IEEE Software, November/December 2001. |
RUP
UPEDU |
Rational Unified Process
|
Rational Software White
Paper, TP026B, Rev 11/01 |
What Is the Rational Unified Process? |
Philippe Kruchten,
Rational Fellow, (html). |
RUP vs. XP |
Robert C. Martin,
objectmentor.com, 2001, a description of XP as a minimal instance of RUP |
RUP Poster
|
Rational Unified Process -
Process Made Practical. |
The Ten Essentials off RUP,
The Essence of an Effective Development
Process |
Leslee Probasco,
Rational Software White paper. |
Tailoring the Rational Unified
Process, A Lightweight Process Development Case
|
ICONIX Software
Engineering |
XP |
Extreme Programming |
J. Highsmith, (the best
summary at the moment written by an outsider, according to Martin
Fowler). |
Extreme Programming Installed
|
A book on XP (288
pages). |
Agile (Light)
Methodologies |
J. Highsmith |
FDD |
Feature-Driven Development (FDD) |
Steve Palmer and Peter Coad |
Software Engineering |
Jonathan Kern |
|
MSF |
Microsoft Solution Framework |
Datasheets and white papers
describing MSF’s updated models and disciplines are now available in the
MSF Resource Library. |
References
Some OO Links
|