How to set up smartphones and PCs. Informational portal
  • home
  • Advice
  • Information system software life cycle. Software classification

Information system software life cycle. Software classification

Software - software - is a group of programs that provide a solution to a certain problem (accounting for candy wrappers), maintaining a certain process (viewing photographs of cats), the work of a certain department (accounting), etc. This very group of programs is nameless, software cannot have its own name. You cannot speak "Fantiki" software, "Kitties" software or "Accounting" software - it simply does not sound in Russian. Instead, they say candy wrappers accounting software, photo viewing software, accounting software.

Since software has no name, you can always call it something else. Photo viewer software may well turn into cat viewer software - or be part of the break room software. If there is the same Windows image viewer, then it will be the same software, whatever you call it.

IS - an information system, on the contrary, is always personalized. IS "Fantiki", IS "Kitties" and IS "Accounting" may well exist. However, the IS for viewing photos also has a right to exist (here the name of the system is the "IS for viewing photos"). Also for the IS it is not required that for its components there was some unifying feature - the existence of the IS "Fantiki and Accounting" is quite allowed, if, of course, such an IS will be needed by at least someone.

On the other hand, the name for IP is only invented by those who distribute it. You cannot buy the Fantiki IS, and then write in the documents that the Candy Eater IS was purchased - these are completely different ISs, even if they are composed of the same components (although one IS can still be part of another - but usually such ISs are still called not systems, but subsystems).

Another difference between IS and software - IS may contain components that are not programs or data to them. For example, information kiosks may well be part of the IS, which provides passengers at the station with a train schedule. Software, as the name suggests, can only contain programs, otherwise it will be called APO (hardware and software).

UPD

The bottom line is that IP is a broader concept than software. At least, in addition to software, IS includes operating instructions and other administrative regulations, as well as a certain composition of technical means. - avp

Yes, that's right. I would summarize it somewhat. IS, as a named entity, exists as long as there is a package of documents that defines it. This package includes, among other things, all kinds of instructions and other administrative regulations.

At the same time, the software does not require documents for its existence.

automated software coding props

The software is divided into general and application software. General - is a collection of programs designed for a wide range of users and designed to organize the process of data processing and solving frequently encountered tasks. General software is also called system software. No user can do without it.

The general software includes operating systems and their shells, service systems, programming systems and maintenance programs. Operating Systems (OS) - Manages all information processing processes and provides interaction between the hardware and the user. One of the most important functions of the OS is the automation of information input-output processes, management of the execution of applied tasks solved by the user. The OS loads the program into the computer memory, monitors the progress of its execution, analyzes failure situations and offers the user possible options for their elimination, and ensures the organization of the file subsystem.

Service programs - software products that provide the user with additional services in working with a computer and expand the capabilities of the OS: improve the user interface; protect data from destruction and unauthorized access; restore data; speed up data exchange between disk and RAM; carry out archiving-unarchiving of data; antivirus tools. By the way of organization and implementation, service tools can be represented by: shells, utilities and stand-alone programs.

Programming systems - a set of tools that ensure the creation of new software products by translating the text of the program from the programming language into machine codes (Delphi, Visual Basic, Java).

Maintenance programs are understood as a set of software and hardware tools for diagnosing and detecting errors during the operation of a computer or a computing system as a whole. They include: means of diagnostics and test control of the correct operation of the computer and its individual parts; special programs for diagnostics and control of the computing environment of the information system as a whole.

Application software is designed directly for the process of solving specific. The most widely used are word processors, spreadsheet processors, database management systems, presentation graphics packages, and graphics editors.

Word processors are designed to create text documents (MS Word, WordPerfect, Word Pro, etc.). Database management systems (DBMS) - include two main components - a database (relational database) (DB) and a database management system (MS Access, MS FoxPro, Corel Paradox, Lotus Approach, Oracle, Informix). A relational database is a collection of several tables, the relationship between which is established using linking fields. Presentation graphics packages (Microsoft PowerPoint, Lotus ScreenCam) allow you to create slides and transparencies for seminars, conferences, etc. Graphic editors are designed for processing graphic documents, illustrations, drawings (Paintbrush, Corel DRAW, Adobe Photoshop). Any images can be formed.

All of the listed types of general-purpose software are widely used by accountants, but a special place and importance is given to tabular processors (MS Excel, Lotus 1-2-3, QuattroPro). Among the spreadsheet processors, the most widespread and popular is Microsoft Excel. Advantages of Microsoft Excel: - the table displayed on the screen is convenient for electronic modeling of various primary documents and registers of synthetic and analytical accounting, such as: order journals, statements, etc. - any operations with digital information are easily performed;

any data, both numeric and text, is easily sorted; - it is easy to correct erroneous information by adding, removing or replacing rows or columns; - facilitates the work of the system for monitoring the correctness of work and issuing error messages; - there is protection of information from unprofessional and unauthorized access and other features of the system; - many specialized accounting packages are compatible with Microsoft Excel.

Particular attention should be paid to the following features of Microsoft Excel: graphic tools; a special set of built-in functions to facilitate control and analysis procedures; statistical correlation functions, i.e. determining the relationship between two sets; determination of the maximum value from the list; determining the most common value; predicting data based on known values ​​in the past; finding the arithmetic mean, etc. As well as functions for working with date and time.

Information systems software

Software(eng. software) Is a set of programs that ensure the functioning of an information system (IS) and solve problems of subject areas with their help.

The software of modern ICs includes many different programs, which can be conditionally divided into three groups (Fig. 1):

  • System software (system programs);
  • Application software (application programs);
  • Instrumental support (instrumental systems).

· System software (SSS) - these are programs that control the operation of the IS, and perform various auxiliary functions, for example, management of IS resources, checking the operability of technical devices, issuing reference information about the state of the IS, etc. They are intended for all categories of users, are used for efficient operation of IS, as well as effective execution of applied programs.

· The structure of the open source software includes operating systems (OS) and service systems (SS).

· Application software (PPO) designed to solve user problems. It includes user applications and application packages(PPP) for various purposes .

Operating system(OS) is a set of programs designed to control the loading, launching and execution of other user programs, as well as to plan and manage the computing resources of the IS. In a narrower sense, an OS is a program for controlling the operation of a computer from the moment it is turned on until the moment the power is turned off.

The OS determines the performance of the system, the degree of data protection, the choice of programs that can be used on the computer, and hardware requirements. Examples OS are MS DOS (practically not used), OS / 2, Unix family, Windows family.

On the operating system market, developments of various companies are presented, which differ in orientation to hardware, solving a certain range of problems, consumer needs, etc. One can distinguish operating systems that have certain common features: one manufacturer, a single approach to organization and functioning, etc., that allows you to classify them by family and line. For example, families such as Windows ( Microsoft), Unix (various developers), Solaris ( Sun Microsystems) other.

Currently, most personal computers in the world run some version of the Windows operating system (company Microsoft). The software products of this family have common characteristics:

· Unified graphical user interface;

· Multitasking;

· Support for work in a network environment;

· Availability of a universal system of means of data exchange between applications (clipboard, dynamic data exchange - DDE, linking and embedding of objects - OLE).

In operating systems of the Windows family there is implemented open architecture(Windows Open Services Architecture- WOSA), which provides mechanisms for solving the problem of transmitting information regardless of its location and presentation format. With their help, a computer user can easily connect to any of the information services located in various networks or operating systems. Currently, standard access to databases, mail, telephone and licensing systems, network services and specialized services (financial systems and real-time data) is provided.

The Unix family is one of the very first operating systems and is currently one of the alternatives to the Windows operating system. Unix was created in Bell Telephone Laboratories in the 70s of the last century. The main difference and advantage of this family lies in the implementation for a wide range of hardware platforms - this is the first operating system truly portable to various hardware platforms. Unix is ​​focused primarily on working in large local and global networks. It uses a variety of graphical interface options. The versatility of the system is provided by a variety of application programs.

Currently, there are versions of the Unix OS from various manufacturers. Among them, the most famous commercial versions Sun and Solaris for Sun computers, Aix for mini computers IBM, IRIX for Silicon Graphics computers, freely redistributable FreeBSD and Linux for computers of the Intel platform.

Regardless of the version, the common Unix features are:

· Multi-user mode and the presence of powerful means of protecting data from unauthorized access;

· Multitasking;

· Portability of the system by writing its kernel in C;

· Availability of a simple user interface;

· The presence of built-in support for computer networks, which makes the system one of the most popular server platforms on the Internet.

Unlike Windows, Unix is ​​more demanding on computers and costs significantly more than Windows.

Currently, the Linux OS is gaining more and more popularity, which is a multitasking, multi-user operating system with support for national and standard keyboards, supports various types of file systems, in particular, MS DOS, provides support for the full family of TCP / IP protocols for working on the Internet.

windows program computer operating

Software is a set of commands that control the operation of a computer. Without software, a computer will not be able to perform the tasks that we usually associate with computers. The functions of the software are as follows:

  • 1. manage the computer resources of the organization;
  • 2. provide the user with all the tools necessary to extract value from these resources;
  • 3. act as an intermediary between organizations and stored information.

Selecting software that meets the needs of the organization is one of the key tasks of management personnel.

Software by appointment it is customary to divide into:

Systemic, which in turn can be divided into:

the base level (firmware) are those programs that are responsible for interacting with the basic hardware and are stored (recorded) in special ROM chips. These programs are also called drivers and their combination forms the basic input / output system (BIOS). Typically, the BIOS ROM chips in the PC are located on the motherboard.

operating systems (OS)- a set of programs that ensure the interaction of other programs with basic programs, hardware and provide an interface for controlling a computer to a person. The operating system consists of: a) input / output programs b) programs for managing the file system and scheduling a computer job c) a command language processor that receives, analyzes and executes commands addressed to the operating system. As examples of modern operating systems, various Windows (98, 2000, XP, Vista, Seven, Pocket PC, Windows CE), MS-DOS, developed by MicroSoft, Unix-like OS (UnixWare, SunOS, Solaris, BSD, Linux) from various manufacturers and free distribution, OS / 2 and its modifications from IBM, Mac OS and derivatives from Apple, OS for pocket PCs, mobile devices (Symbian OS for example) and many others. The place of the operating system in the structure of the computer can be seen in Fig. 1.

service level (additional system software)- programs as part of the OS for diagnostics and automation of work on checking, adjusting and configuring a computer system.

Applied- programs that ensure the implementation of specific tasks on a computer: scientific, office, entertainment and others. Among them are:

Text editors and processors- input and editing (formatting) of text data and graphic elements (for example, MS Word from the MS Office package);

Graphic editor- creation and processing of graphic images. There are three categories: raster, vector and 3D 3D graphics editors (for example, Adobe PhotoshopCorelDraw Graphics software packages); or

Database management systems (DBMS)- organizing data arrays, managing them and ensuring interaction with other programs (for example, MS Access from the MS Office package);

File managers- perform operations to maintain the file system: copying, moving, deleting files, creating and deleting directories (folders), searching and navigating through the file structure. May be included in the operating system (for example, FAR manager);

Table editors- data management in the form of tables (for example, MS Excel from the MS Office package);

WEB editors- to create and manage documents for the Internet, have a number of useful functions for the convenience of users in creating Web pages and documents in HTML (for example, Adobe Dreamweaver);

Data archivers- programs for compressing various types of documents and files, to reduce their size, and manage archives (for example, WinRAR archiver for Windows);

WEB browsers- means of viewing WEB pages and playback of text, graphics, video, music, as well as work with e-mail (for example, Internet Explorer from Microsoft);

Computer-aided design (CAD) systems- to automate design and engineering processes (for example, AutoCAD);

Players and media players- programs and codecs for playing media content - video, music in various formats and standards (for example, Winows Media player);

