Florida International University

School of Computing and Information Sciences

 

CEN 5064 Software Design

Section U01 - Spring 2008

Professor: Peter Clarke

April 15, 2008

 

Final Deliverable

 

Rapid Realization of Communication Service Systems

RRComSSys

Team # 1

 

Mark Alison

Drake Campbell

Roberto Espinoza

Yinet Gonzalez

Relmer Perez

Sandeep Varry

 

On

On   On the web courtesy of:

CP   CPC Computer Consultants, Inc. www.cpccci.com


Abstract

 

In this document we present a Rapid Realization of Communication Services System (RRCommSSys). RRCommSSys will be created using model driven software development techniques in an easy to use graphical modeling framework, which will eventually allow us to deploy a communications application employing the features already present in the Skype and Smack API's. In particular we aim to provide audio conversations including conference calling, real time texting and video streaming within the education domain.

We present the architecture, models and testing documentation of our system which includes a User Communication Interface, a Synthesis Engine and a Network Communications Broker. Using a Domain Specific Language (G-CML) we allow the user to create their own communication schema instances by simply dragging and dropping communication objects into a canvas. The system transforms this into executable Java Function calls which delegate the details of the specific case to the appropriate communications platform API.


Table of Contents

Table of Contents________________________________________________________ 3

1. Introduction__________________________________________________________ 6

1.1 Purpose of the System________________________________________________ 6

1.2 Scope of System_____________________________________________________ 6

1.3 Limitations of Current Systems________________________________________ 7

1.4 Design Methodology_________________________________________________ 7

1.5 Definitions, Acronyms, and Abbreviations________________________________ 8

1.6 Overview of Document_______________________________________________ 9

2.  Project Plan_________________________________________________________ 11

2.1 Project Organization_______________________________________________ 11

2.2 Hardware/Software Requirements_____________________________________ 12

2.3 Work Breakdown__________________________________________________ 12

3. Requirement Elicitation and Analysis_____________________________________ 14

3.1 Overview_________________________________________________________ 14

3.2 Functional Requirements____________________________________________ 14

3.2.1 Functional Requirements______________________________________________________ 14

3.3 Non-Functional Requirements________________________________________ 16

3.3.1 Non Functional Requirements__________________________________________________ 16

3.4 System Models_____________________________________________________ 17

3.4.1 Use Case Model_____________________________________________________________ 17

3.4.2    Object Model______________________________________________________________ 17

3.4.3 Dynamic Model_____________________________________________________________ 19

3.4.4 User Interfaces_______________________________________________________________ 20

3.5    Validation of the Analysis Model_____________________________________ 22

3.5.1 Test Cases__________________________________________________________________ 22

3.5.2 Checklist___________________________________________________________________ 37

3.5.3 Structure Use Case Walkthroughs_______________________________________________ 38

4. Proposed Software Architecture_________________________________________ 40

4.1 Package Diagram__________________________________________________ 40

Overview of the Subsystems Used in the Rapid Realization of Communication Services System__ 40

4.1.1 Package Diagram____________________________________________________________ 42

4.2 Metamodel for the DSL______________________________________________ 43

4.3 UML Profile______________________________________________________ 44

4.4 Generative Architecture_____________________________________________ 45

4.5 Subsystems Decomposition___________________________________________ 45

4.6 Validation of the System Model_______________________________________ 48

4.6.1 Check List_________________________________________________________________ 48

4.6.2 Structure Walkthrough________________________________________________________ 49

5. Object Design________________________________________________________ 51

5.1 Minimal Diagrams__________________________________________________ 51

5.1.1 Model Transformation Class Diagram____________________________________________ 55

5.1.2 Synthesis Engine Class Diagram________________________________________________ 56

5.1.3 NCB Class Diagram__________________________________________________________ 57

5.2 Object Interaction__________________________________________________ 58

5.2.1 Sequence Diagrams___________________________________________________________ 58

5.2.2 Statechart for one control object_________________________________________________ 63

5.3 Detailed Class Design__________________________________________________________ 64

5.4 Validation of the Detailed Design Model________________________________ 68

5.4.1 Check List_________________________________________________________________ 68

5.4.2 Structure Walkthrough________________________________________________________ 69