Skip navigation.


Department of Computer Science
Faculty of Natural Sciences, University of Guyana


This course details some of the more powerful Java GUI features, multimedia and networking capabilities.


By the end of this course students shall be able to:

  • Write a Java application involving Swing components with the Java SDK
  • Write a Java application which can interact with the OS
  • Use Java Data Structures and Reflection Classes
  • Store and Read Data in files, databases and across networks with a Java Program
  • Understand how to create a Commercial Java Application, JavaBean and Java Packages using the SDK


Lectures - 39 hours

Labs - 13 two (2) hour sessions

Credits - 4

Pre-requisites: CSI 312 - Introduction to OOP with Java


Coursework - 2 tests (25%), project (10%), assignment (5%)- (40%)

1-2 hour Examination - (60%)


Week 1

1. Introduction

2. Object Oriented Analysis and Design

3. Swing Applications: JMenu, JMenubar and JMenuItems

Week 2

4. Accelerator Keys, KeyEvent and Menu Shortcuts

5. Swing Applications: JTabbedPane + overview

6. Swing Applications: JCheckBox, JCheckBoxGroup and JRadioButton

Week 3

7. Creating Packages

8. jar, optimization and JIT Compilers

9.Swing Applications: Icons, Images and JScrollPane

Week 4

10. Swing Applications: JTable and Table Data Models

11. Data Structures in Java: Vectors, Arrays and LinkLists

12. Data Structure: Collections and HashTables

Week 5

13. File IO and Streams

14. Filtering Streams: Buffering Streams

15. Filtering Streams: Text and Data Streams

Week 6

16. Object Serialization

17. File Handling and OS interaction

18. Test #1

Week 7

19. Networking: URL and URLConnection

20. Networking: Client Applications

21. Networking: Server Applications

Week 8

22. Remote Method Invocation (RMI): Introduction

23. Remote Method Invocation: The Model

24. Remote Method Invocation: Steps to creating a Remote Object

Week 9

25. JavaBeans: Introduction

26. Creating JavaBeans Components

27. Using JavaBeans Components

Week 10

28. Databases + SQL command overview

29. JDBC: Setting up and connecting to an existing database

30. JDBC: Accessing and updating and existing database

Week 11

31. JDBC: Editing an existing database

32. Threads

33. Using the Runnable interface

Week 12

34. Multi - Threading

35. Using java.util.Timer

36. Date and Time Manipulation

Week 13

37. Writing Interfaces and Exceptions

38. javadoc tools and syntax

39. Test #2

An Interactive Software Tutoring System

Mr. Eldon Marks, Mr. Roger Gajraj, Mr. Ryan Goliah
The learning process is different for everyone. Electronic tutorials have become popular tools of successful instruction but current software tutoring systems rarely address various learning styles; stimulating unpleasant and ineffective learning experiences for users. Combining theories of learning to formulate a single, interactive software tutoring system is one approach to creating an electronic tutoring system which would effectively target a wider range of learners by addressing their learning styles. This research developed, and assessed the effectiveness of, an interactive software tutoring system capable of creating and presenting non disruptive, live application tutorials for successful instruction. Preliminary evaluation of this system produced positive results, indicating the potential real world application of such a system following a more extensive user evaluation process.
Interactive Tutorial, Interactive Software, Tutorial, Learning Software, Embedded Software, Learning Theories, Interactive Tutor.

An Interactive Software Tutoring System

CSI323 Lobby

For discussions on OOAD and Java

Syndicate content