Proj-2014-2015-Mini datacenter portail SRS
Version | Date | Authors | Description | Validator | Validation Date | |
---|---|---|---|---|---|---|
0.1.0 | TBC | Eudes, Rossi | TBC | TBC | TBC |
1. Introduction
1.1 Purpose of the requirements document
This Software Requirements Specification (SRS) identifies the requirements for this datacenter's webUI. The purpose of this document is to easily explain the development of this project and to provide instructions to understand and use the software.
1.2 Scope of the product
The purpose of this project is to provide an userfriendly web interface to simulate and use a small datacenter. Each node of the datacenter can perform some operations, users can interact with a group of nodes or a specific one.
1.3 Definitions, acronyms and abbreviations
- Frontend: intern server allowing to interact with OAR-docker
- OAR: task and resources manager
- Docker: virtualization tools, using containers' technologies
- Containers: VMs sharing their OS, comprising only an application and its dependencies
- Cluster: group of nodes link together
- Node: calculating unit
1.4 References
- Grid'5000
- OAR OAR is a versatile resource and task manager (also called a batch scheduler) for HPC clusters and other computing infrastructures. It's used on Grid'5000.
- OAR-docker: oar-docker is a set of docker images especially configured for deploying your own OAR cluster. The main idea is to have a mini development cluster with a frontend, a server and some nodes that launch in just a few seconds on a simple laptop.
- API REST API for OAR
- Boostrap CSS
- Datatables JQuery plugin, allowing to use tables
- JQuery Plugin Form JQuery plugin, allowing to check form
1.5 Overview of the remainder of the document
The SRS document includes 3 main chapters :
- General description, which contains the general characteristics of the project and our implementation choices.
- Specific requirements, which gives the main requirements of each function.
- Product evolution, which details the different steps of implementation we chose.
2. General description
2.1 Product perspective
Our project is based on a simulated infrastructure provided by OAR-docker. This cluster is made up of nodes, which can be used by only one user at a time. Our goal is to product a webUI easily understandable and usable by non-developers. As OAR-docker is designed only to test locally sub-developments' step, our webUI is not appropriate for external access.
2.2 Product functions
With this interface, users will be able to manage each node, submit a job to a node, cancel a job, create or delete a node.
2.3 User characteristics
The user can interacts with the interface even if he does not know how to manage the resources or deal with jobs.
2.4 General constraints
We have to gain access to the simulation in a private environment where docker is installed.
2.5 Assumptions and dependencies
- Web browser which can interpret AJAX
3. Specific requirements, covering functional, non-functional and interface requirements
3.1 Requirement X.Y.Z (in Structured Natural Language)
Function:
- Gather information from several nodes
- Post information on a webUI, available from a browser
Description:
- Generate an interface allowing to check resources' states, create or delete nodes and jobs
Inputs:
- Information about the nodes of OAR-docker's cluster, sent in a json format.
Source:
- OAR API
Outputs:
- A website
Destination:
- Searchers' team
Action:
- Create or delete nodes
- Affect or suppress jobs
Non functional requirements:
- Easily usable: no user experience required
- Small: does only need a few mega octets of space
- Safe: specific users can do specific actions
- Ethic: free-software used
Pre-condition:
- Software:
- - OAR-docker
Post-condition:
Side-effects:
4. Product evolution
This webUI just use a part of what OAR-API can do, so it could be improved. Moreover, as OAR-docker is still in development, new functionalities can be added.
5. Appendices
This document is inspired of the IEEE/ANSI 830-1998 Standard.
References: