Presentation is loading. Please wait.

Presentation is loading. Please wait.

Welcome to CIS 2168 ! Software Design, Data Structures and Algorithms

Similar presentations


Presentation on theme: "Welcome to CIS 2168 ! Software Design, Data Structures and Algorithms"— Presentation transcript:

1 Welcome to CIS 2168 ! Software Design, Data Structures and Algorithms
(formerly:CIS 68) Software Design, Data Structures and Algorithms Instructor: Rolf Lakaemper TA: Jingting Zeng (Nikki) CIS 068

2 Introduction Who am I ? What‘s this course about ? CIS 068

3 Who am i ? Rolf Lakaemper PhD in applied mathematics in Hamburg, Germany Assistant professor at CIS since 2003 Research topic: Image Processing, Computer Vision and Robotics before 2003: Software Development Director of different companies (Computer Games, Voice + Video over IP) CIS 068

4 Topics of CIS 068 Software Theory: Software Practice:
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 CIS 068

5 Software Theory Software Engineering and OOD:
Different views of software The software lifecycle Diagrams, Use Cases,... CIS 068

6 Software Theory Correctness: Syntax errors Runtime errors
print (“hello world; Runtime errors ERROR ! Division by zero error at 0000ff:03f4 (->00f4:3aa7) af 000 bc 3ef4 hl 988f de 45db Logical Errors M:={0..255}aü : n i M => n+1 i M CIS 068

7 Software Theory Principles of OOP: abstract class interface1
Inheritance, class hierarchies, polymorphism,abstract and interface classes,… abstract class interface1 interface2 class1 class2 class1_1 CIS 068

8 Software Practice OOP in JAVA: GUIs CIS 068

9 Software Practice OOP in JAVA: Recursion CIS 068

10 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. CIS 068

11 Efficiency 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 O(n log n) Efficiency CIS 068

12 Software Analysis Fundamental Datastructures Stacks Queues Trees
CIS 068

13 Textbook Course will be close to this book:
Koffman & Wolfgang: Objects, Abstraction, Data Structures and Design using JAVA, Version 5.0 (Wiley, 2005) CIS 068

14 Class Schedule Class meets Friday classes will include a Mini Quiz
Monday 1:40 – 2:30, Tuttleman TL 1B Wednesday 12:40 – 2:30, Wachman 104 (LAB) Friday 12:40 – 2:30, Tuttleman 1B Friday classes will include a Mini Quiz Wednesday will be in the lab where you will do a programming exercise designed to reinforce the (previous) week’s topic. CIS 068

15 Exams and Quizzes There will be weekly quizzes given on Wednesday. These will count 15% of your grade. There’ll be extra points during class, counting as mini quiz points There will be one mid-term examination: 20% There will be a final examination: 30% Lab assignment grades will count 35% CIS 068

16 Exams and Quizzes There will be weekly quizzes given on Wednesday. These will count 15% of your grade. There’ll be extra points during class, counting as mini quiz points There will be one mid-term examination: 20% There will be a final examination: 30% Lab assignment grades will count 35% CIS 068

17 Lab Assignments There will be weekly lab assignments.
The labs will count 35% of your final grade. The assignments are usually 1 week assignments, sometimes 2 weeks for the less small ones. The assignments will be closely connected to the class content. Working on them will show you if you really understood the topic. CIS 068

18 Lab Grades Labs will be graded as follows:
On time: max.10 Late, max: 6 The TA and Instructor are here to help you. Do not wait until the last minute if you are stuck ! CIS 068

19 Programming must be learned by doing it !
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. CIS 068

20 Any Questions ? Rolf Lakaemper Office: Room 313, Wachman Hall
Phone: (215) Office Hours: Monday after class, 3 – 4:30pm Friday 3 – 4:30 Or just come in whenever. All this can be found on my website: CIS 068


Download ppt "Welcome to CIS 2168 ! Software Design, Data Structures and Algorithms"

Similar presentations


Ads by Google