Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Object-Oriented Software Development Project Aaron Christopher.

Similar presentations


Presentation on theme: "1 Object-Oriented Software Development Project Aaron Christopher."— Presentation transcript:

1 1 Object-Oriented Software Development Project Aaron Christopher

2 2 Project Overview Kind of like SourceForge Allow developers to catalog their software, source code and documentation for use by other developers Also provide mechanism for publishing a virtual appliances that run the software on its intended platform. Users of the system can connect to the appliances and use the software live in their browser through a client application implemented as an applet.

3 3 Project Breakdown The complete system is broken into three subsystems –The Desktop Sharing System –The Server (the scope for today) –The Client

4 4 Some Java Technologies Used by the Server Multiple Threads and Synchronization Blocking TCP/IP Sockets from the java.net package Object Streams and Serialization Embedded Apache Derby Database –A small footprint open source SQL database –Can be run in embedded mode in java applications and accessed using JDBC –All database code runs in your process

5 5 Actors Overview

6 6 Top Level Use Case

7 7 Deployment Diagram

8 8 Add New Modules

9 9 End Session

10 10 Facilitate Use Of Live Modules

11 11 File Transfers

12 12 Join Collaborative Session

13 13 List Active Sessions

14 14 Client Log In

15 15 Manage Collaborative Sessions

16 16 Manage Software Modules

17 17 Manage Single User Sessions

18 18 New Collaborative Session

19 19 New Private Collaborative Session

20 20 Client Authentication

21 21 Client Authentication

22 22 Database Interaction

23 23 Direct Session Message

24 24 Client File Download

25 25 Module File Download

26 26 File Transfers

27 27 Join Collaborative Session

28 28 Leave Session

29 29 Module List Request

30 30 Server Overview

31 31 Session Control

32 32 Session List Request

33 33 Start Collaborative Session

34 34 Text Messaging

35 35 Client File Upload

36 36 Message Polymorphism Client To Server MessagesServer To Client Messages Message Interfaces

37 37 Inheritance Among Session Types

38 38 Singleton Design Pattern

39 39 MVC Pattern Model View Controller A simple diagram depicting the relationship between the Model, View, and Controller. Note: the solid lines indicate a direct association, and the dashed lines indicate an indirect association (e.g., observer pattern). Source: http://en.wikipedia.org/wiki/Model-view-controller

40 40 Ostermiller Utilities http://ostermiller.org/utils/ Circular Byte Buffer for inter-thread communication (can be bounded or infinite). Beats Java’s Piped IO Streams by far! More Intuitive String Tokenizer –Java (java.util.StringTokenizer) A,B,,D tokenizes to “A”,”B”,”D” (3 tokens ignoring the missing string) –Ostermiller (com.Ostermiller.util.StringTokenizer) A,B,,D tokenizes to “A”,”B”,””,”D” (4 tokens including an empty string)


Download ppt "1 Object-Oriented Software Development Project Aaron Christopher."

Similar presentations


Ads by Google