III. Read the text and do the tasks following it

Users need to know what software development tools, or programming languages, are used to create software. If you need additional processing capabilities that can't be satisfied by an off-the-shelf applications software program, you should know how to choose — or help a computer specialist to choose — the software development tool that can most efficiently and effectively satisfy your requirements.

Programming languages can be divided into five generations. Machine language, the only language the computer's processor can understand, is first-generation language — the digits 0 and 1. Assembly language, easier to work with than machine language because it allows the programmer to use abbreviations, is a second-generation language. (Both machine and assembly language are low-level languages.) High-level, or third-generation, languages were developed to make writing software programs even easier by using human-language (for example, Englishlike) statements.

Of the hundreds of high-level languages used today, the following are some of the more popular:

• FORTRAN (FORmula TRANslator): the first high-level language, which was formulated for scientific and mathematical applications; this language does not handle the input and output of large volumes of data efficiently. It is not as structured as COBOL.

• COBOL (COmmon Business Oriented Language): its development as a common programming language for business applications was funded by the U.S. government; this language is noted for its machine independence and its data processing and file-handling capabilities.

• PL/I (Programming Language I): designed to combine the computational capabilities of FORTRAN and the data processing and file-handling capabilities of COBOL. Although flexible, it is harder to learn than COBOL and requires a great deal of main storage.

• BASIC (Beginner's All-purpose Symbolic Instruction Code): developed at Dartmouth College for instructional purposes, but now used on microcomputers and certain business systems to solve a variety of relatively simple problems.

• RPG (Report Program Generator): introduced by IBM as a program geared to deal with clear-cut problems and produce reports; users can produce reports by filling out special coding forms and then entering the recorded data.

• C: developed by Bell Laboratories as a tool for writing systems software such as UNIX. It works on a variety of different computers, including microcomputers. However, it is not good for checking types of data, and it has no input/output routines.

• Pascal: named for 17th-century French mathematician Blaise Pascal. Developed to teach structured programming. Has strong mathematical, scientific, and graphics processing capabilities and can be used on large and small computer systems; not used extensively in business.

• Modula-2: an improved version of Pascal; better suited for business.

• Ada: named for Augusta Ada, Countess of Lovelace (the first programmer), and developed by the U.S. Department of Defense for use as an embedded system in computerized weapons systems.

Fourth-generation languages do not rely on a long list of detailed procedures that tell the computer how to do something. They just use humanlanguage statements to tell the computer what to do. The five basic types of fourth-generation language tools are (1) query languages, (2) report generators, (3) applications generators, (4) decision support systems and financial planning languages, and (5) some microcomputer applications software.

Natural languages, which some people refer to as fifth-generation languages, allow users and programmers to interact with the computer by using human language patterns, including misspellings and mistakes.

The advantages and disadvantages of each programming language relative to the information and systems needs of a company should be analyzed before a programmer begins a programming project.

Most of the foregoing software development tools are commonly used by computer specialists—programmers—to write software programs.

However, users have some relatively new microcomputer software packages, including electronic spreadsheets and database management systems, at their fingertips to help them create customized programs to solve unique needs. These packages are so much easier to use than typical programming languages and procedures that often users who have used a computer for just a few hours can develop their own simple applications software.

Regardless of whether a software program is being developed using a highlevel programming language or an integrated microcomputer software package, the same steps should be taken once the program requirements have been established: (1) define the problem; (2) map out the program logic—that is, work out the necessary algorithms; (3) code the program; (4) test the program; and (5) document the program.

Many tools and techniques are used to document program logic, including program flowcharts, pseudocode, structure charts, and HIPO packages.

Program flowcharts use standard symbols to represent the step-by-step activities and decision logic needed to solve a processing problem. Logic flow normally goes from top to bottom and left to right.

Pseudocode is a "fake" code—that is, human-language statements that use the structure of the programming language statements to describe instructions but without being hard to understand. Pseudocode uses four keywords to portray logic: IF, THEN, ELSE, and DO. Repetitive processing logic is represented by DO WHILE, DO UNTIL, and END DO.

Structure charts diagram the hierarchy of program modules, each of which represents one processing step. HIPO (hierarchy plus inputprocessing-output) packages include a structure chart of the program in its visual table of contents along with a program description and a legend.

The HIPO package also includes an overview diagram, which shows the input-processing-output activities of the program modules, and a detail diagram, which shows the steps of each activity in a module.

Programmers use structured programming techniques. Structured programming relies heavily on the concept of modularity (top-down design) and uses three basic control structures to form the program code: (1) sequence, (2) selection (if-then-else), and (3) iteration, or looping (do while).

The sequence control structure determines that each program instruction is executed in sequence unless a particular instruction is intended to alter that sequence.

The selection control structure allows a condition to be tested (IF) to determine which instruction(s) will be performed next (THEN or ELSE). Using this structure, the programmer can alter the basic sequence structure.

The iteration control structure (looping) allows an activity to be repeated as long as a certain condition remains true. Loops simplify programming because they enable the programmer to specify instructions only once to have the computer execute them many times.

After a program has been coded, it must be tested by structured walkthrough (formal review of a programmer's work by other programmers), desk checking (programmer proofreads a printout of the program), translation attempt, and sample data test. Testing is done to weed out syntax errors, caused by typographical mistakes and incorrect use of the programming language, and logic errors, caused by incorrect use of control structures (sequencing, selection, iteration).

Program documentation should be done throughout the five steps of program development. User documentation, technical documentation, and operator's instructions provide guidance for all those who must use, maintain, and modify the program.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: