slide1 l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Welcome to CIS 2168 ! (formerly:CIS 68) PowerPoint Presentation
Download Presentation
Welcome to CIS 2168 ! (formerly:CIS 68)

Loading in 2 Seconds...

play fullscreen
1 / 20

Welcome to CIS 2168 ! (formerly:CIS 68) - PowerPoint PPT Presentation


  • 215 Views
  • Uploaded on

Welcome to CIS 2168 ! (formerly:CIS 68). Software Design, Data Structures and Algorithms. Instructor: Rolf Lakaemper TA: Jingting Zeng (Nikki) . Introduction. Who am I ? What‘s this course about ? . Who am i ?. PhD in applied mathematics in Hamburg, Germany

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

Welcome to CIS 2168 ! (formerly:CIS 68)


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Welcome to CIS 2168 !

(formerly:CIS 68)

Software Design, Data Structures and Algorithms

Instructor: Rolf Lakaemper

TA: Jingting Zeng (Nikki)

CIS 068

introduction
Introduction
  • Who am I ?
  • What‘s this course about ?

CIS 068

who am i
Who am i ?
  • 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)

Rolf Lakaemper

CIS 068

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

CIS 068

software theory
Software Theory
  • Software Engineering and OOD:

Different views of software

The software lifecycle

Diagrams, Use Cases,...

CIS 068

software theory6
Software Theory

Correctness:

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

software theory7
Software Theory

Principles of OOP:

  • Inheritance, class hierarchies, polymorphism,abstract and interface classes,…

abstract class

interface1

interface2

class1

class2

class1_1

CIS 068

software practice
Software Practice
  • OOP in JAVA:

GUIs

CIS 068

software practice9
Software Practice
  • OOP in JAVA: Recursion

CIS 068

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

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

O(n log n)

Efficiency

CIS 068

software analysis12
Software Analysis
  • Fundamental Datastructures

Stacks

Queues

Trees

CIS 068

textbook
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

class schedule
Class Schedule
  • Class meets
    • 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

exams and quizzes
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

exams and quizzes16
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

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

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

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.

CIS 068

any questions
Any Questions ?
  • Rolf Lakaemper
  • Office: Room 313, Wachman Hall
  • E-mail: lakamper@temple.edu
  • Phone: (215)-204-7996
  • 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:
  • http://knight.cis.temple.edu/~lakaemper

CIS 068