The Importance of Practical Assignments in Teaching ...
Transcript of 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
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 2/18
Agenda
● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes
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.
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
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
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
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 7/18
Agenda
● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes
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
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 9/18
Assgn. 1: Distributed computing
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 10/18
Assgn. 2: Java EE
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 11/18
Assgn. 3: Web applications● http://њњњ.тњиттер.срб
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 12/18
Agenda
● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes
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
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
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
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
Practical assignments in advanced Java course - DAAD WS, Sinaia, Romania, 2014 17/18
Agenda
● Introduction● Practical assignments overview● Discussions on students' motivation● Upcoming changes
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