Graphic systems (video editing)- programs for working with video files, cropping, special effects (for example, Windows MoveMaker);

Accounting programs- systems of accounting and bookkeeping, keeping records of the movement of goods, etc. function (for example, 1C Accounting package);

Antiviruses and firewalls- programs for protecting against viruses, Trojans, controlling access to computer ports, protecting against hacker attacks and other intrusions from the network (for example, the NOD32 antivirus program from ESET);

Music editors- programs for creating musical compositions on a computer (for example WaveLab);

Game programs and other entertainment programs- the entertainment nature of the 3D graphic and other nature (for example, many modern games for desktop PCs and game consoles);

Geographic information systems- to work with maps, aerial photographs, geodetic works (for example, GIS-lab);

System programs for working with various peripheral devices, disk management, backup, data recovery(for example, Acronis Disk Doctor);

Mail clients- programs for managing mail, making it easier to create, receive mail messages (for example, MS Outlookexpress);

Instant messaging software (ISQ clients) and transmission of online video for user communication, as well as transfer of text, files(for example, Skype);

Programs for writing data to CD, DVD, Blu-ray carriers(for example, the NERO package);

Many other entertaining, scientific, systemic programs.

Instrumental software- software intended for use in the design, development and maintenance of programs. Among them are:

assemblers- carry out the transformation of the code in the assembly language into the language of machine codes;

compilers- programs that translate the text of a program in a high-level language into an equivalent program in a machine language;

interpreters- Programs (sometimes hardware) that parse commands or program statements and immediately execute them;

linkers (link editors)- programs that do the linking - take one or more object modules as input and collect an executable module from them;

subroutine libraries- collections of routines or objects used for software development;

source preprocessors- these are computer programs that receive data as input and output data intended for the input of another program, such as a compiler;

and other types of instrumental software.

Examples instrumental software are:

Borland Delphi - designed to solve almost any application programming problem;

Borland C ++ Builder is a great tool for developing DOS and Windows applications;

Microsoft Visual Basic is a popular tool for creating Windows programs;

Microsoft Visual C ++ - this tool allows you to develop any application that runs on an OS such as Microsoft Windows.

By distribution method the software is divided into:

1. Proprietary (proprietary software) - an object of copyright, which is a private property. The copyright holder of such software retains a monopoly on it and grants only the right to install, use, access, display, launch, or any other interaction with the software.

By the degree of proprietary Software distinguishes between:

Commercial- distributed on a commercial basis in the form of licenses for use. Restrictions on licensed software - prohibitions on distribution, modification, commercial use, etc. The source code is secret, the ability to create derivative products is legally prohibited, free use is legally prohibited.

Shareware- free software, but it is offered to provide financial assistance to the author of the software or offers a more complete version for money or has a limited validity period.

Freeware- the view is similar to the commercial view, but free use is allowed.

Commercial free open source software, but no derivative capabilities.

Copyleft (open source)- the same as "commercial free open source", but free from restrictions on the creation and publication of derivative products, except for one thing - the source code of the derivative product must be open. Under copyleft, all derivative works must be distributed under the same license as the original work. The most famous and widespread copyleft license is the GNU GPL. Such software is usually referred to as open source or free software.

BSD License (public domain)- the same as copyleft, but without even the restriction on creating derivatives with open source.

In any of this kind of software, except for the public domain, there is the concept of "copyright holder".

  • 2. Open (open source software)- software products with open source code, which are available for viewing, modification, which allows you to take part in the refinement and correction of errors in the software product and the creation of new software - through borrowing the source code, if the license allows it, or through studying the algorithms, data structures used , technologies, techniques and interfaces. The free license allows you to use the source code of the program for your own needs with minimal restrictions. Open source software does not have to be free, however, most open source software is free.
  • 3 Free software (free software)- a wide range of software solutions in which the user's rights ("freedoms") to unrestricted installation, launch, as well as free use, study, distribution and modification (improvement) of programs are legally protected by copyright using free licenses such as GNU General Public License or BSD License. Usually speaking free software means that such software is free and can be freely redistributed. Free software, in any case, can be freely installed and used on any computer. The use of such software is free everywhere: in schools, offices, universities, on personal computers and in all organizations and institutions, including commercial and government ones.

