Contacts

Software products are designed for. What is meant by computer software? Software products: basic classification

The capabilities of a computer as a technical basis for a data processing system are associated with the software (programs) used.

Program- an ordered sequence of commands (instructions) of the computer for solving the problem.

Software (sowtware)- a set of data processing programs and documents necessary for their operation.

Programs are designed for machine implementation of tasks. The terms task and application are very widely used in the context of computer science and software. Wherein problem is a problem to be solved, and application- software implementation on a computer for solving the problem.

All programs by the nature of use and categories of users can be divided into two classes - utilitarian programs and software products (products).

Utility programs are designed to meet the needs of their developers. Most often, utility programs play the role of a service in data processing technology or are programs for solving functional problems that are not intended for widespread distribution.

Software products (products) designed to meet the needs of users, widespread distribution and sale.

Currently, there are other options for the legal distribution of software products that have appeared using global or regional telecommunications:

· freeware- free programs, freely distributed, are supported by the user himself, who is entitled to make the necessary changes to them;

· shareware- non-commercial (shareware) programs that can be used, as a rule, for free. Subject to regular use of such products, a certain amount is paid.

The software product must be properly prepared for operation, have the necessary technical documentation, provide a service and guarantee the reliable operation of the program, have the manufacturer's trademark, and it is desirable to have a state registration code

Software is a complex of interrelated programs for solving a specific problem (task) of mass demand, prepared for implementation like any type of industrial product.

Software products can be created as:

· Individual development under the order;

· Development for mass distribution among users.

Typically, software products require escorts, which is carried out by specialized firms - distributors of programs (distributors), less often - by development firms.

Software product support- this is support for the performance of the software product, transition to its new versions, making changes, correcting detected errors, etc.

The main characteristics of software products are:

Mobility software products means their independence from the technical complex of the data processing system, operating environment, network technology of data processing, the specifics of the subject area, etc.

Reliability the operation of a software product is determined by the faultlessness and stability in the operation of programs, the accuracy of performing the prescribed processing functions, the ability to diagnose errors that arise during the operation of programs.

Efficiency a software product is evaluated both from the standpoint of its direct purpose - user requirements, and from the point of view of the consumption of computing resources required for its operation.

Taking into account the human factor means providing a friendly interface for the work of the end user, the presence of a context-sensitive prompt or a training system as part of the software tool, good documentation for mastering and using the functionality embedded in the software tool, analyzing and diagnosing errors that have occurred, etc.

Modifiability software products means the ability to make changes, for example, expanding processing functions, moving to another technical processing base, etc.

Communicativeness software products are based on their maximum possible integration with other programs, ensuring data exchange in common presentation formats (export / import of databases, implementation or linking of processing objects, etc.).

In the conditions of the market for software products, important characteristics are:

· price; 2) the number of sales; 3) time spent on the market (duration of sales); 4) the popularity of the developer and the program; 5) availability of software products for a similar purpose.

The specificity of software products (unlike most industrial products) is also the fact that their operation must be carried out on a legal basis - licensing agreements between the developer and users in compliance with the copyright of software developers.

Methods for protecting software products

Methods for protecting software products can be conditionally subdivided into software and legal. When using software systems, the program is executed only upon recognition of some unique uncopyable key element... So key element may be:

· A floppy disk with a key that cannot be copied;

· Certain characteristics of the computer hardware;

a special device (electronic key) connected to a computer and designed to issue an identification code

Patent protection establishes priority in the development and use of a new approach or method used in the development of programs, certifies their originality.

Status trade secret for the program, limits the circle of persons familiar or allowed to operate it, and also determines the extent of their responsibility for disclosing secrets.

License agreements apply to all aspects of legal protection of software products, including copyright, patent protection, trade secrets. The most commonly used copyright transfer licenses.

License- contract for the transfer by one person (licensor) to another person (to the licensee) the right to use a name, product, technology or service. Licensor increases its income by collecting royalties, expands the scope of distribution of a software product or database; licensee derives income through their application.

Exclusive license- sale of all property rights to a software product or database, the buyer of the license is granted the exclusive right to use them, and the author or owner of the patent refuses to independently use them or provide them to others.

Simple license- the licensor grants the licensee the right to use the software product or database, reserving the right to use them and provide them on similar terms to an unlimited number of persons

Label license- a license for one copy of the software product or database. This license type applies to retail sales. Each official buyer enters into a licensing agreement with the seller for their use, but the copyright of the developer remains.

Law on the Protection of Software Products and Computer Databases by the author recognizes the natural person, as a result of whose creative activity they are created. To the author regardless of his property rights belong personal copyright: authorship, name, inviolability (integrity) of programs or databases.

All software products by the nature of use and categories of users are divided into 2 classes of utility programs and software. (Products)

Utility programs - designed to meet the needs of their developers, programs "for themselves". Most often, UE plays the role of a service in data processing technology, or is software solutions for functional tasks that are not intended for widespread use. Software products - designed to meet the needs of users, widespread distribution and sale.

The software product must be properly prepared for operation, have the necessary technical documentation, provide a service and guarantee the reliable operation of the program, have the manufacturer's trademark. Only under such conditions can the created software package be called a software product.

The software product has several qualitative characteristics:

Algorithmic complexity;

Completeness of processing functions;

Size of program files;

Requirements for the operating system and technical means of processing from the side of the software;

The amount of disk memory;

The size of the RAM.

Quality indicators should include the following aspects:

How well the software product can be used (simple, reliable, effective);

How easy it is to operate the software product;

Is it possible to use the software product when the conditions of its use change.

In the conditions of the existence of the market of software products, important characteristics are the cost, the number of sales, the time spent on the market, the popularity of the manufacturer and the program itself, the availability of software products for a similar purpose on the market.

A software product of any kind is characterized by a life cycle consisting of separate stages.


9. The main characteristics of the program are:

1. Algorithmic complexity

2. Composition and depth of elaboration of the implementation of the processing function

3. Completeness and consistency of processing functions

4. Size of program files

5. Requirements of OS and technical means of processing from the side of the software tool

6. Memory disk capacity

7. The size of the operating system to run the program

8. Processor type

9. OS time

10. Availability of a computer network

PP has a variety of quality indicators that reflect the following aspects:

1. How well, simply, reliably, effectively can the PP be used?

2. How easy it is to operate the PP

3. Is it possible to use the PP when the conditions change when it is applied

The mobility of PP means their independence from:

1. Technical set of data processing system

2. Operating environment

3. Domain specifications, etc.

10. Reliability of the software product. PP reliability. Modifiability of PP. Communicativeness of PP. Main characteristics of the software product

The main characteristics of the quality of programs:

1) Mobility means their independence from the technical complex of the data processing system, the operating environment, the network technology of data processing, the specifics of the subject area, etc.

2) The reliability of the software product (PP) is determined by the uninterrupted and stable operation of programs, the accuracy of the assigned processing functions, the ability to diagnose errors that occur during the operation of programs.

3) The efficiency of the software is assessed both from the point of view of its direct purpose - user requirements, and from the point of view of the expenditure of computing resources required for its operation.

4) Modifiability of the PCB means the ability to make changes, for example, the expansion of processing functions, the transition to another technical processing base.

5) The communication of PP is based on their maximum possible integration with other programs, ensuring the exchange of data in common presentation formats.

6) taking into account the human factor means:

1.Provides friendly interference for data operation

2.the presence of a context-sensitive prompt or a training system as part of the PS

3.good documentation for mastering and using PP

4.analysis and diagnostics of the errors encountered

11. The life cycle of the program is the process of creating and applying it from start to finish.

Programs of any kind are characterized by life cycle, consisting of separate stages:

1. Marketing of the software market, specification of requirements for software

2. Designing the structure of the PCB

3. Programming (creation of program code), testing and a complex for debugging programs

4. PCB documentation, preparation of operation and documentation technologies

5. Entry into the PP market, distribution of PP

6. Operation of the user PCB

7. Accompanying PP

8. Removal of a PP from sale, refusal to support

