Proj-2014-2015-Mini datacenter portail SRS

From air
Revision as of 17:14, 7 April 2015 by Ombeline.Rossi (talk | contribs) (1.3 Definitions, acronyms and abbreviations)
Jump to: navigation, search


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.

Diagramme contexte.bmp

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.

Diagramme utilisateur.bmp

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: