The Importance of Practical Assignments in Teaching ...

18
The Importance of Practical Assignments in Teaching Advanced Java Topics: A 4-year Experience Dejan Mitrović, Mirjana Ivanović, Miloš Radovanović Dept. of Mathematics and Informatics Faculty of Science University of Novi Sad, Serbia

Transcript of The Importance of Practical Assignments in Teaching ...

Page 1: The Importance of Practical Assignments in Teaching ...

The Importance of Practical Assignments in Teaching Advanced Java Topics:

A 4-year Experience

Dejan Mitrović, Mirjana Ivanović, Miloš Radovanović

Dept. of Mathematics and InformaticsFaculty of Science

University of Novi Sad, Serbia

Page 2: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 2/18

Agenda

● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes

Page 3: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 3/18

Java(-based) courses at DMI

● Object-oriented programming 1– Introductory course, 3rd semester

● Object-oriented programming 2– Advanced course, 4th semester

● Java used in many other courses– Operating systems, Computer graphics,

Database systems, etc.

Page 4: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 4/18

Object-oriented programming 2

● Since 2010● Based on the (updated, extended) DAAD pool

of topics● The main goal: teach students practical Java

skills required by the industry● Elective course● 50-60 2nd and 3rd-year students

Page 5: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 5/18

Topics

JFC/Swing

Threads

Web Apps.(GWT, GAE)

New Java Features

I/O System

Collections

Java EE(EJB,JPA,WS)

Enums

NetworkProgramming

Generics

DistributedProgramming

Strings

Page 6: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 6/18

Grading

● 60 points: practical assignments● 20 points: theoretical tests● 20 points: final (oral) exam

Grade Points

10 95-100

9 85-94

8 75-84

7 65-74

6 55-64

Page 7: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 7/18

Agenda

● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes

Page 8: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 8/18

Practical assignments overview

● 4 classroom assignments– 25 points total, 50% required

● 3 team assignments– 35 points total, 50% required

– Duration: 1 week

– 3-4 students per team

– Team members selected by us

Page 9: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 9/18

Assgn. 1: Distributed computing

Page 10: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 10/18

Assgn. 2: Java EE

Page 11: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 11/18

Assgn. 3: Web applications● http://њњњ.тњиттер.срб

Page 12: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 12/18

Agenda

● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes

Page 13: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 13/18

Motivation

● Motivation influenced by the type of problem● “Interesting”:

– Social networks

– Games

● “Boring”:– Information systems

Page 14: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 14/18

Students' comments

● Summarized positive comments:– Increased programming confidence

– Practical applicability of technologies

– Having a finished product

– Challenging problems

– The usage of modern tools

Page 15: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 15/18

Team assignments: pros

● “Real-life” teamwork experience– Team coordination

– Tool usage (e.g. SVN)

● More meaningful problems– Students have finished products they can

show to others

Page 16: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 16/18

Team assignments: cons

● Some students are “immature”– Lack of respect for teammates

● Personal clashes● A lot of time spent on:

– Dividing the workload

– Not doing anything

● Increased chance for cheating– Solved through public defenses

Page 17: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 17/18

Agenda

● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes

Page 18: The Importance of Practical Assignments in Teaching ...

Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 18/18

Changes to topics

Unit testing

OO Analysis& Design

Clean CodingPrinciples

ContinuousIntegration

JFC/Swing

Threads

Web Apps.(GWT, GAE)

New Java Features

I/O System

Collections

Java EE(EJB,JPA,WS)

Enums

NetworkProgramming

Generics

DistributedProgramming

Strings