Among the software product, one can also single out the so-called. “Pirated software” is software that infringes copyright by implying the distribution of copyrighted material unauthorized by the copyright holder. Includes removal of various software protections. For this there is a special class of software - the so-called "cracks" (from the English. To crack - to crack), special patches, ready-made serial numbers or their generators for a software product that remove restrictions from it associated with built-in protection against illegal use.

The official policy of Ukrainian government bodies and major software vendors is the gradual legalization of software used by end users (purchase of licenses for software already in use, or transition to other software with the purchase of licenses for it). Ukrainian legislation for the use and distribution of unlicensed software and copyright infringement involves punishment in the form of fines, and even imprisonment. In this regard, the issue of the transition of organizations and enterprises to licensed software is becoming very relevant.

CURRICULUM SPECIALTIES "1-40 01 73 SOFTWARE OF INFORMATION SYSTEMS"

Technical means of information systems

Arithmetic and logical foundations of information processing, including forms of information presentation, features and limitations associated with bit depth. Physical principles of computer functioning, architecture of modern processors on the example of Intel-compatible models, including caching, pipelining, multicore and principles of parallel computing. Peripheral devices, principles of collection, storage and transformation of information in information systems.

Fundamentals of Algorithmization and Programming in High-Level Languages

Theoretical foundations of algorithms and programming: foundations of the theory of algorithms and programming technology. General characteristics of a high-level programming language, program structure, data types, operations and expressions, data input and output, operators for controlling the computational process, subroutines. Additional features of the high-level language under study (dynamic memory allocation, pointers, etc.). Programming and debugging of a class of branching and cyclic algorithms. The course is built on the basis of C ++ Visual Studio.

Operating system architecture

Concept, purpose and functions of the operating system (OS). The concept of a resource, OS as a resource management system. Classification and characteristics of modern operating systems. Principles of construction and architecture of the OS (kernel and auxiliary modules, monolithic, layered, based on a microkernel, and other types of kernel architectures). Organization of the user interface. The concept and implementation of the application programming interface. Compatibility and application software environments. Java virtual machine. .Net-based managed software environment architecture. Process and thread concept. Process and thread management, algorithms for allocating processor time. Interaction of processes, races, synchronization, the problem of dead ends. Memory management. Virtual memory, address translation, virtual memory management algorithms. Virtual memory and data exchange between processes. I / O control, multilayer I / O subsystem structure. The concept, organization and tasks of the file system. Logical structure and operations with files. The physical organization of the file. File systems Windows and UNIX. Projecting program files and data into the address space. Access control and data protection. Organization of modern operating systems of the Unix, Linux and Windws families.

Object Oriented Programming

Object-oriented programming paradigms. Classes. Objects. Constructors and destructors. Methods. Inheritance. Virtual methods. Mechanism for calling virtual methods. Differentiation of access to object attributes. Object method pointers (delegates). Virtual constructors. Information about the type of program execution time. The course is built on the basis of C # Visual Studio.

Computer networks

The current state of network technologies, the basics of building computer networks, network equipment and network software. OSI model and network protocols, the concept of internetworking and routing, TCP / IP protocol stack. Principles of network administration, account management and access to network resources, network security basics. Network services on the corporate network, terminal services and thin clients. Enterprise network infrastructure virtualization and cloud computing. Creation of network applications.

System Programming

Using system calls to implement the application interface. Programming keyboard and mouse input. Graphics device interface, programming the output in a GUI application. Access to system resources in the program using the API. Kernel objects. Process and thread management. Multi-threaded programming, synchronization and elimination of races, system synchronization facilities. Synchronous and asynchronous file operations. Virtual memory management, dynamically allocated memory areas, files mapped into memory. Development and use of dynamic link libraries. Structured exception handling.