According to the nature of use and categories of users, all programs can be divided into two classes (Figure 8.4) - utility programs and software products (products).

Rice. 8.4. Classification of programs by user categories

Utility programs("programs for itself") are designed to meet the needs of their developers. Most often, utility programs play the role of a service in data processing technology or are programs for solving functional tasks that are not intended for widespread distribution.

Software products(products) are designed to meet the needs of users, widespread distribution and sale.

Currently, there are other options for the legal distribution of software products that have appeared using global or regional telecommunications:

Freeware - freeware programs, freely distributed, are supported by the user himself, who is authorized to make the necessary changes to them;

Shareware - non-commercial (shareware) programs that can be used, as a rule, for free. Subject to regular use of such products, a certain amount is paid.

A number of manufacturers use OEM programs(Original Equipment Manufacturer), i.e. built-in programs installed on computers or supplied with computer equipment.

The software product must be properly prepared for operation, have the necessary technical documentation, provide a service and guarantee the reliable operation of the program, have the manufacturer's trademark, and it is desirable to have a state registration code. Only under such conditions can the created software package be called a software product.

Software- a complex of interrelated programs for solving a specific problem (task) of mass demand, prepared for implementation like any type of industrial product.

The path from "programs for oneself" to software products is quite long, it is associated with changes in the technical and software environment for the development and operation of programs, with the emergence and development of an independent industry - the information business, which is characterized by the division of labor of firms - software developers, their further specialization, formation of the market for software and information services.

Software products can be created as:

§ individual development on order;

§ development for mass distribution among users.

In case of individual development, the developer company creates an original software product that takes into account the specifics of data processing for a specific customer.

When developing for mass distribution, the developer company, on the one hand, must ensure the versatility of the performed data processing functions, on the other hand, the flexibility and customizability of the software product to the conditions of a specific application. A distinctive feature of software products should be their consistency - the functional completeness and completeness of the implemented processing functions, which are used in aggregate.

The software product is developed on the basis of industrial technology for performing design work using modern programming tools. The specificity lies in the uniqueness of the process of developing algorithms and programs, depending on the nature of information processing and the tools used. Significant resources are spent on the creation of software products - labor, material, financial; high qualification of developers is required.

As a rule, software products require maintenance, which is carried out by specialized firms - software distributors (distributors), less often - by development firms. Maintenance of mass-use programs is associated with great labor costs - fixing detected errors, creating new versions of programs, etc.

Software product support- support for the performance of the software product, switching to new versions, making changes, correcting detected errors, etc.

Software products, unlike traditional software products, do not have a strictly regulated set of quality characteristics specified when creating programs, or these characteristics cannot be specified or evaluated in advance, since the same processing functions provided by a software tool can have different depth of development. Even the time and cost of developing software products cannot be determined with a high degree of accuracy in advance.

The main characteristics of the programs are:

§ algorithmic complexity (logic of information processing algorithms);

§ composition and depth of elaboration of the implemented processing functions;

§ completeness and consistency of processing functions;

§ volume of program files;

§ requirements for the operating system and technical means of processing from the side of the software;

§ the amount of disk memory;

§ the size of the RAM for running programs;

§ processor type;

§ operating system version;

§ availability of a computer network, etc.

Software products are diverse quality indicators, which reflect the following aspects:

§ how well (simply, reliably, efficiently) the software product can be used;

§ how easy it is to operate the software product;

§ is it possible to use the software product when the conditions of its use change, etc.

The tree of quality characteristics of software products is shown in Fig. 8.5.

Rice. 8.5. The tree of characteristics of the quality of the software product

Mobility of software products means their independence from the technical complex of the data processing system, the operating environment, the network technology of data processing, the specifics of the subject area, etc. A mobile (multi-platform) software product can be installed on various models of computers and operating systems, without restrictions on its operation in a computer network. The processing functions of such a software product are suitable for mass use without any changes.

Reliability the operation of a software product is determined by the faultlessness and stability in the operation of programs, the accuracy of performing the prescribed processing functions, the ability to diagnose errors that arise during the operation of programs.

Efficiency a software product is evaluated both from the standpoint of its direct purpose - user requirements, and from the point of view of the consumption of computing resources required for its operation.

The consumption of computing resources is estimated in terms of the amount of external memory for placing programs and the amount of RAM for running programs.

Taking into account the human factor means providing a friendly interface for the work of the end user, the presence of a context-sensitive hint or a training system as part of the software tool, good documentation for mastering and using the functionality embedded in the software tool, analyzing and diagnosing errors that have occurred, etc.

Modifiability software products means the ability to make changes, for example, expanding processing functions, moving to another technical processing base, etc.

Communicativeness software products are based on their maximum possible integration with other programs, ensuring data exchange in common presentation formats (export / import of databases, implementation or linking of processing objects, etc.).

In the conditions of the market for software products, important characteristics are:

§ price;

§ number of sales;

§ time spent on the market (duration of sales);

§ the popularity of the developer and the program;

§ availability of software products for a similar purpose.

Mass distribution software products are sold at prices that take into account demand and market conditions (availability and prices of competing software). The marketing carried out by the company is of great importance, which includes:

§ formation of a price policy to conquer the market;

§ creation of a trading network for the implementation of a software product (the so-called dealer and distribution centers);

§ providing support and warranty service for users of the software product, creating a hotline (prompt response to questions arising during the operation of software products);

§ training of users of the software product.

The specificity of software products (unlike most industrial products) is also the fact that their operation must be carried out on a legal basis - licensing agreements between the developer and users in compliance with the copyright of software developers.

Software (software) Is a set of software tools for computers that ensure the operation, diagnostics and testing of their hardware, as well as the development, debugging and performance of any user tasks.

Software also includes the entire area of ​​software design and development:

    software design technology;

    methods of testing programs;

    analysis of the quality of the programs;

    documenting programs;

    development and use of software tools that facilitate the software design process, etc.

According to the nature of use and categories of users, all programs are divided into two classes - utility programs and software products.

Utility programs are designed to meet the needs of their developers. Most often, they perform the role of a service in data processing technology or are programs for solving functional tasks that are not intended for widespread distribution.

Software products (PP) designed to meet the needs of users, widespread distribution and sale.

PP can be classified according to the scope of use:

    hardware part of computers and computer networks;

    software development technology;

    functional tasks of various subject areas.

Based on this, there are 3 classes of software products:

    system software;

    programming technology toolkit;

    application packages.

System software - a set of programs and software systems to ensure the operation of computers and computer networks. It includes basic and service software. In turn, the basic software consists of: basic input-output system (BIOS), operating system (OS), operating shells. Service software consists of: computer health diagnostic programs, anti-virus programs, disk maintenance programs, data archiving programs, network maintenance programs.

BIOS is a set of programs that ensure the interaction of the OS and other programs with various computer devices (keyboard, video adapter, disk drive, timer, etc.). The BIOS functions also include automatic testing of the main hardware components (RAM, etc.) when the machine is turned on, searching for the OS loader program on the disk and loading it from the disk into RAM.

Operating system designed to control the execution of user programs, planning and management of computer resources. It acts as a link between the computer hardware, on the one hand, and the executable programs and the user, on the other. The OS is usually stored in the external memory of the computer - on disk.

The OS functions include:

    dialogue with the user;

    I / O and data management;

    planning and organization of the program processing process;

    resource allocation;

    launching programs for execution;

    all kinds of auxiliary maintenance operations;

    transfer of information between various internal devices;

    software support for the operation of peripheral devices.

Examples of the most popular operating systems are: MSDOS, Windows (95, 98, NT, 2000, XP, Packet), Unix, Linux.

Network software is intended for organizing joint work of a group of users on different computers.

Operating shells (OO) special programs designed to facilitate user communication with OS commands. TOEs have both textual and graphical versions of the end-user interface.

