The user standards – a way of promotion of innovations not only in programming
Innovations and the Innovation centers! – This strategy is announced in Russia the main for the next 20 years and begins to be picked up by the authorities of Ukraine. And also risks to come to the end according to Chernomyrdin: 'Meant well …'. Let's consider a way, normal for the West, and a method of transfer to the enterprises of the innovations which are based on use of computers (and where they are not used?!), a way - historically developed there at them and passed by us. By the way, there is a mass of innovations in the past which did not enter our practice for the same reasons
Content |
- 'On each machine at us – one technologist!' - the director of the computer Kaliningrad plant;
- 'In any project of the machine each bolt is projected again' - the director Luhansk by service station of Forty (electronic mechanical engineering)
Attention! - Already in those days at many enterprises 'behind a hillock' there was no Department of the Chief Technologist: directors, workshops and their sections were technologists only.
In reorganization transferred innovations to the TsKBM programmers of the Bryansk Machine works (BMZ) in the form of the user standards of technology of use of Paradox DBMS in production management. 'We hope, it will allow to lay off considerably number of employees of departments of programming of TsKBM' – the chief engineer of BMZ. I only with grief noticed: 'Not in them a problem! – Far more sharply lack of the user standards in your technology, design and production departments!!'.
Of course, a problem of NE in Mr. Putin and other in power! – A problem in ourselves – in our history and even consciousness. I will try to state it in a public measure with links to personal experience and still in the context of programming
Who and as was engaged in innovations. History
The innovation Centers
In the West and the USA already in to Perestroika times such centers was Institutes of Technology and the universities. It is no wonder that at the head of departments often there were leading specialists of large enterprises who do not have an academic degree and professorial ranks: the reputation of their practice was sufficient. Allegedly so was also at us: department of cybernetics of MIEM (Moscow) a certain member correspondent of Academy of Sciences of the USSR, at the same time - the head of Allied CB whom I – to the executive in charge of the agreement on the subject 'Lotus of RVO' with this department in one of numerous arrivals of NE managed to contemplate directed. The academician Glushkov V.M. was registered as the head of departments in many Vuz'akh of the USSR … Industry institutes if NE isolation of industry science from academic (Academy of Sciences of the USSR) and Vuz'ovskaya would have to become such centers: in each of them there were scientists, magazines, scientific councils and other. In Vuz'akh there was a Research Sector (RS) on agreements with the enterprises - the 2nd, 3rd and other earnings of teachers, actually communication with the enterprises and practice of students on their equipment. In reorganization all this disappeared together with the industry programs of development financed by the state.
Who and as extends innovations
Distribution of an innovation is physically realized in modern technology by development of the user standards corresponding to specifics of the enterprise – easily configured on the changing structure of production of the unified electronic modules (systems) of design of technology, enterprise management or production, whether it be an ACS, a CAD, the CNC programs for production of parts on machines or the systems of medical diagnostics. These standards are developed, improved and systematized in the corresponding management (document) of the enterprise of information department under a signature stamp 'Confidentially' in the safe for protection against competitors. For lack of acceptable 'management' such department is liquidated and the enterprise looks for his new head. These managements, as well as the concept 'user standards' at us traditionally are absent and now in many respects historically from the stage of the mechanized archives which is passed by us, office machines and still much before emergence of a computer.
Many enterprises of the USA do also without such departments, using services of small information and consulting firms which high income comes true also the confidentiality guaranteed by them - to ensuring privacy at access to databases of clients. We had NET and NE of such firms, apart from the 'franchisees' who are reselling and slightly adjusting standard configurations 1C, training to use of clients them - accountants, system administrators and others. Still there are also no system programmers having skills of development of the user standards for certain classes of tasks within different tools, for example, in the environment of Delphi or the same 1C: it is easy to detect it even at fluent viewing standard configurations 1C.
For clearing of a problem several examples from own practice:
1) Our users did not perceive the line Paradox 3.5 menus in top line of the screen: Russian is not so laconic as English! But within 2 minutes of confusion paid attention on: (a) any menu – the typical tree structure supported by coherent screen forms (linked forms) Paradox and (b) these forms, as well as often used data take place in a buffer pool – actually RAM. Paradox restriction with two-level communication of one table Master with other Slave can be bypassed, having displayed on it a layered design of the Menu: having placed all communications (links) of the multilevel menu in columns of the one-line Master-table. - In two hours received the first user standard in Paradox – the module with any paints of a form displaying any menu from the table with all options, allowing, having selected any option, to start the module determined in it (link), a screen form, a report form, or a database request (DB).
2) In the absence of the solution (1) to our other users Paradox 3.5 was necessary to paint hand to hand character-by-character options of each menu on the screen and for each option to program start of the object corresponding to it. - They did not understand the linked forms mechanism which allowed me 15 minutes drawing of forms on the screen to create model of structure of BMZ with workshops, sections, their heads and workers, and here to show work with this structure. In TSKBM BMZ spent for the same work up to two months with doubtful result. For the same reason Paradox - programs of the famous Dnipropetrovsk industry institute of mechanical engineering were almost vast (hundreds of thousands of operators of the PAL language) with huge delays at their operation and weak graphics
3) After L. Kuchma's arrival to the power his enterprise and CB Youzhny held a seminar with heads of the enterprises of mechanical engineering of Ukraine and their data-processing center where also the problem of support of the Paradox and FoxPro databases was discussed. - All spoke for benefit of FoxPro as faster. I tried to pay attention that it is impossible to compare power of the FoxPro fighter and the Paradox bomber on the rate of fire of machine guns – processing of tables in turn viewing each their line where FoxPro was 7 times faster. - Modern level of 'rockets' – use of parallel (group) processing of lines of tables requests to DBMS (Local SQL for FoxPro and QBE – for Paradox). Here, as I managed to prove (-l 'To + P' No. 5, 1995, Kiev, the 1st article), a picture exactly the opposite. However, by and large, NE used these 'rockets' nobody even from our fans FoxPro as do not use and today in Delphi applications, SQL servers and 1C of v8. One of the reasons – absence in the USSR, as well as now (CIS), teaching the theory and practice of designing of Databases.
4) In the environment of Paradox prepared the generator of its multiuser (multiterminal) Applications, now collected each of which in one-two weeks. - ‘Luganskteplovoz'a on the same result was required to programmers of data-processing center before half a year. - Submitted to the head of data-processing center the list of standards of the generator with short explanations. - In three days received the reaction shocking me: 'It that! – The programmer should become a fool?'. It is also an essence of our understanding, more precisely general not understanding of importance and purpose of the user standards. On a symposium of the CIS on programming (Alushta) one of businessmen in the field of the PC spoke more definitely: 'What standards else there! – Yes to the machine (in the program) that do not give – everything skhavat!'. - And it already we and reason of our troubles …
User standards
The section of Information scientist the Russian wikipedia.org according to requirements of IEEE is limited to determination of internal standards as means of the effective unified interaction of members of the group of designers by application development of the PC. Here the concept of the user standards as internal, focused is entered (and this is important!) on a class of the tasks solved by the PC Applications.
In the past saw messages of representatives of the western firms mastering some tools, for example, of Delphi or Programmer-2000 (Oracle) for development of proprietary applications of the PC: 'The first is also optional the second Application (a complex of programs) we still programmed, and already and the subsequent simply collected the 3rd (as in meccano, a comment of the author)' – understand from the first one-two Applications of the user standards for the class of tasks solved by firm prepared in development process. Even the existing Generators of Applications which are built in in (1C, FinExpert, Megalopolis, etc.) standards of electronic documentation, operational and accounting it is impossible to consider sufficient because they are usually focused on problems of wider class, than solved in the specific enterprise. In their environment it is possible and it is necessary to develop the user standards focused on a specific class of the tasks solved by you. See an example of such user standards in v7 environment 1C for settlement of users of the Heating system with utility company
User Standards. That it
As well as in meccano the User Standards – an essence the finished set of modular information and software modules – the blocks with the unified interfaces allowing to collect the PC Applications of a certain class with a minimum of costs (up to 0) on programming. In build process setup of modular modules – their parameters uniform (for all modules) image in the module, or, what is even better, in some one accurately certain area of the Application is made static (before application launch). Even more important a possibility of dynamic setup (reconfiguration) of parameters of modular modules - in the course of functioning of the Application, Paradox or 1C which is often reached by record of their values a type of expression in language of the tools, for example.
The infologichesky structure of the Application (configuration), for example, accepted as some classical construction from different sections of system engineering can be the user standard also: decision table, abstract state machine, stream functional machine and mn. other. Unlike it Generators of Applications allow the user to collect own configuration of the Application in the corresponding language (1C), available (Metadata of 1C) to the user standards (their modules).
The main way of obtaining the user standards – unification as main technology functions of the application, including computing and information character (including transactions with a DB), and interactive terminal facilities of users with an automated system. Unification of technology functions, simplifying activity of divisions and the staff of the enterprise with a growth of their efficiency most often results also in need of the corresponding reorganization of their activity.
Mechanisms of creation by the user of own views and classes of objects from a set of the built-in objects of the environment are provided in the modern object-oriented systems (for example, Delphi or Megalopolis) for this purpose. But even with their absence in environments 1C (v7 and v8), Paradox and even the Internet browser (IE, Opera, etc.) without any additional superstructures and systems it is possible to create effective user standards of an assembly technique of Applications introduction of the configured samples of screen forms, events with their elements and event procedures; samples QBE-and of SQL queries, report forms and modules. All these Wednesdays calculate the setup parameter values set by expressions, for example, eval (expression) Javascript of browsers the Internet, a template (expression) in 1C. All of them can place these parameters in dynamic arrays, a DB, XML files (browsers) or MXL tables (1C). All have means of generation of requests for search, selection and changes as own data (Local SQL, XML for the browser), and remote (remote) appeals to the SQL server
User Standards. Own experience
Era of Paradox 3.5-4.5
We missed this experience more than 80% of firms of the USA, apart from doubtful experience of a part of the enterprises of mechanical engineering. Initially focused on the normal economist and the engineer of Paradox 4.5 (3.5) caused in me delight existence of amazing properties:
- The highest level of unification with programming at all levels, including generation of screen forms, report forms and even QBE requests
- The mechanism of coherent screen forms with events and methods of their processing – means of effective interactive management of a multilevel DB
- Various events, including clicking of keys and the timer, programming of simulation of events, methods are event procedures and event streams
- The built-in QBE language is a request from these (tables) to communications and formulas, and not vice versa, as in SQL and therefore much more effective in processing even today at a minimum of use of the PC resources with Windows
and still mn. other.
All this did the Paradox environment ideal for placement in it not only the user standards, but also on their basis of Generators of the PC Applications for different classes of tasks.
Generator of multiuser Applications PCs
At design already of the first Applications in the environment of Paradox the Generator of its Applications long before emergence of the version of v7 1C and in many respects similar c was received by it, of course, it was not the analog of 1C (there are no objects 'periodic', 'calendar', Account, such powerful service) and at the same time there were solutions exceeding possibilities of 1C, for example:
- Stages of the Application and for each of them own subjects of electronic documentation, menu, a control panel with buttons, instructions (an analog of Help of 1C) and even a table-top (a background or a welcome screen of the screen) with operational instructions on it were entered
- Reference books, documents and the NE magazines needed to be caused by means of the menu or a control panel: for each stage: they accommodated a pile (as in life) on a table-top – one over another in the form of pop-up windows (similar to Windows) with headings within windows. Their initial sizes, provision on a table-top and an order in a pile – parameters of the description of a configuration of a stage
- The stage of the Application could cause other stage and documentation of a table-top of the first remained automatically, and their current provision and the sizes on a table-top, an order in a pile, the current lines and columns. At return of management to the caused stage these documents (reference books and magazines), their provision, the sizes and flowing on a table-top were recovered
- Simultaneous edition of the document (magazine, reference book) by several users. The attempt of edition of the same record (line) by the second user was blocked with the message to the second name of the first taken record. Edition of the document (reference book) allowed an insert of records (lines). Also authorization of each record it created and blocking of edition of such record by other user was allowed (document parameter)
- Documents (tables and screen forms) actually were in a buffer pool (RAM) and therefore high-speed performance in their processing and access was maximum. At the same time for each document it was possible to specify in a configuration the parameters (a timeout, address frequency on record) causing automatically reset of data of the document (its DB tables) on the winchester
Not idle time for programming timely reset of changes of tables of a buffer pool on the winchester executed automatically user standard in the absence of which and (then still!) PC means of protecting from failures on power supply of TSKBM BMZ it is forced was to refuse Paradox in a number of tasks.
Multipass accounting calculator of processing of form 20 of pilot production
In each of workshops of Nikolaev Yuzhmash'a (Ukraine) the accountant filled lines of form 20 on each stage of order fulfillment with pilot production, proceeding from costs for production and materials. The form consisted of the mass of columns – the columns completed in turn everyone line by line by the next pass from these regulations and values of the previous columns in the same line and/or their results (Amounts). Research department of the enterprise within 3 years unsuccessfully tried to automate the solution of this task to the EU of a computer, then SM-1640 (a small computer) and, at last, the PC. The analysis established the following reasons of a failure of these solutions:
- NE developers noticed that transactions of the accountant with form 20 actually repeat at each its next pass – serial viewing lines of a form with filling of the next column (column) of a form. - Differences only in the formulas used for calculation of the value which is filling out the column. The most labor-consuming transaction for the accountant was calculation of values distribution of the amount (result) by lines of one of the previous columns (the previous passes) in proportion to values of one of already filled. Operation was completed by correction of the error of distribution caused by roundings of the values which are filling out the column (column)
- In reorganization not only regulations, including nation-wide, but also their structure, as well as use in calculations of costs in form 20 nearly monthly changed
- Form 20 did not meet the new requirements of reorganization any more and had to cut it, pasting additional lines, supplementing on the back, etc.
Therefore the volume of 20 programs automating filling of a form was big and simply NE managed to adjust them at permanent changes in the organization of regulations. It was succeeded to solve this problem and a problem in 3 weeks, having developed in the environment of Paradox the classical multipass accounting calculator with following features:
- Form 20 accepted on the screen and in DB (tables) the same type, as a paper analog, but much more unified and easily moved apart (cut) – an insert of a line between two and with an opportunity to change structure, properties and names of columns (columns) the user. – 'Almost for all occasions!' – reaction of the chief accountant of the enterprise
- For each pass in the table Paradox, similar to form 20 (the classical decision table) the accountant had an opportunity for each column to write expressions (formula) any number of operations on its filling together with a transaction accomplishment condition (the classical decision table). In formulas as arguments (initial) names of columns – their values in the same line or their final (on all lines) the amounts calculated automatically in the previous passes were used. In addition to a powerful set of elementary functions and functions of statistics of the PAL (Paradox) language the distribution transaction stated above was entered only. (the user standard) a total sum of any previous column (graph) it is proportional to the current values of other column
- The calculator built in implementable Paradox (the user standard) randomly the system of regulations of a hierarchical structure introduced and adjusted by the user: from the state (top level) to section of workshop (bottom level). The accountant in a formula of the decision table entered only a name of regulation and its value was selected automatically as available (not empty) at the most bottom level of hierarchy of regulations
- The number of passes (viewings) form 20, as well as transactions in them was defined by accounting
'Now we will do without accountants in workshops and even without programmers' – reaction of the chief accountant. - I had to fill only a part of charges at pilot check, and their accountants added. The calculator in operation was launched without any noises and the addresses to me. Time of all passes of form 20 for any order did not exceed 1-2 minutes on the Intel/386 PC
Solving of tasks of an ACS on the PC by relational methods
It is nearly the only method of transfer of difficult tasks of an ACS from mainframes (big computers) on the PC with limited architecture of Intel: it allows to increase in tens of times high-speed performance of the PC Applications transfer of load from winchesters of RAM and processors by the effective organization of a buffer pool of DBMS when processing a DB a flow of requests (SQL, QBE). At last, DBMS can use for accomplishment of requests in parallel several processors (processor cores) of the modern PC.
Practically all used today the Data Base (DB) on the PC are relational. A problem for our programmers is design of a DB, a subject image displaying not only the developing structure of a real object (for example, productions), but also the logical relations are essences (contents) of the automated functions. This problem can be weakened the user standards, it is effective on high-speed performance – requests in the SQL language (or QBE) executing:
- Explosion of nodes and parts
- Distribution of value by lines of the table (or subsets of its lines) is proportional to values of some of its column with correction of an error of distribution because of roundings of the calculated values of distribution
- Search of doubles of sets of values in lines of the table
- Interpolation, extrapolation and mn. other.
Tremendous and until now means of Paradox for MS DOS (a flow of the generated QBE requests) in a classical problem of a complete set of products the parts and nodes arriving on assembly you watch experience of such solution in the Internet
and printings – the Kompyyuter + Programmy magazine, Kiev, 1995, No. 5 (the 1st extensive article with examples of QBE requests from a task).
Application of methods of relational algebra (flow of QBE requests) demanded review not only algorithms of the solution of a task, but also classical mathematical methods applied by optimization of plans of assembly.
After destruction of industry institutes Gorbachev reorganization, perhaps, I remained the last holder (archive on CD) this classical task for any production of discrete type of products (mechanical engineering, aircraft industry, light industry, etc.)
The generator of multiuser applications in Delphi
In 2000, being engaged in search of a suitable ready system of electronic documentation (standards) on PC network of District heating company, developed the simplest generator of multiuser applications in Delphi + SQL-2000 and even tested it in a number of tasks. For lack of skills of creation came to Delphi of own types and classes of objects similar to 1C developers: constructed the user standards of reference books, documents and their pointers (magazines) – structures of SQL tables, their screen forms and in them standards predetermined – with the fixed procedure names (methods) of event handling, including search of value in a column, input and edition of lines, right of access of users. For lack of objects operational and accounting, 1C service there were also certain advantages here:
- The reference book, the document and the magazine could be not only the SQL table, but also result of the multitabular SQL query which is coming to the end (exit) with the transaction SELECT
- The document for editing was automatically copied in a local DB – the table Dbase or Paradox, edited there in the corresponding screen form (configuration) with the forms of reference books subordinated to it from local or SQL-BD. Upon termination of edition the document was copied (came back) in SQL (remote) of a DB
- During the processing and edition of the document in a local DB Local SQL was used
- Events with the corresponding standard methods (predetermined by procedures) of their processing was much more, including the timer, inclusion and switching off of the mode of edition, clicking of keys, unlike 1C unconditional working off by methods of the beginning and the end of each event
- At start of printing the description (template) of a screen form was automatically transformed to the description of a report form for the same table (a table part of the document, reference book, magazine) taking into account the changes of width of columns of documents by Mouse executed to printing on the screen up to 0 (the admission of a column at printing) or their shifts
The user standards in 1C
Need of integration of the available standard applications of 1C (after a binding) accounting and personnel department with the main service – subscriber department of District heating company (settlement with clients) own user standards providing required performance (2-3 minutes of charge to one hundred thousands of clients) forced to develop already in v7 environment 1C reliability and efficiency of dialog - performance of operators of subscriber department.
At the same time the concepts of a DB of 1C of v7 and Archive of settlement provided there with clients are focused on use of relational methods with even more effective processing by group transactions 1C v8 – requests to a DB, similar in structure to SQL
User standards for the CPC
Such standards were tested for the CPC with Windows Mobile 5 and 6 for the sales agent of firm of wholesale: the choice of goods with maintaining a remaining balance and pictures (handout), statement of accounts (delivery notes) on objects of clients with correction of a remaining balance of goods. The first option of a system used IE5 browser with freeware the personal Web server and a MDB DB (CDB for the CPC). Then the similar solution only means of Opera browser 9.5.1 for the CPC (9.2 for the PC) or IE without any additional programs. In Opera local data warehouses are absent also as a DB (A remaining balance of goods, Accounts) are used ebolee 50 thousand cookie for the specified versions of Opera. In case of IE of a DB on cookie Opera it is modelled by local storage IE5 above. For storage of reference books (clients, goods), descriptions of Accounts and their pointers, parameters of the user standards (including the Menu) the XML files with a tree structure are used. The application is fulfilled on the PC and then in the same type without any changes is transferred to the CPC. Utilities for data transfer of a remaining balance of goods from 1C are provided in the CPC and written accounts back. In the course of selection of goods in the Account the total sum on the Account is visually displayed. In forms of dialog even such phenomena as stylus 'tinkling sound' on the screen of the CPC are considered. The plan (on days of the week) a bypass of clients reduces costs for formation of Accounts and selection of clients. For more details see subjects from patrick (login) in the forum 'Palms'
User Standards. Why
In addition to high-speed performance in application creation (assembly) and ensuring efficiency of its functioning (high-speed performance of the PC and users, reliability) the user standards provide the following benefits:
- Application developers PCs focus attention on automation of technology functions, distracting from parts of programming and subtleties of the instrumental systems – quality improvement of automation of technology functions
- Improvement of the user standards – the main way of quality improvement of the PC Applications using them and qualification of programmers
- Effective job specialization between those who create and develop the user standards, and those who apply them to assembly of the PC Applications
- The using same user standards of the PC Application provide a minimum of costs for their operation, integration and development
- An opportunity to bypass restrictions and the errors of the complex instrumental systems including leading to failures in operation of applications
P.S. For receiving more detailed data, including ready configurations of the PC and PDA Applications, address by E-mail of patrickeev@mail.ru