Component programming technologies

Component programming concept. Evolution of programming technologies and application architecture. Comparative characteristics of procedural, object-oriented and component programming. Component Object Model COM and technologies based on it. Component concept, requirements and properties. The basic COM hierarchy is server / class / interface / method. COM interfaces. COM library. COM servers. OLE and ActiveX technologies. Automation and dispatch interfaces. Type library, late binding. IDL. ATL library. Streaming models and synchronization. Error handling and exceptions. Collections and enumerations. Reverse interfaces, event handling. Containers. An overview of COM + technology, .NET-based component programming, CORBA and the OMA, ORB, GIOP, IIOP specifications.

Visual application programming tools

The concept of visual design of software tools. Elements and technology for creating software applications in the visual environment. Compilation tools for creating working versions and programs using the visual environment. The main methods of the library for the development of software applications. The main classes of the base library, purpose and methods of effective use in the developed applications. Effective methods for developing applications in a specific area. Visual components for presenting data. Methods and tools for the implementation of concepts in the studied environment. Organization of input / output and information processing, application and restoration of object states. Technologies for linking and embedding objects. Containers and servers, their use in the created applications. Organization of access and work with databases. Application programming strategies for various models of database architectures (remote server and active server). Principles of processing messages from server programs and database server errors in database applications. The course is built on the basis of C # Forms Visual Studio.

Web technologies

Distinctive features of a Web application. HTTP protocol. Familiarity with HTML, CSS, Bootstrap. Familiarity with the ASP.NET MVC application. ASP.NET MVC Application Models, Controllers, and Views. Razor language. The helper methods @Html and @Url. Layouts pages and partial views. Passing data from controller to view. Data binding mechanism. Routing Abstract and data validation. Dependency Injection Packages (Bundles). File transfer. Getting to know the Web Api. AJAX technology. Working with Json. Unit testing ASP.NET MVC applications. Authentication and Authorization. Deploying a WEB application. ASP.NET Core overview.

Organization and design database

The course is built on the basis of T-SQL MS SQL Server, with an examination of the features in Oracle and MySQL. Principles of working with data in various types of information systems. Database management systems, their main functions and architecture according to the ANSI standard. Data models, their classification. The relational data model used in more than 80% of DBMS is considered in detail. The core of the relational model is relational algebra. The logical and physical organization of the database, data integrity, the organization of indexes and security systems. SQL. A hands-on study of data management, indexes and security in T-SQL.

Transactions and Transaction Models, a hands-on study of T-SQL Transaction Management. Transaction log. Problems of concurrent execution of transactions. Locks, types of locks, hands-on learning T-SQL lock management. Database architecture models. Database programming, practical study of creating code for stored procedures, triggers, user-defined functions, cursors.

Relational database design, methodology and stages of database design. Database anomalies and their elimination using procedures to normalize relations. Practical use of Case-systems for database design.

Information systems software design technologies

Life Cycle Models (LC) of software tools (PS): software development strategies; life cycle models that implement these strategies; choice of a life cycle model for a specific project. Structural Approach to Substation Design. Classical technologies for the design of substations. Evaluation of the effectiveness of the structural division of the PS into modules. Modern structural technologies for the development of software systems. Methodologies and notations for structural analysis and design of software systems. Introduction to software development automation: principles of automation; classification of CASE-funds. Object-oriented approach to the design of software systems. An object-oriented modeling language (for example, the UML unified modeling language). Application building, program code generation, data modeling in an object-oriented software environment. The course is built on the basis of the UML Rational Rose.

Software Testing

Basic concepts and definitions. Indicators of the reliability of computer systems. Analysis of the causes of errors in software (software). Standardization of software reliability assessment in the Republic of Belarus and abroad: current standards, software reliability models. Software testing: basic concepts, principles of testing organization, design of test cases, structural and functional methods of assembly (integration) testing, testing the correctness of the final software product. System testing and its types. Regression testing automation of the software testing process. Software verification.

Top related articles