
|
|
Lecture Announcements
31
December 2007
 |
All project demonstrations and evaluations
will be on 3 January 2008, Thursday (CENG 401) and
4 January 2008, Friday (BILM 401), between 9:00 and 16:00. |
 |
The project team
demonstrations will be scheduled according the
CENG 401 projects list (6 projects) and
BILM
401 projects list (6 projects). |
 |
There will be 3 projects (at 9, 10
and 11) in the morning, and 3 projects (at 13, 14, and 15) in the
afternoon on Thursday (CENG 401 Projects) and Friday (BILM 401
Projects). |
 |
A project demo duration will be 30-45 minutes depending on
the project. |
 |
All team members must be
ready to answer questions about your project in the lab at your
presentation time. |
 |
When evaluating a project team in
their time, other teams will not
be in the lab. |
 |
You should come at least 30-45 minutes
before your demo time, your team may be called earlier depending on
the project presentation before your time.
|
 |
Upload all your project work to
your project web site before your demo time. |
 |
You should have submitted your printed documents,
updated Project Proposal, RAD, SAD, and UM,
to your instructor before your
demonstration. |
 |
Your running program, UML modeling and
development tools (Borland JBuilder 2007) must
be ready before you show your final work. |
 |
Your program must be running without
your development tool! That is you should have deployed and put all
your class files into a JAR file and run it using only a Java Run
Time Environment (JRE). In short, it should be a product, not
a developing application in a development environment! |
 |
You should also bring your Project Contribution
Report. Prepare it using
this template.
|
 |
When evaluating your project, I'll use
this
project organization
document for your project organization
and this grading
policy document for grading all artifacts and activities of your
project. |
 |
During the demo,
first of all, you have to show your
software architecture and working prototype based on PCMEF
meta architecture using Together and your implementation tool
(Eclipse or JBuilder). |
 |
You have to show your packages, their
dependencies, class diagrams, your updated functional model
(Use Case model and companion HTML documents), updated some
dynamic views (sequence, activity, state diagrams depending
on your project) using Together. |
 |
Your User Manual (UM), Coding
and Product (CP) will be graded this last
week. Your Process and Communication (PC) have
being graded for some time... |
 |
The grading criteria for Coding and
Product (CP):
Software Architecture and Development Techniques (35)
Architecture and Project Difficulty (Subsystem decomposition based on
PCMEF, packages, classes, inheritance, ...) (20)
Applying UML and Patterns (15)
Coding and Implementation (35)
Coding Style and Coding API Documentation (15)
(Java coding style and documentation -
generated Javadoc HTML API showing packages, classes and their
explanations )
Testing Process (10)
Audits and Metrics for Source Code (10)
Product (30)
Final Product for Naive End User: Working Software (Functionality,
usability, user friendliness, …) (30) |
 |
The announcements on this page may be
updated depending on your questions and some new needs. So please
check this page for a while ... |
24 September
2007
 |
Welcome to CENG 402 Software Engineering! In this
course you will be introduced to how to conquer real complex and changing software systems.
|
 |
In this course you will learn
modern object oriented analysis, design,
and implementation techniques using UML, Design
Patterns, Java and Software Development Processes
to develop a complex software project with a small team
having limited resources (qualified developers, time) and some people related problems.
|
 |
Start to visit
your TAs ( Melek Oktay
and
A. Volkan Gürel )
web pages
regularly. They will make
their announcements
on their pages. The homework solutions, some program samples and documents
related to project activities will be posted
there.
|
Course Materials
 |
Purpose: To allow better concentration in lecture by reducing
note-taking pressure and to provide a study-aid before and after lecture.
|
 |
Disclaimers: (a) I may not follow these
slides exactly in class. (b) Students are responsible
for what I say in class. (c) Reading these slides is
not a substitute for attending lecture. |
 |
Almost all slides used during the course will
be available via the
following links. I may also skip several slides during the lecture (?00
slides would be too much!). They are included in the course material for
completeness and to provide a good reference for your future
professional software engineering projects. |
|
Wk |
Date |
Materials |
Topics Covered |
Projects |
HW/Q |
1
2 |
24/9
1/10 |
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) |
Start with your Project Tools:
Implementation, modeling and other tools |
HW1 |
3
4 |
8/10
15/10 |
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 |
HW2 |
| 5 |
22/10 |
Lec 3
Examples
MVC |
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), A Creational
Pattern: Factory Method, A Structural Pattern: Facade |
Introduction to
Design Patterns |
HW3 |
| 6 |
29/10 |
Lec 4
Teamwork
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 |
|
7
8 |
5/11
12/11 |
Lec 5 |
Requirements
Elicitation
and Analysis
Software Lifecycle
and Adding Process, Requirements and System Fitness, Requirement
Elicitation Concepts, Requirement Elicitation Activities, Analysis
Concepts, Analysis Activities: From Use Cases to Objects, Managing
Requirements Elicitation and Analysis, Case Studies for Requirements
Analysis |
Project Proposal |
|
9
10 |
19/11
26/11 |
Lec 6
EMS1 Case Study
EMS1 Slides |
System
Design
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)
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) |
Requirements Analysis
Document (RAD) |
|
|
11 |
3/12 |
|
Midterm Exam
|
|
|
|
12 |
10/12
17/12 |
Lec 7 |
Object Design
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)
Specifying Interfaces:
Interface Specification Concepts and Activities, Managing Object Design
(Chp 9) |
System Architecture
Document (SAD) and UML Models |
|
|
13 |
24/12 |
Lec 8
|
Testing
Testing Concepts, Testing Activities, Managing Testing (Chp 11) |
|
|
|
14 |
1/1
2008 |
|
Project Demonstrations and
Evaluations |
User
Manual (UM),
Coding and Product |
|
| Document
Templates and Project Work |
Samples |
Percent on
Project Grade |
|
Proposal |
|
10 |
|
RAD (Requirement
Analysis Document) |
RAD1
RAD2
RAD3
RAD4 |
20 |
SAD (System
Architecture Document)

(System and Object Design Documents) |
SAD1
SAD2
SAD3
SAD3 |
20 |
| UM (User Manual) |
|
10 |
| Process &
Communication |
|
10 |
| Coding
and Product |
|
30 |
| Other Samples (not ideal
projects, but some ideas ...) |
RAD-SAD
Samples |
|