300 likes | 310 Views
Distributed, Collaborative Processing System (COBRA Virtual Office). What's the Deal?. COBRA. Distributed, Collaborative Processing Systems –Some Prospects. E-Commerce B2B and B2C -Collaborative Product design -Collaborative Product decision. Group communication -Net meeting
E N D
Distributed, Collaborative Processing System (COBRA Virtual Office)
What's the Deal? COBRA
Distributed, Collaborative Processing Systems –Some Prospects E-Commerce B2B and B2C -Collaborative Product design -Collaborative Product decision Group communication -Net meeting -PDA, PCS etc -Virtual class rooms Software Engineering Environments -Distributed Collaborative system design space Personal entertainment -On-line video games
Different Locations? Not a Problem Anymore! One Design Multiple users at different locations can work on one design collaboratively and simultaneously. No travel and no delay. Higher Productivity, Lower cost, Better Traceablity.
COBRA= Collaborative behavioral Requirement and Architecture • FOR • Modeling requirements • Designing architecture • Evaluating existing architectures/components if • they can meet new requirements • Monitoring projects
The System Provides • Communication of Knowledge • Simulation • Project Management • Traceability
History of COBRA • Started in 1994 as a research prototype • Initial implementation in c/c++ and tc/tlk • Current implementation in Java
Main Challenges seen previously • Poor documentation of the system • Insufficient communication when projects • passed from semester to semester. • Poor communication among members resulting in integration problem • Reinventing the wheel due to poor code • comments.
Platform Independency The system is implemented using Java/JavaBeans so as to enhance platform-independence, interoperability, composability (plug-and-play), and distributability.
System Applications The system will be used to model the behavior of a variety of system types, including a mobile communication system. Hence, we will be using a particular scenario for the particular system chosen to be modeled.
Cobra Virtual Office Functionalities • Constructing Augmented Petri-Net (FSM) for System Behavior Modeling • Constructing PERT Chart for Project Scheduling and management
Constructing Augmented Petri-Net As a test-bed, we are working on the modeling and analysis of system behavior using Augmented Petri Net (APN), a formalism which is expressively more powerful than Finite State Machines.
More about Augmented Petri-Net A form of FSMs, first proposed by C. A. Petri in 1962 A notation for defining abstract concurrent processes Primitives: Place Transition Token T When all input places of a transition are enabled (i.e., with a token) and the external stimulus associated with the transition occurs, the tokens move from the input places to output places
T1 T2 Concurrency T2 T1 T3 Synchronization T1 T3 Fundamental notions: Sequencing T2
ONTARIO Site TEXAS Site NORTH CAROLINA Site
Collaborative Processing (view from Texas) Public Window TX Window
Collaborative Processing (view from Ontario) Public Window ON Window
Collaborative Processing (view from North Carolina) Public Window NC Window
Simulation The system’s simulation functionality represent the behavior of Petri-net
Another Aspect of the Virtual Office Monitoring and Scheduling Projects Using PERT Chart
If you are a project manager, do you prefer these, or...
This simple solution Provided by Virtual Office
Why Do We Need PERT Chart • Allows users to express time dependencies for project tasks • Analyze the project critical path • Tracks project progress to ensure that delay is recognized • Provides a road map for a project manager
How to Represent a PERT Chart in This System • The COBRAVirtual Office has functionality of constructing Augmented Petri-Net (APN), and allows system behavior simulation • Traditional PERT Chart representation lacks dynamic functionality to monitor project progress • A mapping from PERT chart to Augmented Perti-Net is proposed for the ease of project progress simulation
Programming Test Code Test System 2 4 8 10 Create Schedule 20 20 10 10 Training User Test 1 7 9 11 Write Man 5 5 10 15 Buy Hardware 15 3 5 5 Installation Conversion 6 An Example • Numbered rectangles are nodes that represent events or milestones • Directional arrows represent tasks that must be completed sequentially • Diverging arrow directions indicate possibly concurrent tasks • Dotted lines indicate dependent tasks that do not require resources Figure 1: PERT Chart Representation
@now>=t0+9 ۸ ~done /reminder @now>=t0+18 ۸ ~done /reminder @now>=t0+18 ۸ ~done /reminder @now>=t0+9 ۸ ~done /reminder 1 2 4 8 10 Code test done Schedule done Programming done system test done @now>=t0+13 ۸ ~done /reminder @now>=t0+4۸ ~done /reminder @now>=t0+4 ۸ ~done /reminder @now>=t0+13 ۸ ~done /reminder 5 7 @now>=t0+9 ۸ ~done /reminder Hardware bought man done Training done 1’ 3 9 11 @now>=t0+4 ۸ ~done /reminder Installation done User test done 5’ 6 conversion done Figure 2: APN Representation An Example (Cont’) • Numbered rectangles are nodes that represent states of a project • Directional arrows represent moving from one state to another • Vertical bars represent transitions from one state to another