Automation of software development
Automation of software development used in the development of embedded hardware-software complexes (computer appliances) is based on a number of technologies that can reduce the time it takes for a product to enter the market and improve the quality characteristics of software and the computer appliance.
Solved tasks:
- Design, development and operation of a database of configuration information (DCI) in the computer appliance;
- Development of a software configuration program based on DCI tables;
- Development of technology for the formation of an executable software module;
- Development of technology for launching in debug mode and remote software configuration;
- Development of technology for remote testing and software correctness control;
- Development of technology for issuing working documentation.
Database Development and Operation
Database Development and Operation
The use of publicly available software for working with databases, allowing to reduce the cost of software development.
Creation of a unified technology for development and maintaining information on software configuration for a specific computer appliance model.
Distributed network access with control of the rights of each database client.
In addition to the actual configuration information in the database, it is possible to store information of a different kind:
- downloadable software modules;
- Help on programs and other software objects.
Formation of configuration files on the basis of information from DCI that configure the computer appliance software.
Automatic validation of configuration files based on information from DCI.
System Software configuration technology
It is implemented using a program that connects to the database server to read tables containing configuration information for each computer appliance sample. The result of the software configuration are files containing information about the configuration of client tasks. These files in the process of work can be remotely modified for online reconfiguration of software using an instrumental computer (PC).
Technology of executable module formation
The formation of the boot module is performed as a result of compilation of the selected software version in the integrated development environment.
Technology for launching, remote configuration and testing of software
It is implemented on the basis of the program for remote launch and configuration of computer appliance software. A PC is used as a remote tooling machine.
To implement local and remote monitoring of the software, additional modules must be developed for all client tasks testing their current state.
Design and conduct of tests with the display of results of the type ready / failure. In the event of a failure, more detailed testing is carried out with the identification of tasks that deviate from regular work.
To obtain information when troubleshooting, it is possible to issue the configuration of the task (startup parameters, etc.) upon request from the server.
Monitoring the current status and the debugging process of the software is carried out using a remote connection to the computer appliance (wired / radio Ethernet) using standard tools (WEB browsers), using a specially developed WEB server running in parallel with the software server.
Technology for issuing working documentation
To create and modify the database tables of configuration information, a Windows application has been developed that generates documents in accordance with the requirements of the customer for technical documentation. Additionally, documents can be generated in HTML format with the required navigation system for the content of the document.