Русская версия
 Main  About us  Software development  Quality Assurance  Contacts

Quality Assurance

Quality Assessment and Assurance

Processes during project implementation which lead to software development can be organized in a variety of ways and described at different levels of detail. Different projects or customers can require an application of various combinations of well known processes thus creating their own software development model.

Desta Ltd using its own development experience and knowledge background is able to apply any software development model in practice. We can work in XP-style or Agile model, use cascade/spiral model and their combination. Development model is determined by the Customer through his requirements.

Irrespective of the used development model Desta Ltd pay great attention to quality assurance of the developed software products. For product validation and verification we use various methods from technical/peer review and white-box testing to unit-, stress- and other automated tests.

Below are the processes using which we create project management environment that allows us to complete project within the set budget, on time, and adhering to set program quality requirements.

Requirement management process

Development of software requirements specification (SRS) is the base for every software system. SRS determines all the functions and actions which will performed by the system developed. That's why we pay great attention to this process.

The main steps of this process are:

  1. Requirements definition and analysis. System requirements are being defined through the consideration of the future system with the customer and analysis of tasks which system must carry out. This step can include the developing of several modules of a system and its pilot systems.
  2. Requirements specification. All the information is being transfered into the document which sets many requirements.
    1. User requirements - generalized conceptualization and requirements of the customers to the system.
    2. System requirements - detailed description of system functions.
  3. Requirements approval. Fulfillment, conformity and completeness of many requirements is being checked.

Software project planning

Effective project management directly depends on proper work planning which is necessary for project's performance. The plan defined during the initial stage of the project is being considered by all the project members as a guideline document, accomplishment of which should lead to the successful completion of the project.

The main steps of the process are:

  1. Design constraints definition.
  2. Initial estimate of the project parameters.
  3. Analysis of risk and strategies which are directed it minimising risk.
  4. Analysis of hardware and software resources which are necessary for the project.
  5. Definition of the project stages.
  6. Planning of work with the description of every step and checkpoints.
  7. Arranging settlement with the customer with regards to resources and time needed to complete the project.
  8. Monitoring.
  9. In the case of changing the requirements - reconsideration of technical and organizational project parameters.
  10. Test planning.
  11. Quality control planning.

Development process

Developing process integrates technical kinds of activities connected to the system engineering, coding, debugging, and preparing the documentation.

System development is being performed on basis of requirements which were received at the initial stage of the project.

System development in general includes architecture design, customising functions, component design, data design, and maybe documentation of single algorithms.

Coding is supported by the company's indoor normative documents which determine the standarts of coding, documentation and maintenance.

Documentation is generally complete before the release of an output version of the product. Time spent preparing the documentation and dependence of this task on other tasks is being noted in project schedule. Customer representatives are engaged in inspection of the documentation.

Verification process

Verification is intended to show the correspondence of developed system with its specification as well as with customer's expectations and requirements.

Verification process consists of the following steps:

  1. Components testing. Single components are being tested to verify its correct functioning.
  2. Modules testing. Single modules consisting of dependent components are being tested.
  3. Subsystems testing. Single subsystems consisting of module set are being tested.
  4. System testing. Capability-, stress-, mass data-, system-, beta- testing is being performed.
  5. Acceptance testing. Customer data is used to perform tests.

Project tracking and oversight

Specified for every software development project there are:

  1. Reporting of project stakeholders.
  2. Collection and analysis of project metrics.
  3. Formal examinations of project phase terminations.
  4. Periodical stakeholders meetings.

Project monitoring and control activity is planned and time and resources are specified for it. Parameters of correspondent procedures are being specified in the planning documents, for example frequency and duration of stakeholders meetings or sorts and frequency of project reporting.

Project estimation, planning and work tracking activity are formed around key tasks and end production unit.

Periodical stakeholders meetings are held for the purpose of summarising subtotals, early detection of problems, and discussing of current organizational and technical questions.

Quality management

Quality management implies the possibility of independent control over the software development process. Monitoring project elements which are received during the development process are the basis of quality control.

Quality management consists of three main activities:

  1. Quality assurance. Definition of many organizational procedures and standards in order to create high-quality software
  2. Quality planning. Selection of the subset of procedures and standards from the whole set, and their adaptation to the certain software development project.
  3. Quality tracking. Definition and implementation of measures which will insure compliance to normative procedures and quality standards by all the development team members.

Configuration management

Configuration management process is directed to provide integrity, coherence and safety of the project artefacts, in particular work materials, project meeting minutes, end production units throughout their evolution.

In particular configuration management process implies:

  1. Plan the use of Version Control tools and change management including the definition of the structure of repository for end production units.
  2. Planning and carrying out of audit of configuration management activities.
  3. Release of stable versions of end production units and change control in end production units.

Copyright © 2003 — Desta Ltd. All Rights Reserved.
About web site
Whois iPhone FASS