CENG 401 Software Engineering

12/25/12

Home
Up

 

Lecture Announcements

   25 January 2007

bullet

All project demonstrations and evaluations will be on Friday, 26 January, between 9:00 and 12:30. A project demo duration will be 30-45 minutes depending on projects. Estimate your time using your row in this table.

bullet

All team members must be in the lab at your presentation time. When evaluating a project team, other teams will not be in the lab.

bullet

You should come at least 30-45 minutes before your demo time, your team may be called earlier depending on the project presentations on Friday morning. 

bullet

Upload all your project work to your project web site before your demo time.

bullet

You will submit your printed documents, updated RAD, SAD, and UM, before your demonstration.

bullet

Your running program, UML modeling and development tools (Borland Together 2006 Release 2 for Eclipse) must be ready before you show your final work.

bullet

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!

bullet

You should also bring your Project Contribution Report. Prepare it using this template.

bullet

When evaluating your project, I'll use this document for your project organization, tasks and assignments. For grading criteria for Coding and Product (CP), look at the announcement written on 20 December 2006 given below.

   12 January 2007

bullet

Final exam: 15 January 2007, 14:30, E-302.

bullet

This is a comprehensive exam covering some important topics of Software Engineering given in this semester. You are responsible from all chapters.

bullet

It is a closed book and notes exam.

bullet

This year's midterm questions and answers are here.

bullet

This is a sample final exam given in the Spring 2005 semester. There are also partial solutions in the zip file. First try to solve the problems, then look at the solutions.

bullet

I hope you have learned some new exciting things ... 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...

bullet

Have a good final exam period... I wish you all the best for your future Software Engineering in your professional life...  H. G.

   20 December 2006

bullet

The next Monday (25 December) after the class time (13:00 - 16:00) is the sharp deadline for SAD and your system architecture, and updated RADs. You should also bring your old graded RADs.

bullet

Please use the SAD template having 10 headings given in lecture slides on page 152. You can get some ideas from the SAD samples given below, but don't use their formats.

bullet

You have to show your software architecture and first working prototype based on PCMEF meta architecture using Together and your implementation tool (Eclipse or JBuilder) in the computer lab on Monday afternoon.

bullet

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
------------------------

bullet

Your User Manual (UM), Coding and Product (CP) will be graded on Friday, 12 January 2007. Your Process and Communication (PC) have being graded for some time...

bullet

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 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)

bullet

The announcements on this page may be updated depending on your questions and some new needs. So please check this page for a while ...

   4 December 2006

bullet

You have your midterm exam next Monday, 11th of December at 10:00 am, in class.

bullet

I will continue the System Design in the first hour, so please come also to the lecture before the exam hour.

bullet

The exam will touch all topics covered so far (slide 73 of the lecture 6).

bullet

It will be closed book and notes.

bullet

Look at the last time schedule of our course given above and arrange your project work according to this time table... 

bullet

On remaining Mondays including next Monday your project team should come and show your work. Remember the PC, Process and Communication (with talking, documentation and your working product), part of the course. That's very important, don't neglect it, you will be graded for PC also ...

bullet

A midterm sample from previous years.

   6 November 2006

bullet

Please download this HW3 (Introduction to Design Patterns) and do it until next lecture (13 November, Monday, class time).

bullet

You have to also submit your final Project Proposal next Monday.

   30 October 2006

bullet

Welcome back to CENG 401 after two weeks!

bullet

This was a really long term break, so we have to compensate it with
1) a homework assignment (HW2),
2) the first draft of your project proposal (read below, 10 October) and
3) a lecture makeup. (Day, time, class ???)

bullet

You should hand in your HW2 and project proposal next Monday, 6 November.

bullet

Before writing your proposal your team (with all project team members) should talk to your TA and/or me in our office hours.

bullet

The names of project teams, later their projects and links to their web pages will be posted to the web page of your TA.

bullet

The results of HW1 are posted here. Look at this page for your grades and course grading.

   17 October 2006

bullet

The second homework assignment (Introduction to UML and a Modeling Tool) will be given after Ramazan Bayrami.

   10 October 2006

bullet

HW1: Please download the following MP3 radio recording from here (43.1 MB) or Software Engineering Radio internet web site.

bullet

After downloading the file, listen to it and answer the questions in this file.

bullet

Start to form your project team (5 members) and think about your project. You will submit your project proposal soon...  You can use this Project Proposal template when preparing your proposal.

bullet

When considering your project organization, use this document. Customize this simple project organization model for your project. I'll update it later.

  25 September-2006

bullet

Welcome to CENG 302 Software Engineering! In this course you will be introduced to how to conquer real complex and changing software systems.

bullet

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.

bullet

Try to visit my Software Engineering page regularly, I will try to update it frequently during the semester.

bullet

Start to visit your TA Melek Oktay's web 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
bullet

Purpose: To allow better concentration in lecture by reducing note-taking pressure and to provide a study-aid before and after lecture.

bullet

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.

bullet

Almost all slides used during the course will 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

25/9
2/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

9/10
16/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
  23/10  Ramazan Bayramı Tatili
5 30/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 6/11  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
13/11
20/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
27/11
4/12

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 11/12   Midterm Exam    
12 18/12
25/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  
  1/1
2007
 Kurban Bayramı Tatili
13 8/1
2007
Lec 8

Testing
Testing Concepts, Testing Activities, Managing Testing (Chp 11)
Project Demonstrations and Evaluations

User Manual (UM), Coding and Product  

 

 

   UML
bullet

Inside the UML, Rational, a multimedia tutorial to UML, requires Quick Time, (336MB !).

bullet

Allen Holub's UML Quick Reference     UML Reference Card (Short, UML 1.4)

bullet

The UML Reference Manual

 

   Project
bullet

Course project grading policy.

bullet

Look at the web site of our text book OOSE for document templates and sample projects.

bullet

Also look at Software Design and Documentation page. 

 

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 ...)  Prj1 

 

 

Home

This site was last updated 01/29/08