Download Information about course - School of Electrical Engineering and

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
www.site.uottawa.ca/~elsaddik
CSI 1102
Introduction to Software Design
Prof. Dr.-Ing. Abdulmotaleb El Saddik
University of Ottawa (SITE 5-037)
(613) 562-5800 x 6277
elsaddik @ site.uottawa.ca
abed @ mcrlab.uottawa.ca
http://www.site.uottawa.ca/~elsaddik/
1
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Multimedia Communications
Dr.-Ing. Degree from Darmstadt University of
Technology, Germany
Assistant professor in the School of Information
Technology and Engineering (SITE)
I am affiliated with:
• Multimedia Communications Research Laboratory
(MCRLab)
• Distributed Collaborative Environments Research
Laboratory (DISCOVER)
2
(c) elsaddik
1
www.site.uottawa.ca/~elsaddik
Students Supervision & Conf. Organization
3
(c) elsaddik
• In Progress
• Ph. D. (2)
• MSc. (11)
• Completed
• MSc. (1) & Diploma theses (22)
Conference organization
• PC Member of several workshops & conferences
• Vice Chair
• Euro-Par 2003 - International Conference on Parallel and
Distributed Computing, 26th - 29th August 2003 in
Klagenfurt, Austria
• Technical Program Chair
• IEEE International Workshop on Haptic Virtual
Environments and their Applications HAVE2002, Ottawa,
Canada, Nov. 2002
• General Co-Chair
• Second International Workshop on Software Engineering
and Multimedia Applications, Baden-Baden, Germany,
August 2000
www.site.uottawa.ca/~elsaddik
Research Projects & Interests
4
• Research Interests
• Web Engineering
• Multimedia communications
• Tele-Collaborative Environments
• Applications in tele-learning
• Web Services
• Following are some of our research topics:
• Reusable hypermedia systems
• Layered learning objects
• Advanced multimedia objects (2D, 2.5D, & 3D)
• Web- and XML-Technologies
• Web QoS
• Web Services security and accounting (sociability)
• Web services adaptability & scalability (including
context awareness)
• Internationalization support of collaborative
environment
(c) elsaddik
2
www.site.uottawa.ca/~elsaddik
Publications & Technology Transfer
Publications
• Books authored (2):
• "Interactive Multimedia Learning", ISBN: 3-540-41930-6, SpringerVerlag (2001), 200 pp.
• "Open Java: Von den Grundlagen zu den Anwendungen", (Open
Java: From Basics to Buildings Applications), Springer-Verlag,
ISBN: 3540654461 (1999), 790 pp.
• Books edited (1)
• Papers in refereed journal (6)
• Papers in refereed conference proceedings (23)
Technology Transfer:
• Product co-development:
• Multibook: Springer-Verlag Germany, ISBN: 3-540-66757-1
(http://www.multibook.de ), 2000.
• LOM-Editor (IEEE-Learning Object Metadata editor)
(http://www.multibook.de/lom /), 2001
• Software license
• (JASMINE: Java Application Sharing in Multiuser INteractive
Environmnets ) with S. Shirmohammadi, N.D. Georganas and R.
Steinmetz. Licensed to University of ULM, Germany 2001.
5
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Fun
Question 1:
If you knew a woman who was pregnant,
• who had 8 kids already,
• three of whom were deaf,
• two of whom were blind,
• one mentally retarded,
• and she had syphilis...
• would you recommend that she have an
abortion?
6
(c) elsaddik
3
www.site.uottawa.ca/~elsaddik
Fun
Question 2.
It is time to elect a world leader, and your vote counts. Here
are the facts about the three leading candidates:
• Candidate A:
• Associates with crooked politicians and consults with
astrologists. He's had two mistresses. He also chainsmokes and drinks 8 to 10 martinis a day.
• Candidate B:
• He was kicked out of office twice, sleeps until noon, used
opium in college, and drinks a quart of whiskey every
evening.
• Candidate C:
• He is decorated war hero. He's a vegetarian, doesn't
smoke, drinks an occasional beer, and hasn't had any
extramarital affairs.
7
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Fun
Candidate A:
• Franklin D. Roosevelt
Candidate B:
• Winston Churchill
Candidate C:
• Adolph Hitler
And by the way:
Answer to the abortion question:
• If you said yes,
• you just killed Beethoven.
8
(c) elsaddik
4
CSI1102:
Introduction to Software
Design
Class 0:
Overview & Admin
www.site.uottawa.ca/~elsaddik
Professor’s details (Group A)
Dr.-Ing. Abdulmotaleb El Saddik
Office: Room 5-037 SITE Building
URL: http://www.site.uottawa.ca/~elsaddik
Email: elsaddik@site. uottawa.ca
Phone: 562 5800 x 6277
Answering your questions:
• Office hours:
• Tuesday 14:00 - 15:30
• Thursday 10:30 - 12:00
10
(c) elsaddik
• or by e-mail appointment
• Email: Within 2 working days (no e-mails read
over weekends)
5
www.site.uottawa.ca/~elsaddik
Formal Course Description
This course introduces students to the fundamentals of
software design. We will introduce the concepts of
• software design and pseudo-code; object-oriented
programming; and
• abstraction principles including virtual machines,
information hiding and encapsulation;
• simple data structures, including linked lists, stacks and
queues, and their applications;
• the iterative and recursive processing of data structures.
Lab work will be done in the Java programming language.
Prerequisite: GNG1101 or CSI1100
Hours: 3 hours of lecture per week, 3 hours of lab per
week, 4 credits
11
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Focus on Object-Oriented Software Development
problem solving
program design, implementation, and testing
object-oriented concepts
• classes
• objects
• interfaces
• inheritance
• Polymorphism
Using the Java programming language
12
(c) elsaddik
6
www.site.uottawa.ca/~elsaddik
Course description
What?
• Good software design principles
• Problem solving skills
Why?
• High quality software design à good programming
principles à high quality code
How?
• Theory à Practice (In Java)
13
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Prescribed Book
Java Software Solutions, Third Edition
J. Lewis and W. Loftus
Addison Wesley, 2003
ISBN 0-201-78129-8
Website: www.aw.com/cssupport
We will follow the book quite closely à get one!
14
(c) elsaddik
7
www.site.uottawa.ca/~elsaddik
Evaluation/Mark allocation
The final mark will be calculated as follows.
4 Labs
4 x 5 points =
20 points
1 Midterm
20 points
Examination
60 points
Total
100 points
You should obtain at least 30/60 (50%) for the final
examination in order to pass this course.
15
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Theory course outline
Week of
Material
Text book chapters
Jan 6-10
Information about course
Introduction to computer systems, Java
Chapter 1
Jan 13-17
Introduction to objects and primitive data Chapter 2
Jan 20-24
Program statements
Chapter 3
Jan 27-31
Writing classes
Chapter 4
Feb 3-7
Enhanced classes
Chapter 5
Feb 10-14
Arrays and Vectors
Chapter 6
Feb 17-21
Study Break
Feb 24-28
Mid Term During Lecture Time
Group A: Thursday February 27
Group B: Wednesday February 26
Group C: Wednesday February 26
Chapters 1-6
16
(c) elsaddik
8
www.site.uottawa.ca/~elsaddik
Theory course outline (cont)
Week
Topic
Text book chapters
Mar. 3-7
Inheritance
Chapter 7
Mar.10-14
Graphical User Interfaces
Chapter 9
Mar. 17-21 Recursion
Chapter 11
Mar. 24-28 Data structures
Chapter 12
Mar. 21Apr. 4
Software engineering
Chapter 10
Apr. 7-9
Revision
17
(c) elsaddik
www.site.uottawa.ca/~elsaddik
About the TAs
All TAs are available for any lab question from any
student in CSI1102.
The names, office hours and venues of the TAs will
be placed on the CSI1102 course website as soon
as it has been finalized.
You are allowed to attend any other practice labs in
addition to your scheduled lab.
• à But, of course, scheduled students get priority if
the lab is full
• Just go to the lab, wait 5 minutes that everyone in
installed. If there is space, you can join.
18
(c) elsaddik
9
www.site.uottawa.ca/~elsaddik
About the labs
Total of four (4) labs
Allocated 2 -3 weeks per lab:
à practice time and demos/marking
For example, during the week of 13 January 2003, you
attend the lab and complete assignment 1. This
assignment will subsequently be marked in the lab a
week later, during the week of 20 January 2003.
You are required to attend your scheduled lab to
demonstrate you projects to the TA. This is the only
place/time/way that assignments will be marked.
19
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Lab groups and times
Lab group
Time
CSI1102 AA
Wednesday
19:00-22:00
Monday
16:00-19:00
Monday
19:00-22:00
Friday
19:00-22:00
Wednesday
10:00-13:00
Tuesday
8:30-11:30
CSI1102 AB
CSI1102 BA
CSI1102 BB
CSI1102 CA
CSI1102 CB
20
All labs take place in
Colonel By, Room B02
(c) elsaddik
10
www.site.uottawa.ca/~elsaddik
Lab Schedule Winter 2003
21
Week of
Labs (Lab Assignments)
Task
Jan 6-10
No lab
Jan 13-17
No lab
Jan 20-24
Practice and Complete in
Lab Assignment 1:
Programming project 1.1 – 1.4, Lab
pp. 56-57
Jan 27-31
Lab Assignment 1 Due
Feb 3-7
Lab Assignment 2:
Practice and Complete in
Programming projects 2.2, 2.5, Lab
2.21, pp.123-135;
Programming projects 3.2, 3.5,
pp.201
Feb 10-14
Lab Assignment 2 Due
Feb 17-21
Study Break: No class or lab
Due to be marked in
scheduled lab time
Due to be marked in
scheduled lab time
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Lab Schedule Winter 2003 (cont.)
22
(c) elsaddik
Week
Lab
Feb 24-28
Midterm : No lab
Task
Mar. 3-7
Practice and Complete in Lab
Lab Assignment 3:
Programming projects 4.3, 4.19,
pp.262-264;
Programming projects 6.4, 6.16,
pp. 375-377.
Mar.10-14
Lab assignment 3 Due
Mar. 17-21
Lab Assignment 4:
Practice and Complete in Lab
Programming project 7.3, pp.
442;
Programming
project
9.11,
pp.566.
Programming projects 11.2, 11.9,
pp. 634
Mar. 24-28
Practice and Complete in Lab
Due to be marked in scheduled lab
time
Mar. 21-Apr.
4
Lab Assignment 4 Due
Due to be marked in scheduled lab
time
Apr. 7-9
No lab
No lab
11
www.site.uottawa.ca/~elsaddik
Activating your Lab Account (Colonel By B02)
You need to go to the kiosk in CBY B109 to
activate your account.
Bring along:
• Student number
• Infoweb pin number
23
(c) elsaddik
www.site.uottawa.ca/~elsaddik
Working from Home
A strength of Java is its portability !!!!
• à you can easily work at home and just come in
and demonstrate during your scheduled lab time if
you so wish
Options
• Download Java 2 Platform, Standard Edition
(J2SE) from Javasoft at the following website
http://java.sun.com/j2se/1.4/download.html
• The CD with the text book contains Java 2
compiler version 1.4. Read the Readme file on
how to install it.
Make sure you have enough disk space!
24
(c) elsaddik
12
www.site.uottawa.ca/~elsaddik
Working from Home (cont)
You will use a Java development environment
(JDE) to develop your programs
Options
• RealJ (also used in Labs): Download RealJ version
3.6 from www.realj.com. Follow the instructions to
install.
• JDE Forte: Located on the CD which comes with the
text book.
25
(c) elsaddik
www.site.uottawa.ca/~elsaddik
A simple Java example
//*************************
// An example Java program
//
public class Hello
{
//--------------------------------------// Task: Print the line “Hello World”
//
public static void main (String[ ] args)
{
System.out.println (“Hello World”);
}
26
}
(c) elsaddik
13
www.site.uottawa.ca/~elsaddik
Overview of Next Lecture
Chapter 1, Sections 1.3-1.5
• Introduction to Programming
• Introduction to Programming Languages
• Introduction to Graphics
Note:
• I assume you are familiar with the concepts as
described in Sections 1.0-1.2.
• Please verify by reading through these sections
before Thursday January 9, 2003!
27
(c) elsaddik
Homework for next class
Reading:
Chapter 1, Lewis and Loftus
14