An extension of the basic software is a set of service, additionally installed programs, which can be classified as follows:

    control, testing and diagnostic programs that are used to check the correct functioning of the computer device and to detect malfunctions during operation; indicate the cause and location of the malfunction;

    driver programs that extend the capabilities of the operating system to manage input-output devices, RAM, etc.; with their help, it is possible to connect new devices to a computer or non-standard use of existing ones;

    Packing programs (archivers) that allow you to write information on disks more densely, as well as combine copies of several files into one archive file;

    anti-virus programs designed to prevent infection with computer viruses and eliminate the consequences of virus infection;

    disk space optimization and quality control programs;

    information recovery, formatting, data protection programs;

    communication programs that organize the exchange of information between computers, etc.

These programs are called utilities.

Programming technology toolkit - a set of programs and software systems that provide technology for the development, debugging and implementation of the created programs.

The users of the programming technology are system and application programmers.

There are the following groups of programming technology tools 1, p. 250:

    tools for creating applications, including local tools that ensure the implementation of individual work on the creation of programs, and integrated environments for software developers, ensuring the implementation of a set of interrelated work on the creation of programs;

    CASE-technology (Computer- Aided System Engineering), representing methods of analysis, design and creation of software systems and is designed to automate the development and implementation of information systems.

Local software development tools are the most representative on the software market and consist of programming languages ​​and systems, as well as a user's instrumental environment.

Application packages (PPP)- a complex of interrelated programs for solving problems of a certain class of a specific subject area. PPPs serve as software tools for solving functional problems and are the most numerous class of software products.

It is difficult to carry out a unified classification of PPPs due to the wide variety of tasks solved on a computer and the corresponding PPPs. We list the most frequently used PPP 3, p. 53-58.

Text editors. The main functions of this class of application programs are to enter and edit text data. Additional functions include the automation of the input and editing processes. For the operations of entering and saving data, text editors call up and use the system software, which is typical for all other types of application programs.

Word processors. The main difference between word processors and text editors is that they allow not only entering and editing text, but also formatting it, that is, formatting it. Accordingly, the main means of word processors include means of ensuring the interaction of text, graphics, tables and other objects that make up the final document, and additional means of automating the formatting process.

Graphic editor. This is an extensive class of programs designed to create and (or) process graphic images. In this class, the following categories are distinguished: bitmap editors, vector editors and software for creating and processing three-dimensional graphics (3D editors).

Database management systems. Databases are huge arrays of data organized into tabular structures. The main functions of database management systems are:

    creating an empty (empty) database structure;

    providing means of filling it out or importing data from tables of another database;

    providing access to data, as well as providing search and filtering tools.

Many database management systems additionally provide basic data analysis and processing capabilities. As a result, it is possible to create new database tables based on the existing ones. In connection with the widespread use of network technologies, modern database management systems are also required to be able to work with remote and distributed resources located on the servers of the worldwide computer network.

Spreadsheets. Spreadsheets provide comprehensive tools for storing and processing various types of data. To some extent, they are similar to database management systems, but the main emphasis is shifted not to storing data arrays and providing access to them, but to transforming data, moreover, in accordance with their internal content.

Unlike databases, which typically contain a wide range of data types (from numeric and textual to multimedia), spreadsheets tend to be more focused on numeric data. But spreadsheets provide a wide variety of methods for working with numeric data.

The main property of spreadsheets is that when you change the content of any table cells, an automatic change can occur in the content in all other cells associated with the changed ratio specified by mathematical or logical expressions (formulas). The simplicity and convenience of working with spreadsheets have earned them wide application in the field of accounting, as universal tools for analyzing financial, commodity and commodity markets, available means for processing the results of technical tests, that is, wherever it is necessary to automate regularly repeated calculations of sufficiently large amounts of numerical information ...

Computer-aided design systems (CAD-system). Designed to automate design and engineering work. They are used in mechanical engineering, instrument making, architecture. In addition to drawing and graphic works, these systems allow carrying out the simplest calculations and the selection of ready-made structural elements from extensive databases.

