License asignation manager

Evaluando propuestas
The aim is to develop a client-server application for the management of technical applications license assignation to users. Python is the preferred language due to its extensive library catalog that helps to ease and accelerate the development.
The server application shall manage the assignation of the available resources to users, which use the client side of the application. Resources are defined in a configuration file.

Server shall run on Windows Server or Linux. Server shall be in charge of assuring the coherence between the license usage reported by the different license daemons (flexlm based) and the internal state due to license assignment to users. For this it will use information provided by the client side of the application and may enforce actions on users computers through the client (e.g.
Closing an unauthorized instance of an application consuming a license) . Exceptionally (license hang), and to ensure coherence between assigned and available resources, the server side of the application shall be able to command license daemons for forcing the release of a particular resource, re-starting the daemon or blocking a particular user (normally performed by using the flexlm API). All management tasks shall be logged and the server shall be able to notify the administrator by e-mail for certain events.
Server shall be able to recover to a fault situation.

Client side of the application shall run in Windows 7 or Linux. It shall provide a GUI showing the available simulation resources. For using a particular resource the user shall be able to select it and perform a request for assignation.
If the server side performs the assignation, the application using the resource is launched in the user computer. The client/server application shall monitor that the license associated the assigned resource is correctly checked out in the corresponding license daemon. The usage of the resource is monitored until it is released.
The application using a resource may be a command line application requiring some parameters that shall be configurable through a dialog.

Client and server communicate using tcp/ip sockets. Particular message passing mechanism or remote execution is TBD. Server and clients execute in the same LAN.

The application shall be able to manage around 100 resources.

Developer should master or acquire the following topics:
* Lauch os commands as well as read and process the standard output (for flexlm commands execution)
* tcp/ip sockets
* working with text files.
* Execution as a service
* GUI (PyQT preferred)
* Monitoring and management of system processes
* Executable file generation and packaging

Category: Programación y Tecnología
Subcategory: Aplicaciones de escritorio
What is the scope of the project?: Create a new app
Is this a project or a position?: Project
I currently have: I have specifications
Required availability: As needed
Experience in this type of projects: No (I haven’t managed this kind of project before)
Required platforms: Windows, Linux / Unix






Freelancers interesados

Publicado: Hace 2 años

Plazo: 60 días

Crea tu propio proyecto

¿Buscas un freelancer para realizar un proyecto similar? Crea tu propio proyecto y recibirás ofertas de los mejores freelancers.

Freelancers que ya aplicaron para este trabajo

Luis N. Soy apasionado sobre toda las tendencias tecnológicas, me mantengo al tanto de cada una de ellas. Me encanta programar y administrar redes. Me encanta leer libros sobre desarrollo y sobre administración en general. + detalles

João V. C. D. S. software creator with C, games 3D and servers/clients. + detalles