Qualsyst - ISO Management Application
Qualsyst is an application that efficiently manages ISO 9001 quality system. It is also useful for managing food ISO 22000 consumer safety, ISO 27001 information security and other ISO management systems.
- Manages the whole documents life cycle (generate, analyze, approval, versioning, access restriction and archiving)
- Logs all operations, providing trasability and control
- Provides a system for a quick management of preventive and corrective actions
- Manages training programs
- Records user access to the application
- Has a neat interface for a nice experience
Qualsyst is yet another powerful application written in Django. Reasons why we used Django can be found in our previous article.
Most of the forms are built using Django's class based generic views, and django-extra-views package. This way we skip rendering each page manually, saving the form, and other routine tasks. Also, the forms extends an abstract class, where we do some security checks, as everything in Qualsyst is grouped per companies.
Documents are automatically versioned on Qualsyst. There is a configurable version limit per company (default: 9). Ex: 1.1, 1.2 ... 1.9, 2.0. The versioning is linked to the documents approval state. Editing a processed document (approved/rejected) will create a new revision of the document. Editing an unprocessed document will just save the changes on the current revision.
Almost all user actions are logged in the database. This process is achieved almost automatically. To achieve this, we created a model with the Django's awesome content types framework and the generic foreign key. Outputting logs is also made automatically. Each model has a custom template, which is customizable.
Qualsyst has an automatic installer for Unix systems, written in bash, which helps users install and configure the application for running. What it does:
-
Creates the virtual envrinoment
-
Installs the packages needed for the application to run, using pip
-
Prompts the user for database connection details and saves them into local_settings.py file.
-
Runs Django's manage syncdb and South's migrate commands, to create and update all the database tables
-
Creates a superuser
The installer can be ran as many times as you want, if you need for example to re-create the environment, or change the database settings. It gives you the posibility to skip some steps.
The CSS is written in LESS, and compiled on the server-side. The application also uses twitter bootstrap. We extended and customized bootstrap for a neat and clean interface.
Here are some examples of forms and data listings:
The application integrates a dedicated training program section that allows the initiation and management of training activities within the institution. Each training session will be identifiable by reference (Number, Name, Date, Solicitor) and will include details of the applicant training, course name, period, document reference materials provided to learners. It will also provide information regarding participants during the training session and the final grades they achieve.
Qualsyst allows recording all user activities in the application. The records include the user name, time and date of application, activities performed by the user throughout the session.
This article presents the description of the structure of Qualsyst quality management system which is recognized as a fast, stable, and nice looking application.
Qualsyst is "the tool" for ISO Management.