Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Software



Two types of software instruct a computer to perform its tasks — systems software and applications software.

Systems software is a permanent component of the computer that controls its fundamental functions.

Different kinds of applications software are loadedinto the computer as needed to perform specific tasks for the user, such as word processing. Applications software requires the functions provided by the systems software.

Modern operating systems provide a graphical user interface (GUI ) to make the applications software easier to use. A GUI allows a computer user to work directly with an application program by manipulating text and graphics on the monitor screen through the keyboard and a pointing device such as a mouse rather than solely through typing instructions on command lines. The Apple Computer company's Macintosh computer, introduced in the mid-1980s, had the first commercially successful GUI-based software.

Another example of systems software is a database system. A database system works with the file system and includes programs that allow multiple users to access the files concurrently. Database systems often manage huge amounts (many gigabytes) of data in a secure manner.

Computers that use disk memory-storage systems are said to have disk operating systems (DOS). Popular operating systems for PCs are MS-DOS and Windows, developed by the Microsoft Corporation in the early 1980s and 1990s, respectively. Workstations, servers, and some mainframe computers often use the UNIX OS originally designed by Bell Laboratories in the late 1960s. A version of UNIX called Linux gained popularity in the late 1990s for PCs.

Software is written by professionals known as computer programmers. Most programmers in large corporations work in teams, with each person focusing on a specific aspect of the total project. (The eight programs that run each craft in the space shuttle program, for example, consist of a total of about half a million separate instructions and were written by hundreds of programmers.) For this reason, scientific and industrial software sometimes costs much more than the computers on which the programs run. Individual programmers can work for profit, as a hobby, or as students, and they are solely responsible for an entire project.

Computer programs consist of data structures and algorithms. Data structures represent the information that the program processes. Algorithms are the sequences of steps that a program follows to process the information. For example, a payroll application program has data structures that represent personnel information, including each employee's hours worked and pay rate. The program's algorithms include instructions on how to compute each employee's pay and how to print out the paychecks.

Generally, programmers create software by using the following development process:

1) Understand the software's requirements, which is a description of what the software is supposed to do. Requirements are usually written not by programmers but by the people who are in close contact with the future customers or users of the software.

2) Create the software's specifications, a detailed description of the required tasks and how the programs will instruct the computer to perform those tasks. The software specifications often contain diagrams known as flowcharts that show the various modules, or parts, of the programs, the order of the computer's actions, and the data flow among the modules.

3) Write the code—the program instructions encoded in a particular programming language.

4) Test the software to see if it works according to the specifications and possibly submit the program for alpha testing, in which other individuals within the company independently test the program.

5) Debug the program to eliminate programming mistakes, which are commonly called bugs. (The term bug was coined in the early 1940s, when programmers looking for the cause of a mysterious malfunction in the huge Mark I computer discovered a moth in a vital electrical switch. Thereafter the programmers referred to fixing programming mistakes as debugging.)

6) Submit the program for beta testing, in which users test the program extensively under real-life conditions to see whether it performs correctly.

7) Release the product for use or for sale after it has passed all its tests and has been verified to meet all its requirements.

These steps rarely proceed in a linear fashion. Programmers often go back and forth between steps 3, 4, and 5. If the software fails its alpha or beta tests, the programmers will have to go back to an earlier step. Often programming managers schedule several alpha and beta tests. Changes in software requirements may occur at any time, and programmers then need to redo parts of their work to meet the new requirements.

Often the most difficult step in program development is the debugging stage. Problems in program design and logic are often difficult to spot in large programs, which consist of dozens of modules broken up into even smaller units called subroutines or subprograms. In addition, though a program might work correctly, it is considered to have bugs if it is slower or less efficient than it should be.

Comments:

a payroll application program – contains personnel information, including amount of worked hours and pay rate of each worker;

applications software – computer programs that are designed for a particular purpose or application. For example, accounts programs, games programs, and educational programs are all applications software;

efficient – achieving maximum productivity with minimum wasted effort or expense;

eliminate – completely remove or get rid of (something);

extensive – large in amount or scale;

module – each of a set of standardized parts or independent units that can be used to construct a more complex structure, such as an item of furniture or a building;

occur – exist or be found to be present in a place or under a particular set of conditions;

operating system – the low-level software that supports a computer's basic functions, such as scheduling tasks and controlling peripherals;

provide – make available for use; supply;

requires – need for a particular purpose; depend on for success or survival;

respectively – separately or individually and in the order already mentioned (used when enumerating two or more items or facts that refer back to a previous statement);

sequence – a particular order in which related events, movements, or things follow each other;

solely – not involving anyone or anything else; only;

systems software – computer programs that control the functioning of the computer itself, rather than directly meeting the user's computing needs (compare applications software). Examples are operating systems and utility programs, which perform such tasks as copying files, checking the integrity of magnetic disks, etc.;

word processing – production, storage, and manipulation of text on a word processor.





Дата публикования: 2015-01-23; Прочитано: 1592 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...