Presentation Transcript
Slide1 : Welcome to CIS 068 ! Software Design & Data Structures
In JAVA Instructor: Rolf Lakaemper
Peer Teacher: Aubrey Jones
TA: Michael Broscius
Introduction : Introduction
Who are we ?
What‘s this course about ?
Who am i ? : Who am i ? PhD in applied mathematics in Hamburg, Germany
Assistant professor at CIS since 2003
Research topic: Image Processing
<2003: Software Development Director of different companies (Computer Games, Voice + Video over IP)
Rolf Lakaemper
Topics of CIS 068 : Topics of CIS 068 Software Theory:
A look at modern techniques of industrial software development
Software Practice:
Consolidation of Object-Oriented Programming (OOP) techniques in JAVA
Software Analysis
Fundamental data structures, algorithms and their performance
Software Theory : Software Theory Software Engineering and OOD: Different views of software The software lifecycle Diagrams, Use Cases,...
Software Theory : Software Theory Correctness: Syntax errors Runtime errors Logical Errors print (“hello world; ERROR !
Division by zero error at
0000ff:03f4 (->00f4:3aa7)
af 000
bc 3ef4
hl 988f
de 45db M:={0..255}aü :
n i M => n+1 i M
Software Theory : Software Theory Principles of OOP:
Inheritance, class hierarchies, polymorphism,abstract and interface classes,… abstract class class1 class2 class1_1 interface1 interface2
Software Practice : Software Practice OOP in JAVA: GUIs
Software Practice : Software Practice OOP in JAVA: Recursion
Software Practice : Software Practice We will use JAVA as an example for a modern, object oriented language.
The topics of this class are not (too) JAVA specific, although all programming is done in JAVA.
Software Analysis : Software Analysis Fundamental Algorithms
Sorting: Bubble-, Insertion-, Merge-, Quicksort A,H,D,O,P,C,C,J A,C,C,D,H,J,O,P Efficiency O(n log n)
Software Analysis : Software Analysis Fundamental Datastructures Stacks Queues Trees
Textbook : Textbook Course will be close to this book:
Koffman & Wolfgang: Objects, Abstraction, Data Structures and Design using JAVA, Version 5.0
(Wiley, 2005)
Class Schedule : Class Schedule Class meets
Monday 12:40 – 1:30, Tuttleman TL 302
Wednesday 12:40 – 2:30, Tuttleman TL 302
Friday 12:40 – 2:30, Wachman Hall 104
Wednesday classes will include a Mini Quiz
Friday will be in the lab where you will do a programming exercise designed to reinforce the week’s topic.
Exams and Quizzes : Exams and Quizzes There will be weekly quizzes given on Wednesday. These will count 10% of your grade (in total).
There’ll be extra points during class, counting as Mini Quizzes
There will be one mid-term examination: 20%
There will be a final examination: 30%
Lab assignment grades will count 40%
Lab Assignments : Lab Assignments There will be weekly lab assignments.
The labs will count 40% of your final grade.
Lab Grades : Lab Grades Labs will be graded as follows:
On time: max.10
Late, max: 6
The TA, Peer Teacher and Instructor are here to help you. Do not wait until the last minute if you are stuck !
Policy on Cheating : Policy on Cheating Programming must be learned by doing it !
Copying another student’s program deprives you of that learning opportunity.
If a lab assignment is found to be a copy, both students will receive a –10 for that assignment.
If more than one program is found to be a copy, the students involved will receive an F for the course.
Any Questions ? : Any Questions ? Rolf Lakaemper
Office: Room 308, Wachman Hall
E-mail: lakamper@temple.edu
Phone: (215)-204-7996
Office Hours:
Monday after class, 2 – 3:30pm
Or just come in whenever.
All this can be found on my website:
http://knight.cis.temple.edu/~lakaemper
Catch the
buzz on authorSTREAM
Copyright © 2002-2008 authorSTREAM. All rights reserved.