Distinctive feature CAD-systems consists in automatic support at all stages of the design of technical conditions, norms and rules, which frees the designer or architect from non-creative work. For example, in mechanical engineering CAD-systems are able, on the basis of the assembly drawing of the product, to automatically execute working drawings of parts, prepare the necessary technological documentation indicating the sequence of machining transitions, assign the necessary tools, machine tools and control devices, and also prepare control programs for numerically controlled machines (CNC), industrial robots and flexible automated lines.

Desktop publishing systems. The purpose of this class of programs is to automate the process of layout of printed publications. This class of software occupies an intermediate position between text processes and computer-aided design systems.

In theory, word processors provide a means to embed other types of objects into a text document, such as vector and bitmap graphics, and also allow you to control the interaction between text parameters and embedded object parameters. However, in practice, for the manufacture of printing products, these tools are either functionally insufficient in terms of printing requirements, or are not convenient enough for productive work.

Desktop publishing differs from word processors in its advanced controls for how text interacts with page settings and graphics. On the other hand, they differ in reduced functionality for automating text input and editing. A typical use case for desktop publishing is to apply it to documents that have been preprocessed in word processors and graphics editors.

Expert systems. Designed to analyze the data contained in the knowledge bases and issue recommendations at the user's request. Such systems are used in cases where the initial data are well formalized, but extensive specialized knowledge is required to make a decision. Typical areas of use of expert systems are jurisprudence, medicine, pharmacology, chemistry.

A characteristic feature of expert systems is their ability for self-development. The initial data are stored in the knowledge base in the form of facts, between which a certain system of relations is established with the help of experts. If at the stage of testing the expert system it is established that it gives incorrect recommendations and conclusions on specific issues or cannot give them at all, this means either the absence of important facts in its base, or a violation in the logical system of relations. In both cases, the expert system itself can generate a sufficient set of queries to the expert and automatically improve its quality.

A special area of ​​scientific and technical activity called knowledge engineering is associated with the use of expert systems. Knowledge engineers are specialists with special qualifications, acting as an intermediate link between the developers of the expert group (programmers) and leading specialists in specific fields of science and technology (experts).

Web-editors. This is a special class of editors that combine the properties of text and image editors. They are designed to create and edit so-called Web-documents (Web-pages of the Internet).Web- documents are electronic documents, the preparation of which should take into account a number of peculiarities associated with the reception / transmission of information on the Internet.

Theoretically to create Web- documents, you can use ordinary text editors and processors, as well as some of the vector graphics editors, but Web- editors have a number of useful features that increase productivity Web- designers. Programs of this class can be effectively used for the preparation of electronic documents and multimedia publications.

Browsers (browsers, viewersWeb). This category includes software tools designed to view electronic documents in the format Html(documents of this format are used as Web- documents). Modern browsers render more than just text and graphics. They can play music, human speech, listen to radio broadcasts on the Internet, watch video conferencing, work with e-mail services, with a system of teleconferences (newsgroups) and much more.

Integrated office systems. They are software tools for automating the manager's workplace. The main functions of such systems include the functions of creating, editing and formatting the simplest documents, centralizing the functions of e-mail, facsimile and telephone communications, dispatching and monitoring the workflow of an enterprise, coordinating the activities of departments, optimizing administrative and economic activities and supplying operational and reference information upon request.

Accounting systems. These are specialized systems that combine the functions of text and spreadsheet editors, spreadsheets and database management systems. Designed to automate the preparation of primary accounting documents of an enterprise and their accounting, to maintain accounts of an accounting plan, as well as to automatically prepare regular reports on the results of production, economic and financial activities in the form adopted for submission to tax authorities, extra-budgetary funds and statistical authorities ... Despite the fact that, in theory, all the functions characteristic of accounting systems can be performed by other software tools listed above, the use of accounting systems is convenient due to the integration of different tools into one system.

When deciding on the introduction of an automated accounting system at an enterprise, it is necessary to take into account the need for adaptation means in it when the regulatory framework changes. Due to the fact that in this area the regulatory framework in Russia is extremely unstable and subject to frequent changes, the ability to flexibly reconfigure the system is a mandatory function, although this requires advanced qualifications from users of the system.

