This System Design Specification document describes the detailed layout of the components of the Remote Fiber Optic Communications Laboratory. It documents the design and design decisions in order to provide the basis for implementation and unit test.
The design description defined in this document serves to:
- Describe the functional structure to be implemented
- Identify required system resources
- Assist in producing test cases
- Verify compliance with requirements
This document delineates the structure of the Laboratory based on the Interactive iLabs Architecture 3.0.2 and traces the precise implementation details required to satisfy the requirements as specified in the Software Requirements Specifications (SRS).
1.3 Intended audience
This System Design Document is written for the knowledgeable in technical Developer, Supervisory and Reviewer positions.
1.4 Important Definitions, Acronyms
For a complete list of the definitions and acronyms used in the remainder of this document, refer to Appendix A.
2. Architectural Design
This section outlines the system and hardware architecture design of the laboratory. It describes the system architecture, how the systems interact with other applications and how the components interact with each other.
The laboratory will be based on the Interactive iLabs Shared Architecture. The iLabs Shared Architecture is a framework that provides for the development and deployment of remotely accessible laboratories. It runs on a web-service based three-tiered model consisting of lab clients, service broker middleware, and lab servers. The Interactive labs grant the user higher and active control of lab instruments during the execution of an experiment and can generate large amounts of data. The Interactive iLab topology is explained as shown below.
Extreme left is the Lab Server, Service Broker and Lab Scheduling Service, which constitute the Lab Side system, and the rest constitute the Client Side. The Service Broker sets up a connection between the client user and the lab server, and the two can communicate directly. The Lab Side Scheduling service enables the Administrator to allocate time blocks to the experiment and the User Side Scheduling Service grants an authorized client user a session within the set time block. During experiment execution, the Service Broker no longer has an upper hand in the experiment data and thus data handling is done by the Experiment Storage Service, a stand-alone service for data storage.
3. System Design
3.1 Hardware Interface
3.1.1 NI ELVIS II
The NI ELVIS II Platform is a design and prototype platform for University Science and Engineering Laboratories. It is used to teach concepts in circuit design, instrumentation, controls and telecommunications theory. It consists of LabVIEW-Based virtual instruments, a data acquisition (DAQ) device, and an inbuilt coherence with the EMONA FOTEx board. Because it is based on LabVIEW and provides data acquisition and prototyping capabilities, the system is commended for academic experimentation.
NI ELVIS II is chosen because it has all the necessary circuitry inbuilt and is compatible with a computer as well as LabVIEW programming language.
3.1.2 EMONA FOTEx Board
The EMONA FOTEx is an add-in module integrated on the NI ELVIS II and fully compatible with LabVIEW programming environment. It is a collection of blocks/modules that can be patched together to emulate/implement a dozen fiber optic communications scenarios. It supports incorporation of optical fiber cable in the circuitry.
3.2 Software Interface Description
3.2.1 Operating System
Windows Server 2003 (Win2K3) operating System will be used. The choice of Win2K3 is based its ability to:
- Act as an application server and perform server-oriented functions
- Manage Your Server - a role management administrative tool that allows an administrator to choose what functionality the server should provide
- Capability to host message queues
- Authenticate users
- Serve streaming media
- Share files
- Support Internet Information Services (IIS)
Windows XP Service Pack 2 can also be used.
3.2.2 Database Server
SQL Server 2000 is the high performance relational database system with a rich development environment that suits the purpose.
3.2.3 Development Environment
Microsoft Visual Studio is an Integrated Development Environment from Microsoft and thus works well with Win2K3. It covers such functions as development of console and Graphical User Interface applications along with Windows Forms applications, web applications, web sites and web services for such platforms supported by the .NETFramework. Visual Studio includes a code editor, debugger, forms designer for building GUI applications and web designer. MS Visual Studio 2003 will be used.
3.2.4 Programming Language
LabVIEW is a platform and development environment for a visual programming language from National Instruments. It is a graphical programming language that uses icons instead of lines of text to create applications. It is ideal for test, measurement, data acquisition, instrument control, and industrial automation on a variety of platforms including Microsoft Windows. LabVIEW extensively supports access to instrumentation hardware.
3.2.5 Equipment Drivers:
NI ELVISmx drivers will be installed to enable students access all the 12 instruments through the NI-ELVISmx instrument launcher. The FOTEx drivers will avail reach of the modules in the FOTEx.
3.3 Communications Interfaces
3.3.1 Web Browsers
Considering that the system will be built on a Windows platform, the most efficient browsers are Internet Explorer, Mozilla Firefox and Google Chrome.
3.3.2 Application Program Interfaces
DataSocket for LabVIEW supports live data exchange between different applications on one computer or between computers connected through a network. It connects data from a number of sources such as webserver, specifies data location through the use of the URL. The data socket Transfer Protocol connects the data socket application to the datasocket server.