Download presentation
Presentation is loading. Please wait.
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)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.