Financial analytical systems. Programs of this class are used in banking and exchange structures. They allow you to monitor and predict the situation in the financial, commodity and commodity markets, analyze current events, prepare summaries and reports.

Geographic information systems (GIS). Designed to automate cartographic and geodetic works based on information obtained by topographic or aerospace methods.

Video editing systems. Designed for digital processing of video materials, their editing, creating video effects, eliminating defects, overlaying sound, titles and subtitles.

Separate categories of applied software, with their own developed internal classification systems, represent teaching, developmental, reference and entertainment systems and programs. A characteristic feature of these classes of software is the increased requirements for the multimedia component (the use of musical compositions, graphic animation and video materials).

1. Concept and classes of software product.

2. The life cycle of a software product.

3. Basic concepts about the protection of software products.

4. Software systems for protection against unauthorized copying.

5. Legal methods of protection of software products and databases.

6. Characteristics of classes of software products depending on the scope of their use.

7. Classification of software packages.

Question number 1. The concept and classes of a software product.

Application packages (APPs) are the most dynamically developing part of the information software market. Improving PPP contributes to the introduction of computers in all areas of activity.

All programs can be divided into two classes by the nature of use and user categories:

1. Utility programs ("programs for oneself") are designed to meet the needs of their developers. Most often, they perform the role of a service in data processing technology or are programs for solving functional tasks that are not intended for widespread distribution.

2. Software products (products) are designed to meet the needs of users, widespread distribution and sales.

Currently, there are other options for the legal distribution of software products that have appeared using global or regional telecommunications:

1. freeware - free programs, freely distributed, are supported by the user himself, who is authorized to make the necessary changes to them.

2. shareware - non-commercial (shareware) programs that can be used, as a rule, for free. Subject to regular use of such products, it makes a contribution of a certain amount.

The software product must be properly prepared for operation, have the necessary documentation, provide a service and guarantee the reliable operation of the program, have the manufacturer's trademark, and it is desirable to have a state registration code. Only under such conditions can the created software package be called a software product.

Software product (PP) Is a complex of interrelated programs for solving a specific problem (task) of mass demand, prepared for implementation like any type of industrial product.

Software products can be created as an individual development to order, and as a development for mass distribution among users.

Question number 2. Life cycle of a software product.

Programs of any kind are characterized by life cycle, consisting of separate stages:

1) marketing of the software market, specification of requirements for a software product;

Marketing and software product specification are intended to study the requirements for the created software product, namely:

· Determination of the composition and purpose of the functions of processing PP data.

· Establishing user requirements for the nature of interaction with the software product, the type of user interface (menu system, use of the mouse, etc.).

· Requirements for the complex of hardware and software for the operation of PP, etc.

At this stage, it is necessary to carry out a formalized statement of the problem.

2) designing the structure of the software product;

It is connected with the algorithmization of the data processing process, the detailing of processing functions, the development of the structure of the software and the information base (database) of the problem, the choice of methods and tools for creating programs (programming technology).

3) programming (creation of program code), testing, autonomous and complex debugging of programs;

They are the technical implementation of design solutions and are carried out using the selected developer tools.

4) documentation of the software product, preparation of operational and technological documentation;

Software documentation is a mandatory type of work performed, as a rule, not by the developer himself, but by the person associated with the distribution and implementation of the software product. The documentation should contain the necessary information for installing and ensuring the reliable operation of the software product, support users in performing processing functions, and determine the procedure for integrating the software product with other programs. The success of the distribution and operation of a PCB largely depends on the quality of its documentation.

5) entering the software market, distributing a software product (associated with organizing sales to a mass user);

This stage should be as short as possible; standard marketing techniques are used to promote PP: advertising, increasing the number of sales channels, pricing policy, etc.

6) operation of the software product by users;

Parallel to his escort, in this case, the operation of programs can begin in the absence of maintenance or continue if maintenance is completed for some more time. After the PP is withdrawn from sale, a certain time can also carry out its support. During the operation of the PP, the detected errors are eliminated.

7) maintenance of the software product;

8) withdrawal of a software product from sale, refusal of maintenance.

They occur, as a rule, in the event of a change in the technical policy of the developer company, the inefficiency of the software, the presence of fatal errors in it, and the lack of demand.

The life cycle duration for different PCBs is not the same. For most modern PCBs, the life cycle is measured in years (2-3 years). Although quite often found on computers and long-discontinued PCBs.

Question number 3. Basic concepts about the protection of software products (PP).

Software products and computer databases are the subject of the intellectual work of highly qualified specialists. Software is also subject to protection due to the complexity and laboriousness of restoring its operability, the importance of software for the operation of the information system.

Software protection aims at:

1. restriction of unauthorized access to programs or their deliberate destruction and theft;

2. exclusion of unauthorized copying (duplication) of programs.

The software product and databases must be protected in several ways from impact:

1) human- theft of machine media and software documentation; malfunction of the software product, etc.;

2) apparatus- connecting hardware to a computer for reading programs and data or their physical destruction;

3) specialized programs- making a software product or database inoperable (for example, virus infection), unauthorized copying of programs and databases, etc.

The easiest and most affordable way to protect software and database - Access limitation. Access control to the software product and the database is built by:

1. password protection of programs when they are launched;

2. using a key diskette to run programs;

3. restrictions on programs or data, processing functions available to users, etc.

Can also be used and cryptographic techniques protection of database information or head program modules.

Question number 4. Software systems for protection against unauthorized copying.

When using software protection systems, the program is executed only upon recognition of some unique non-copied key element.

Such key elements can be:

· A floppy disk with a key that cannot be copied;

· Certain characteristics of the computer hardware;

· A special device (electronic key) connected to a computer and designed to issue an identification code.

Software copy protection systems PP:

· Identify the environment from which the program will be launched;

· Install the appropriate environment from which the program is launched, the one for which the authorized launch is allowed;

· Develop a reaction to launch from an unauthorized environment;

· Register authorized copying;

· Counteract the study of algorithms and programs of the system.

Question number 5. Legal methods of protection of software products and databases.

Legal remedies include:

· Patent protection;

· The law on trade secrets;

· License agreements and contracts;

· Economic rights, giving their owners the right to obtain economic benefits from the sale and use of software and databases;

· Moral rights that protect the identity of the author in his work.

In many civilized countries, unauthorized copying of software for sale or free distribution is considered a state crime, punishable by a fine or imprisonment. However, copyright itself does not protect a new idea, concept, methodology, or technology for software development.

Question number 6. Characteristics of classes of software products, depending on the scope of their use.

Depending on the sphere (area) of using the PP, these are:

· Hardware part of autonomous computers and computer networks;

· Functional tasks of various subject areas;

Software development technology

to support information technology, there are three classes of software:

· System software;

· Packages of applied programs;

· Toolkit of programming technology.

System software directed:

1. to create an operating environment for the functioning of other programs;

2. to ensure reliable and efficient operation of the computer itself and the computer network;

3. to carry out diagnostics and prevention of computer hardware and computer networks;

4. to perform auxiliary technological processes (copying, archiving, etc.).

System software - a set of programs and software systems to ensure the operation of a computer and computer networks.

Application packages serve as software tools for solving functional problems are the most numerous class of software. This class includes software programs that process information in various subject areas.

Installation of software on a computer is performed by qualified users, and their direct operation is carried out, as a rule, by end users - consumers of information, in many cases whose activities are very far from the computer field. This class of SP can be very specific for certain subject areas.

Application package- a complex of interrelated programs for solving problems of a certain class of a specific subject area.

provides a program development process and includes specialized software, which are the developer's tools. PPs of this class support all technological stages of the design process, programming (coding), debugging and testing of the created programs.

Programming technology toolkit- a set of programs and software systems that provide technology for the development, debugging and implementation of the created software.

Question number 7. Classification of application packages (PPP).

PPPs are the most represented, which is primarily due to the widespread use of computer technology in all spheres of human activity, the creation of automated information systems in various subject areas, and they are classified into.



Did you like the article? Share it