Sie sind auf Seite 1von 254

VERETENNIKOVA V.P.

ZAVALEVSKAYA E.V.
BORZDYKH T.O.

Coursebook of Professional
English
for
SOFTWARE ENGINEERING

1
MINISTRY OF EDUCATION AND SCIENCE OF UKRAINE
ODESSA NATIONAL A.S.POPOV ACADEMY OF TELECOMMUNICATIONS

VERETENNIKOVA V.P.
ZAVALEVSKAYA E.V.
BORZDYKH T.O.

Coursebook of Professional English


for
SOFTWARE ENGINEERING

ODESSA 2016

2
UDC 811.11:621. 395(075) Plan of EMP 2016

Recommended as a textbook by the Academic Council of ONAT named


after A. S .Popov (Protocol No 4 from 14/11/2016).

Edited by: Professor I.V. Strelkovskaya, Doctor of Engineering, Odessa


National A. S. Popov Academy of Telecommunications.

Reviewed by:
Associate Professor I.A. Zhaboryuk, Ph. D. in Philology, the Dep artment of
Foreign Languages, South Ukrainian National Pedagogical University named after
K.D. Ushinsky.
Associate Professor L.B. Zukina, Ph. D. in Pedagogics, the head of the
Department of Foreign Languages, Odessa National Academy of Food
Technologies.

V.P.Veretennikova. Coursebook of Professional English for Software


Engineering: textbook/ V.P.Veretennikova, E.V.Zavalevskaya, T.O.Borzdykh –
Оdessa: ОNAT named after A.S.Popov, 2016. - 254p.
The textbook «Coursebook of Professional English for Software
Engineering» contains original texts borrowed from English and American p opular
scientific publications and is accompanied by lexical and grammatical commentary
and lots of exercises. It is aimed to provide training for use of English and speaking,
to consolidate and extend students’ language skills through gramm ar and
vocabulary sections as well as to keep students motivated with contemporary and
professional topics. The textbook also includes expressions and vocabulary
exercises for the development of the common English proficiency. Commentaries
may be found useful, explaining difficulties that often cannot be solved by reference
to a dictionary.
The main purpose of the textbook is to train students for literature reading
and topics discussion related to many challenges of Software Engineering as a p art
of computer science in which several kinds of methods, thoughts and techniques are
used for getting the high quality software and computer p rograms , and the skills
development of the oral and written language. The skills learned from this course
will be useful for those preparing to start work and for those already in work.
«Coursebook of Professional English for Software Engineering» is intended
to be used as the textbook for students specializing in the field of all software-
intensive industry sectors, as well as for graduate students and researchers preparing
for passing their examination in English to obtain the Ph.D. degree.

Approved by the Department of Language


Training and recommended for publication
ISBN Protocol No.2 from 30/09/2016.

3
First printing 2016
ONAT named after A.S.Popov

Authors’ Acknowledgements

The authors would like to thank the following people – A.A. Yegoshyna
(Ph.D. in Technical Sciences, Associate Professor of the Department of
Information Technologies) for her helpful comments and advice, and in
particular I.V. Strelkovskaya (Doctor of Engineering, Director of the Institute of
Infocommunications and Software Engineering, ONAT named after A.S.Popov)
for her continued help and support.

4
CONTENTS

Unit I
Text 1 Introduction ……………………………………………………..
Text 2 Microprocessor ………………………………………………….
Text 3 Math Coprocessor …………………………………………. …..
Text 4 Input and Output Devices……………………………………….
Text 5 Storage Devices …………………………………………………

Unit II
Text 1 Computer as a Means of Communication ……………………….
Text 2 Processing ………………………………………………………..
Text 3 Practical Problems in Multilingual Word-Processing ……………
Text 4 Communications Software ………………………………………
Text 5 Client / Server Computing ……………………………………….

Unit III
Text 1 Data Computing …………………………………………………
Text 2 Uses of Data in Computing ………………………………………
Text 3 Probabilities and Random Variables ……………………………
Text 4 Programming …………………………………………………….
Texts 5 A. Programming Languages ……………………………………..
B. High – Level Languages ……………………………………..

Unit IV
Text 1 Software Engineering ……………………………………………..
Text 2 Computer Software in Science and Mathematics …………………
Text 3 Software ……………………………………………………………
Text 4 Types of Software …………………………………………. ……..
Text 5 Turing Machine …………………………………………………..
Text 6 History of Software Engineering ………………………………….

Unit V
Text 1 Operating Systems……………………………………………………
Text 2 Managing Tasks……………………………………………………..
Text 3 Three Types of User Interfaces ……………………………………..
Text 4 External Utility Programs…………………………………………….
Text 5 Linux ………………………………………………………………...

Unit VI
Text1 Integrity and Usability………………………………………………..
Text 2 Malware ………………………………………………………………
Text 3 Antivirus Software …………………………………………………..

5
Unit VII
Text 1 Software Process and Project Metrics…………………………………
Text 2 Software Process Metrics…………………………………………….. .
Text 3 Metrics for Software Quality…………………………………………...

Unit VIII
Text 1 Risk Analysis and Management ………………………………………..
Text 2 Risk Identification……………………………………………………..
Text 3 Software Quality Assurance…………………………………………...
Text 4 Software Reliability……………………………………………………
Text 5 The Art of Debugging …………………………………………………

Unit IX
Text 1 Software Design ………………………………………………………..
Text 2 Software Testing Strategies……………………………………………..
Text 3 Object-Oriented Design ………………………………………………..

Unit X
Text 1 Software Architecture ……………………………………………………
Text 2 Component-Level Design………………………………………………..
Text 3 Structured Programming ………………………………………………...
Text 4 Pointers …………………………………………………………………..

GRAMMAR REFERENCES ………………………………………………………..


APPENDIX I: IRREGULAR VERBS ……………………………………………………….
APPENDIX II: WORDS AND PHRASEOLOGICAL UNITS OF GENERAL SCIENTIFIC
VOCABULARY………………………………………………………………………………
LITERATURE ……………………………………………………………………………….
ELECTRONIC RESOURCES ……………………………………………………………..

6
UNIT I
Text 1
INTRODUCTION
Read and translate the text.

From the programmer's point of view, all members of the PC family consist of a
processor, memory chips, and several smart, or programmable, circuit chip s. All the
main circuit components that make the computer work are located on the system
board; other important parts are located on expansion boards, which can be p lugged
into the system board.
The system board contains the microprocessor, which is tied to at least 64 KB
of memory; some built-in ROM programs, such as BASIC and the ROM BIOS; and
several very important support chips. Some of these chips control exter nal devices,
such as the disk drive or the display screen, and others help the microprocessor
perform its tasks.
In this text, we discuss each major chip and give a few important technical
specifications. These chips are frequently known by more than one name. For
example, some peripheral input/output hardware is supervised by a chip known as
the 8255. This chip is also referred to as the 8255A and the 8255A-5. The suffixes
A and 5 refer to revision numbers and to parts rated for operation at different
speeds. For programming purposes, any Intel chip part number that starts with
8255 is identical to any other chip whose part number starts with 8255, regardless
of the suffix. However, when you replace one of these chips on a circuit board,
note the suffix. If the suffixes are different, the part may not operate at the proper
speed.

Commentary
ROM (Read Only Memory) – ПЗУ (постоянное запоминающее устройство).
BASIC (сокращение от англ. Beginner’s All-purpose Symbolic Instruction
Code): Бе́йсик – универсальный код символических инструкций для начинаю-
щих; это – семейство высокоуровневых языков программирования.
BIOS (Basic Input/Output System) – Базовая система ввода/вывода пред-
ставляет собой встроенное в компьютер программное обеспечение, которое
ему доступно без обращения к диску, содержит набор основных функций
управления клавиатурой, видеокартой, дисками, портами и другими устрой-
ствами.
ROM BIOS – Обычно BIOS размещается в микросхеме ПЗУ (ROM) на
материнской плате компьютера, поэтому этот чип часто называют ROM
BIOS.

VOCABULARY
built-in [ˈbɪlt ɪn] – встроенный
chip – схема (чип)
circuit board [ˈsɜːkɪt bɔːd] – монтажная (печатная) плата
disk drive – дисковод
7
expansion board [ɪksˈpænʃn bɔːd] – плата расширения
external [eksˈtɜːnl] – внешний
frequently [ˈfriːkwəntlɪ] – часто
hardware [ˈhɑːdwɛə] – аппаратные средства, аппаратное обеспечение
input – ввод
memory – память
output [ˈaʊtpʊt] – вывод
perform v. [pəˈfɔːm] – выполнять, представлять
plug into v. – вставлять
programmable [ˈprəʊgræməbl] – программируемый
refer to v. – ссылаться
regardless of – вне зависимости от, невзирая на
smart – гибкий, разумный; интеллектуальный
supervise v. [ˈsjuːpəvaɪz] – руководить, управлять
system board – системная плата
tie to v. – связывать
EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


circuit, expansion, peripheral, processor, programmable, suffix, supervised.

II. Find in the above text English equivalents for the following word
combinations and write them out:
все члены семейства ПК; работать с нужной скоростью; с точки зрения
программиста; известны под более, чем одним названием; независимо от
суффикса; управляют внешними устройствами; несколько интеллектуальных
или программируемых микросхем; технические описания (определения);
части, рассчитанные для операций с различными скоростями; заменить одну
из этих схем на печатной плате; управляется микросхемой; основные
компоненты «заставляют» компьютер работать; по крайней мере 64 КБ
памяти; располагаются на плате расширения; могут быть вставлены в;
встроенные программы ПЗУ; для целей программирования; относятся к
пересмотренным номерам; схема рассматривается как.

III. Look through the text again and find the answers to the following questions:
1. What main parts does a computer consist of from the p rogrammer's p oint of
view? 2. What board are additional circuits located on? 3. What does the system
board of a computer contain? 4. What tasks do support chip s p erform? 5. Are chip s
frequently known by more than one name? 6. Why is it necessary to note the chip
suffix when replacing a chip?

IV. Translate the following definitions and memorize them.


Hardware: the physical equipment and components in a computer system.
8
Byte: a sequence of adjacent binary digits treated as a unit and that constitutes the
shortest addressable unit.

V. What problems are mentioned in the text?

VOCABULARY AND GRAMMAR EXERCISES

I. Translate the following word combinations into English:


с моей точки зрения, несколько программируемых устройств, заставляют
нас учить, заставляют систему работать, размещается в микросхеме,
располагается на устройстве, располагается на материнской плате,
встроенные системы, встроенные устройства, управляют процессом,
управляют внутренними устройствами, управляется программой, независимо
от скорости, относятся к интеллектуальным схемам.

II. a) Learn the following question words:


what – что, какой; who – кто; how – как; how much сколько (инфор мации);
how many – сколько (процессоров); where – где; when – когда; whom – кому;
whose – чей; which – который.

b) Complete the following sentences with the suitable question word.


1. …......….did you spend your holidays in Britain? – It was lovely.
2. …......….did he go on business trip to New York? – In September.
3. …......….has just called on the phone?
4. …......… of these digital cameras are you going to buy?
5. …......…did you decide not to create a document? – Because I’m very busy
now.
6. …......… do you usually enter information? – By using a keyboard.
7. …......….information can your personal computer process and store?
8. …......….do you need special software?
9. …......….are you studying English? – Because I need it for my job.
10. …........ foreign languages do you speak? – Only English.
11. …...... . does your manager come to work? – Between 8.00 and 8.30.
12. ….........do you come to work every morning by?
13. ……….connectivity options does it offer?
14. ……… did you send an email? – To my girlfriend.

III. Find in the above text synonyms of the following words:


often, various, storage, to manage, goal, to place, a few, basic, to connect.

IV. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Все компьютеры состоят из процессора, схем памяти и нескольких
программируемых схем. 2. Обычно базовая система ввода/вывода (BIOS)
размещается в микросхеме ПЗУ (ROM), находящейся на материнской плате
9
компьютера. 3. Все основные схемы располагаются на системной плате, др угие
важные части располагаются на платах расширения. 4. Системная плата
содержит микропроцессор, несколько встроенных программ ПЗУ и несколько
очень важных схем поддержки. 5. Они управляют внешними устройствами и
помогают микропроцессору выполнять свои задачи. 6. Бейсик был
спроектирован так, чтобы студенты без специального математического обра-
зования могли писать программы.

TOPICS FOR DISCUSSION:

1. Speak about the value of education Share opinions.


People act extremely unwisely due to insufficient knowledge.

2. Comment on this quotation:


Books and friends should be few but good.

Text 2
MICROPROCESSOR
Read and translate the text.

In all PCs, the microprocessor is the chip that runs programs. The microproces
–sor, or central processing unit (CPU), carries out a variety of computations,
numeric comparisons, and data transfers in response to programs stored in memory.
The CPU controls the computer's basic operation by sending and receiving
control signals, memory addresses, and data from one part of the computer to
another along a group of interconnecting electronic pathways called a bus. Located
along the bus are input and output (I/O) ports that connect the various memory and
support chips to the bus. Data passes through these I/O ports while it travels to and
from the CPU and the other parts of the computer.
The microprocessor is a multipurpose, programmable device that accepts
digital data as input, processes it according to instructions stored in its memory,
and provides results as output. Microprocessors contain both combinational
logic and sequential digital logic. Microprocessors operate on numbers and
symbols represented in the binary numeral system.
Typical microprocessor operations include adding, subtracting, comparing two
numbers, and fetching numbers from one area to another. These operat ions are the
result of a set of instructions that are part of the microprocessor design.
When your computer is turned on, the microprocessor gets the first instruction
from the basic input/output system (BIOS) that comes with the computer as p art of
its memory. After that, either the BIOS, or the operating system that BIOS loads
into computer memory, or an application program is "driving" the microprocessor,
giving it instructions to perform.

10
VOCABULARY
accept v. [əkˈsept] – принимать
adding – сложение
bus – шина, магистральная шина, магистраль; канал передачи информации
carry out v. – выполнять
central processing unit – центральное процессорное устройство
comparison [kəmˈpærɪsn] – сравнение
computation – вычисление
connect v. – соединять
fetch v. – получать, выбирать (например, команду или данные из памяти)
load v. – загружать
multipurpose [ˈmʌltɪˈpɜːpəs] – многоцелевой
pathway [ˈpɑːθweɪ] – тракт, маршрут
process v. [ˈprəʊses] – обрабатывать
receive v. [rɪˈsiːv] – получать, принимать
response – ответ, отклик, реакция
in response to – в ответ на
run (a program) v. – выполнять, прогонять (программу)
send v. – посылать, отправлять
sequential [sɪˈkwenʃəl] – последовательный
slot – область памяти, занимаемая страницей; гнездо; интервал времени;
сегмент, (щелевое) отверстие
subtracting [səbˈtræktɪŋ] – вычитание
support v. [səˈpɔːt] – поддерживать, обеспечивать
transfer v. [træns ˈfɜː] – передавать, переносить; transfer n. [ˈtrænsfɜː] –
передача, перевод, перенос
turn on v. – включить

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


area, binary, microprocessor, multipurpose, sequential, stored, various.

II. Find in the above text English equivalents for the following word
combinations and write them out:
в соответствии с командами; разнообразие вычислений; получает первую
команду; по группе взаимосоединённых электронных маршрутов; программы,
хранящиеся в памяти; принимает цифровые данные; двоичная система
счисления; извлечение чисел; даёт результаты, как выходные данные; пр иклад-
ная программа; конструкция микропроцессора; программируемое устройство.

III. Look through the text again and find the answers to the following questions:

11
1. What runs programs in all PCs? 2. How does the CPU control the comp uter’s
basic operation? 3. What connects the various memories and sup ports chip s to the
bus? 4. What do input and output ports connect? 5. When does the microprocessor
get the first instruction from the basic input/output system?

IV. Speak about the principle of the microprocessor operation.

V. Translate the following definitions and memorize them.


CPU is the portion of a computer composed of ALU and control unit. It is
where instructions are fetched, decoded, and executed, and the o verall activity of
the computer is controlled.
Bus is a circuit for the transfer of data or electrical signals between two devices.
Port is a connection between the CPU and another device, such as main memory
or I/O device. By means of it data can enter or leave the comp uter or be transfer red
between the CPU and memory.
(Webster's Dictionary of Computer Science)

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the sentences with the words from the box:

called processors arithmetic between greatly two circuit

1. We point out the similarities and differences ….. the different microprocessors.
2. A microprocessor is sometimes ….. a logic chip. 3. The integration of a whole CPU
onto a single chip or on a few chips …… reduces the cost of processing p ower. 4. A
microprocessor is designed to perform ….. and logic operations. 5. Integrated …..
processors are produced in large numbers by highly automated processes . 6. Single-
chip …… increase reliability as there are many fewer electrical connections to fail. 7.
They link …… main parts.

II. Match the terms on the left with their meaning on the right. Say aloud
composed pairs. If you start the phrase with the term, then add the verb ‘is’, and if
by explaining, use ‘is called’ before the term. Translate them.
Mode 1. the main board in a computer, into which the circuits
are plugged.
Drive 2. a combination of physical components forming a unit
that performs a specific function, such as storage or I/O.
Access 3. a type of a memory chip that can be read but cannot be
written on or altered.
Driver 4. a unit that reads and writes data on an external storage
device.
Multitasking 5. a program that controls devices or other programs.
Bus 6. the ability to store or retrieve data.
ROM 7. a circuit for the transfer of data or electrical signal
12
between two devices.
Device 8. a method or condition of operation.
Motherboard 9. the technique of concurrently executing a number of
related tasks in the same partition.
Program 10. a logically arranged set programming statements
defining the operations to be performed by a computer.

III. Write down all possible questions to the following sentence.


The system will be totally limited by the bandwidth of the bus.

IV. Study the grammar table and learn.

Either….. or…. Both….. and….


These structures are used to talk about two possibilities.
1. We should like to live either in the country or in a small, quiet town.
2. My brother speaks both English and German.

V. Find in the text and copy out sentences containing either… or…/
both….and…

VI. Make your own sentences with either….. or…./ both….. and…. using words
and word combinations of the topical vocabulary.

VII. Translate the sentences and define the italicized verb forms.
1. Many computers have readers in the front panel which are used to directly
download or alter the data on flash cards. 2. Information is accessed from several
files and displayed at the same time. 3. The motherboard serves to connect all of the
parts of a computer together. 4. The electronic interface between the motherboard and
the smaller boards or cards in the expansion slots is called the bus. 5. A processor uses
ROM to store and execute programs instructions. 6. ROM is essential in a comp uter,
since the system can't boot without it. 7. A computer is equipped with a modulator for
outgoing data and a demodulator for the incoming data. 8. An electronic device is a
piece of an equipment or a mechanism designed to serve a special purpose or perform a
special function. 9. Our engineer adds additional components to a motherboard
through its expansion slot.

VIII. a) Choose the correct preposition or adverb to complete each of the


following sentences:
down off on up
TURN DOWN = A. refuse an offer or application; B. reduce volume;
TURN ON = A. unexpected attack; B. start to use TV, radio, car, etc.;
TURN UP = A. increase volume or capacity of a device; B. find unexpectedly;
TURN OFF = A. deliberately stop working (a stove, TV, etc.); B. something non
pleasing;

13
1. Your dog suddenly turned ….. the small child. 2. Don't forget to turn ….. the
TV before you leave home. 3. His wallet turned ….. outside the sport club but it was
empty. 4. Can you turn ….. the music a little? It's too loud. I can't concentrate on my
work. 5. I want to turn ….. the TV because it's time for the news. 6. She asked me to
turn ….. the radio because she couldn’t hear what's playing. 7. We are sorry, but we
have to turn ….. your offer. 8. My sister doesn't know why her neighbour turned …..
her, especially since they had been friends for so long. 9. I applied for a job at the
company, but they turned me ….. because I didn't have enough experience. 10. Turn
….. the TV. I'm trying to talk on the phone.

b) Find in the above text the sentence containing the verb to turn, translate it.

SPEAKING:

I. What is the main role and function of a central processing unit in science?
Make use of the following.
Central processing unit
Central processing unit is the part of a computer that interprets and carries out
instructions provided by the software. It tests and manipulates data, and transfers
information to and from other components, such as the working memory, disk drive,
monitor, and keyboard. The central processing units of personal computers are
generally implemented on a single powerful chip, called a microprocessor.
(From The American Heritage® Science Dictionary)

II. Speak about three main parts in a CPU.

III. Discuss these questions:


1. How do you usually travel to your Academy?
2. What do you think is the main purpose of going to University or Academy? Is
it:
– to learn skills that help with real life?
– to learn interesting facts?
– to pass exams?

Text 3
MATH COPROCESSOR
Read and translate the text.

The 8086, 80286, and 80386 can work only with integers. To perform floating-
point computations on an 8086-family microprocessor, you must rep resent floating-
point values in memory and manipulate them using only integer op erations. During
compilation, the language translator represents each floating-point computation as a
long, slow series of integer operations. Thus, "number-crunching" p rograms can run
very slowly — a problem if you have a large number of calculations to perform.
14
A good solution to this problem is to use a separate math coprocessor that
performs floating-point calculations. Each of the 8086-family microprocessors has an
accompanying math coprocessor: The 8087 math coprocessor is used with an 8086 or
8088; the 80287 math coprocessor is used with an 80286; and the 80387 math
coprocessor is used with an 80386. Each PC and PS/2 is built with an empty socket on
its motherboard into which you can plug a math coprocessor chip.
From a programmer's point of view, the 8087, 80287, and 80387 math
coprocessors are fundamentally the same: They all perform arithmetic with a higher
degree of precision and with much greater speed than is usually achieved with integer
software emulation. In particular, programs that use math cop rocessors to p erform
trigonometric and logarithmic operations can run up to 10 times faster than their
counterparts that use integer emulation.
Programming these math coprocessors in assembly language can be an exacting
process. Most programmers rely on high-level language translators or commercial
subroutine libraries when they write programs to run with the math coprocessors.

VOCABULARY
accompany v. [əˈkʌmpənɪ] – сопровождать
achieve v. [əˈʧiːv] – достичь
assembly language [əˈsemblɪ ˈlæŋgwɪʤ] – язык ассемблера
compilation [kɔmpɪˈleɪʃn] – компиляция; трансляция
computation [kɔmpju:ˈteɪʃn] – вычисление
coprocessor [ˈkɒprəʊsesər] – сопроцессор (отдельная микросхема,
дополняющая главный процессор)
counterpart [ˈkauntəpɑ:t] – двойник, дополнительная часть; дубликат
empty – пустой
emulation [emjʊˈleɪʃn] – эмуляция
exacting – обременительный, требовательный
floating-point [ˈfləʊtɪŋ pɔɪnt] – плавающая точка (запятая)
fundamentally [fʌndəˈmentəlɪ] – существенно
integer [ˈɪntɪʤə] – целое число
integer software emulation – эмуляция посредством программного
обеспечения, реализованного средствами целочисленной арифметики
manipulate v. [məˈnɪpjʊleɪt] – управлять, манипулировать, умело
обращаться
math coprocessor – математический сопроцессор
motherboard [ˈmʌðəbɔːd] – материнская плата
number-crunching – перемалывание чисел
precision [prɪˈsɪʒən] – точность
rely on v. [rɪˈlaɪ] – полагаться на

15
represent v. [reprɪˈzent] – представлять, изображать
run v. – выполнять(ся), запускать; работать
separate [ˈseprɪt] – отдельный
socket [ˈsɔkɪt] – разъём, гнездо; сокет
solution – решение
speed – скорость
value [ˈvæljuː] – значение

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


accompanying, arithmetic, crunching, floating, logarithmic, separate, solution.

II. Find in the above text English equivalents for the following word
combinations and write them out:
представлять значения с плавающей запятой; обременител ьный пр оцесс;
целочисленная операция; пустое гнездо на его материнской плате; с более
высокой степенью точности; коммерческие библиотеки подпрограммы ; с точки
зрения программиста; может работать только с целыми числами; работать с
математическими сопроцессорами; программы "перемалывания чисел" ; может
выполняться в 10 раз быстрее; включить математический чип сопроцессора;
выполнить тригонометрические и логарифмические операции; в частности;
которые используют эмуляцию целого числа; медленный ряд операций по
целому числу.

III. Answer the following questions using the phrases and word combinations
from Exercise II:
1. What can the 8086, 80286, and 80386 work with? 2. What do we usually do
to perform floating-point computations on an 8086-family microprocessor? 3. How
can "number-crunching" programs run? 4. Why is a very slow operation of "number-
crunching" programs a problem? 5. Is there a solution to this problem? 6. What does
each of the 8086-family microprocessors have? 7. What is PS/2 built with? 8. Why are
the 8087, 80287, and 80387 math coprocessors fundamentally the same? 9. What
speed at can programs that use math coprocessors to perform trigonometric and
logarithmic operations run? 10. Why do most programmers rely on high-level
language translators or commercial subroutine libraries when they write p rograms to
run with the math coprocessors?

IV. Fill in the gaps with the words and expressions from the text.
1. During compilation, the language translator represents each floating-point
computation ….. . 2. ….. to this problem is to use a separate math cop rocessor that
performs floating-point calculations. 3. The 80287 math coprocessor ….. with an
80286. 4. They all perform arithmetic with a higher degree of precision and with much

16
greater speed than is usually achieved ….. . 5. Programming these math coprocessors
….. can be an exacting process.

V. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Translate the following word combinations into English using the topical
vocabulary:
программа на языке ассемблера, со скоростью, раздельная трансляция,
целочисленное значение, панель для микросхемы, компьютерная система, набор
команд, сопроцессоры ввода-вывода, вероятностный процессор , вычисления с
плавающей запятой, высокоскоростная арифметика, микр опроцессорный эле -
мент.

II. Complete and translate:

Word-building: normal adj. + ly = normally adv.

absolute, brief, broad, chief, common, different, direct, essential, great, particu-
lar, real, respective, separate, special, typical, virtual.

III. Find in the above text and copy out sentences containing adverbs with the
suffix -ly, translate them.

IV. Study the grammar table and learn.

We use who when we talk about people.


We use which to refer to a thing or an idea, and to ask about choices.
(Use which often surrounded by commas if a group of words adds information.)
E.g. The books, which have red covers, are new. (=adding information about
the books)
We use that for both a person and a thing/idea. (Use that if it limits the set of
things you're talking about.)
E.g. The books that have red covers are new. (=limiting information about
books we're talking.)

V. Fill in "that", "which" or "who".


1. I sent an email to my uncle …lives in Great Britain. 2. He broke the
computer ….. belonged to my husband. 3. The answers, …you can find in the ba ck of
the book, are sometimes incorrect. 4. We know a woman ….. speaks 3 languages. 5.
They bought all the books ….. are required for the course. 6. My parents live in a city

17
… is in the north of the country. 7. Leap years, ….. have 366 days, contain an ex tra
day in February. 8. This is John, ….. is taking over my job when I leave. 9. The
supervisor, ….. manages the CPU, resides in main memory. 10. Peter Norton ….. was
doing a programming job accidentally deleted an important file.

VI. Find in the above text and copy out sentences having relative pronouns
which and that, translate them.

VII. Ask all types of questions to the following sentences:

1. An integer is natural if it is greater or equal to 0.


2. You may rely on a quick and careful execution of your experiment.

VIII. Find in the text and copy out phrases in which the preposition on is used.
Translate the phrases.

IX. a) Render the text in English. b) Comment on peculiarities of the


coprocessors described here:
Сопроцессор представляет собой микропроцессорный элемент,
дополняющий функциональные возможности основного процессора. Он
реализует высокоскоростную арифметику с плавающей запятой, а также
вычисление тригонометрических функций. Сопроцессор расширяет набор
команд, которыми может пользоваться программист. Физически сопроцессор
может быть отдельной микросхемой или может быть встроен в центральный
процессор. При надлежащей конструкции основного процессора в системе
могут использоваться два или более сопроцессоров.
Сопроцессоры различают по следующим видам: математические
сопроцессоры общего назначения, которые обычно ускоряют вычисления с
плавающей запятой, сопроцессоры ввода-вывода (например, Intel 8089), которые
разгружают центральный процессор от контроля за опер ациями ввода -вывода
или расширяют стандартное адресное пространство процессора и сопроцессоры
для выполнения каких-либо узкоспециализированных вычислений.

SPEAKING:

I. Discuss the problem dealt with in the abstract given below:

Fetch-execute cycle
The fetch–execute cycle is the sequence of actions that a central processing
unit performs to execute each machine code instruction in a program.
At the beginning of each cycle the CPU presents the value of the program coun-
ter on the address bus. The CPU then fetches the instruction from main memory
(possibly via a cache and/or a pipeline ) via the data bus into the instruction register.
From the instruction register, the data forming the instruction is decoded and p assed
to the control unit which sends a sequence of control signals to the relevant function
18
units of the CPU to perform the actions required by the instruction such as reading
values from registers, passing them to the ALU to add them together and writing the
result back to a register. The program counter is then incremented to address the next
instruction and the cycle is repeated.
The fetch-execute cycle was first proposed by John von Neumann.
(From The Free On-line Dictionary of Computing)

II. Explain what is the purpose of a coprocessor? Make use of the following
information.
A coprocessor may not be a general-purpose processor in its own right.
Coprocessors cannot fetch instructions from memory, execute program flow control
instructions, do input/output operations, manage memory, and so on. The coprocessor
requires the host (main) processor to fetch the coprocessor instructions and handle all
other operations aside from the coprocessor functions. In some architectures, the
coprocessor is a more general-purpose computer, but carries out only a limited range
of functions under the close control of a supervisory processor.

Text 4
INPUT AND OUTPUT DEVICES
Read and translate the text.

Input devices enable a computer user to enter data, commands, and p rograms
into the CPU. The most common input device is the keyboard. Information typed at
the typewriter-like keyboard is translated by the computer into recognizable p atterns.
Other input devices include light pens, which transfer grap hics information from
electronic pads into the computer; joysticks and mice, which translate physical motion
into motion on a computer video display screen; light scanners, which "read" words or
symbols on a printed page and "translate" them into electronic patterns that the
computer can manipulate and store; and voice recognition modules, which take
spoken words and translate them into digital signals for the computer. Storage devices
can also be used to input data into the processing unit.
Output devices enable the user to see the results of the computer's calculations
or data manipulations. The most common output device is the video display terminal
(VDT), a monitor that displays characters and graphics on a television-like screen. A
VDT usually has a cathode-ray tube (CRT) like an ordinary television set, but small,
portable computers may use liquid crystal displays (LCD) or electroluminescent
screens. Other standard output devices include printers and modems. A modem links
two or more computers by translating digital signals into analog signals so that data
can be transmitted via telecommunications.
(From Wikipedia, the free encyclopedia)

VOCABULARY
calculation [kælkjʊˈleɪʃn] – вычисление

19
character [ˈkærɪktə] – знак
cathode-ray tube [ˈkæθəʊd] – электроннолучевая трубка
dedicated – выделенный, назначенный; специализированный
digital – цифровой
enable v. [ɪˈneɪbl] – позволять, разрешать
enter v. – вносить, вводить
include v. – включать
input device – устройство ввода (данных)
joystick [ˈʤɔɪstɪk] – джойстик
keyboard [ˈkiːbɔːd] – клавиатура
link v. – соединять
liquid [ˈlɪkwɪd] – жидкость; жидкий
motion [ˈməuʃən] – движение
mouse [maʊs] – мышь
output device – устройство вывода
pad – клавиатура; блокнот
pattern [ˈpætən] – образец, комбинация
portable [ˈpɔːtəbl] – портативный
recognizable [ˈrekəɡnaɪzəbl] – распознаваемый
screen – экран
storage device – устройство хранения данных
translate v. – переводить; преобразовывать
typewriter [ˈtaɪpraɪtə] – пишущая машинка; печатающее устройство
unit [ˈjuːnɪt] – модуль; блок; устройство
via [ˈvaiə] – через
voice recognition [rekəgˈnɪʃn] – голосовая идентификация, распознавание
речи

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


cathode, digital, electroluminescent, include, keyboard, liquid, screen, terminal.

II. Find in the above text English equivalents for the following word
combinations and write them out:
на подобном телевидению экране; жидкокристаллические дисплеи;
модули голосовой идентификации; вводить данные; произносимые слова;
устройства ввода включают световые перья; манипулирование данными;
переводится компьютером; обычный телевизор; передают графическую
информацию от электронных клавиатур в компьютер; может передаваться через
телекоммуникации.
20
III. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What do input devices enable a computer user to do? 2. What is the most
common input device? 3. What is information typed at the keyboard translated into? 4.
Are light pens, joysticks and mice, light scanners, and voice recognition modules
input devices or output devices? 5. What transfers graphics information from
electronic pads into the computer? 6. Joysticks and mice translate physical motion into
motion on a computer video display screen, don’t they? 7. What can be used to inp ut
data into the processing unit? 8. Do input or output devices enable the user to see the
results of the computer's calculations or data manipulations? 9. What most common
output device do you know? 10. Do standard output devices include printers and
modems? 11. How does a modem link two or more computers?

IV. Find in the above text and copy out phrases in which the preposition into is
used. Translate them.

V. Fill in the gaps with the words and expressions from the text.
1. Information typed at …is translated by the computer into recognizable
patterns. 2. Joysticks and mice translate physical motion into motion on ….. . 3.
Voice recognition modules take spoken words and …. them into digital signals for the
computer. 4. The most common output device is the video display terminal, a monitor
that displays ….. on a television-like screen. 5. ….. can also be used to input data into
the processing unit. 6. Other standard ….. include printers and modems.

VI. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

There are several nouns that have irregular plural forms.


In a few words, the mid-word vowels are changed to form the plural.

II. a) Write down the correct form of the plural of the given nouns:
foot, child, woman, axis, goose, man, tooth, ox;

b) Find in the above text and copy out the sentence containing a noun in an
irregular plural form, translate it.

III. Insert the prepositions:


PCs and PS/2s have several input/output subsystems ….. sp ecialized control
circuitry that provides an interface ….. the CPU and the actual I/O hardware. For
example, the keyboard has a dedicated controller chip that transforms the electrical
signals generated ….. keystrokes ….. 8-bit codes that represent the individual keys.
21
All disk drives have separate controller circuitry that directly controls the drive; the
CPU communicates with the controller ….. a consistent interface. The serial and
parallel communications ports also have dedicated input/output controllers.
Keys: by, through, with, into, between.

IV. Make up your own sentences or situations with the following phrases:
specialized control circuitry; a dedicated controller chip ; to represent; hardware;
a consistent interface; to enter commands into the CPU; to display characters and
graphics; to type at the keyboard.

V. Choose the proper verb form and write down the translation:
1. A numeric keypad …. to the right of the main keyboard and contains numeric
and editing keys. 2. Dedicated keys are ….. to issue commands or produce alternative
characters. 3. A mouse is a hand-held device that lets you ….. a pointer (or cursor) and
….. items on the screen. 4. Function keys ….. at the top of the keyboard and can be
programmed ….. special jobs. 5. Today we can ….. with our computer by voice with a
voice-recognition system that converts voice into a text. 6. A cordless mouse has no
cable and ….. data via infrared signals or radio waves. 7. Many printers ….. a sp ecial
socket so that images can be printed directly from a memory card or camera. 8. A
scanner is a peripheral that … images and converts them into electronic codes which
can be ….. by a computer.
Keys: to do, sends, appears, understood, appear, reads, used, interact, move,
have, select.

VI. Complete the sentences with the words from the box:

visually to interpret user malfunction perform mouse received many

1. Input hardware serves to send data into the comp uter's CPU, while output
devices send data outwards to the….. . 2. The two most common forms of input
related to computers are the …… and keyboard. 3. Mice now come in ….. types, from
traditional cord mice, to wireless and laptop mice. 4. Inp uts are the signals or data
….. by the system and outputs are the signals or data sent from it. 5. An error in the
program was caused by a …… in the computer or its related equipment. 6. The
monitor ….. relays an image, which is created by the computer's operating system. 7.
Devices for communication between computers, such as modems and network cards,
typically …… both input and output operations. 8. The interface must have necessary
logic ….. the device address generated by the processor.

VII. Ask all types of questions to the following sentence:


Input devices such as scanners and cameras allow us to capture and copy
images into a computer .

SPEAKING:
I. Discuss the following questions. Share opinions.
22
What is the difference between a touchpad and a mouse?
What is a modem used for?

II. What is your opinion on the following problem?


Most modern automobiles are controlled by a computer. Does the computer in a
car have:
– Input devices?
– Output devices?
– Main storage?
– Secondary storage?

Text 5
STORAGE DEVICES
Read and translate the text.

Computer systems can store data internally (in memory) and externally (on
storage devices). Internally, instructions or data can be temporarily stored in silicon
RAM (Random Access Memory) chips that are mounted directly on the comp uter's
main circuit board, or in chips mounted on peripheral cards that plug into the
computer's main circuit board. These RAM chips consist of up to a million switches
that are sensitive to changes in electric current. So-called static RAM chips hold their
bits of data as long as current flows through the circuit, whereas dynamic RAM
(DRAM) chips need high or low voltages applied at regular intervals – every two
milliseconds or so – if they are not to lose their information. Another type of internal
memory consists of silicon chips on which all switches are already set. The p atterns
on these ROM (Read-Only Memory) chips form commands, data, or p rograms that
the computer needs to function correctly. RAM chips are like pieces of paper that can
be written on, erased, and used again; ROM chips are like a book, with its words
already set on each page. Both RAM and ROM chips are linked by circuitry to the
CPU.
External storage devices, which may physically reside within the comp uter's
main processing unit, are external to the main circuit board. These devices store data
as charges on a magnetically sensitive medium such as an audio tape or, more
commonly, on a disk coated with a fine layer of metallic particles. The most common
external storage devices are so–called floppy and hard disks, although most large
computer systems use banks of magnetic tape storage units. Floppy disks can contain
from several hundred thousand bytes to well more than a million bytes of dat a,
depending on the system. Hard, or "fixed," disks cannot be removed from their disk -
drive cabinets, which contain the electronics to read and write data onto the magnetic
disk surfaces. Hard disks can store from several million bytes to a few hundred
million bytes. CD-ROM technology, which uses the same laser techniques that are
used to create audio compact disks (CDs), promises storage capacities in the range of
several gigabytes of data.
(From Wikipedia, the free encyclopedia)
23
VOCABULARY
bank – банк, накопитель; ряд, группа
cabinet [ˈkæbɪnɪt] – корпус
сharge [ʧɑːʤ] – заряд
circuitry [ˈsɜːkɪtrɪ] – схема
device – устройство, прибор
erase v. – стирать, стереть; удалить, удалять
externally [ekˈstɜːnəlɪ] – внешне
floppy disk – гибкий диск, дискета
hold v. – вмещать, содержать, хранить
internally – внутренне
layer ['leɪə] – слой
lose v. – терять
mount v. – монтировать, смонтировать
range – диапазон, ряд
remove v. [rɪˈmu:v] – удалять, демонтировать
reside v. [rɪˈzaɪd] – находиться
silicon [ˈsɪlɪkən] – кремний
storage [ˈstɔ:rɪdʒ] – устройство хранения данных, память
surface – поверхность, покрытие
switch – переключатель, коммутатор
technique [tekˈni:k] – метод, техника
temporarily [ˈtemprərəlɪ] – временно, кратковременно
voltage – напряжение

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[ˈkæbɪnɪt], [dɪˈvaɪs], [ɪnˈtə:nəlɪ], [ˈprəʊsesɪŋ ˈju: nɪt], [ˈsə:fɪs], [ˈvəultɪdʒ]

II. Find in the above text English equivalents for the following words and word
combinations and write them out:
запоминающие устройства с магнитной лентой; так называемые дискеты
и жёсткие диски; корпус дисковода; главная монтажная плата компьютера;
находиться в главном блоке обработки компьютер а; хранят данные в виде
зарядов на магнитно–чувствительной среде; микросхемы ПЗУ соединяются
электрической схемой; диск покрыт тонким слоем металлических частиц;
установлены непосредственно на главной монтажной плате компьютера;
ёмкость запоминающего устройства в пределах нескольких гигабайт данных;
дисковод; высокое или низкое напряжение.

24
III. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. How can computer systems store data? 2. Where can instructions or data be
temporarily stored? 3. What do RAM chips consist of? 4. How do static RAM chip s
hold their bits of data? 5. What can you say about dynamic RAM chip s? 6. What are
RAM chips like? 7. Are ROM chips like pieces of paper? 8. What are both RAM and
ROM chips linked by circuitry to? 9. What do external storage devices physically
reside within? 10. How do external storage devices store data? 11. What are the most
common external storage devices? 12. How many bytes of data can floppy disks
contain? 13. Can hard disks be removed from their disk-drive cabinets? 14. How
many bytes can they store? 15. What storage capacities does CD-ROM technology
promise?

IV. Fill in the gaps with the words and expressions from the text.
1. Instructions or data can be ….. stored in silicon RAM chips that are mounted
directly on the computer's main circuit board. 2. These RAM chips ….. a million
switches that are sensitive to changes in electric current. 3. Dynamic RAM chips need
high or low voltages applied ….. – every two milliseconds or so – if they are not to
lose their information. 4. External storage devices are external to …. . 5. Floppy disks
can contain from several hundred thousand bytes to well more than a million bytes of
data, ….. .

V. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the sentences with the words from the box:

flash carried holds storage retrieve backup floppy digital

1. A device that only ….. information is a recording medium. 2. Electronic data


storage requires electrical p ower to store and …. data. 3. Electromagnetic data may be
stored in either an analog data or ….. data format on a variety of media. 4. ….. disks
were the first storage devices used to retrieve information from computers. 5. Almost
every person with a computer has a USB … drive to store data, as it is the most
convenient storage device thus far. 6. The computer has many types of data …..
devices. 7. Flash drives are widely used to transport files and ….. data from computer
to computer. 8. With mobile data connections the data need not be …. around to be
available.

II. Find in the above text and copy out phrases in which prepositions on and
onto are used. Translate them.

III. Study the grammar table and learn.


25
a few ['fju:] – несколько (наличие небольшого количества; есть немного);
немногие, некоторые;
several ['sevrl] – несколько, некоторые.
Местоимение several синонимично местоимениям a few или some, оно
означает "больше, чем два, но меньше, чем много".

IV. Translate the following sentences having (a) few and several:
1. I outlined them my vision of information and communication technologies
several times. 2. A Cisco team was in our country for several weeks to learn how the
company could best offer long-term assistance. 3. Having already won the award for
the best government website a few months before, our city became the first city to win
both awards in the same year. 4. Several technologies are competing to deliver
commercial mobile broadband services. 5. However, having s everal p roviders does
not always guarantee effective competition. 6. Only a few companies have secured
their telecommunication networks against cyberthreats. 7. This positive outlook is due
to the emergence of several specialized service providers. 8. Based on current trends,
dial-up Internet subscriptions will no longer exist in a few years time. 9. Exchanging
information can create several new opportunities for building p artnerships. 10. We
have made significant progress over the past few years for which we can all be proud.

V. Find in the above text and copy out sentences containing several or a few,
translate them.

VI. Complete the sentences using "(a) few", “several” or "(a) little".
1. ….. of the students participated in an interview by responding to a set of
questions. 2. We invited a lot of candidates for this post, but ….. came. 3. I told
them ….. times how to deliver the best possible education to future generations. 4. My
brother speaks …. German because he lived in Berlin for ….. years. 5. We
stayed ….. days in Rome and visited the museums. 6. There are … books on the shelf.
7. It had been ….. days since I'd spoken to them. 8. You have ….. knowledge about
this subject. 9. We've got ….. light bulbs to change. 10. ….. people were injured in the
accident yesterday. 11. You have ….. time to carry out these computations and
numeric comparisons. 12. ….. conferences have provided the appropriate spectrum
allocations for some specialized services and applications. 13. Unfortunately, we
pay ….. attention to an environment in which the optimum skill and potential of staff
will be realized.

VII. Write down all possible questions to the following sentence:


Hard disks can store from several million bytes to a few hundred million bytes.

VIII. Choose the best alternatives in the following sentences:


1. Special microprocessors and software packages can use / be used for
encryption process. 2. A fire wall may permit / be permitting users to read E-mail
from remote locations. 3. A storage device may hold / be held information, p rocess
information, or both. 4. Devices that process information may either be accessed /
26
access a separate portable recording medium or a permanent component to store and
retrieve data. 5. Any device that can store and playback multimedia may also
consider/be considered a media player such as in the case with the HD media player .
6. A piece of information can be handled / handle by any computer or device whose
storage space is large enough to accommodate the binary representation of the p iece
of information, or simply data. 7. Any location in storage can be accessed / be
accessing at any moment in approximately the same amount of time. 8. A
semiconductor memory chip may be contained / contain millions of
tiny transistors or capacitors.

SPEAKING:
I. Explain and expand on the following questions:
1) What are removable storage devices?
2) What is flash storage?
3) What is the difference between flash memory and RAM?

II. Discuss the arguments for or against the following question:


Do you have a good or a poor memory?

UNIT II
Text 1
COMPUTER AS A MEANS OF COMMUNICATION
Read and translate the text.

There exist two fundamentally different types of computers: analog and digital
ones. There exist also hybrid types of computers that combine some of the p roperties
of both analog and digital computers. In analog comp uters p roblems are solved by
considering continuously changing data (electric current, voltage, resistance,
pressure). But in practical usage the term "computer" usually refers to digital
computers.
A digital computer is a complex system of four fundamentally different
elements. What are they? In order to be able to use computers for practice, it is
necessary to have elementary knowledge of its construction. Thus, the four main parts
of a computer are: a central processing unit, input devices, memory-storage devices,
and output devices. These four parts are linked by a communication network, or bus.
These physical parts and all their physical components are called hardware.
As for the problem of hardware development, specialists believe that radically
new computer designs are absolutely necessary. Almost all of today's computers
process information one element at a time. But the problem could be solved much
more quickly by the use of a great number of processors simultaneously working on
the given task. And there already exists one such design called Thinkin g Machine. By
using several thousand microprocessors the Thinking Machine outperforms many of
today's supercomputers.

27
Without a program a computer is nothing but potential. A computer's operating
system is the software. Without software a computer does not operate.
The hardware and the software systems of a computer work together. Software
is often stored in a computer's memory. Most often programs exist independently of
the computer. When software is loaded into a computer it automatically programs the
computer to perform a specific task. It may be word processing, managing accounts
and others.
Programming of a computer is performed by specialists. Software is written by
professionals known as computer programmers. Often programmers in large
corporations work in teams, each programmer focusing on a specific problem of a
total project.
It should be noted that the hardware developments are dependent on well-
written and well-formed software. Software controls the hardware, uses it, and forms
an interface between the computer and its user. Nowadays software is becoming more
and more user-friendly and easy to use even by non-computer professional users.
Modern computers based on integrated circuits are millions to billions of times
more capable than the early machines, and occupy a fraction of the space. Computers
are small enough to fit into mobile devices, and mobile computers can be powered by
small batteries. Personal computers in their various forms are icons of the Information
Age and are generally considered as "computers". However, the embedded computers
found in many devices from MP3 players to fighter aircraft and from electronic toys
to industrial robots are the most numerous.

VOCABULARY
account [əˈkaʊnt] – отчёт, сообщение
aircraft [ˈɛəkrɑːft] – самолёт; летательный аппарат
at a time – вовремя, за один раз
bus – шина, магистральная шина
hardware [ˈhɑːdwɛə] – аппаратные средства, аппаратное обеспечение
embed v. [ɪmˈbed] – встраивать
exist v. [ɪgˈzɪst] – существовать, иметь место
fit into v. – вписываться
load v. [ləʊd] – загружать
memory [ˈmemərɪ] – память
occupy v. – занимать
outperform v. [ˈautpəˈfɔ:m] – превосходить по характеристикам
power v. – приводить в действие
pressure [ˈpreʃə] – давление
property [ˈprɔpətɪ] – свойство
process v. [ˈprəʊses] – обрабатывать
resistance [rɪˈzɪstəns] – сопротивление
simultaneously – одновременно
28
software [ˈsɒftweər] – программное обеспечение
solve v. – решать
team – команда

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Almost, analog, current, design, occupy, quickly, simultaneously, specific.

II. Find in the above text English equivalents for the following word
combinations and write them out:
управление счетами; центральное процессорное устройство; сосредоточив
внимание на конкретной проблеме; гибридные типы компьютеров; могут
питаться от батареек; с учётом постоянно меняющихся данных; в памяти
компьютера; один элемент за один раз; элементарное знание; следует отметить;
использовать компьютеры; интегральные схемы; выполнить определённую
задачу; занимают часть пространства; устройства хранения данных памяти;
одновременно работая над данной задачей; всё более и более удобным и
простым в использовании; самые многочисленные.

III. Look through the text again and find the answers to the following questions:
1. How many different types of computers are there? 2. How are problems
solved in analog computers? 3. What do you know about a digital computer? 4. What
are the four main parts of a computer? 5. What is called hardware? 6. Do almost all of
today's computers process information one element at a time? 7. Why does the
Thinking Machine outperform many of today's supercomputers? 8. Does a comp uter
operate without software? 9. Do the hardware and the software systems of a computer
work together? 10. When is the computer programmed to perform a specific task? 11.
Who is software written by? 12. What are the hardware developments dependent on ?
13. What are modern computers based on? 14. Mobile computers can be p owered by
small batteries, can’t they? 15. Where are the embedded computers found nowadays?

IV. Explain in English the meaning of:


software, a programmer, hardware, a microprocessor.

V. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which the preposition
without is used. Translate them.

29
II. Use the following base words to make adjectives with the prefix in- and
translate them:

Word-building: The prefix IN is widely used in adjectives (and in their


derivative nouns and adverbs) to show the opposite or negative side.

advisable, applicable, appropriate, capable, comparable, complete, correct,


definite, dependent, direct, dispensable, effective, elegant, finite, flexible, secure,
separable, significant, valid, variable.

III. a) Find in the above text and copy out the sentence containing an adverb
with the negative prefix in-, translate it.
b) Make your own sentences with the prefix in- using words and word
combinations of the topical vocabulary.

IV. Ask all types of questions to the following sentence:


In analog computers problems are solved by considering continuously changing
data.

V. Study the grammar table and learn.

Present Simple Passive


The passive is formed with a form of the auxiliary ‘be’, followed by the past
participle of a main verb: am, is, are + written.

VI. Put the verb in brackets into the Present Simple Passive form.
1. The bills (pay) by my father. 2. I (drive) to the Academy by my father in the
morning. 3. What books written by Leo Tolstoy (translate) into English? 4. The same
T-shirts (wear) by all the members of our team. 5. French (teach) as a foreign
language at this college. 6. The Internet (use) to get information. 7. Why her textbooks
(not/keep) on the shelf? 8. Text messages usually (send) using mobile phones. 9. New
grammar rules always (learn) by heart. 10. Newspapers (bring) by the postman every
morning. 11. Modems (use) to access the Internet. 12. Requests (receive) by a server
from many different clients in a very short period of time.

VII. Find in the above text and copy out the sentences having the Present
Simple Passive and translate them.

VIII. Choose the proper verb form and translate the sentences.
1. The ability of a computer ….. so many tasks makes it indispensable. 2. A
computer may ….. its performance. 3. An error in the program was … by a
malfunction in the computer or its related equipment. 4. All instructions … by the user
have to go through the CPU. 5. The central processing unit is responsible for handling
instructions … to it by programs and input devices. 6. Input devices are the p ieces of

30
hardware which allow us ….. information into the computer. 7. The program is loaded
on one of the two PCs which are then … by cable, over a local area network. 8. A
computer program …. designed for easy operation, with on-line help and p ull-down
menus and tables. 9. The computers of various machines ….. in design and op erating
principles, but most have the common functions. 10. Charles Babbage ….. the first
computer in 1833. 11. Computers ….. of many chips placed on electronic boards
called printed circuit boards.
(Missing verbs: to enter, given, consist, to do, connected, designed, improve,
differ, caused, is, passed)

IX. Study the grammar table and learn.

Purpose can be expressed with the prepositional phrase in order followed by


an infinitive clause.
We use in order to to express purpose in the affirmative form.
We use in order not to to express purpose in the negative form.

X. Translate the following sentences having the expression in order to.


1. They went to his office in order to meet him. 2. I asked her in order to know
whether she had any interest in obtaining solutions to concrete scientific problems. 3.
Another essential factor is needed in order to use the hardware effectively. 4. I woke
up early in order not to be late. 5. I ask my professor in order to get an answer to a
difficult problem. 6. You came here in order to get a good education. 7. I op ened the
window in order to let fresh air in. 8. She must take her umbrella in order not to get
wet. 9. My friend studied really hard in order to get better marks. 10. A lot of
programmers left our company in order to find jobs abroad. 11. In order to be able to
use computers for practice, it is necessary to have elementary knowledge of its
construction.

SPEAKING:
I. Express your opinion on the following questions.
1. What do we call a personal computer?
2. Imagine you are the head of a firm producing computers. What can you say
to advertise your product?

II. Comment upon the following statements. Share opinions.


1. Computer is a million times faster than humans.
2. The educated man of today needs to have some significant knowledge of
science and significant knowledge about computers.

III. Study the following passage. Be ready to speak about the purpose of a chip.
Chip
Chip is an integrated circuit created on a tiny silicon flake. Upon the flake a
large number of gates and paths connecting them are formed. They are formed by very

31
thin films of metal acting as wires. The chip can be used as main memory or as a
CPU. When both memory and logic capabilities are contained in the same chip , it is
called a microprocessor or a computer on a chip. It consumes very little power, is
compact and of low cost. The chip cаn currently process as many as a million or more
instructions per second. It is used in a wide, ever-increasing variety of devices. They
are PCs, calculators, digital watches, robots, and electronic games.
Continue the list if you like.

Text 2
PROCESSING
Read and translate the text.

Processing is a movement of data or material towards a known goal or end


result, by passing it through a series of stages or a sequence of actions. It is the act
or process of treating or preparing something by a special method. Processing
includes a sketchbook, a minimal alternative to an integrated development
environment for organizing projects.
Every Processing sketch is actually a subclass of the PApplet Java class
which implements most of the Processing language's features.
Processing also allows for users to create their own classes within the
PApplet sketch. This allows for complex data types that can include any number of
arguments and avoids the limitations of solely using standard data types such
as: int (integer), char (character), float (real number), and color (RGB, ARGB,
hex).
When a computer receives data from an input device, the data must go through
an intermediate stage before it can be sent to an output device, like a monitor, printer,
or speakers. A processing device is any device in a computer that handles this
intermediate stage, being responsible for controlling the storage and retrieval of data.
Used specifically, data processing may refer to a discrete step in the information
processing cycle in which data is acquired, entered, validated, processed, stored, and
output, either in response to queries or in the form of routine reports; the processing is
the step that organizes the information in order to form the desired output. Data
processing may also refer to the act of recording or otherwise handling one or more
sets of data, and is often performed with the use of computers. The word data is
commonly used to mean “information” and often suggests large amounts of
information in a standardized format. Data may consist of letters, numbers, equations,
dates, images, and other material, but does not usually include entire words.
Processing Data and Information
One of the key points about the term data processing is that it is used by some
synonymously with the term information processing, while others make a distinction
between the two. In most cases, however, the word data is used to mean the original
form of the output, while information is meant to define data that has been organized
or altered in some way. A distinction is being made between “data,” which is raw
32
material, and “information,” which has undergone some processing: the two are being
treated as distinct, with data preceding information.
Computing Data
In computing, data processing can be used to refer to the use of a software
application to organize some type of input data in order to create a desired output. The
result might be anything from a multimedia file to an image, or a text file. Usually,
entering words is not considered as data entry, so writing a story using a word
processor would not qualify as a true form of processing data; however, entering
receipts and expenditures for the month in a spreadsheet program and printing a report
would.
Programs designed to process data are plentiful, and their capabilities range
from basic to very in-depth. One example of a program that can easily process data is
Microsoft Excel®, which is essentially a spreadsheet that can be used to organize
data, especially mathematical equations. The program can be used for very basic
processing or, if the user is familiar with the program, it can also be used for more in -
depth outputs. Other types of processing programs include programs used to
organize accounting data to determine losses or gains, seismic data used to predict
earthquakes, and business statistics to help businesses run more efficiently, just to
name a few.
(From Wikipedia, the free encyclopedia)

Commentary
PApplet: it is your processing application or sketch.
Java class: Classes are the fundamental building blocks of a Java program.
RGB: The RGB color model is an additive color model in which red, green,
and blue light are added together in various ways to reproduce a broad array of colors.
The name of the model comes from the initials of the three additive p rimary colors,
red, green, and blue. The main purpose of the RGB color model is for the sensing,
representation, and display of images in electronic systems, such as televisions and
computers.
ARGBRGBA stands for red, green, blue, alpha. While it is sometimes
described as a color space, it is actually simply a use of the RGB color model, with
extra information.
Hex [hɛks]: Hexadecimal describes a base-16 number system. That is, it
describes a numbering system containing 16 sequential numbers as base units
(including 0) before adding a new position for the next number.

VOCABULARY
acquire v. [əˈkwaɪə] – приобретать
allow for v. – позволять
alter v. – изменять, вносить изменения
avoid v. – избежать
be familiar with [biː fəˈmɪljə wɪð] – быть в курсе

33
capability [keɪpəˈbɪlɪtɪ] – возможность, способность
computing – вычисления
device – устройство, прибор
distinction [dɪsˈtɪŋkʃn] – различие, отличие
efficiently [ɪˈfɪʃntlɪ] – продуктивно
entry – вход, введённые данные
equation – уравнение
features – черты, характеристики
float [fləʊt] – с плавающей точкой (запятой)
handle v. – обращаться, управлять
implement v. – осуществлять, выполнять
in-depth [ɪn depθ] – тщательный, всесторонний
intermediate [ɪntəˈmiːdjət] – промежуточный
integer [ˈɪntɪʤə] – целое число
otherwise [ˈʌðəwaɪz] – в противном случае
output [ˈaʊtpʊt] – выходные данные; выход
perform v. [pəˈfɔːm] – выполнять
plentiful – обильный, многочисленный
preceding [priːˈsiːdɪŋ] – предшествующий
query [ˈkwɪərɪ] – запрос
raw – необработанный
refer to v. [rɪˈfɜː tuː] – ссылаться на
responsible (for) – надёжный, важный, ответственный за
retrieval – поиск
routine [ruːˈtiːn] – (стандартная) программа, редк. алгоритм
sequence – последовательность
set – набор, комплект
sketch – эскиз, схема
solely [ˈsəʊllɪ] – исключительно
spreadsheet – крупноформатная электронная таблица, программа для
обработки таких таблиц
storage [ˈstɔːrɪʤ] – запоминающее устройство; память
undergo v. [ʌndəˈgəʊ] (underwent, undergone)– подвергаться чему–либо
treat v. [triːt] – рассматривать, обрабатывать
validate v. [ˈvælɪdeɪt] – утверждать, делать действительным

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


altered, alternative, equation, feature, raw, retrieval, sequence, spreadsheet.

34
II. Find in the above text English equivalents for the following word
combinations and write them out:
главная цель; перемещение данных; ввод данных; претерпела некоторую
обработку; дискретный шаг в цикле обработки информации; последовательность
действий; обработка включает в себя записную книжку; провести различие;
который обрабатывает этот промежуточный этап; более тщательные выходные
данные; в большинстве случаев; в рамках эскиза обработки приложений;
хранение и извлечение данных; если пользователь знаком с программой;
возможности варьируются от; позволяет избежать ограничений; предлагает
большое количество; математические уравнения; для организации данных учёта.

III. Answer the following questions using word combinations from Exercise II:
1. Is processing a movement of data towards a known goal? 2. What does
processing include? 3. What features does the PApplet Java class implement? 4.
When must data go through an intermediate stage before it can be sent to an output
device? 5. What handles this intermediate stage being responsible for controlling the
storage and retrieval of data? 6. What may data consist of? 7. Do we make any
distinction between the term data processing and the term information processing? 8.
Which case is the word data used in? 9. Is information meant to define data that has
been organized or altered in some way? 10. How can data processing be used in
computing? 11. Is entering words considered as data entry? 12. How many p rograms
designed to process data are there? Give an example.13. What can you say about other
types of processing programs?

IV. Fill in the gaps with the words and expressions from the text.
1. Processing is the act or process of treating or preparing something….. . 2.
Processing also allows for users ….. within the PApplet sketch. 3. The processing is
the step that organizes the information ….. form the desired output. 4. Microsoft
Excel® is essentially a spreadsheet that can be used to organize data, esp ecially….. .
5. If the user is familiar with ….. , it can also be used for more in-depth outputs.

V. Explain in English the meaning of:


data processing, a processing device, information, Microsoft Excel®.

VI. Look through the above text again. Give the main points of each paragraph
of the text. Use “deals with” + word-combinations given below.

E.g. The first (second, third …) paragraph of the text deals with …
a movement of data or material; by passing; to include a sketchbook;
processing language's features; to create own classes; using standard data typ es ; to
go through an intermediate stage; being responsible for; a discrete step ; to form the
desired output; with the use of computers; to make a distinction; raw material; to
undergo some processing; a software application; in a spreadsheet program; to process
data; mathematical equations; to be familiar with the program.
35
VOCABULARY AND GRAMMAR EXERCISES

I. Find in the text and copy out phrases in which prepositions through and by are
used. Translate them.

II. Make nouns from the adjectives in brackets to complete the sentences.
1. Using the mouse you can change the size of an (imaginative).
2. You made the correct (decisive).
3. Microprocessors operate on numbers and symbols represented in the binary
numeral (systematic).
4. Letters of the alphabet could be reduced to sequences of binary (digital).
5. A menu-driven interface contains menus offering displayed lists of (optional).
6. Windows divide the display screen into (sectional).
7. The numeric value represented in each case is dependent upon the value
assigned to each (symbolic).
8. This operational (real) leaves much to be desired.
9. We outlined some of the risks of end user application (developable).

III. Ask questions to which the following statements may serve as the answers.
1. He used this article to obtain information about the specific problem of the
total project. 2. Another project allowed software written using the processing
language and environment to run on Java powered mobile devices. 3. We performed a
series of operations on data by a computer in order to retrieve or transform informa-
tion. 4. The known creative coding environment helped us bridge the gap between
programming and art. 5. They manipulated input data with an application p rogram to
obtain desired output. 6. The data processing of the new computer was excellent as it
handled our big data calculations drawing from our database. 7. I understood the data I
was processing.

IV. Find in the above text and copy out sentences in which linking expressions
however and otherwise are used. Translate the sentences with them. Say which of
these linking expressions:
a) introduces an alternative idea?
b) introduces a contrast?

V. Complete the text below by choosing the correct prepositions:


before from in of into by to

An instruction cycle (sometimes called fetch-decode-execute cycle) is the basic


operation cycle ….. a computer. It is the process ….. which a computer retrieves
a program instruction …. its memory, determines what actions the instruction
requires, and carries out those actions. This cycle is repeated continuously by the
central processing unit (CPU), from boot up ….. when the computer is shut down.

36
In simpler CPUs, the instruction cycle is executed sequentially: each instruction
is completely processed ….. the next one is started. …. most modern CPUs, the
instruction cycle is instead executed concurrently in parallel, as an instruction
pipeline: the next instruction starts being processed before the previous instruction is
finished, which is possible because the cycle is broken up ….. separate steps.
(From The Free On-line Dictionary of Computing)

VI. Translate the following word combinations using the topical vocabulary:
чтобы сформировать желаемые выходные данные;
чтобы выполнять вычисления с плавающей запятой;
представлять величины с плавающей запятой в памяти;
операции с целыми;
выполняемая последовательность операций с целыми;
использовать математические уравнения;
для того, чтобы ввести слова;
необработанный материал;
обрабатывать специальным методом.

TALKING TOPICS:
I. Prove the following statement:
There is the difference between data and information in computer terms.

II. Express your opinion on the following problem:


Why do you need to be good at data processing?

Text 3
PRACTICAL PROBLEMS IN MULTILINGUAL WORD-PROCESSING
Read and translate the text.

How can computer software originally designed to handle only English text be
broadened to encompass the full diversity of the world’s writing systems? The many
challenges of the task can be divided into three basic realms. There must be a way for
text to be represented in the memory of a computer; there must be a way for text to be
typed at the keyboard of the computer; there must be a way for comp uter to p resent
text to the typist; I shall refer to these realms as encoding, typing and rendering. By
rendering I mean both the display of text on the screen of a computer and the printing
of text on paper.
Encoding is governed by single, basic fact: the computer can store only numbers.
Indeed, it can store only binary numbers, consisting of strings of 0’s and 1’s. Hence
text is represented in a computer by storing a binary code number for each letter. In
the case of the English language the American Standard Code for Information
Interchange, abbreviated ASCII, assigns the binary code number 01000001 to the
letter A, 01000010 to B, 01000011 to C and so on. Thus when you type an A on a

37
computer keyboard, the computer is really being instructed to store the code number
01000001. When the computer comes to display or print a letter encoded as
01000001, its instructions cause it to draw a symbol you recognize as an A. As long as
the input and output instructions are consistent, you have the illusion that the letter A
itself was stored.
Computers generally store information in units of bytes, where each byte is a
group of eight bits. It therefore seems a sensible strategy to store text as one byte p er
character. The trouble is, there are only 2 8, or 256, ways in which eight 0’s and 1’s can
be combined in a byte. The living scripts of the world have far more letters than that.
A two-byte coding scheme, in which each letter would be identified by two successive
bytes, would yield 216, or 65,536, possible codes; a three-byte coding scheme would
yield 2 24, or well over 16 million, codes. But employing two or three bytes p er letter
where only one byte is needed would waste space in the computer ’s memory. The
answer is to arrange for the encoding to expand to two or three bytes p er letter only
when necessary. This can be done by setting aside a few bytes as signals to the
computer and putting those signals into encoded text.
(By Joseph Becker)

VOCABULARY
arrange v. [əˈreɪndʒ] – располагать, расставлять; организовывать
ASCII (American Standard Code for Information Interchange) – американский
стандартный код для обмена информацией
as long as – пока
assign v. [əˈsaɪn] – определять
be governed v. [gʌvnd] – регулироваться
cause v. [kɔːz] – заставлять
challenge [ˈʧælɪnʤ] – проблема, сомнение
consistent – совместимый, согласующийся
draw v. [drɔː] – добывать, получать
encode v. – кодировать
encompass v. [ɪnˈkʌmpəs] – заключать (в себе), касаться
handle v. – обрабатывать
letter – буква
realm [relm] – область, сфера
refer to v. – ссылаться на, подразумевать
rendering – перевод; изложение, передача
sensible – разумный, заметный
set aside v. – не учитывать
single – единственный, отдельный
store v. [stɔ:] – сохранить
string – ряд, серия, строка
successive – следующий, последовательный
waste v. [weɪst] – тратить впустую

38
word processing [,wə:d ˈproʊsesiŋ] – электронная обработка текста
yield v. [ji:ld] – приносить, давать, производить

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


binary, encompass, illusion, keyboard, successive, scheme, trouble.

II. Find in the above text English equivalents for the following word
combinations and write them out:
чтобы кодирование расширилось до двух или трёх байтов на букву; полное
разнообразие систем письма в мире; сохраняет информацию в единицах байтах;
число двоичного кода; кодированием управляет; когда компьютер начинает
отображать или печатать букву; обрабатывать только английский текст; гр уппа
из восьми битов; заставляют его извлечь символ; существующие рукописи;
должен быть способ, чтобы представить текст; каждая буква была бы
определена двумя последовательными байтами; в памяти компьютера; строки
нулей и единиц.

III. Answer the following questions using the word combinations from Exercise
II:
1. How many realms can the many challenges of the task be divided into? 2.
What do encoding, typing and rendering deal with? 3. What is meant by rendering? 4.
How is encoding governed? 5. What do binary numbers consist of ? 6. What standard
is used in the case of the English language? 7. When do we usually have the illusion
that a letter itself was stored? 8. What units do computers usually store information
in? 9. What problems do the developers of software face when they deal with
multilingual word – processing software?

IV. Give your own definition of the following terms and put them down:
multilingual word – processing, keyboard, encoding, a binary code number, byte.

V. Make up your own sentences or situations with the following phrases:


can be divided into, to store only binary numbers, on a comp uter keyboard, to
waste space in the computer’s memory, to assign the binary code number to the letter,
there must be a way.

VI. Retell the text using as many of the word combinations from Exercise II as
you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

39
82 could be called "8 to the power 2" or "8 to the second power", or simply "8
squared";
53 could be called "5 to the third power", "5 to the power 3" or simply "5 cubed";
24 could be called "2 to the fourth power" or "2 to the power 4" or simply "2 to
the 4th".

II. Write down the following mathematical expressions in words:

28 216 324 93 79 62 104 123 87 163 45 812 58 122

III. Choose the proper verb form and translate the sentences.
1. Word processing is the phrase used ….. using a computer to create, edit, and
print documents. 2. The computer program is a medium in which the algorithms ….. .
3. This kind of computer program ….. as word – processing software. 4. The
computer ….. only numbers. 5. A computer can work not only with numbers
themselves but also with more abstract symbols that ….. numerical quantities. 6. If
you want ….. a paragraph, you simply remove it, without leaving a t race. 7. Word
processing software often ….. several features unavailable on typewriters. 8. The data
….. as an electronic document that can be opened, closed, saved, and edited at any
time. 9. Most modern companies that ….. a need for producing business letters or
other types of text documents will have access to word processing software and
a printer.
(Missing verbs: is stored, to delete, can be applied, represent, to describe, have,
is known, includes, can store)

IV. Write down questions to which the following statements may serve as the
answers paying attention to Present Continuous Passive (is/are being done).
1. The document is being modified by entering commands and characters from
the keyboard. 2. The computer is really being instructed to store the code number
01000001. 3. The consideration is being financed by a combination of existing
resources. 4. This principle of functioning is being widely used nowadays. 5. The roll
out of the next – generation network technologies is being accelerated by demand for
high – speed Internet connections. 6. The advantages of computerized typing are now
being extended to all the living languages of the world. 7. The study of many complex
systems is consequently being made possible through computer experiments and
computer models. 8. Today, broadband connections to the Internet via mobile p hones
and other devices are being used for many data applications, from e-mail to
multimedia streaming and file downloads.

V. Find in the above text and copy out sentences in which linking expressions
indeed, hence, therefore, and thus are used. Translate the sentences with them. Say
which of these linking expressions:
a) expresses reality?
b) introduces results and conclusions?
VI. Complete the sentences below by choosing the correct prepositions:
40
1. Word processing is faster and easier than writing by hand and you can store
documents ….. your computer. 2. The computer itself consists ….. structures and
algorithms. 3. Computation was established by using a new approach ….. many
problems. 4. The underlying principle was set forth ….. John Neumann. 5. ….. higher
level abstractions a program could not be understood fully. 6. For the comp uter all
types of data ultimately resolve ….. a sequence of bits. 7. You can print copies …
your documents, which look neater than handwritten ones. 8. Word processing
evolved ….. the needs of writers rather than those of mathematicians, only later
merging ….. the computer field.
Keys: to, into, on, from, of, by, with, without, of.

VII. Write down all possible questions to the following sentence:


The ability of a computer to do so many tasks makes it indispensable.

VIII. Translate the sentences with modals and their equivalents.


1. He’ll have to change his mind when he sees that. 2. How dare you take these
results? 3. They were to discuss the problem again. 4. Robot DV – 5 has to carry out
mathematical problems. 5. He was able to destroy one of the robots. 6. There may
have been a mistake. 7. As the psychologist of the company, you must find out how
the device works. 8. I needn’t tell you how important our work is. 9. We cannot let the
delivery ship leave the station. 10. You have to be responsible for this situation. 1 1.
He may be a very good man.
(From “I, Robot” by Isaac Asimov)

TALKING TOPICS:

I. Speak about some of the advantages of writing with pen and paper. Use the
following ideas to help you. Add any other ideas you may have.
a) Pen and paper – cheap:
b) Don’t need to learn to type;
c) You can write anywhere (don’t need electricity);
d) Handwritten letters – friendlier and more personal.

II. Explain the following:


1. Computers use specific word processing programs to store the typed data
before printing.
2. Computers store information in units of bytes.

III. Discuss the following questions. What is your opinion?


1. Do you like writing by hand? Why? / Why not?
2. Have you ever used a typewriter?
3. Do you often use a word processor? How often do you use it?
4. Are there any differences between handwriting, typing and word p rocessing?
Give your reasons.
41
5. Prepare your arguments for and against Word Processing.

Text 4
COMMUNICATIONS SOFTWARE
Read and translate the text.

To communicate via a modem, your microcomputer requires communications


software. Communications software, or “datacomm software”, manages the
transmission of data between computers or video display terminals. Often the software
comes on diskettes bundled with the modem.
Besides establishing connections between computers, communications software
may perform other functions:
Error correction: Static on telephone lines can introduce errors, or “noise,” into
data transmission. Noise is anything that causes distortion in the signal when it is
received. When acquiring a modem and its accompanying software, you should
inquire whether they incorporate error-correction features.
Data compression: Data compression reduces the volume of data in a message,
thereby reducing the amount of time required to send data from one modem to
another. When the compressed message reaches the receiver, the full message is
restored. With text and graphics, a message may be compressed to as little as one-
tenth of its original size.
Remote control: Remote-control software allows you to control a microcomputer
from another microcomputer in a different location, perhaps even thousands of miles
away. One part of the program is in the machine in front of you, the other in the
remote machine. Such software is useful for travelers who want to use their home
machines from afar. It’s also helpful for technicians trying to assist users with support
problems.
Terminal emulation: Mainframes and minicomputers are designed to be access ed
by terminals, not by microcomputers, which use different operating systems. Terminal
emulation software allows you to use your microcomputer to simulate a mainframe’s
terminal. That is, the software “tricks” the large computer into acting as if it were
communicating with a terminal. Your PC needs terminal emulation capability to log
into computers acting as electronic bulletin board servers or holding databases of
research materials.
(From Using information technology by William Sawyer Hutchinson)

VOCABULARY
acquire v. – приобретать
bundled with – в пакете с
capability [keɪpəˈbɪlɪtɪ] – возможность, способность
communicate v. [kəˈmjuːnɪkeɪt] – сообщать, передавать
compress v. – уплотнять
connection – подключение, соединение

42
distortion [dɪsˈtɔ:ʃən] – искажение
electronic bulletin board [ɪlekˈtrɔnɪk ˈbʊlɪtɪn bɔːd] – электронная доска
объявлений
error correction [ˈerə kəˈrekʃn] – исправление ошибок
feature [ˈfiːʧə] – особенность, характеристика
inquire v. [inˈkwaiə] – спрашивать, узнавать
log v. – регистрировать, записывать
modem (modulator/demodulator) – модем (модулятор/демодулятор)
perform v. [pəˈfɔːm] – выполнять
remote – удалённый
restore v. [rɪsˈtɔː] – восстанавливать
static [ˈstætik] – зд. атмосферные помехи
terminal emulation – эмуляция терминала
thereby – тем самым
via a modem [ˈvaiə] – через модем

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Acquiring, compression, emulation, microcomputer, research, thereby.

II. Find in the above text English equivalents for the following word
combinations and write them out:
уплотнённое сообщение; программное обеспечение эмуляции терминала;
управляет передачей данных; в другом месте; выполнять другие функции;
необходимое количество времени; в комплекте с модемом; в машине перед
вами; включать функции исправления ошибок; для моделирования
универсального терминала; уменьшает объём данных; вызывает искажения в
сигнале.

III. Look through the text again and find the answers to the following questions:
1. Why does your microcomputer require communications software? 2. What
manages the transmission of data between computers or video display terminals? 3.
Does the software often come on diskettes bundled with the modem? 4. What
functions besides establishing connections between computers may communications
software perform? 5. What can introduce errors, or “noise,” into data transmission? 6.
When is the full message restored? 7. What size may a message be compressed to? 8.
What function does remote control software perform? 9. Why is such software useful
for travelers? 10. What are mainframes and minicomputers designed to be access ed
by? 11. What allows you to use your microcomputer to simulate a mainframe’s
terminal? 12. What does PC need terminal emulation capability for?

43
IV. Find in the above text and copy out phrases in which the prepositions in and
into are used. Translate them.

V. Outline the main ideas of the text.

VOCABULARY AND GRAMMAR EXERCISES

I. Add the suffix – ion (-ation, -ication) to the following stems, make any
necessary spelling changes, and translate the words:

Word-building: inform v. + (a)tion = information n.


modify v. + ication = modification n.
translate v. + ion = translation n.

to apply, to organize, to simulate, to examine, to inspect, to introduce, to install,


to reduce, to rectify, to act, to incorporate, to instruct, to prevent, to operate.

II. Find in the above text and copy out nouns with the suffix -(a)tion, translate
them.

III. Fill the gaps with an appropriate word:


software management data emulation information terminals error
modem

1. Communications software makes it possible to send and receive ….. over


telephone lines through modems. 2. Mainframes and minicomputer s are designed to
be accessed by ….. . 3. Communications software is used to control a modem,
performing terminal ….. and file transfer tasks. 4. The faster the ….. , the less time
you need to spend on the telephone line. 5. You should understand basic p rocessing
strategies, communications ….. , and communications protocols. 6. Most communi-
cations software packages provide …... checking and message formatting. 7. A
channel is the path, either wired or wireless, over which ….. travels. 8. Poor …… of
the network can cause a whole company to suffer.

IV. Choose the proper verb to complete the following sentences.


1. The latest technology ….. a proprietary Retail Information System (RIS) that
runs on a single mainframe computer. 2. The devices reply to the management system
with performance data that the system … in a database. 3. The distribution of the
processing across the organizational system ….. that the right information is delivered
to the right individuals, maximizing the capabilities of the overall information system.
4. When network equipment is required, the network-management software ….. sure
that these resources are used correctly. 5. Network-management software …..
software from being copied, modified, or downloaded illegally and performs error
control to locate telecommunications errors and potential network problems. 6. A
cable modem …. digital data 1000 times faster than plain old telephone system lines.
44
7. The electromagnetic spectrum …. of fields of electrical energy and magnetic
energy.
(Missing verbs: ensures, carries, stores, consists, uses, protects, makes)

V. Ask all types of questions to the following sentence:


We are planning to modify the equipment.

VI. State functions of the past participles in the following sentence.


When the compressed message reaches the receiver, the full message is restored.

VII. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Амплитуда, частота и фаза несущей могут модулироваться для пер едачи
информации. 2. Чтобы предотвратить нежелательный доступ к информации, все
данные передаются в зашифрованной форме в обоих направлениях. 3. Этот
метод позволяет использовать кадры и наборы символов, состоящие из любого
количества битов. 4. Использование кода с обнаружением ошибок называется
прямым исправлением ошибок. 5. Корректирующие коды Хэмминга позволяют
исправлять только одиночные ошибки. 6. Цифровой звук легко обрабатывается
компьютерным программным обеспечением. 7. Когда приёмник встречает
запрещённую кодовую комбинацию, он понимает, что при передаче пр оизошла
ошибка.

SPEAKING:
I. Discuss the arguments for the following problem. Make use of the vocabulary
of the topic.
Transmission speed at which modems transmit data becomes an important
consideration.

II. Explain which of the following functions does communications software


perform?
a) error correction
b) data compression
c) remote control
d) letter encoding
e) terminal emulation
f) all of the above.

III. Do you agree with the following statement? Share opinions.


Lost time is never found again.

Text 5
CLIENT / SERVER COMPUTING
Read and translate the text.
45
Client/server computing has become the model for a new information architecture
that will take enterprisewide computing into the 21st century. Computing p ower has
rapidly become distributed and interconnected through networks of all types of
computers. In a client/server network, end user microcomputer workstations are the
clients. They are interconnected by local area networks and share application pro -
cessing with LAN servers, which also manage the networks. These local area net works
may also be interconnected to other LANs and wide area networks of client
workstations and servers.
With client/server computing, end users at client LAN workstations can handle a
broad range of information processing tasks. They can thus perform some or most of
the processing of their business applications. This includes data entry and other user
interface activities, inquiry response, transaction processing, updating databases,
generating reports, and providing decision support. LAN severs can share application
processing, manage work group collaboration, and control common hardware,
software, and databases. Thus, data can be completely processed locally, where most
input and output (and errors and problems) must be handled anyway, while still
providing access to the workstations and servers in other net works. This provides
computer processing more tailored to the needs of end users and increases information
processing efficiency and effectiveness as users become more responsible for their
own applications systems.
Client/server computing is the latest form of distributed processing. In
distributed processing, information processing activities in an organization are
accomplished by using a network of computers interconnected by telecommunications
links instead of relying on one large centralized computer facility or on the decentralized
operation of several independent computers. For example, a distributed p rocessing
network may consist of mainframes, minicomputers, and microcomputers, dispersed
over a wide geographic area and interconnected by wide area networks. Or it may take
the form of a client/server network of end user workstations and network servers
distributed within user departments in interconnected local area networks.
Client/server computing may also involve cooperative processing. Cooperative
processing allows the various types of computers in a distributed processing network
to share the processing of parts of an end user's application. Application software
packages are available which have common user interfaces and functions so they can
operate consistently on networks of micro, mini, and mainframe computer systems.
For example, an end user could use a spreadsheet package provided to his or her
microcomputer workstations by a local area network server to perform financial
analysis on databases managed by a corporate mainframe.
Many of the applications of telecommunications can be clas sified as inter-
organizational networks. Such networks link company's wide area and local area
networks to the networks of its customers, suppliers, information service providers, and
other organizations. For example, you can think of a comp uterized account inquiry
system for access by customers as an example of an inter-organizational network. So is
the use of electronic document interchange, which links the computers of a comp any
with its suppliers and customers. Accessing information services such as Dow-Jones
46
News/Retrieval or the data banks of government agencies for information about market
and economic conditions is another example. Electronic funds transfer applications
also depend on inter-organizational networks established among banks, businesses,
employees, customers, and suppliers.
Thus, the business use of telecommunications has moved beyond the bound aries
of work groups and the organization. Now many business firms have extended their
telecommunications networks to their customers and suppliers, both domestically and
internationally. Such inter-organizational systems build new strategic business
relationships and alliances with those stakeholders in an attempt to increase and lock in
their business, while locking out competitors. In addition, the availability of external
information about industry, market, economic, and political developments p rovides
better information for managerial decision making. Because of these benefits, the
trend toward increased connectivity between the networks of an organization and its
external stakeholders is expected to continue.
(From Management Information System by James A. O’Brien)

Commentary
Dow-Jones News/Retrieval (фин., комп., амер. новости/поиск Доу-Джонс):
Dow Jones News/Retrieval was an online service offered by Dow Jones & Com-
pany beginning in 1973, which greatly expanded its subscriber numbers during the
1980s. It focused on financial information offering access to securities prices
including quotes on stocks, bonds, options and mutual funds as well as a news data
base with items culled from The Wall Street Journal, Barron's and other sources, as
well as sports reports, movie reviews, encyclopedia, electronic shopping, and email.

VOCABULARY
be available v. – быть доступным; иметься в распоряжении
computing [kəmˈpjuːtɪŋ] – обработка информации
connectivity [kənekˈtɪvɪtɪ] – соединяемость
consistent – совместимый, согласующийся
corporate [ˈkɔːpərɪt] – корпоративный, общий
cull v. [kʌl] – собирать (информацию и т.д.)
data entry [ˈentrɪ] – ввод данных
distributed [dɪˈstrɪbjuːtɪd] – распределённый; распространённый
domestic – внутренний, отечественный
efficiency – эффективность; продуктивность
enterprisewide [ˈentəpraɪzˈwaɪd] – общекорпоративный, в масштабе
предприятия
error [ˈerə] – ошибка, погрешность
facility [fəˈsɪlɪtɪ] – способ; приспособление
interconnect v. [ˈɪntəkəˈnekt] – взаимодействовать, соединять

47
link v. – соединять, связывать
link – линия связи, связь, соединение
local area networks (LAN) [ˈɛərɪə] – локальная (вычислительная) сеть
network – сеть; компьютерная сеть
package [ˈpækɪʤ] – пакет, пакет программ
provide v. [prəˈvaɪd] – обеспечивать
rapidly [ˈræpɪdlɪ] – быстро
rely on v. – полагаться на
responsible for – ответственный за что-либо
server [ˈsɜːvər] – служебное устройство; спецпроцессор; сервер
share v. [ʃɛə] – совместно использовать; распределять
spreadsheet [ˈspredʃiːt] – электронная таблица
stakeholder [ˈsteɪkhəʊldər] – посредник
supplier [səˈplaɪər] – поставщик
think of v. – думать, придумывать
update v. [ʌpˈdeɪt] – обновлять, модернизировать
wide area network – глобальная территориальная сеть

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Access, architecture, centralized, client, efficiency, inter-organizational, inquiry.

II. Find in the above text English equivalents for the following word
combinations and write them out:
обработка информации между клиентом и сервером; сеть р аспределённой
обработки; ответ на запрос; ввиду данных преимуществ; итоговые данные
транзакции; конечный пользователь; в попытке увеличить и зафиксировать свой
бизнес; поставщики информационных услуг; должны быть обработаны так или
иначе; компьютеризированная система запроса счёта; выйти за пределы рабочих
групп и организаций; выполнить финансовый анализ; электронный обмен
документами; широкий диапазон задач обработки информации; деловое
использование телекоммуникаций переместилось за пределы границ;
рассредоточенный по широкой географической территории; включать
совместную обработку; обновление баз данных; более приспособленный к
нуждам конечных пользователей; микрокомпьютерные автоматизированные
рабочие станции конечного пользователя; вычислительные возможности;
вычисления в масштабах предприятия.

III. Answer the following questions using the words and word combinations of
the topical vocabulary:

48
1. What has become the model for a new information architecture that will take
enterprisewide computing into the 21st century? 2. Are end user microcomputer
workstations the clients in a client/server network? 3. What are they interconnected
by? 4. What can end users at client LAN workstations handle with client/server
computing? 5. What does processing of business applications include? 6. Can LAN
severs share application processing, manage work group collaboration, and con trol
common hardware, software, and databases? 7. Why is client/server comp uting the
latest form of distributed processing? 8. What does cooperative processing allow? 9.
Why can application software packages operate consistently on networks of micro,
mini, and mainframe computer systems? Give an example. 10. Why can many of the
applications of telecommunications be classified as inter-organizational networks ? 11.
What do electronic funds transfer applications depend on? 12. Has the business use of
telecommunications moved beyond the boundaries of work groups and the
organization? 13. What do inter-organizational systems build? 14. Why is the trend
toward increased connectivity between the networks of an organization and its
external stakeholders expected to continue?

IV. Find in the above text and copy out sentences in which the prepositions
among, between and within are used. Translate them.

V. Fill in the gaps with the words and expressions from the text.
1. Computing power has rapidly become …… through networks of all typ es of
computers. 2. Data can be ….. processed locally. 3. A distributed processing network
may consist of mainframes, minicomputers, and microcomputers, ..... and
interconnected by wide area networks. 4. ….. can be classified as inter-organizational
networks. 5. For example, you can think of a computerized account inquiry system for
access ….. as an example of an inter-organizational network. 6. The availability of
external information about industry, market, economic, and p olitical d evelopments
provides ….. .

VI. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which linking expressions
thus, for example, in addition and because of are used. Translate the sentences with
them. Say which of these linking expressions:
a) expresses exemplification and summation?
b) introduces results and conclusions?
c) expresses a reason?
d) expresses addition?

II. Complete the gaps in this summary of the text on broadband using these
linking expressions:
49
although nevertheless moreover therefore such as

The decision to include broadband as a requirement in the provisions for a


universal service was taken in recognition of its importance in today’s information and
knowledge society. ….. , the installation of broadband access covering most areas of
the country is technically feasible, and more and more applications can now only be
accessed using broadband technology.
The communication office had to evaluate several criteria, …. whether there was
interest in broadband services, whether these were accessible to the general public,
and the broadband penetration rate. This evaluation revealed a somewhat divergent
situation. ….. at the time of the survey over 98 per cent of household connections
were broadband-compatible from a technical viewpoint, the penetration rate was less
than 20 per cent. Participation in community life ….. ap peared not to be p rimarily
dependent on access to broadband services. ….. , having looked at the overall picture,
the government decided to pursue this route.
(From ITU NEWS magazine)

III. Match each group of words to the correct suffix. The suffix must fit all three
words in the group. What spelling changes do you have to make when you add the
suffix?
1 use serve compute a) -able
2 cooperate execute relate b) -ness
3 permanent rapid consistent c) -(at)ion
4 program avail distinguish d) -ful
5 effective ready distinctive e) -al
6 develop govern depart f) -ive
7 inform collaborate operate g) -ly
8 plenty power meaning h) -er
9 addition organization profession i) -ment

IV. Ask questions to which the following statements may serve as the answers.
1. A server host runs one or more server programs which share their resources
with clients. 2. The client sends a request and the server returns a response. 3. All
client-server protocols operate in the application layer. 4. A server may receive
requests from many different clients in a very short period of time. 5. Client software
can also communicate with server software within the same computer. 6. Middleware
is the key to integrating heterogeneous hardware and system software environments,
providing this level of integration. 7. When a client/server connection is made,
information may flow both ways through the virtual channel that connects the two
software processes. 8. Many organizations are seeking integration of corresponding
environments. 9. The elements of storage manipulated by the p rogram contain data.
10. You can save a file in many different locations in your computer.

V. State functions of the past participles in the following sentence.

50
In distributed processing, information processing activities in an organization are
accomplished by using a network of computers interconnected by telecommunications
links instead of relying on one large centralized computer facility or on the decentralized
operation of several independent computers.

VI. Choose the correct alternative in each of these sentences (Present Perfect
Active or Passive).
1. Many of the applications of telecommunications have just mentioned / have
just been mentioned. 2. This computer function has already been carried out / has
already carried out in the form of complex mathematical codes. 3. The trend toward
high-speed, digital networks has captured / has been captured the interest of both
business and government. 4. Computing power has become / has been become
distributed and interconnected through networks of all types of computers. 5. A user
has first instructed / has first been instructed the operating system to load a word
processor program from a file. 6. Virtual work groups have already formed / have
already been formed to work on joint projects. 7. These local area networks have
interconnected / have been interconnected to other LANs and wide area networks
lately. 8. Once the physical connection has been established / has established, a client-
server protocol is required before the user can access the network services. 9. Large
supermarkets have been used / have used computers for decades already.

VII. Look at the first sentence in each pair and highlight the passive verb forms.
Then complete the second sentence, which is active.

1. a) A broad range of information processing tasks can be handled by end users


at client LAN workstations.
b) End users at client LAN workstations …… a broad range of information
processing tasks.
2. a) We were given the information we needed.
b) He …… us the information we needed.
3. a) Most of the processing of their business applications are performed.
b) They …… most of the processing of their business applications.
4. a) Information processing activities in an organization have been accomplished
by using a network of computers.
b) We …… information processing activities in an organization by using a
network of computers.
5. a) She was proud to have been promoted.
b) She was proud that they had …… her.
6. a) A spreadsheet package is being provided to his or her microcomputer
workstations by a local area network server.
b) A local area network server …… a spreadsheet package to his or her
microcomputer workstations.

VIII. Rewrite the following sentences into Passive.

51
1. We use computer systems in a variety of work situations where earlier it was
necessary to employ people.
2. A router directs messages when we link several networks.
3. In airports highly trained experts use computers.
4. Police use speed traps to catch drivers breaking speed limits.
5. Scanner devices called barcode readers convert barcodes into prices.
6. The till prints the item and the price on the paper receipt.
7. We refer to one character of data as a byte.
8. Asynchronous transmission sends the data one byte or character at a time.
9. In a client/server network, the main server computer provides the services
(sharing of printers, programs or data, etc).
10. Terminals require the server to do most or all of the processing.
11. The hub connects all electronic devices.
12. A simple computer comprises a processor and memory, display, keyboard,
mouse and a hard disk drive.
13. A backbone, i.e. a network transmission path, handles major data traffic.
14. Businesses can increasingly use computers.
15. We always use this program for very basic processing.

TOPICS FOR DISCUSSION:


I. Discuss the following questions. Share opinions.
1. What do you mean by client/server computing?
2. What do you know about a router? Also tell us how it works.

II. Explain and expand on the following:


Client/server computing is a software engineering technique often used within
distributed computing that allows two independent processes to exchange informati-
on, through a dedicated connection, following an established protocol.

III. Study the following information and ask all possible questions. Make use of
the vocabulary of the topic.
The terms “client” and “server” apply to roles that the software components
assume during a single connection session. One of the software processes adopts
the role of “server” and waits for connections to be made. The other p rocess adopts
the role of “client” and makes the connection with the “server.” How the physical
connection is made goes beyond the scope of the client/server connection. Once the
connection has been established, either software component may pass messages to the
other. However, this must be accomplished in accordance with the interface
protocol. The client may only send messages that have been implemented for sending
by the client to be received by the server; the server sends only “server -to-client”
messages.

52
UNIT III
Text 1
DATA COMPUTING
Read and translate the text.

Data can be treated as singular, plural, or as a mass noun and is any sequence of
one (1) or more symbols given meaning by specific act(s) of interpretation.
Data (or datum – a single unit of data) is not information. Data requires
interpretation to become information. To translate data to information, there must be
several known factors considered. The factors involved are determined by the creator
of the data and the desired information. The term metadata is used to reference the
data about the data. Metadata may be implied, specified or given. Data relating to
physical events or processes will also have a temporal component. In almost all cases
this temporal component is implied. This is the case when a device such as a
temperature logger received data from a temperature sensor. When the temperature is
received it is assumed that the data has temporal references of "now". So the device
records the date, time and temperature together. When the data logger communicates
temperatures, it must also report the date and time (metadata) for each temperature.
Digital data is data that is represented using the binary number system of ones (1)
and zeros (0) as opposed to analog representation. In modern computer systems, all
data is digital. Data within a computer, in most cases, moves as p arallel data. Data
moving to or from a computer, in most cases, moves as serial data. Data sourced from
an analog device, such as a temperature sensor, must pass through an "analog to
digital converter" or "ADC" to convert the analog data to digital data.
Data representing quantities, characters, or symbols on which operations are
performed by a computer, stored and recorded on magnetic, optical, or mechanical
recording media, are transmitted in the form of digital electrical signals. A program is
a set of data that consists of a series of coded software instructions to control the
operation of a computer or other machine. Physical computer memory elements
consist of an address and a byte/word of data storage. Digital data are often stored
in relational databases, like tables or SQL databases, and can generally be represented
as abstract key/value pairs.
Data can be organized in many different types of data structures, including
arrays, graphs, and objects. Data structures can store data of many different types,
including numbers, strings and even other data structures. Data pass in and out of
computers via peripheral devices.
In an alternate usage, binary files (which are not human-readable) are sometimes
called "data" as distinguished from human-readable "text". The total amount of digital
data nowadays can be estimated to be 281 billion gigabytes (= 281exabytes).
(From Wikipedia, the free encyclopedia)

Commentary
Exabyte is a multiple of the unit byte for digital information. The prefix exa
indicates multiplication by the sixth power of 1000 (1018) in the International System

53
of Units (SI). Therefore, one exabyte is one quintillion bytes (short scale). The symbol
for the exabyte is EB.
1 EB = 10006bytes = 1018bytes = 1000000000000000000B=1000 p etabytes =
1millionterabytes = 1billiongigabytes.
Gigabyte [‘dʒɪɡəbaɪt] is a multiple of the unit byte for digital information. The
prefix giga means 109 in the International System of Units (SI), therefore one
gigabyte is 1000000000bytes. The unit symbol for the gigabyte is GB.
SQL [‘ɛs’kju’ɛl] stands for "Structured Query Language," and can be
pronounced as either "sequel" or "S-Q-L." It is a query language used for accessing
and modifying information in a database. («язык структурированных запросов»)

VOCABULARY
array [əˈreɪ] – массив, матрица
as opposed to [æz əˈpəʊzd tuː] – в противоположность, по сравнению с
communicate v. [kəˈmju:nɪkeɪt] – связываться, передавать
consist of v. – состоять из
convert v. [ˈkɔnvɜːt] – превращать, преобразовывать
creator [kri:ˈeɪtə] – создатель, разработчик
data [ˈdeɪtə] or [ˈdɑːtə] – данные
even [ˈiːvən] – даже
imply v. [ɪmˈplaɪ] – означать, подразумевать
interpretation – интерпретация, объяснение
involve v. – включать
logger [ˈlɔgə] – регистратор, самописец
move v. – перемещать, перемещаться
quantity [ˈkwɔntɪtɪ] – количество
reference about v. [ˈrefrəns] – ссылаться на
sensor – датчик
serial [ˈsɪərɪəl] – последовательный, поочерёдный
source v. [sɔːs] – получать из (источника), поставлять
store v. [stɔː] – хранить, накапливать
string – строка
temporal [ˈtempərəl]– временный
value [ˈvælju:] – значение, величина

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


alternate, binary, determined, occasion, interpretation, require, temperature, via.

54
II. Find in the above text English equivalents for the following word
combinations and write them out:
данные, полученные из аналогового устройства; почти во всех случаях;
регистрирующее устройство сообщает температуры; текст читаемый человеком;
ряд данных; данные требуют интерпретации; перевести данные в инфор мацию;
общая сумма цифровых данных; двоичная система; используется, чтобы
сослаться на данные о данных; должен пройти через "аналого-цифровой
преобразователь"; данные, касающиеся физических явлений; ряд закодирован-
ных инструкций по программному обеспечению; часто хранятся в реляционных
базах данных; как абстрактные пары ключа/величины.

III. Find in the above text synonyms of the following words:


in contrast with, recorder, sequential, to include, amount.

IV. Answer the following questions using word combinations from Exercise II:
1. Can data be treated as singular and plural? 2. What does data require to
become information? 3. What do you know about metadata? 4. Will data relating to
physical events or processes have a temporal component? 5. When must the data
logger report the date and time for each temperature? 6. In what case is data called
digital? 7. What is the difference between parallel and serial data? 8. What data
are transmitted in the form of digital electrical signals? 9. What do physical computer
memory elements consist of? 10. Can data structures store data of many
different types? 11. How are binary files (which are not human-readable) sometimes
called in an alternate usage?

V. Explain in English the meaning of:


data, a human-readable text, a logger, byte, digital.

VI. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the text and copy out phrases in which prepositions from and in are
used. Translate them.

II. Complete the sentences below by choosing the correct prepositions:


in of from(2) with for(2) within on by

1. In computer science, data is information in a form suitable ….. use with a


computer. 2. A conceptual data model is developed based ….. the data requirements
for the application. 3. Data is often distinguished ….. programs. 4. A set …..
instructions to perform a given task is called a program. 5. The running program can
generally modify values ….. the data segment, but cannot change the size of the data
segment. 6. The elements of storage manipulated ….. the program are also data. 7. We
55
must detail a task ….. the computer to perform. 8. A user might first instruct the
operating system to load a word processor program ….. the file. 9. A computer
processor may only manipulate data ….. itself (Processor register) or memory. 10. The
programmer must edit a document stored in another file ….. the word processor
program.

III. Find in the above text and copy out sentences containing past participles.
Define their functions.

IV. Choose the proper verb form and translate the sentences.
1. The study of computation ….. paramount to the discipline of computer
science. 2. Computation is ….. a new approach to many p roblems nowadays. 3. No
analysis of the systems for which analysis is necessary could …. without the
computer. 4. Many data centers ….. migrating toward a cloud-like model so that they
may ….. advantage of the pooled resources that form the funda mental core of cloud
computing. 5. The running program ….. generally modify values in the data segment,
but ….. change the size of the data segment. 6. A user must first instruct the operating
system ….. a word processor program from one file, and then edit a document ….. in
another file. 7. To assist exchange, our organization …… moved from exchanging
information at conferences to launching formal mentoring schemes. 8. Software
engineering …… a process, a collection of methods and an array of tools that allow
professionals ….. high-quality computer software. 9. Computation is any type
of calculation that ….. a well-defined model understood and expressed as an
algorithm.
(Missing verbs: take, follows, has, establishing, can, to build, is, to load, are,
stored, encompasses, cannot, be made)

V. Ask all types of questions to the following sentence:


Data sourced from an analog device must pass through an analog to digital
converter to convert the analog data to digital data.

VI. Translate the following definitions and memorize them.


Calculator: A mechanical or electronic device that performs mathematical
calculations.
Computer: A programmable electronic device that performs mathematical
calculations and logical operations, especially one that can process, store and retrieve
large amounts of data very quickly; now especially, a small one for personal or home
use employed for manipulating text or graphics, accessing the Internet, or playing
games or media.

SPEAKING:
I. Discuss the problem dealt with in the abstract given below:
Keys
Data keys need not be a direct hardware address in memory. Indirect, abstract
and logical keys codes can be stored in association with values to form a data
56
structure. Data structures have predetermined offsets (or links or paths) from the start
of the structure, in which data values are stored. Therefore, the data key consists of the
key to the structure plus the offset (or links or paths) into the structure. When such a
structure is repeated, storing variations of the data values and the data keys within the
same repeating structure, the result can be considered to resemble a table, in which
each element of the repeating structure is considered to be a column and each
repetition of the structure is considered as a row of the table. In such an organization
of data, the data key is usually a value in one or a composite of the values in several of
the columns.
(From Wikipedia, the free encyclopedia)

II. Express your opinion on the following point of view. Give your reasons.

What is the difference between computation and calculation?


Calculation is more often associated with arithmetic processes, whereas
computation is often associated with algorithmic processes.
Calculation is a term for the computation of numbers, while computation is a
wider reaching term for information processing in general. Practically speaking the
two words are interchangeable in most situations.

III. Discuss the arguments for the following problem. Explain why it is so.
The knowledge of foreign languages grows in importance nowadays.

Text 2
USES OF DATA IN COMPUTING
Read and translate the text.

Raw data are numbers, characters, images or other outputs from devices to
convert physical quantities into symbols, in a very broad sense. Such data are typically
further processed by a human or input into a computer, stored and processed there, or
transmitted (output) to another human or computer. Raw data is a relative term; data
processing commonly occurs by stages, and the "processed data" from one stage may
be considered the "raw data" of the next.
Mechanical computing devices are classified according to the means by which
they represent data. An analog computer represents a datum as a voltage, distance,
position, or other physical quantity. A digital computer represents a datum as a
sequence of symbols drawn from a fixed alphabet. The most common digital
computers use a binary alphabet, that is, an alphabet of two characters, typically
denoted "0" and "1". More familiar representations, such as numbers or letters, are
then constructed from the binary alphabet.
Some special forms of data are distinguished. A computer program is a collection
of data, which can be interpreted as instructions. Most computer languages make a
distinction between programs and the other data on which p rograms operate , but in
some languages, notably Lisp and similar languages, programs are essentially
57
indistinguishable from other data. It is also useful to distinguish metadata, that is, a
description of other data. A similar yet earlier term for metadata is "ancillary data."
The prototypical example of metadata is the library catalog, which is a description of
the contents of books.
(From Wikipedia, the free encyclopedia)

Commentary
Lisp (or historically, LISP means LISt Processing — «обработка списков») is a
family of computer programming languages with a long history and a distinctive, fully
parenthesized Polish prefix notation. Originally specified in 1958, Lisp is the second -
oldest high-level programming language in widespread use today; only Fortran is
older (by one year). Like Fortran, Lisp has changed a great deal since its early days.

VOCABULARY
ancillary – вспомогательный
content [ˈkɔntent] – содержание
distinguish v. – различать, отличать
familiar [fəˈmɪljə] – привычный, осведомлённый
indistinguishable [ɪndɪsˈtɪŋgwɪʃəbl] – неразличимый
means [miːnz] – средство, способ
occur v. [əˈkɜː] – происходить, иметь место, встречаться
parenthesized [pəˈrenθɪsaɪzd] – в круглых скобках
prefix notation [ˈpriːfɪks nəʊˈteɪʃn] – префиксная запись
raw data – необработанные данные
relative [ˈrelətɪv] – относительный
similar [ˈsɪmɪlə] – аналогичный, подобный
stage [steɪʤ] – стадия; период
voltage – напряжение

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


alphabet, ancillary, distinguish, essentially, interpreted, raw, voltage.

II. Translate and memorize the following phrases and word combinations.
Special forms of data, to convert physical quantities into symbols, to rep resent
data, as a sequence of symbols, from one stage, in a very broad sense, typically
denoted, more familiar representations, symbols drawn from a fixed alphabet, to make
a distinction, can be interpreted as, the earlier term for, the binary alphabet, the means
by which.

58
III. Answer the following questions using the phrases and word combinations
from Exercise II:
1. What are raw data? 2. Are such data typically further p rocessed by a human
or input into a computer, stored and processed there? 3. How does data p rocessing
commonly occur? 4. How are mechanical computing devices classified? 5. How does
an analog computer represent a datum? 6. Does a digital computer represent a datum
as a voltage, distance, position, or other physical quantity ? 7. What computer
represents a datum as a sequence of symbols drawn from a fixed alp habet ? 8. What
alphabet do the most common digital computers use? 9. Are special forms of data
distinguished? 10. What do most computer languages make a distinction between? 11.
What languages in are programs essentially indistinguishable from other data? 12.
What is the prototypical example of metadata?

IV. Find in the above text synonyms of the following words:


habitual, take place, an individual, command, series, to differ, obtained.

V. Reproduce the text in your own words.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

another + singular countable noun


Another means: one more, an additional, an extra, a different one; an alternative
one.
Don’t worry about the rain. We can go another day.
Another can be used before a plural noun when there is a number before that
noun or before phrases such as a couple of, a few etc.
In another 10 years my laptop is going to be obsolete.

other + plural countable noun or uncountable noun


Other is a determiner that goes before plural countable nouns, uncountable nouns
or a pronoun.
Some days are sunny though other days can be very rainy.

others (a pronoun to replace other + plural noun)


Others replaces “other ones” or "other + plural noun". Only others can be used as
a pronoun and not other.

I don’t like these postcards. Let’s ask for others. (others = other postcards)

II. Complete the following sentences using other, another and others:
1. I need ….. computer program.
2. She has bought ….. computer.
3. Have you got any ….. coded software instructions?
59
4. Can I use ….. programming language?
5. You never think about ….. people.
6. They see each …… very often.
7. Their manager never thinks of ….. .
8. We will be staying for ….. few weeks.
9. Where are the ….. students?
10. They talk to each ….. a lot every day.
11. I wanted the ….. software, not this software.
12. We need to continue playing an active role as a technical advisor bringing
together governments, industry and ….. partners to implement collaborative
approaches.
13. They are going to make significant progress in ….. few years for which they
all will be proud.
14. We do not need to accept only one model and reject all the ….. .

III. Find in the above text and copy out sentences containing other and another,
translate them.

IV. a) Find in the above text and copy out the sentence in which the phrase
preposition according to is used. Translate it.
b) Make up your own sentence with according to.

V. Translate the sentences and define the italicized verb forms.


1. In mathematics higher-order functions are also known as operators or
functionals. 2. Function pointers in languages such as C and C++ allow programmers
to pass around references to functions. 3. In object-oriented programming languages
that do not support higher-order functions, objects can be an effective substitute. 4.
Polish prefix notation or simply prefix notation, is a form of notation for logic,
arithmetic, and algebra. 5. The expression for adding the numbers 1 and 2 is, in prefix
notation, written "+ 1 2" rather than "1 + 2". 6. Prefix notation has seen wide
application in Lisp’s-expressions, where the brackets are required since the operators
in the language are themselves data (first-class functions). 7. The order of op erations
is defined within the structure of prefix notation and can be easily determined. 8.
Polish notation, also known as prefix notation, is a symbolic logic invented by Polish
mathematician Jan Lukasiewicz in the 1920's. 9. In Polish notation, the order of
operations and operands determines the result, making parentheses unnecessary.

VI. Find in the above text and copy out sentences in which linking expressions
such as and but are used. Which of them introduces a clarification or a contrasting
idea?

VII. Make your own sentences with such as and but, using word combinations
and phrases of the topical vocabulary.

VIII. Translate the following sentences into English:


60
1. Лисп представляет собой семейство языков программирования, которые
основаны на представлении программы системой линейных списков символов.
2. Этот язык считается вторым старейшим высокоуровневым языком
программирования. 3. Создатель Лиспа Джон Маккарти занимался исследова-
ниями в области искусственного интеллекта. 4. Символ в Лиспе – это объект в
машинной памяти, представляющий собой совокупность «слотов» т.е. ячеек,
хранящих ссылки. 5. Мы используем этот язык программирования для
моделирования различных аспектов искусственного интеллекта. 6.
Традиционный Лисп использует автоматическое управление памятью и сбор ку
мусора.

TALKING TOPICS:
I. Many people all over the world are interested in the processes which are
taking place nowadays and they are eager to know about the development of computer
science. Imagine you are a correspondent of a famous journal. What questions would
you ask foreign scientists.

II. Discuss the arguments for the following problem. Share opinions?
Many scientists state that it is important to formulate a p ossible solution to the
problem before starting experiments.

Text 3
PROBABILITIES AND RANDOM VARIABLES
Read and translate the text.

Probability theory is used in communication theory and signal processing of


random waveforms. All first- and second-order time averages are visualized
statistically. The topics covered with some highlights are as follows:
1. Discrete probability theory. The theorem of total probability, which subdivides
compound problems into weighted subproblems, is highlighted along with Bayes’
theorem.
2. The theory of one random variable.
3. The theory of two random variables. Joint distribution, density, and mass
functions give complete probabilistic information about two random variables and are
the key to solving most applications involving continuous and discrete random
waveforms and later random processes. The bridge from theory to application is short
as in the relationship between finding the density or mass function of a function of
two random variables and the communication problem of finding statistics of a
system’s random output when two random inputs are combined by operations such as
summing or multiplying (modulation).
The elements of probability and random variable theory should be presented as a
prerequisite to the study of random processes and communication theory.

61
Probability theory concerns itself with assumed random p henomena, which are
characterized by outcomes which occur with statistical regularity. These statistical
regularities define the probability p(A) of any outcome A and the conditional
probability of A given B. In order to use these definit ions it is required to know
counting theory or permutations and combinations.
From basic counting formulae, which are inductively developed, plus an
understanding of counting factors, probabilities of complex outcomes may be found.
The axioms of probability state that a probability is between zero and one and
that the probability of the union of mutually exclusive outcomes is the sum of their
probabilities. A historically elegant theorem which simplifies compound p roblems is
Bayes’ Theorem. Consider a random phenomenon where one trial consists in
performing a trial of one of m random phenomena B1, B2…, Bm where the
probability of performing a trial of B1 is P(B1) and so on until P(B m) is the
probability of performing a trial of Bm. This is the theorem of total probability.
Whenever many probabilistic questions are asked about a random phenomenon, a
structured outline is given for the solution in three steps.
In step 1 an appropriate event space or the sample description space of the
phenomenon is listed. The sample description space is the set of finest grain, mutually
exclusive, collectively exhaustive outcomes, whereas an event space is a listing of
mutually exclusive, collectively exhaustive outcomes. In step 2, a probability is
assignment to each outcome of the chosen space using the relative frequency or
axiomatic formulae. In step 3, any desired probabilities are found by using the
axiomatic formulae.
Density and mass functions allow for the use of integration and summations to
answer probabilistic questions about a random variable.
A finite-power random or noise waveform is defined as being nondeterministic
and such that statistics of a large section or of the whole waveform exist. Any time
average may be found by the statistical formula.
When ergodic random processes are later encountered the time averages for any
one member of the ensemble will be equivalent to the corresponding ensemble
averages. A future task is to approximate time averages on a computer.
(By Michael O’Flynn)

VOCABULARY
average [ˈævərɪʤ] – средняя величина
compound [ˈkɔmpaʊnd] – составной, сложный
density – плотность
elegant – изящный
ensemble – матем. множество
ergodic [əˈgəʊdɪk] – эргодический
event – событие, явление
exclusive – исключительный
exhaustive [ɪgˈzɔːstɪv] – исчерпывающий
exist v. – существовать, иметь место
62
grain – зерно; мелкая частица
involve v. – включать
joint [ʤɔɪnt] – одновременный, совместный
list v. – перечислять, вносить в список
listing – список
mutually [ˈmjuːtjʊəlɪ] – взаимно
noise [nɔɪz] – шум; фон
outcome [ˈaʊtkʌm] – результат
outline [ˈaʊtlaɪn] – схема, план
output – матем. результат вычисления; выходные данные
permutation – матем. перестановка
probabilistic [prɒbəbɪˈlɪstɪk] – вероятностный
probability [prɔbəˈbɪlɪtɪ] – вероятность
random [ˈrændəm] – случайный, произвольный
relationship [rɪˈleɪʃənʃɪp] – отношение
sample description space – интервал между характеристиками дискрета; поле
описания дискрета
simplify v. – упрощать
solution – решение
trial – испытание; попытка
variable – переменная
whereas – тогда как; принимая во внимание

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[ˈtraɪəl], [ˈvɛərɪəbl], [wɛərˈæz], [ɪɡˈzɪst], [səˈlu:ʃən], [ˈelɪɡənt], [ɪksˈklu:sɪv],
[ˈpə:mjuˈteɪʃən], [ɑ:nˈsɑ:mbl], [ˈsɪmplɪfaɪ], [kəmˈpjuːtə(ɹ)]

II. Translate and memorize the following words and word combinations.
Probability theory, corresponding ensemble, permutation and combination, to
subdivide into, complex outcomes, signal processing, a random waveform, the first -
order time average, with statistical regularity, summing or multiplying, random
variables, to concern with, to highlight, along with, to approximate, counting factors ,
to encounter the time averages.

III. Copy out from the text sentences containing the words and word
combinations given above and translate them.

IV. Find in the above text equivalents for the following words and word
combinations and memorize them:
63
плотность; результат вычисления; теория подсчёта; предпосылка к
изучению; заниматься чем-либо; среднее значение времени второго порядка;
интервал между характеристиками дискрета; формулировать; подразделяет на
взвешенные подпроблемы; мысленно представить себе; основные формулы
подсчёта; шум; взаимоисключающий результат; условная вероятность;
случайная волнообразная кривая ограниченной мощности; функции плотности и
массы; найти с помощью статистических формул; предполагаемые (допускае –
мые) случайные явления; перестановка и комбинация; сложные задачи;
случайные переменные величины; средние значения множества; теорема
суммарной вероятности; относительная частота; выбранное пространство;
исчерпывающие результаты; дискретная теория вероятности.

V. Fill in the gaps with the words and expressions from the text:
1. The theorem of total probability is highlighted along with …….. . 2. ….. any
desired probabilities are found by using the axiomatic formula. 3. Density and mass
functions allow to answer ….. . 4. A historically elegant theorem which simplifies …..
problems is Bayes’ theorem. 5. Any time average ….. by the statistical formula. 6.
Random phenomena are characterized by outcomes which occur ….. . 7. Random
phenomena are characterized by …… which occur with statistical regularity.

VI. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. Where is probability theory used? 2. What does probability theory deal with?
3. What is the definition of discrete probability theory? 4. What can you say about the
theory of two random variables? 5. What are random phenomena characterized by? 6.
Do statistical regularities define the probability p(A) of any outcome A and the
conditional probability of A given B? 7. How may probabilities of complex outcomes
be found? 8. What do the axioms of probability state? 9. What can you say about
Bayes’ theorem? 10. How many steps is a structured outline for the solution given in?
11. What is listed in step 1? 12. What is a probability assigned to in step 2? 13. How
are any desired probabilities found in step 3? 14. What do density and mass functions
allow for the use of integration and summations? 15. How is a finite-power random or
noise waveform defined? 16. Which formula may any time average be foun d by? 17.
When will the time averages for any one member of the ensemble be equivalent to the
corresponding ensemble averages?

VII. Retell the above text using as many of the words and word combinations
from Exercises II and IV as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Explain in English the meaning of the following:


probabilities, random, the axiom, mutually exclusive outcomes, noise.

64
II. Translate the following sentences paying attention to the words and word
combinations in italics:
1. Bayes’ theorem shows the relation between a conditional probability and its
reverse form. 2. The theorem can be used directly as part of a particular approach to
statistical interference. 3. Bayes’ theorem is named after Thomas Bayes. 4. The
French mathematician Pierre-Simon Laplace reproduced and extended Bayes’ results
in 1774. 5. Bayes’ theorem has applications in a wide range of calculations involving
probabilities. 6. The theorem provides a way to revise existing predictions or theories
given new or additional evidence.

III. Study the grammar table and learn.

NOTE:
A limited number of nouns have irregular plural forms, for example, some words
of Greek or Latin origin. They have kept their own plural endings:
calculus – calculi

IV. Give the correct form of the plural of the given borrowed nouns:
analysis, crisis, criterion, thesis, datum, referendum, memorandum, medium,
index.

V. Give the singular of each of the following:


bases, hypotheses, media, stimuli, indices, spectra, fora, millennia.

VI. Find in the above text and copy out sentences in which irregular plural forms
are used, translate them.

VII. Translate the following sentences paying special attention to the meaning of
the phrasal verbs in italics:
1. Don't concern yourself with matters that are not your business. 2. The engineer
was concerned about the lack of support for a computer program. 3. I am too busy to
concern myself with your affairs. 4. Parents were concerned about the safety of their
son. 5. Our department is concerned with object-oriented programming languages. 6.
They are concerned about the increase in the number of unemployed young people. 7.
He is said to be concerned in modifying values in the data segment. 8. I am not
concerned with details. 9. His work doesn’t concern with exchanging information.

VIII. a) Find in the above text and copy out the sentence in which the phrasal
verb to concern with is used. Translate it.
b) Make up your own sentences with to concern with, to be concerned about, to
be concerned in.

IX. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
65
1. Математические интересы Байеса относились к теории вероятностей. 2.
Он сформулировал и решил одну из основных задач этого раздела математики
(теорема Байеса). 3. По формуле Байеса можно более точно пересчитать
вероятность, беря в расчёт как ранее известную информацию, так и данные
новых наблюдений. 4. Теорема Байеса названа в честь её автора Томаса
Байеса (1701—1761) . 5. Математически теорема Байеса показывает взаимоот-
ношения между вероятностью события A и вероятностью события B. 6. В
частотной интерпретации теорема Байеса фиксирует количество произошед-
ших событий (выходов) и определяет их вероятность.

X. Choose the correct alternative in each of these sentences:


1. A sample problem will be solved / will solve using the relative frequency
definitions of probabilities and counting formulae. 2. We will be stated / will state this
theorem in a casual manner. 3. The elements of probability will be presented / will
present as a prerequisite to the study of communication theory. 4. He will base / will
be based the statistical regularity of A only on trials when B occurs. 5. The top ic of
finding the density function of a function of two known random variables will extend /
will be extended in the article. 6. The random phenomenon of samp ling the p eriodic
waveform will be considered / will consider on the trial.

SPEAKING:
I. Characterize Bayes’ Theorem and its role in mathematics.

II. Prepare arguments for the following statement or against it.


Science is the most important, the most magnificent and the most necessary
element of life. (A. Chekhov.)

III. Speak about any great scientific discovery.

Text 4
PROGRAMMING
Read and translate the text.

A program is a sequence of instructions that tells the hardware of a computer


what operations to perform on data. Programs can be built into the hardware itself, or
they may exist independently in a form known as software. In some sp ecialized, or
"dedicated," computers the operating instructions are embedded in their circuitry;
common examples are the microcomputers found in calculators, wristwatches,
automobile engines, and microwave ovens. A general-purpose computer, on the other
hand, contains some built-in programs (in ROM) or instructions (in the processor
chip), but it depends on external programs to perform useful tasks. Once a comp uter
has been programmed, it can do only as much or as little as the software controlling it
at any given moment enables it to do. Software in widespread use includes a wide

66
range of applications programs-instructions to the computer on how to perform
various tasks.
Computer programming (often shortened to programming or coding), sometimes
considered a branch of applied mathematics, is the process of writing, testing,
debugging/troubleshooting, and maintaining the source code of comp uter p rograms.
This source code is written in a programming language. The code may be a
modification of an existing source or something completely new. Source code is
written in one or more programming languages. The p urpose of p rogramming is to
find a sequence of instructions that will automate p erforming a specific task or solving
a given problem. The only language a PC can directly execute is machine code, which
consists of 1s and 0s. This language is difficult to write, so we use symbolic languages
that are easier to understand. For example, assembly languages use abbreviations such
as ADD, SUB, and MPY to represent instructions. The program is then translated into
machine code by software called an assembler. The process of writing source code
requires expertise in many different subjects, including knowledge of the ap plication
domain, specialized algorithms and formal logic.
Software engineering combines engineering techniques with software develop –
ment practices. Within software engineering, programming (the imp lementation) is
regarded as one phase in a software development process.
There is an ongoing debate on the extent to which the writing of programs is
an art form, a craft, or an engineering discipline. In general, good programming is
considered to be the measured application of all three, with the goal of p roducing an
efficient and evolvable software solution.

VOCABULARY
assembler [əˈsemblər] – язык ассемблера, программа-транслятор
branch [brɑːnʧ] – отрасль
built-in [bɪlt ɪn] – встроенный
circuitry [ˈsɜːkɪtrɪ] – схема
craft – ремесло
debug v. [diːˈbʌg] – налаживать, отлаживать, устранять (неполадки)
domain [dəʊˈmeɪn] – домен, область
dedicate v. – выделять
evolvable – развивающийся
execute v. [ˈeksɪkjuːt] – выполнять
expertise – экспертные знания
external – внешний
general-purpose [ˈʤenərəl ˈpɜːpəs] – многоцелевой; общего назначения
implementation – реализация, выполнение
include v. – включать, содержать в себе
modification [mɔdɪfɪˈkeɪʃn] – модификация, изменение, доработка
once – как только

67
ongoing [ˈɒngəʊɪŋ] – продолжающийся, происходящий в настоящее время
purpose – цель, намерение, результат
sequence [ˈsiːkwəns] – последовательность
shorten to v. – сократить до
source [sɔːs] – источник
troubleshooting [ˈtrʌblʃuːtɪŋ] – поиск и устранение неисправностей
widespread – широко распространённый
wristwatch [ˈrɪstwɒʧ] – наручные часы

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[krɑ:ft], [ˈdedɪkeɪt], [ˈwaɪdspred], [,ekspə:ˈti:z], [eksˈtə:nl], [ˈpə:pəs], [wʌns],
[,ɪmplɪmenˈteɪʃən], [,mæθɪˈmætɪks].

II. Find in the above text English equivalents for the following word
combinations and write them out:
отрасль прикладной математики; домен приложения; много различных
предметов; набор последовательных команд; включены в свою схему;
представлять инструкции; компьютер общего назначения; выполнять
конструктивные задачи; продолжающиеся дебаты; сохранение исходного кода; в
любой заданный момент; на языке программирования; широкий спектр приклад-
ных инструкций программ; рассматривается как одна фаза; абсолютно новое;
развивающееся программное решение; решение данной задачи; требует
специальных (экспертных) знаний; могут существовать независимо друг от
друга.

III. Write some problem questions to the above text for class discussion.

IV. Find in the above text antonyms of the following words:


dependently, easy, inefficient, lost, internal, useless, indirectly, much, to exclude,
to misunderstand, similar, informal.

V. Retell the above text using as many of the words and word combinations of the
topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which the prepositions with
and within are used. Translate them.

II. Complete the following sentences using the words from the box:

68
architecture written defects process languages code approaches
to detect description career techniques

1. Programming is the ….. of writing a program using a comp uter language. 2.


The program is translated into the machine …… by software called a compiler. 3.
When the program is ….. , software developers test it, they run the program to see if it
works and use special tools ….. bugs, or errors. 4. Software companies write a
detailed ….. of how the program works, called program documentation. 5. Software
engineering combines engineering ….. with software development practices. 6. The
invention of the von Neumann ..... allowed computer programs to be stored
in computer memory. 7. Computer programming has become a p opular ….. in the
developed world. 8. There are many ….. to the software development process. 9.
Debugging is a very important task in the software development process since having
….. in a program can have significant consequences for its users. 10. Different
programming ….. support different styles of programming.

III. Translate the following sentences taking into account different meanings of
once:
– однажды, когда-то, один раз
Once – после того как
– как только
– если
1. Once a computer has been programmed, it can do only as much or as little as
the software controlling it at any given moment enables it to do. 2. Once we have
data inside the machine, what do we do with them? 3. A subroutine may be used
many times but written only once. 4. Once we have discussed this program
documentation. Don’t you remember? 5. Our manager predicts that this will exp and
further once these devices are equipped with wireless technology. 6. Once the
machine has been designed and built, once it has been programmed, it’s sufficient t o
push a button and let it proceed. 7. Once the source code was chosen it was then
written in the programming language.

IV. Find in the above text and copy out sentences in which linking expressions on
the other hand and such as are used. What idea do they introduce? Translate the
sentences with them.

V. Translate the following sentences paying special attention to the infinitives


as parts of compound nominal predicates.
The infinitive after the linking verb BE is part of the compound nominal
predicate.

69
1. Our aim was to create unified logical steps of the computer program. 2.
Your only chance is to speak to the engineer. 3. My sole desire is to be accepted
without question by members of the organization. 4. Their purpose is to use forms
resembling English, which makes programming easier. 5. The most imp ortant thing
for us is to determine the way in which things are done around here. 6. Your duty is
to attempt to change the set of instructions. 7. His assistant's main task is to gather
appropriate information for research. 8. Your task is to modify an existing source. 9.
Their overall strategic plan was to modernize a maintenance program. 10. My advice
to you is not to confuse the terms ‘testing’ and ‘debugging’. 11. Her task is to get the
required information. 12. Our software developers’ duty is to implement a
predetermined strategy in updating this version. 13. The purpose of p rogramming is
to create a program that exhibits a certain desired customization. 14. My duty is to do
a specific task in creating Web pages.

VI. Find in the above text the sentence containing the infinitive in the function of
a compound nominal predicate and write it out.

TOPICS FOR DISCUSSION:

I. Discuss the arguments for the following problem. Make use of the vocabulary
of the topic.
Invention of electronic computers is one of the greatest achievements of
mankind. The significance of it can be compared with the invention of the steam -
engine and the utilization of atomic energy.

II. Comment upon the following statement. Share opinions.


In the modern society, relying on information technologies, programming
education is extremely important. It is clear that the choice of the first p rogramming
language is critical for later development of an IT professional.

III. Explain and expand on the following:


While programming is a tool for all computing professionals, programming in IT
is fundamentally different from programming in computer science or software
engineering because the programming tasks and requisite skill sets for IT
professionals differ significantly from those of other computing professionals.

Text 5
A. PROGRAMMING LANGUAGES
Read and translate the texts A and B.

70
A computer must be given instructions in a "language" that it understands – that
is, a particular pattern of binary digital information. A programming language is
a formal constructed language designed to communicate instructions to a machine,
particularly a computer. Programming languages can be used to create p rograms to
control the behavior of a machine or to express algorithms. On the earliest computers,
programming was a difficult, laborious task, because vacuum-tube ON-OFF switches
had to be set by hand. Teams of programmers often took days to program simple
tasks such as sorting a list of names. Since that time a number of computer languages
have been devised, some with particular kinds of functioning in mind and others
aimed more at ease of use-the "user- friendly" approach. Machine code and assembly
languages are called low-level languages because they are closer to the hardware.
Machine Language
Unfortunately, the computer's own binary-based language, or machine language,
is difficult for humans to use. The programmer must input every command and all
data in the binary form, and a basic operation such as comparing the contents of a
register to the data in a memory-chip location might look like this: 11001010
00010111 11110101 00101011. Machine-language programming is such a tedious,
time-consuming, task that the time saved in running the program rarely justifies the
days or weeks needed to write the program.
Assembly Language
One method programmers devised to shorten and simplify the p rocess is called
"assembly-language" programming. By assigning a short (usually three-letter)
mnemonic code to each machine-language command, assembly-language p rograms
could be written and "debugged" – cleaned of logic and data errors – in a fract ion of
the time needed by machine-language programmers. In assembly language, each
mnemonic command and its symbolic operands equals one machine instruction. An
"assembler" program translates the mnemonic "opcodes" (operation codes) and
symbolic operands into binary language and executes the program. Assembly
language, however, can be used only with one type of CPU chip or microp rocessor.
Programmers who expended much time and effort to learn how to program one
computer had to learn a new programming style each time they worked on another
machine. What was needed was a shorthand method by which one symbolic
statement could represent a sequence of many machine – language instructions, and a
way that would allow the same program to run on several types of mach ines. These
needs led to the development of so – called high – level languages.
(From Wikipedia, the free encyclopedia)

VOCABULARY
approach [əˈprəʊʧ] – подход
assembly language [əˈsemblɪ ˈlæŋgwɪʤ] – язык ассемблера
assign v. [əˈsaɪn] – присваивать
devise v. [dɪˈvaɪz] – создавать, изобретать, разрабатывать
compare v. [kəmˈpɛə] – сравнивать

71
create v. [kri:ˈeɪt] – создавать
ease [i:z] – простота
effort [ˈefət] – усилие
equal v. [ˈi:kwəl] – равняться
error [ˈerə] – ошибка
expend v. – тратить
input v. – вводить
justify v. [ˈdʒʌstɪfaɪ] – оправдывать, объяснять
laborious [ləˈbɔ:rɪəs] – трудоёмкий
low-level language – язык низкого уровня
mnemonic [ni:ˈmɔnɪk] – мнемонический
operand [ˈɔpərənd] – операнд, объект
particular [pəˈtɪkjulə] – специфический, особенный, конкретный
rarely – редко
shorthand [ˈʃɔ:thænd] – сокращение; краткий
switch – переключатель, коммутатор
tedious – утомительный
vacuum-tube [ˈvækjʊəm ˈtju:b] – ламповый

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Binary, equal, input, machine, operand, rarely, sequence, tedious.

II. Find in the above text English equivalents for the following word
combinations and write them out:
более непринуждённое использование подхода "легкий в использовании";
каждая мнемоническая команда; машинный язык программирования;
конкретный образец двойной цифровой информации; назначая короткий
(обычно трёхбуквенный) мнемонический код; часто занимало дни; выражать
алгоритмы; могли быть написаны и "отлажены"; сократить и упростить
процесс; сообщить инструкции машине; ламповые релейные выключатели;
отдельные виды функционирования в уме; много времени и усилий; отни-
мающий много времени; одно символическое высказывание.

III. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What language must a computer be given instructions in? 2. What can be used
to create programs to control the behavior of a machine or to express algorithms? 3.
Why was programming a difficult, laborious task on the earliest computers? 4. What
languages are called low-level languages? 5. Is machine language difficult for

72
humans to use? 6. Why does the time saved in running the program rarely justify the
days or weeks needed to write the program? 7. What can you say about "assembly -
language" programming? 8. What language in does each mnemonic command and its
symbolic operands equal one machine instruction? 9. What do op codes mean? 10.
What is the disadvantage of an assembly language? 11. Why were there the needs for
the development of so – called high – level languages?

IV. Fill in the gaps with the words and expressions from the above text.
1. A programming language is a formal constructed language designed to
communicate instructions to ….. . 2. ….. are called low-level languages because they
are closer to the hardware. 3. The programmer must input ….. in binary form. 4. One
method programmers devised ….. is called "assembly-language" programming. 5. In
assembly language, each mnemonic command and its symbolic operands …. one
machine instruction. 6. Programmers who expended much time and effort to learn
….. had to learn a new programming style each time they worked on another
machine.

V. Find in the above text and copy out phrases in which the prepositions into
and in are used. Translate them.

VI. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following word


combinations:
to run on several types of machines; a programming language; to create
programs; to communicate instructions to a machine; to input commands and all data
in the binary form; to execute the program.

II. Find in the above text and copy out sentences in which linking expressions
however, such as and because are used. Translate the sentences with them. Say
which of these linking expressions:
a) introduces a reason and purpose?
b) introduces a contrast?
c) expresses clarification?

III. Complete the sentences with the words from the box:

programming runs writing sequence steps possible created


through

1. A programming language is a notation for ….. programs, which are


specifications of a computation or algorithm. 2. Software developers usually
73
follow a lot of ….. to write a program. 3. The description of a …... language is
usually split into the two components of syntax (form) and semantics (meaning). 4.
Many programming languages are being ….. nowadays. 5. An operating system can
manage how to divide the program so that it ….. on more than one p rocessor at a
time. 6. The application programs make use of the operating system by making
requests for services ….. a defined application program interface. 7. The term
"programming language" is restricted to those languages that can express all …..
algorithms. 8. Many programming languages require computation to be specified as a
...... of operations to perform.

IV. Find in the above text and copy out sentences containing model verbs and
their equivalents with the Infinitive Passive.

V. Ask all types of questions to the following sentences:


1. Thousands of different programming languages have been created in the
computer field.
2. Since that time a number of computer languages have been devised aimed
more at ease of use-the "user- friendly" approach.

B. HIGH – LEVEL LANGUAGES

In computer science, a high-level programming language is a programming


language with strong abstraction from the details of the computer. High – level
languages often use English-like words – for example, LIST, PRINT, OPEN, and so
on – as commands that might stand for a sequence of tens or hundreds of machine -
language instructions. The commands are entered from the keyboard or from a
program in memory or in a storage device, and they are intercepted by a program that
translates them into machine-language instructions.
Translator programs are of two kinds: interpreters and compilers. With an
interpreter, programs that "loop" back to re-execute part of their instructions
reinterpret the same instruction each time it appears, so interpreted programs run
much more slowly than machine-language programs. Compilers, by contrast,
translate an entire program into machine language prior to execution, so such
programs run as rapidly as though they were written directly in machine language.
American computer scientist Grace Hopper is credited with imp lementing the
first commercially-oriented computer language. After programming an experimental
computer at Harvard University, she worked on the UNIVAC I and II computers and
developed a commercially usable high-level programming language called FLOW-
MATIC. To facilitate computer use in scientific applications, IBM then developed a
language that would simplify work involving complicated mathematical formulas.
Begun in 1954 and completed in 1957, FORTRAN (FORmula TRANslator) was the
first comprehensive high-level programming language that was widely used. In 1957,
the Association for Computing Machinery set out to develop a universal language
that would correct some of FORTRAN's perceived faults. A year later they released
ALGOL (ALGOrithmic Language), another scientifically oriented language.
74
COBOL (COmmon Business Oriented Language), a commercial and business
programming language, concentrated on data organization and file handling and is
widely used today in business. BASIC (Beginner's All-purpose Symbolic Instruction
Code) was developed at Dartmouth College in the early 1960s for use by
nonprofessional computer users. The language came into almost universal use with
the microcomputer explosion of the 1970s and 1980s. BASIC is simple to learn and
easy to use. Because many early microcomputers were sold with BASIC built into the
hardware (in ROM memory) the language rapidly came into widespread use.
Although hundreds of different computer languages and variants exist, several
others deserve mention. PASCAL, originally designed as a teaching tool, is now one
of the most popular microcomputer languages. LOGO was developed to introduce
children to computers. C, a language Bell Laboratories designed in the 1970s, is
widely used in developing systems programs, such as language translators. LISP and
PROLOG are widely used in artificial intelligence. A programming language such
as C, FORTRAN, or PASCAL, enables a programmer to write programs that are
more or less independent of a particular type of computer.
Now there are dozens of different languages, including Ada, ALGOL, BASIC,
COBOL, C, C++, FORTRAN, LISP, PASCAL, and PROLOG. Such languages are
considered high-level because they are closer to human languages and further
from machine languages. The main advantage of high-level languages over low-
level languages is that they are easier to read, write, and maintain.
(From Wikipedia, the free encyclopedia)

Commentary
Ada is a structured, wide-spectrum, and object-oriented high-level computer
programming language, extended from Pascal and other languages. Ada imp roves
code safety and maintainability by using the compiler to find errors in favor of
runtime errors. It was named after Ada Lovelace (1815–1852), who is credited with
being the first computer programmer.
ALGOL (ALGOrithmic Language) is one of several high level languages
designed specifically for programming scientific computations. It started out in the
late 1950's, first formalized in a report titled ALGOL 58, and then progressed through
reports ALGOL 60, and ALGOL 68. It was designed by an international committee
to be a universal language.
BASIC (an acronym for Beginner's All-purpose Symbolic Instruction
Code) is a family of general-purpose, high-level programming languages whose
design philosophy emphasizes ease of use. In 1964, John G. Kemeny and Thomas E.
Kurtz designed the original BASIC language at Dartmouth College in New
Hampshire. They wanted to enable students in fields other than science and
mathematics to use computers.
С (/ˈsiː/, as in the letter c) is a general-purpose, imperative computer
programming language, supporting structured programming, lexical variable scope
and recursion.

75
C++ (pronounced /ˈsiː plʌs plʌs/) is a general-purpose programming language.
It has imperative, object-oriented and generic programming features, while also
providing facilities for low-level memory manipulation.
COBOL (/ˈkoʊbɒl/, an acronym for common business-oriented language) is a
compiled English-like computer programming language designed for business use. It
is imperative, procedural and, since 2002, object-oriented. COBOL is primarily used
in business, finance, and administrative systems for companies and governments.
FLOW-MATIC, originally known as B-0 (Business Language version 0), was
the first English-like data processing language. It had a strong influence on the
development of COBOL.
FORTRAN (derived from "Formula Translation") is a general-purpose,
imperative programming language that is especially suited to numeric comp utation
and scientific computing.
LISP (derived from LISt Processing — «обработка списков») – Lisp is the
second-oldest high-level programming language in widespread use today. Only
Fortran is older, by one year. Lisp was originally created as a practical mathematical
notation for computer programs. It quickly became the favored programming
language for artificial intelligence(AI) research.
LOGO is an educational programming language, designed in 1967. "Logo" is
not an acronym. It was derived from the Greek logos meaning "word" or "thought" to
distinguish itself from other programming languages that were p rimarily numbers,
not graphics or logic, oriented.
PASCAL is an imperative and procedural programming language, which was
designed in 1968–69 and published in 1970, as a small, efficient language intended to
encourage good programming practices using structured programming and data
structuring. Pascal, named in honor of the French mathematician and
philosopher Blaise Pascal, was developed by Niklaus Wirth.
PROLOG is a general-purpose logic programming language associated with
artificial intelligence and computational linguistics. The language has been used
for theorem proving, expert systems, as well as its original intended field of
use, natural language processing.
IBM [aɪbiːˈɛm], (derived from International Business Machines) is an
American multinational technology company headquartered in Armonk, New
York, United States, with operations in over 170 countries. The company originated
in 1911 as the Computing-Tabulating-Recording Company (CTR) and was renamed
"International Business Machines" in 1924. IBM manufactures and markets
computer hardware, middleware and software, and offers consulting services in areas
ranging from mainframe computers to nanotechnology.

VOCABULARY
advantage [ədˈvɑːntɪʤ] – преимущество
appear v. – казаться
artificial [ɑːtɪˈfɪʃəl] – искусственный

76
be credited with v. – приписывать что-либо
compiler [kəmˈpaɪlə] – компилятор
complicated – сложный
comprehensive – всесторонний
deserve v. [dɪˈzɜːv] – заслуживать, иметь право
develop v. – развивать, разрабатывать
early [ˈɜːlɪ] – заблаговременно, своевременно
enter v. – вводить
entire – весь
facilitate v. – облегчать, упрощать
fault – ошибка, дефект
high-level languages – языки высокого уровня программирования
implement v. – осуществлять, реализовывать
intercept v. [ˈɪntəsept] – перехватить
interpreter [ɪnˈtɜːprɪtə] – интерпретатор
loop back v. – вернуться
maintain v. [meɪnˈteɪn] – поддерживать
perceive v. [pəˈsiːv] – воспринимать, понимать
prior to [ˈpraɪə tuː] – до
release v. [rɪˈliːs] – выпускать
scientifically [saɪənˈtɪfɪklɪ] – с научной точки зрения
set out v. – намереваться; излагать
slowly [ˈsləʊlɪ] – медленно
tool [tuːl] – инструмент

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[ədˈvɑ:ntɪdʒ], [əˈpɪə], [ˈkɔmplɪkeɪtɪd], [ˈkɔmprɪˈhensɪv], [fəˈsɪlɪteɪt], [fɔ:lt],
[ˈɑ:tɪˈfɪʃəl], [ɪnˈtaɪə]

II. Find in the above text English equivalents for the following word combina-
tions and write them out:
заслуживают упоминания; с сильной абстракцией от деталей; вступил в
почти универсальное использование; непрофессиональными компьютерными
пользователями; от клавиатуры; предоставляет возможность программисту
написать программы; чтобы развивать универсальный язык; в научных
приложениях; ассоциация по вычислительной технике; они перехватываются
программой; до выполнения; прост в освоении и лёгкий в использовании; как
обучающий инструмент; в области искусственного интеллекта; воспринятые

77
ошибки; ближе к человеческим языкам; непосредственно на машинном
языке; сложные математические формулы.

III. Find in the above text synonyms of the following words:


to pose, to support, without hurrying, man-made, whole, instrument , broadly,
especial.

IV. Fill in the gaps with the words and expressions from the text.
1. A high-level programming language is a programming language ….. . 2
The commands are intercepted …. that translates them into machine-language
instructions. 3. ….. Grace Hopper is credited with implementing the first
commercially-oriented computer language. 4. A year later they released ALGOL
(ALGOrithmic Language), another ….. language. 5. ….. was developed at Dartmouth
College in the early 1960s for use by nonprofessional computer users. 6. PASCAL,
originally designed as a teaching tool, is now one of ….. . 7. The main ….. is that
they are easier to read, write, and maintain.

V. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What language is known as a high-level programming language in compu-
ter science? 2. What words do high – level languages often use? 3. How many
translator programs are there? 4. What does an interpreter deal with? 5. What
translates an entire program into machine language prior to execution? 6. Who is
credited with implementing the first commercially-oriented comp uter language? 7.
What did Grace Hopper develop after programming an experimental computer at
Harvard University? 8. When was FORTRAN completed? 9. What language was
released to correct some of FORTRAN's perceived faults? 10. Did COBOL
concentrate on data organization and file handling? 11. What programming language
was developed in the early 1960s for use by nonp rofessional computer users ? 12.
Why did BASIC rapidly come into widespread use? 13. What can you say about
PASCAL? 14. What computer language was developed to introduce children to
computers? 15. Are LISP and PROLOG used in artificial intelligence? 16. What is
the main advantage of high-level languages over low-level languages?

VI. Outline the main ideas of the text and write a summary.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the sentences with the words from the box:

created web available low-level language translated errors


programming to communicate features

1. Assembly languages are considered ….. because they are very close to
machine languages. 2. Programs written in a high-level language must be ….. into
78
machine language by a compiler or interpreter. 3. Java applets are small programs
that run automatically on …… pages and let you watch animated characters, and
play music and games. 4. We get reports from users about any ….. found in the
program. 5. Computer …… is a process that leads from an original formulation of
a computing problem to executable computer programs. 6. Thousands of different
programming languages have been …., mainly in the computer field. 7. C++
embodies powerful object-oriented ….. , but it is complex and difficult to learn. 8.
Java programs can be run on any operating system for which a Java "virtual
environment" is ….. . 9. Programming languages allow humans ….. instructions to
machines. 10. The syntax of a …... describes the possible combinations of symbols
that form a syntactically correct program.

II. Find in the above text and copy out sentences in which linking expressions
for example, so, by contrast and although are used. Translate the sentences with
them. Say which of these linking expressions:
a) expresses exemplification and summation?
b) introduces a contrast and comparison?
c) expresses a contrast?
d) expresses a result?

III. Choose suitable linking expressions to complete the sentences below.


1. He knows what is in the letter, by contrast/so I won’t read it to him. 2.
Although/so BASIC is easy to learn it isn’t widely used nowadays. 3. For example/
although David isn’t good at mathematics, he is a very good p rogrammer. 4. New
technology leads to a loss of jobs. For example/ by contrast, a lot of jobs have
disappeared through the use of computers. 5. So/by contrast, a newer p rogramming
language appeared to have little effect. 6. Although /by contrast, our students are
often very quick in absorbing information. 7. I wanted to create a web-page
although/so I had to learn HTML – code.

IV. Define the functions of the Infinitive in the following sentences:


1. Machine code is too difficult to write. 2. These tasks must include testing,
debugging, and maintaining the source code, implementation of the system. 3. A lot
of companies are now trying to develop voice applications for web access. 4.
HTML allows us to describe how information will be displayed on web pages. 5.
Programmers can easily understand programs not written by themselves. 6. High-
level languages must be translated into machine code. 7. You have to remember
the names of the scientists who have contributed to the developing of
programming languages. 8. Markup instructs the software that displays the text to
carry out appropriate actions, but is omitted from the version of the text that users
see. 9. Hyper Text Markup Language (HTML) is a type of computer language that
is used to create pages that can be posted on the Internet or sent via email. 10.
Codes can indicate to the browser or email program how to display or use other
elements, such as pictures, graphics, video, and sound. 11. Fortran was designed to
easily express mathematical formulae for computer processing.
79
V. Fill in the gaps with the necessary words.
1. We use high-level languages because machine code is too difficult …..
(read; reading; to read), understand and debug.
2. I'm not interested in ….. (learn; learning; to learn) that computer language.
3. Programs make computers …… (performing; to perform; perform) specific
tasks.
4. The engineers warned the employees not ….. (touch; touching; to touch)
the cables.
5. Symbolic languages are used ….. (to communicate; communicate;
communicating) instruction to the computer.
6. Spyware can make your PC ….. (perform; performing; to perform) more
slowly.
7. BASIC was widely used in the past because it was easy ….. (learn; to learn;
learning).
8. I refuse ….. (do; doing; to do) the project with this engineer.
9. A programming language is the set of words, and rules …. (govern; to govern;
governing) their use, employed in constructing a program.
10. The term "buffers" refers to the editors' ability …. (to maintain; maintaining;
maintain) multiple file editing sessions simultaneously.

VI. Ask all types of questions to the following sentence:


Compiling a program requires great attention of a programmer.

VII. Put the words in the right order to make statements:


1. Machine code, a PC, execute, the only, can, is, directly, language.
2. Makes, high-level languages, forms, use, easier, which, resembling,
programming, English.
3. To participate, be expected, you, in, will, developing systems programs.
4. Makes, via, speech, recognition, phone, and, content, Internet, accessible,
VoiceXML.
5. To create, used, the languages, are called, web-documents, markup
languages.
6. Small, that, automatically on web-pages, run, are, programmes, Java
applets.
7. is, an artificial language, designed, a computer, to a machine, to communicate
instructions, a programming language, particularly.

VIII. Match the words to the definitions:


E.g. High-level language is ......

1. High-level language a) a programming language, such as


COBOL, designed to describe the
steps necessary to solve certain types
of problems.
2. Low-level language b) a programming language, such as
80
RPG, designed to describe more
readily the problems to be solved,
rather than to specify the steps to be
taken to solve the problem.
3. Procedure-oriented language c) a programming language, using
symbolic code, that is based on the
machine language of a particular
computer and requires an assembler
to translate it into actual machine
language.
4. Problem-oriented language d) a programming language that
corresponds closely to the machine
language of a computer, such as an
assembly language.
5. Machine language e) a programming language, such as
BASIC or COBOL or..., that is not
dependent upon the machine
language of a computer, requires a
compiler to translate it into machine
language, and has been designed to
allow the use of words similar to
those in the English language.
6. Machine-oriented language f) the programming language compri-
sed of a set of unique machine codes
that can be directly executed by a
given computer.

TOPICS FOR DISCUSSION:

I. Comment on the following:


The Pascal programming language was originally developed by Nicklaus Wirth
as a small, simple, expressive, and efficient language intended to encourage good
programming practice using structured programming and data structuring. It was
designed for teaching programming techniques and topics to college students.

II. Do you agree with the following statement? Share opinions.


Programming involves activities such as analysis, developing unders tanding,
generating algorithms, verification of requirements of algorithms including their
correctness and resources consumption, and implementation (commonly referred to
as coding) of algorithms in a target programming language.

III. Discuss the following questions. What is your opinion?


1. Are programming languages artificial or natural?
2. What types of programming languages do you know?
81
3. What programming languages can you name?
4. Which of them do yоu like best?
5. What are the differences between them?
6. What programming languages are preferable to programmers?
7. Why did software developers design high-level languages?
8. What programming languages have you already worked with?

IV. Speak of your favourite programming language.

UNIT IV
Text 1
SOFTWARE ENGINEERING
Read and translate the text.

Software engineering is the study and an application of engineering to


the design, development and maintenance of software. Typical formal definitions of
software engineering are:
– research, design, develop, and test operating systems -level software,
compilers, and network distribution software for medical, industrial, military,
communications, aerospace, business, scientific, and general computing applications;
– the systematic application of scientific and technological knowledge, methods,
and experience to the design, implementation, testing, and documentation of
software;
– the application of a systematic, disciplined, quantifiable approach to the
development, operation, and maintenance of software;
– an engineering discipline that is concerned with all aspects of software
production;
– and the establishment and use of sound engineering principles in order to
economically obtain software that is reliable and works efficiently on real machines.
Software engineering can be divided into several sub-disciplines, such as
software design, software construction, software testing, software maintenance,
software configuration management, software engineering management, software
engineering process, and software evolution.
Software design is the process of defining the architecture, components,
interfaces, and other characteristics of a system or component. It is also defined as the
result of that process.
Software construction deals with the detailed creation of working, meaningful
software through a combination of coding, verification, unit testing, integration
testing, and debugging.
Software testing is an empirical, technical investigation conducted to provide
stakeholders with information about the quality of the product or service under test.
Software maintenance is the totality of activities required to provide cost -
effective support to software.
82
Software configuration management accomplishes the identification of the
configuration of a system at distinct points in time for the purpose of systematically
controlling changes to the configuration, and maintaining the integrity and traceability
of the configuration throughout the system life cycle.
Software engineering management is the application of management activities —
planning, coordinating, measuring, monitoring, controlling, and reporting—to ensure
that the development and maintenance of software is systematic, disciplined, and
quantified.
Software engineering process deals with the definition, implementation,
assessment, measurement, management, change, and improvement of the software life
cycle process itself. The computer-based tools are intended to assist the software life
cycle processes.
Software evolution is the process of developing software initially, then repeatedly
updating it for various reasons.

VOCABULARY
accomplish v. [əˈkɔmplɪʃ] – выполнять
application [æplɪˈkeɪʃn] – применение
assessment [əˈsesmənt] – оценка
compiler – компилятор (программа, которая преобразует исходный текст
программ, написанный на языке программирования высокого уровня, в про –
грамму на машинном языке, «понятную» компьютеру.)
concern with v. [kənˈsɜːn] – касаться, заниматься
deal with v. – иметь дело с
debugging [diːˈbʌgɪŋ] – отладка, нахождение и устранение дефектов
implementation [ɪmplɪmenˈteɪʃn] – реализация, осуществление
in order to – для того, чтобы
investigation [ɪnvestɪˈgeɪʃn] – исследование
maintenance [ˈmeɪntənəns] –поддержание, обслуживание
obtain v. [əbˈteɪn] – получать, достигать
provide v. – предоставлять, обеспечивать
reliable [rɪˈlaɪəbl] – надёжный
software [ˈsɒftweər]–программное обеспечение
stakeholder [ˈsteɪkhəʊldər] – заинтересованная сторона
traceability [treɪsəˈbɪlɪtɪ] – прослеживаемость
update v. [ʌpˈdeɪt] – обновлять, модернизировать
verification [verɪfɪˈkeɪʃn] – проверка

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:

83
architecture, disciplined, engineering, quantifiable, repeatedly, scientific.

II. Find in the above text English equivalents for the following words and word
combinations and write them out:
в течение продолжительности цикла системы; количественный подход; раз–
работка программного обеспечения (программная инженерия); испытываемый;
неоднократно обновляя его; сопровождение программного обеспечения;
операционные системы на уровне программного обеспечения; подробное
создание; общие вычислительные приложения; чтобы предоставить
информацию заинтересованным сторонам; экономически эффективная
поддержка программного обеспечения; проводимое техническое обследование;
можно разделить на несколько групп дисциплин; улучшение процесса
продолжительности цикла программного обеспечения.

III. Answer the following questions using word combinations from Exercise II:
1. What is software engineering? 2. What typical formal definitions of software
do you know? Name some of them. 3. What kind of sub-disciplines can software
engineering be divided into? 4. Does software construction deal with the detailed
creation of working, meaningful software? 5. Whom does software testing p rovide
with information about the quality of the product or service under test? 6. What does
software engineering process deal with? 7. Is software evolution the process of
developing software initially and repeatedly updating it for various reasons?

IV. Retell the above text using as many of the words and word combinations from
Exercise II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete and translate:


Word-building: to abate v. + ment = abatement n.

to appoint, to argue, to base, to commit, to depart, to embarrass, to endorse, to


fulfil, to govern, to impair, to improve, to punish, to require, to settle.

II. Find in the above text and copy out phrases containing nouns with the suffix -
ment, translate them.

III. Fill in the prepositions of or for:


1. Software engineering process deals with improvement….the software life
cycle process itself. 2. Many companies sponsor internships ….. students wishing to
pursue careers in information technology. 3. Software engineering is the study and an
application ….. engineering to the design, development and maintenance …. software.
4. Legal requirements ….. the licensing or certification …. professional software
engineers vary around the world. 5. Software design usually involves creating
algorithms, or instructions …. the computer. 6. He conducted technical investigation
84
to provide stakeholders with information about the quality ….. the product under test .
7. This software must be updated ….. various reasons.

IV. Write down all possible questions to the following sentence.


Software configuration management accomplishes the identification of the
configuration of a system at distinct points in time.

V. Choose the proper verb form and translate the sentences.


1. Computer software continues ….. the single most important technology on the
world stage. 2. The software team chooses the task set ….. on p roblem and p roject
characteristics. 3. That software is ….. to damage or disable computers and computer
systems. 4. We always ….. stakeholders with information about the quality of the
product or service under test. 5. Each test case is executed and compared to …..
results. 6. Risk management usually makes use of the results of many ….. processes.
7. Such research is often ….. in the area of global software development.
(Missing verbs: provide, carried out, to be, supporting, based, expected,
intended)

VI. Complete the text with the words from the box.

primary data chip processors processing generally instructions


memory

Central processing unit


The central ….. unit is the part of a computer that interprets and carries out …..
provided by the software. It tests and manipulates ….., and transfers information to
and from other components, such as the working ….., disk drive, monitor, and
keyboard. The central processing units of personal computers are ….. imp lemented
on a single ….. , called a microprocessor.
In the CPU, the ….. components are the ALU (Arithmetic Logic Unit) that
performs mathematical, logical, and decision operations and the CU (Control Unit)
that directs all of the ….. operations.
(From Wikipedia, the free encyclopedia)

TALKING TOPICS:
I. Comment upon the following statement. Share opinions.
Science is the most important and the most necessary element of life.

II. What advice would you give to someone who wanted to create meaningful
software?

85
Text 2
COMPUTER SOFTWARE IN SCIENCE AND MATHEMATICS
Read and translate the text.

Scientific laws give algorithms, or procedures for determining how systems beha-
ve. The computer program is a medium in which the algorithms can be expressed and
applied. Physical objects and mathematical structures can be represented as numbers
and symbols in a computer, and a program can be written to manipulate them
according to the algorithms. When the computer program is executed, it causes the
numbers and symbols to be modified in the way specified by the scientific laws. It
thereby allows the consequences of the laws to be deduced.
Executing a computer program is much like performing an exp eriment. Unlike
the physical objects in a conventional experiment, however, the objects in a comp uter
experiment are not bound by the laws of nature. Instead they follow the laws
embodied in the computer program, which can be of any consistent form.
Computation thus extends the realm of experimental science: it allows experiments to
be performed in a hypothetical universe. Computation is emerging as a major new
approach to science, supplementing the long-standing methodologies of theory and
experiment.
A computer program that embodies the laws of motion for an electron in a
magnetic field can be used to perform computer experiments. Such exp eriments are
more flexible than conventional laboratory experiments.
The magnetic field under investigation is specified by a set of numbers stored in a
computer. The computer program applies an algorithm that simulates the motion of
the electron by changing the numbers representing its position at successive times.
Computers are now fast enough for the simulations to be carried out quickly, and so it
is practical to explore a large number of cases. The investigator can interact directly
with the computer, modifying various aspects of a p henomenon as new results are
obtained. The usual cycle of the scientific method, in which hypotheses are formulated
and then tested, can be followed much faster with the aid of the computer.
(By Stephen Wolfram)

Commentary
Stephen Wolfram has been a member of the Institute for Advanced Study at
Princeton since 1982. Born in London, he was educated at Eton College and the
University of Oxford and then came to the USA to study at the California Institute of
Technology, where he received a Ph. D. in theoretical physics in 1979.

VOCABULARY
apply v. [əˈplaɪ] – применять
bind (bound; bound) v. – связывать
carry out v. [ˈkærɪ aʊt] – выполнять
cause v. [kɔːz] – вызывать, быть причиной
consistent – последовательный, совместимый

86
conventional [kənˈvenʃənl] – обычный
deduce v. [dɪˈdjuːs] – выводить, делать вывод
embody v.– воплощать
execute v. [ˈeksɪkjuːt] – выполнять
flexible [ˈfleksəbl] – гибкий
law [lɔː] – закон
manipulate v. [məˈnɪpjʊleɪt] – манипулировать, умело обращаться
procedure – процедура, образ действий
realm – область, сфера
scientific [saɪənˈtɪfɪk] – научный
thereby [ˈðɛəˈbaɪ] – тем самым
unlike [ˈʌnˈlaɪk] – в отличие от

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


algorithm, consequences, hypothetical, procedure, realm, successive.

II. Find in the above text English equivalents for the following word
combinations and write them out:
с помощью компьютера; обусловленный научными законами; моделирует
движение; могут быть представлены в виде цифр и символов; основной новый
подход; последствия законов; законы, воплощённые в компьютерной
программе; исследуемое магнитное поле; в соответствии с алгоритмами; в
последующие моменты времени; выполнять компьютерные эксперименты;
символы, которые нужно изменить таким образом; давние методологии.

III. Answer the following questions using word combinations from Exercise II:
1. What do scientific laws give algorithms for? 2. How can physical objects and
mathematical structures be represented? 3. When does the comp uter p rogram cause
the numbers and symbols to be modified in the way specified by the scientific laws? 4.
Why is executing a computer program much like performing an experiment? 5. What
is emerging as a major new approach to science? 6. Which experiments are more
flexible than conventional laboratory experiments? 7. What is the magnetic field under
investigation specified by? 8. Why is it practical to explore a large number of cases?
9. What can the usual cycle of the scientific method, in which hypotheses are
formulated and then tested, be followed much faster with?

IV. Fill in the gaps with the words and expressions from the text.
1. Such experiments are ….. than conventional laboratory exp eriments. 2. The
computer program is a medium in which the algorithms can ….. . 3. The magnetic
field ….. is specified by a set of numbers stored in a computer. 4. The objects in a
computer experiment are not ….. . 5. The investigator ….. , modifying various aspects
87
of a phenomenon as new results are obtained. 6. When the computer program is
executed, it causes the numbers and symbols to be modified …. .

V. Make up your own sentences or situations with the following phrases:


to execute a computer program, a major new approach to, to perform computer
experiments, by a set of numbers, with the aid of the computer, to apply the
algorithms, to interact directly with the computer.

VI. Retell the text using as many of the word combinations from Exercise II as
you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the following sentences using the words from the box:

to perform application computer-based iteratively reused software


approach

1. Software has become the key element in the evolution of ….. systems and
products. 2. A software component can be ….. in many different programs. 3.
Computation is establishing a new …. to many problems in science. 4. The
investigator used this computer program ….. computer experiments. 5. The p rocess
consists of the activities to be done ….. . 6. During the early days of …. ,
programming was viewed as an art form. 7. He was a pioneer of the …. of the
operator theory to quantum mechanics.

II. Study the grammar table and learn.

Simple (Indefinite) Infinitive Passive is made by using the verb to be and the Past
Participle – to be written, to be done, to be used.
The particle "to" is omitted after modal verbs – can be done, must be used.

III. Translate the following sentences containing the Simple Infinitive Passive.
1. The detailed description has to be typed. 2. You always need to be told what
to do. 3. This page needs to be checked again. 4. Risk management activity must be
performed by all levels of the project to ensure adequate coverage of all potential
problem areas. 5. Many causes of a software affliction can be traced to a mythology
that arose during the early history of software development. 6. These characteristics
can be determined only after thorough communication between customer and
developer. 7. The amount of time spent on productive development effort can be
reduced. 8. We have already determined which potential problems need to be avoided.
9. Research to be carried out in the area of global software development will highlight
the benefits and problems associated with the complex activity.

88
IV. Find in the above text the sentences with the infinitive passive and translate
them.
V. Write down all possible questions to the following sentence.
These core principles can be applied to the framework, and by extension, to
every software process.

VI. Find in the above text and copy out sentences in which linking expressions
however and thus are used. Translate the sentences with them. Say which of these
linking expressions:
a) expresses a contrast?
b) introduces results and conclusions?

VII. Make your own sentences with thus and however using words and word
combinations of the topical vocabulary.

TOPICS FOR DISCUSSION:

I. Prove that executing a computer program is much like performing an


experiment.
II. If you choose a scientific career, what would you like to become and
why?
III. Say how a good knowledge of English can be helpful in your future
career.

Text 3
SOFTWARE
Read and translate the text.

In 1970, less than 1 percent of the public could have intelligently described what
"computer software" meant. Today, most professionals and many members of the
public at large feel that they understand software.
Software is (1) instructions (computer programs) that when executed provide
desired function and performance, (2) data structures that enable the programs to
adequately manipulate information, and (3) documents that describe the operation and
use of the programs.
To gain an understanding of software (and ultimately an understanding of
software engineering), it is important to examine the characteristics of software that
make it different from other things that human beings build. When hardware is built,
the human creative process (analysis, design, construction, testing) is ultimately
translated into a physical form. If we build a new computer, our initial sketches,
formal design drawings, and bread-boarded prototype evolve into a physical p roduct
(chips, circuit boards, power supplies, etc.). Software is a logical rather than a physical
system element. Therefore, software has characteristics that are considerably different
than those of hardware: 1. Software is developed or engineered; it is not manufactured
89
in the classical sense. Although some similarities exist between software development
and hardware manufacture, the two activities are fundamentally different.
2. Software doesn't wear out but it deteriorates. During its life, software will
undergo change (maintenance). When a hardware component wears out, it is replaced
by a spare part. There are no software spare parts. Every software failure indicates an
error in design or in the process through which design was translated into machine
executable code. Therefore, software maintenance involves considerably more
complexity than hardware maintenance.
Although the industry is moving toward component-based assembly, most
software continues to be custom built. Consider the manner in which the control
hardware for a computer-based product is designed and built. The design engineer
draws a simple schematic of the digital circuitry, does some fundamental analysis to
assure that proper function will be achieved, and then goes to the shelf where catalogs
of digital components exist. Each integrated circuit (called an IC or a chip) has a p art
number, a defined and validated function, a well-defined interface, and a standard set
of integration guidelines. After each component is selected, it can be ordered off the
shelf. As an engineering discipline evolves, a collection of standard design
components is created. Standard screws and off-the-shelf integrated circuits are only
two of thousands of standard components that are used by mechanical and electrical
engineers as they design new systems. The reusable components have been created so
that the engineer can concentrate on the truly innovative elements of a design.
In the hardware world, component reuse is a natural part of the engineering
process. In the software world, it is something that has only begun to be achieved on a
broad scale. A software component should be designed and implemented so that it can
be reused in many different programs. Modern reusable components encapsulate both
data and the processing applied to the data, enabling the software engineer to create
new applications from reusable parts. For example, today's graphical user interfaces
are built using reusable components that enable the creation of graphics windows, pull
–down menus, and a wide variety of interaction mechanisms. The data structure and
processing detail required to build the interface are contained with a library of
reusable components for interface construction. Software Applications Software may
be applied in any situation for which a pre-specified set of procedural steps (i.e., an
algorithm) has been defined. Information content and determinacy are important
factors in determining the nature of a software application. Content refers to the
meaning and form of incoming and outgoing information. For example, many
business applications use highly structured input data (a database) and produce
formatted “reports.” Software that controls an automated machine (e.g., a numerical
control) accepts discrete data items with limited structure and produces individual
machine commands in rapid succession. Information determinacy refers to the
predictability of the order and timing of information. An engineering analysis program
accepts data that have a predefined order, executes the analysis algorithm(s) wi thout
interruption, and produces resultant data in report or graphical format. Such
applications are determinate. A multiuser operating system, on the other hand, accepts
inputs that have varied content and arbitrary timing, executes algorithms that can be

90
interrupted by external conditions, and produces output that varies as a function of
environment and time. Applications with these characteristics are indeterminate.
(by Roger S. Pressman)

VOCABULARY
although – несмотря на то, что
assembly [əˈsemblɪ] – сборка, блок
assure v. [əˈʃuə] – гарантировать, обеспечивать
bread-boarded [bred ˈbɔːdɪd] – макетированный (сделанный с помощью
макета)
chip – чип; микросхема
circuit board [ˈsɜːkɪt bɔːd] – печатная плата
considerably [kənˈsɪdərəblɪ] – значительно
deteriorate v. – ухудшаться
determinacy [dɪˈtɜːmɪnəsɪ] – определённость, ясность
determinate [dɪˈtɜːmɪnɪt] – определённый; установленный
drawing [ˈdrɔːɪŋ] – чертёж
enable v. [ɪˈneɪbl] – давать возможность
encapsulate v. [ɪnˈkæpsjʊleɪt] – инкапсулировать; выделить в самостоятель-
ный элемент
engineer v. [enʤɪˈnɪə] – проектировать
evolve v. [ɪˈvɔlv] – развиваться
failure – отказ, неудача, сбой
gain v. – получать
maintenance [ˈmeɪntənəns] – поддержание, обслуживание
manipulate v. [məˈnɪpjʊleɪt] – манипулировать, воздействовать
manufacture v. [mænjʊˈfækʧə] – производить, изготавливать; n. производство,
изготовление
power supply [ˈpaʊə səˈplaɪ] – источник питания
screw [skruː] – винт, шуруп
sketch – эскиз
succession – последовательность
ultimately [ˈʌltɪmɪtlɪ] – в конечном счёте
udergo v. (underwent, undergone) – подвергаться чему-л., испытывать что-л.
wear out v. [wɛə aʊt] – изнашиваться, состариться

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


algorithm, although, circuitry, desired, deteriorate, failure, succession, engineer.

91
II. Find in the above text English equivalents for the following word
combinations and write them out:
макетированный прототип; входящая и исходящая информация; во всём
объёме; предварительно заданный набор; производит проистекающие данные в
отчёте; компоненты многократного использования; имеющиеся в наличии
интегральные схемы (“с полки”); в быстрой последовательности; может быть
прерван из-за внешних условий; чтобы получить представление о программном
обеспечении; в классическом смысле; будет претерпевать изменения; цифр овая
схема; предсказуемость последовательности и синхронизации информации;
программные запчасти; исполняемый машиной код; быть построенным по
индивидуальному проекту; без прерывания; определённая и подтверждённая
функция; стандартные винты; ошибка в проекте; произвольный выбор вр емени;
выпадающее меню; разработчик программного обеспечения; выполняет
аналитический алгоритм (алгоритмы).

III. Answer the following questions using the word combinations from Exercise
II:
1. Do most professionals and many members of the public at large feel that they
understand software today? 2. What do instructions provide? 3. What does software
consist of? 4. Do data structures enable the programs to adequately manipulate
information? 5. Why is it important to examine the characteristics of software? 6.
When is the human creative process (analysis, design, construction, testing) t ranslated
into a physical form? 7. Is software a logical or a physical system element? 8. What is
the difference between software development and hardware manufacture? 9. What
happens when a hardware component wears out? 10. Why does software maintenance
involve considerably more complexity than hardware maintenance? 11. What does
each integrated circuit (called an IC or a chip) have? 12. Where is the component
reuse a natural part of the engineering process? 13. Can a software component be
reused in many different programs? 14. What are important factors in determining the
nature of a software application? 15. What does information determinacy refer to? 16.
What applications are determinate? 17. What applications are characterized as
indeterminate?

IV. Find in the above text synonyms of the following words:


certain; installation; to worsen; finally; draft; sequence; to p ermit; to design; to
progress; to get; available.

V. Outline the main ideas of the above text and write a summary.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out phrases containing adverbs with the suffix -
ly, translate them.

II. Study the grammar table and learn.


92
Rather than expresses comparative preference for the first of two paired
(parallel) elements.

III. Translate the following sentences having rather than.


1. I wanted to be an engineer rather than an investigator. 2. He walked rather
than drove to his office. 3. They worked carelessly rather than carefully on building
a new computer. 4. Edward went to jail rather than pay his parking fines. 5. Can
you come over on Wednesday rather than Thursday? 6. This p rogram p rovides all
project personnel with the freedom to identify important issues rather than p ossible
risks to the program. 7. It is better to continue rather than to wait. 8. You rather than
Daniel will pass this test.

IV. Find in the above text and copy out the sentence containing rather than and
translate it.

V. Find in the above text and copy out sentences in which linking expressions
therefore and although are used. Translate the sentences with them. Say which of
these linking expressions:
a) expresses a contrast?
b) introduces results and conclusions?

VI. Study the grammar table and learn.

The perfect infinitive is used after the modal verbs could, might, ought,
should, would and needn’t to refer to unreal situations.

VII. a) Find in the above text and copy out the sentence containing the Perfect
Infinitive with a modal verb.
b) Make your own sentences with the Perfect Infinitive after the modal verbs
using words and word combinations of the topical vocabulary.

TOPICS FOR DISCUSSION:

I. What purposes can software be developed for?

II. You consult your friend about a software component. What can you say?

93
Text 4
TYPES OF SOFTWARE
Read and translate the text.

System software is a collection of programs written to service other p rograms.


Some system software (e.g., compilers, editors, and file management utilities )
processes complex, but determinate, information structures. Other systems
applications (e.g., operating system components, drivers) process largely
indeterminate data. In either case, the system software area is characterized by heavy
interaction with computer hardware; heavy usage by multiple users; concurrent
operation that requires scheduling, resource sharing, and sophisticated process
management; complex data structures; and multiple external interfaces.
Software that monitors, analyzes and controls real-world events as they occur is
called real time software. Elements of real-time software include a data gathering
component that collects and formats information from an external environment, an
analysis component that transforms information as requir ed by the application, a
control/output component that responds to the external environment, and a monitoring
component that coordinates all other components so that real-time response (typically
ranging from 1 millisecond to 1 second) can be maintained.
Business information processing is the largest single software application area.
Discrete "systems" (e.g., payroll, accounts receivable/payable, inventory) have
evolved into management information system (MIS) software that accesses one or
more large databases containing business information. Applications in this area
restructure existing data in a way that facilitates business operations or management
decision making. In addition to conventional data processing application, business
software applications also encompass interactive computing (e.g., point of-sale
transaction processing).
Engineering and scientific software has been characterized by "number
crunching" algorithms. However, modern applications within the engineering and
scientific area are moving away from conventional numerical algorithms. Computer-
aided design, system simulation, and other interactive applications have begun to take
on real-time and even system software characteristics.
Embedded software. Intelligent products have become commonplace in nearly
every consumer and industrial market. Embedded software resides in read-only
memory and is used to control products and systems for the consumer and industrial
markets. Embedded software can perform very limited and esoteric functions (e.g.,
keypad control for a microwave oven) or provide significant function and control
capability (e.g., digital functions in an automobile such as fuel control, dashboard
displays, and braking systems).
Personal computer software. Word processing, spreadsheets, computer
graphics, multimedia, entertainment, database management, p ersonal and business
financial applications, external network, and database access are only a few of
hundreds of applications.
Web-based software. The Web pages retrieved by a browser are software that
incorporates executable instructions (e.g., CGI, HTML, Perl, or Java), and data. One
94
of the most comprehensive libraries of shareware/freeware can be found at
www.shareware.com. In essence, the network becomes a massive computer providing
an almost unlimited software resource that can be accessed by anyone with a modem.
Artificial intelligence software. Artificial intelligence (AI) software makes use
of non-numerical algorithms to solve complex problems that are not amenable to
computation or straightforward analysis.
(By Roger S. Pressman)

Commentary
Freeware: software that is available free of charge.
Shareware: software that is available free of charge and often distributed
informally for evaluation, after which a fee may be requested for continued use.

VOCABULARY
access v. [ˈækses] – иметь доступ
amenable [əˈmiːnəbl] – поддающийся
artificial [ɑːtɪˈfɪʃəl] – искусственный
computation [kɔmpjuːˈteɪʃn] – вычисление
concurrent [kənˈkʌrənt] – одновременный, согласованный
conventional [kənˈvenʃənl] – обычный; обусловленный
dashboard – панель приборов
determinate – детерминированный, определённый
driver – управляющая программа
embed v. [ɪmˈbed] – вставлять, встраивать
encompass v. [ɪnˈkʌmpəs] – охватывать
evolve v. – развиваться
external – внешний
largely [ˈlɑːʤlɪ] – во многом, в значительной степени
maintain v. – поддерживать
multiple – множественный, многократный
number crunching – перемалывание чисел
occur v. [əˈkɜː] – происходить, встречаться
payroll [ˈpeɪrəʊl] – платёжная ведомость
reside v. [rɪˈzaɪd] – быть присущим
respond to v. – реагировать на
response – ответ; отклик, реакция
retrieve v. – извлекать
scheduling – планирование
sophisticated [səˈfɪstɪkeɪtɪd] – сложный
spreadsheet – электронная таблица
utility [juːˈtɪlɪtɪ] – утилита, сервисная программа

95
word processing [wɜːd ˈprəʊsesɪŋ] – обработка текстов

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


dashboard, determinate, either, external, required, retrieved, scheduling.

II. Find in the above text English equivalents for the following word
combinations and write them out:
в любом случае; искусственный интеллект; облегчает деловые операции;
обрабатывает неопределённые данные; ответ в режиме реального времени;
присущ памяти «только для чтения»; сильное взаимодействие с компьютер ной
техникой; интерактивные вычисления; нечисловые алгоритмы; выполнять очень
ограниченные и эзотерические функции; исполняемые команды; стали обычным
явлением; внешняя окружающая среда; встроенное программное обеспечение;
обусловленные числовые алгоритмы; прямой анализ; обеспечить существенную
функцию.

III. Write some problem questions to the above text for class discussion.

IV. Fill in the gaps with the words and expressions from the text.
1. Modern applications …… are moving away from conventional numerical
algorithms. 2. ….. , the system software area is characterized by heavy interaction
with computer hardware; heavy usage by multiple users; concurrent op eration . 3. In
essence, the network becomes a massive computer providing an almost unlimited
software resource ….. . 4. Intelligent products ….. in nearly every consumer and
industrial market. 5. Software that monitors, analyzes and controls real-world events
as they occur ….. . 6. Discrete "systems" have evolved into management information
system software that accesses one or more large databases ….. .
V. Retell the above text using as many of the word combinations from Exercise II
as you can.

VI. Translate the following definitions and memorize them.


Processing: Execution a number of operations (partially ordered in tim e) up on
data, for example, handling, sorting, computing.
Software: A set of programs, procedures and possibly associated documentation
concerned with the operation of data processing system.
Program: A series of instructions or statements in a form accepta ble to a
computer, prepared in order to achieve a certain result.

VOCABULARY AND GRAMMAR EXERCISES

I. Use the following base words to make adjectives with the suffix –able and
translate them:

96
Word-building: read v. + able = readable adj.
A verb can be made into an adjective by adding the suffix –able.
(the quality of being able to be or having to be)

to adapt, to approach, to change, to check, to excite, to move, to modify, to


present, to prevent, to rely, to suit, to teach, to vary.

II. Find in the above text and copy out phrases containing adjectives with the
suffix -able, translate them.

III. Fill in the gaps with the right forms of the verbs in brackets to complete
the following English sentences in Present Perfect Tense.
1. Our class …….. 3 grammar quizzes so far this semester. (have)
2. We …… him since he arrived to our city. (know)
3. This order…… to many misunderstandings. (lead)
4. She …… a new job in this multimedia company. (find)
5. Our team ……. the first prize. (win)
6. We …….. our holiday yet. (not / plan)
7. I ….. a long letter from a financial agency this week. (get)
8. I think the manager ….. the meeting. (leave)
9. The teacher …… my exercise over and over. (look)
10. …. he …….. to the design engineer? (speak )

IV. Translate the following sentences paying special attention to Present


Perfect Passive tense form.
1. Technical investigation has already been conducted to p rovide stakeholders
with information about the quality of the service under test. 2. His name has been
written on my book for a long time. 3. The key concept of information hiding has
been introduced lately to help programmers deal with the ever increasing comp lexity
of software systems. 4. I have been given the necessary business information. 5. The
task hasn’t been accomplished by him yet. 6. The mail hasn’t been sent in time. 7.
Wrong telephone numbers have been written down. 8. I haven’t been told anything
about characteristics of a system.

V. Read the above text and find the sentences with Present Perfect Active and
Present Perfect Passive tense forms. Translate them into your language.

VI. Write down all possible questions to the following sentence.


An unlimited software resource can be accessed by anyone with a modem.

SPEAKING:

I. Develop the situation:

97
Your friend studies the humanities. He believes that all students of sciences are
narrow-minded; the subjects they study are boring, their future work won’t be
really creative.
Argue the opposite viewpoint.

Text 5
TURING MACHINE
Read and translate the text.

A Turing machine is a theoretical computing machine invented by Alan Turing


in 1936 to serve as an idealized model for mathematical calculation. He called it an
a–machine (automatic machine).
It is an abstract machine that manipulates symbols on a strip of a tape according
to a table of rules; to be more exact, it is a mathematical model that defines such a
device. A Turing machine consists of a line of cells known as a "tape" that can be
moved back and forth, an active element known as the "head" that possesses a
property known as "state" and that can change the property known as "color" of the
active cell underneath it, and a set of instructions for how the head should modify the
active cell and move the tape (Wolfram 2002). At each step, the machine may modify
the color of the active cell, change the state of the head, and then move the tap e one
unit to the left or right.
The machine operates on an infinite memory tape divided into cells. The
machine positions its head over a cell and "reads" (scans) the symbol there. Then p er
the symbol and its present place in a finite table of user-specified instructions the
machine (i) writes a symbol (e.g. a digit or a letter from a finite alp habet) in the ce ll
(some models allowing symbol erasure and/or no writing), then (ii) either moves the
tape one cell left or right (some models allow no motion, some models move the
head), then (iii) (as determined by the observed symbol and the machine's place in the
table) either proceeds to a subsequent instruction or halts the computation.
A Turing machine is a general example of a CPU that controls all data
manipulation done by a computer, with the canonical machine using sequential
memory to store data. More specifically, it is a machine (automaton) capable of
enumerating some arbitrary subset of valid strings of an alp habet ; these strings are
part of a recursively enumerable set.
The Turing machine is capable of processing an unrestricted grammar, which
further implies that it is capable of robustly evaluating first-order logic in an infinite
number of ways.
(From Wikipedia, the free encyclopedia)

VOCABULARY
arbitrary [ˈɑːbɪtrərɪ] – произвольный
automaton [ɔːˈtɔmətən] – автомат (машина)
be capable of – быть способным к

98
cell [sel] – ячейка
enumerate v. [ɪˈnjuːməreɪt] – перечислять
erasure [ɪˈreɪʒə] – стирание
halt v. [hɔːlt] – остановить, прекратиться
imply v. [ɪmˈplaɪ] – подразумевать
invent v. [ɪnˈvent] – изобрести
manipulate v. [məˈnɪpjʊleɪt] – манипулировать, управлять, обрабатывать,
оперировать
modify v. [ˈmɔdɪfaɪ] – изменять, модифицировать
possess v. [pəˈzes] – обладать
proceed v. [prəˈsiːd] – продолжать
property – свойство
recursively – рекурсивно
robustly [rəʊˈbʌstlɪ] – надёжно
scan v. [skæn] – сканировать; бегло просматривать
sequential [sɪˈkwenʃəl] – последовательный
string – строка
strip – полоса
subsequent [ˈsʌbsɪkwənt] – последующий
subset [ˈsʌbset] – подмножество
underneath [ʌndəˈniːθ] – под; внизу
valid [ˈvælɪd] – допустимый

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


automatic, enumerating, idealized, property, recursively, robustly, Turing.

II. Find in the above text English equivalents for the following word
combinations and write them out:
обладает свойством; манипулирует символами; допустимые строки; можно
перемещать вперёд и назад; математический расчёт; обработка данных, осуще-
ствлённая с помощью компьютера; рекурсивно перечислимое множество;
переместить ленту; с использованием последовательной памяти; линия ячеек;
произвольное подмножество допустимых строк алфавита; влево или вправо;
обработка неограниченной грамматики; в конечной таблице; изменить
положение головки; логика первого порядка.

III. Answer the following questions using word combinations from Exercise II:
1. Who was a Turing machine invented by? 2. What did Alan Turing call it? 3.
What does this abstract machine manipulate? 4. What does a Turing machine consist

99
of? 5. What does an active element known as the "head” possess? 6. May the machine
modify the color of the active cell and change the state of the head at each step? 7.
What does the machine operate on? 8. How does the machine scan the symbol in a
cell? 9. What is the principle of its operation? 10. What controls all data manipulation
done by a computer? 11. Is the Turing machine capable of processing an unrestricted
grammar?

IV. Explain in English the meaning of:


mathematical calculation, an infinite memory, a set of instructions.

V. Fill in the gaps with the words and expressions from the text.
1. It is a machine (automaton) capable of enumerating some arbitrary subset …. .
2. The machine operates on an infinite memory tape …. . 3. Then per the symbol and
its present place ….. the machine writes a symbol in the cell. 4. These strings are …..
a recursively enumerable set. 5. A Turing machine is a general example of a CPU that
controls ….. done by a computer.

VI. Discuss Turing’s contribution to science.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the text with the words from the box.

efficiently another computed motivating in terms of mathematical

1. The technical term computable corresponds to what can be …… by a Turing


machine. 2. It should be emphasized that the Turing machine is a ….. abstraction and
not a physical device. 3. A transition function specifies the next state ….. the
current state symbol currently pointed to by the head. 4. A probabilistic Turing
machine ….. simulates any realistic model of computation. 5. Turing’s thesis is very
useful in ….. the importance of quantum computing. 6. Simulations of one comp uter
by …. also involve a trade-off between resources of different kinds, such as time and
space.

II. a) Find in the above text and copy out phrases with the past participle in the
function of an attribute and translate them.
b) Make your own sentences with the past participle in the function of an
attribute, using word combinations and phrases of the topical vocabulary.

III. Find in the above text and copy out the sentence in which the phrase
preposition according to is used. Make your own sentence with it.

IV. Choose the correct preposition to complete each of the following sentences:
with on into of

100
1. The system simulation depends ….. system software characteristics. 2. I will
provide you ….. whatever you need. 3. Software engineering is generally divided
….. several sub-disciplines. 4. The machine operates on an infinite memory tape
divided ….. cells. 5. System software consists ….. operating systems and any
program that supports application software. 6. Software provides hardware …..
instructions and data. 7. Software is often divided ….. application software
and system software. 8. Hardware consists ….. the physical parts of a computer,
such as its keyboard, screen, processor, and memory chips. 9. Software engineering
process provides us ….. the implementation, assessment, measurement, and
improvement of the software life cycle process itself. 10. His work entirely dep ends
….. me.

V. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Машина Тьюринга представляет собой простейшую вычислительную
машину с линейной памятью. 2. Алгоритм для машины Тьюринга определяет
правила перехода для управляющего устройства. 3. Алан Тьюринг стр емился
описать наиболее примитивную модель механического устройства, которая
имела бы те же основные возможности, что и компьютер. 4. Машина
Тьюринга является вычислительным устройством, состоящим из головки
чтения/записи с бумажной лентой, проходящей через него. 5. Управляющее
устройство может перемещаться влево и вправо по ленте, читать и записывать
в ячейки символы некоторого конечного алфавита. 6. Машина Тьюринга – это
одно из самых захватывающих интеллектуальных открытий 20-го века. 7. Это
простая и полезная абстрактная модель вычислений (компьютерных и
цифровых), которая является достаточно общей для воплощения любой
компьютерной задачи.

TALKING TOPICS:
I. Name the spheres of our everyday life where the progress of science and
technology is most keenly felt.

II. Comment on the following statement:


Today’s problems are a chance and a challenge for the young generation.

Text 6
HISTORY OF SOFTWARE ENGINEERING
Read and translate the text.

When the first digital computers appeared in the early 1940s, the instructions to
make them operate were wired into the machine. Practitioners quickly realized that
this design was not flexible and came up with the "stored program architecture" or von
Neumann architecture. Thus the division between "hardware" and "software" began
with abstraction being used to deal with the complexity of computing.
101
Programming languages started to appear in the 1950s and this was also another
major step in abstraction. Major languages such as FORTRAN, ALGOL, and COBOL
were released in the late 1950s to deal with scientific, algorithmic, and business
problems respectively. David Parnas introduced the key concep t of modularity and
information hiding in 1972 to help programmers deal with the ever increasing
complexity of software systems.
The term "software engineering", coined first by Anthony Oettinger and then
used by Margaret Hamilton, was used in 1968 as a title for the world's first conference
on software engineering. The conference was attended by international experts on
software who agreed on defining best practices for software grounded in the
application of engineering. The result of the conference is a rep ort that defines how
software should be developed.
From its beginnings in the 1940s, writing software has evolved into a profession
concerned with how best to maximize the quality of software and of how to create it.
Quality can refer to how maintainable software is, to its stability, speed, usability,
testability, readability, size, cost, security, and number of flaws or "bugs", as well as
to less measurable qualities like elegance, conciseness, and customer satisfaction,
among many other attributes.
The discipline of software engineering was created to address poor quality of
software, get projects exceeding time and budget under control, and ensure that
software is built systematically, rigorously, measurably, on time, on budget, and
within specification. Engineering already addresses all these issues, hence the same
principles used in engineering can be applied to software.
(From Wikipedia, the free encyclopedia)

Commentary
John von Neumann [vɒn ‘nɔɪmən] (December 28, 1903 – February 8, 1957)
was a Hungarian-American pure and applied mathematician, physicist, inventor, and
polymath. He made major contributions to a number of fields, including mathematics
(foundations of mathematics, functional analysis, geometry, topology, and numerical
analysis), physics (quantum mechanics, hydrodynamics, fluid dynamics and quantum
statistical mechanics), economics (game theory), computing (Von Neumann architec -
ture, linear programming, self-replicating machines, ), and statistics.
David Lorge Parnas (born February 10, 1941) is a Canadian early p ioneer of
software engineering, who developed the concept of information hiding in modular
programming, which is an important element of object-oriented programming today.
Anthony G. Oettinger is Professor of Applied Mathematics and Professor of
Information Resources Policy. He is Chairman of the Program on Information
Resources Policy. He belongs to the Council on Foreign Relations and is a Trustee of
the Charles Babbage Foundation. He founded the Computer Science and Engineering
Board of the National Academy of Sciences and chaired it from 1967-73.

VOCABULARY
appear v. [əˈpɪə] – появляться

102
apply v. [əˈplaɪ] – применять, употреблять
as well as – так же как; а также
attend v. [əˈtend] – посещать
be wired into v. [ˈwaɪəd] – быть подключённым в, быть соединенным
проводом
bug – ошибка; технический дефект
coin v. – придумывать
complexity [kəmˈpleksɪtɪ] – сложность
conciseness [kənˈsaɪsnɪs] – сжатость, краткость
digital [ˈdɪʤɪtl] – цифровой
division [dɪˈvɪʒən] – разделение
evolve into v. [ɪˈvɔlv] – развиваться в
flaw – недостаток, изъян
flexible [ˈfleksəbl] – гибкий
hardware – аппаратные средства; аппаратное обеспечение
modularity [mɒdjʊˈlærɪtɪ] –модульность
release v. [rɪˈliːs] – выпускать
respectively [rɪsˈpektɪvlɪ] – cooтветственно
rigorously [ˈrɪgərəslɪ] – тщательно, строго
security [sɪˈkjʊərɪtɪ] – безопасность

EXERCISES TO THE TEXT

I. Spell and transcribe the following words:


algorithmic, expert, flaw, language, measurable, quality, wired.

II. Find in the above text English equivalents for the following word
combinations and write them out:
языки программирования стали появляться; для решения низкого качества
программного обеспечения; чтобы заставить их работать; количество дефектов
или ошибок; утончённость, лаконичность, и удовлетворённость клиентов; ещё
один важный шаг; сложность вычислений; менее измеримые качества; котор ые
согласились на определении лучших методов; придуманный впервые.

III. Answer the following questions using the word combinations from Exercise II:
1. When did the first digital computers appear? 2. What did practitioners realize
when the first digital computers appeared? 3. What languages were released in the late
1950s? 4. Who introduced the key concept of modularity and information hiding in
1972? 5. Who was the term "software engineering" coined first by? 6. When has
writing software evolved into a profession? 7. Why was the discipline of software
engineering created?

103
IV. Fill in the gaps with the words and expressions from the text.
1. The term "software engineering" was used by …. in 1968 as a title for the
world's first conference on software engineering. 2. The result of the conference is a
report that defines ….. . 3. Practitioners quickly realized that …. and came up with the
"stored program architecture" or von Neumann architecture. 4. Major languages ….
were released in the late 1950s. 5. The division ….. began with abstraction being used
to deal with the complexity of computing.

V. Retell the above text using as many of the word combinations from Exercise II
as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete the sentences with the words from the box.

updating software engineers programming information screen


installed

1. Our company is looking for ….. who bring fresh ideas from all areas,
including information retrieval, distributed computing, large-scale system design,
data storage, security, and natural language processing. 2. Their products need to
handle …… at massive scale, and extend well beyond web search. 3. Once the
software has been ……. on to your computer hard drive, the program can be used
anytime by finding the program on the computer. 4. ….. a program can be done
using software patches. 5. A computer programmer or several computer
programmers write the instructions using a ….. language that tell the software how
to work. 6. Software engineering can be defined as the study and application of
engineering to design, development and maintenance of …. . 7. Since software
engineering deals with computers, the software engineer should be able to spend
time in front of a computer ….. without getting distracted.

II. Choose the proper verb form and translate the sentences.

discussing am to assist concerned put continuing performs are

1. Process management is ….. with the knowledge and management of the


software process, its technical aspects. 2. I am ….. my research on documenting
early efforts to develop and use computers. 3. We ….. also planning on develop ing
a database of original ENIAC drawings and documents ….. researchers. 4. They
are …… this subject heavily in academic circles. 5. He tries to explain why
practitioners ….. great hopes in these methods. 6. I ….. examining processes of the
development and assessment of computer systems. 7. Software ….. necessary
functions to run a set of actions.

104
III. Complete the sentences using the verbs + a preposition below in the correct
form:
to agree on to deal with

1. A computer programmer didn’t ….. writing software because he was very busy.
2. They usually ….. scientific problems. 3. Our engineer always … the
implementation of the quality of the service. 4. The manager ….. providing cost -
effective support to software last week. 5. We must ….. defining the architecture and
other characteristics of a system. 6. The software team ….. the detailed creation of
meaningful software through a combination of coding and debugging some days ago.
7. The manager with software responsibility doesn’t want …. making use of the
results of many supporting processes. 8. The engineer can …. the truly innovative
elements of a design as soon as possible.

IV. Find in the above text sentences containing to agree on and to deal with.

V. Write down all possible questions to the following sentence.


Knowledge of computer programming is a prerequisite to becoming a software
engineer.

VI. Find in the above text and copy out sentences in which linking expressions as
well as and hence are used. Translate the sentences with them. Say which of these
linking expressions:
a) introduces results and conclusions?
b) expresses addition?

SPEAKING:
I. Discuss the following questions:
1) What do you think about the changes in the Internet age?
2) When you deal with problems, do you attempt to solve them?

II. Study the following information and comment.


Von Neumann Architecture
Computer architecture is conceived by mathematician John von Neumann, which
forms the core of nearly every computer system in use today (regardless of size).
In contrast to a Turing machine, a von Neumann machine has a random-
access memory (RAM) which means that each successive operation can read or
write any memory location, independent of the location accessed by the previous
operation.
A von Neumann machine also has a central processing unit (CPU) with one or
more registers that hold data that are being operated on. The CPU has a set of built -in
operations (its instruction set) that is far richer than with the Turing machine, e.g.
adding two binary integers, or branching to another part of a p rogram if the binary
integer in some register is equal to zero (conditional branch). The CPU can interp ret

105
the contents of memory either as instructions or as data according to the fetch–execute
cycle.
Von Neumann considered parallel computers but recognized the problems of
construction and hence settled for a sequential system. For this reason, p arallel com-
puters are sometimes referred to as non-von Neumann architectures. A von Neumann
machine can compute the same class of functions as a universal Turing machine.
(From Wikipedia, the free encyclopedia)

UNIT V
Text 1
OPERATING SYSTEMS
Read and translate the text.

An operating system is required for applications software to run on your


computer. The user usually works with the applications software but can bypass if to
work directly with the systems software for certain tasks.
Different types of peripheral devices – disk drives, printers, communications
networks, and so on, handle and store data differently from the way the computer
handles and stores it. Internal operating systems, usually stored in ROM memory,
were developed primarily to coordinate and translate data flows from dissimilar
sources, such as disk drives or co-processors (processing chips that perform
simultaneous but different operations from the central unit). An operating system is a
master control program, permanently stored in memory, that interprets user commands
requesting various kinds of services, such as display, print, or copy a data file; list all
files in a directory; or execute a particular program.
Different sizes and makes of computers have their own operating systems. For
example, IBM mainframes use MVS and VM, and DEC minicomputers use
VAX/VMS. Pen-based computers have their own operating systems that enable users
to write scribbles and notes on the screen. These operating systems are not compatible
with one another. That is, in general, an operating system written for one kind of
hardware will not be able to run on another kind of machine.
The operating system begins to operate as soon as you tur n on, or "boot," the
computer. The term booting refers to the process of loading an operating system into a
computer's main memory from a diskette or a hard disk. This loading is accomplished
by a program (called the bootstrap loader or boot routine) that is stored p ermanently
in the computer's electronic circuitry. When you turn on the machine, the program
obtains the operating system from your diskette or hard disk and loads it into memory.
Other programs called diagnostic routines also start up and test the main memory, the
central processing unit, and other parts of the system to make sure they are running
properly. As these programs are running, the display screen may show the message
"Testing RAM" (main memory). Finally, other programs (indicated on your screen as
"BIOS," for basic input-output system) will be stored in main memory to help the

106
computer interpret keyboard characters or transmit characters to the display screen or
to a diskette.
The system prompt indicates the operating system has been loaded into main
memory and asks ("prompts") you to enter a command. You may now enter a
command. The operating system remains in main memory until you turn the computer
off. With newer operating systems, the booting process p uts you into a graphically
designed starting screen, from which you choose the applications programs you want
to run.
(From Using Information Technology by William Sawyer Hutchinson)

VOCABULARY
application [æplɪˈkeɪʃn] – приложение, применение
boot v. [buːt] – загрузить
booting – загрузка
bootstrap [ˈbuːtstræp] – программа загрузки компьютера (программа
самозагрузки)
bypass v. [ˈbaɪpɑːs] – не принимать во внимание, пренебрегать
certain – определённый, бесспорный
circuitry [ˈsɜːkɪtrɪ] – схема
compatible [kəmˈpætəbl] – совместимый
differently from – по-другому от, иначе
directory – справочник, каталог
disk drive – дисковод, дисковый накопитель, накопитель
dissimilar – отличающийся, несходный
enter v. – вводить
execute v. [ˈeksɪkjuːt] – выполнять
interpret v. – интерпретировать, переводить (устно)
load v. [ləʊd] – загружать
make – модель, конструкция
master – основной
obtain v. – получать
permanently – постоянно
prompt – напоминание, подсказка
properly [ˈprɔpəlɪ] – правильно, надлежаще
remain v. [rɪˈmeɪn] – оставаться
request v. [rɪˈkwest] – запрашивать
require v. – требовать, нуждаться
routine – подпрограмма
scribble – небрежная записка
turn on/off v. [ˈtɜːn ɔn/ɔf] – включить/выключить

107
EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[ˈmɑ:stə], [ˈdɪˈsɪmɪlə], [ɪnˈtə:prɪt], [rɪˈkwaɪə], [ˈsə:tn], [ru:'ti:n], ['dɪfrəntlɪ],
[dɪˈrektərɪ].

II. Find in the above text English equivalents for the following word
combinations and write them out:
программа самозагрузки; интерпретировать символы клавиатуры; ввести
команду; прикладное программное обеспечение; в целом; пен-компьютеры
имеют собственные операционные системы; основная управляющая программа;
из отличающихся источников; диагностические процедуры; выполняют
одновременные, но различные операции; в графически разработанный
стартовый экран; программа начальной загрузки; была загружена в главную
память; писать каракули и примечания на экране; команды, запрашивающие
различные виды услуг; запускают и тестируют главную память; собственные
операционные системы; написанная для одного вида оборудования; выполнять
конкретную программу; относится к процессу загрузки операционной системы;
выполнять программу; обработка чипов.

III. Find in the above text synonyms of the following words:


correctly, to disregard, careless record, definite, reconcilable, reminder, to carry
out, constantly, to receive.

IV. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. Why is an operating system required? 2. In which case can the user bypass the
applications software? 3. What do different types of peripheral devices handle and store
data differently from? 4. What is an operating system? 5. Where is it p ermanently
stored? 6. What interprets user commands requesting various kinds of services? 7. Do
different sizes and makes of computers have their own operating systems? Give your
reasons. 8. Are these operating systems compatible with one another? 9. Will an
operating system written for one kind of hardware be able to run on another kind of
machine? 10. When does the operating system begin to operate? 11. What does t he
term booting refer to? 12. What is loading accomplished by? 13. Where does the
program obtain the operating system from when you turn on the m achine? 14. What
do diagnostic routines test? 15. What helps the computer interpret keyboard characters
or transmit characters to the display screen or to a diskette? 16. What does the system
prompt indicate? 17. How long does the operating system remain in main memory?

V. Retell the above text using as many of the word combinations from Exercise II
as you can.

VOCABULARY AND GRAMMAR EXERCISES

108
I. Make up your own sentences or situations with the following phrases:
to turn on the machine, for certain tasks, to obtain the operating system, to store in
memory, the bootstrap loader, to run properly, to enter a command.

II. Translate the following word-combinations:


to improve — улучшать; great improvements —
to boot — загрузить; the booting task —
considerable — значительный; to change considerably —
to differ — различаться; different operations —
easy — легко; to find easily —
to apply — применять; software applications —
benefit — выгода; beneficial cooperation —
exact — точный; to know exactly —
to use — применять; useful software —
to prevent — предотвращать; preventive measures —
necessary — необходимый; a vital necessity —
permanent — постоянный; permanently stored in memory —

III. Put the nouns below into three groups:


a) countable b) uncountable c) countable or uncountable
file, system, electronics, booting, time, operation, compatibility, circuitry, menu ,
processing, housekeeping, graphics, software, communication, interface,
programming.

IV. Find in the text and copy out phrases in which the preposition from is used.
Translate them.

V. Choose the proper verb form and translate the sentences.


1. The operating system …. of the master system of programs that manage the
basic operations of the computer. 2. The operating system allows us … on our own
tasks or applications. 3. These programs ….. resource management services of many
kinds, handling such matters as the control and use of hardware resources . 4. Before
you can ….. a new diskette that you've …. at a store, you may have to format it. 5.
The operating system ….. the basic operations of the computer. 6. A language
translator is software that translates a program ….. by a programmer. 7. Formatting
electronically …… a diskette so it can store data or programs. 8. Application
programs usually ….. an operating system to function. 9. Distributed computations are
….. out on more than one machine. 10. Every general-purpose computer must have an
operating system ...... other programs and applications.
Keys: manages, carried, consists, require, provide, to run, use, prepares, to
concentrate, bought, written.

VI. Rewrite each of these sentences like this:


E.g. One example of a housekeeping task is to format blank diskettes.
Formatting blank diskettes is one example of a housekeeping task.
109
1. Another function of the operating system is to execute and provide services for
applications software.
2. One important function is to perform common repetitious housekeeping tasks.
3. The role of the operating system is to communicate directly with the hardware.
4. Part of the work of mainframe operating systems is to support multiple
programs and users.
5. The goal of this program is to accomplish loading an operating system into a
computer’s main memory from a diskette or a hard disk.
6. An important function of the operating system is to manage the comp uter’s
resources.
7. The main reason for installing these programs is to act as an interface between
the user and the computer.

VII. Ask all types of questions to the following sentences:

1. Other programs will be stored in main memory to help the computer transmit
characters to the display screen or to a diskette.
2. We normally interact with the operating system through a set of commands.

TALKING TOPICS:
I. Explain and expand on the following.
1. Operating systems perform basic tasks, such as recognizing input from the
keyboard, sending output to the display screen, keeping track of files and directories
on the disk, and controlling peripheral devices such as disk drives and printers.
2. Windows 95 & 98 (Windows 2000) are the most popular user-oriented
operating systems with a friendly interface and multitasking capabilities.

II. Share your opinions of different kinds of operating systems. Make use of the
following information.
The Windows NT operating system includes built-in file- and print-sharing capa-
bilities, along with powerful workgroup application services. Open networking
interface allows other network vendors to incorporate Windows NT into their
network. Desktop security for sensitive data and applications is an important element
in today's computing environment. The Windows NT operating system delivers all the
security you are likely to need.

Text 2
MANAGING TASKS
Read and translate the text.

A computer is required to perform many different tasks at once. In word


processing, for example, it accepts input data, stores the data on a disk, and prints out
a document – seemingly simultaneously. Some computers’ operating systems can
also handle more than one program at the same time – word processing, spreadsheet,

110
database searcher – displaying them in separate windows on the screen. Others can
accommodate the needs of several different users at the same time. All these
examples illustrate task management – a ‘task’ being an op eration such as storing,
printing, or calculating.
Among the ways operating systems manage tasks in order to run more
efficiently are multitasking, multiprogramming, time-sharing, and multiprocessing.
Multitasking – executing more than one program concurrently: Multitasking is
the execution of two or more programs by one user concurrently – not simultaneously
– on the same computer with one central processor. You may be writing a rep ort on
your computer with one program while another program searches an online database
for research material.
The operating system directs the processor (CPU) to spend a predetermined
amount of time executing the instructions for each program, one at a time. In essence,
a small amount of each program is processed, and then the p rocessor moves to the
remaining programs, one at a time, processing small parts of each. This cycle is
repeated until processing is complete. The processor speed is usually so fast that it
may seem as if all the programs are being executed at the same time. However, the
processor is still executing only one instruction at a time, no matter how it may
appear to the user.
Multiprogramming—concurrent execution of different users' programs:
Multiprogramming is the execution of two or more programs on a multiuser
operating system. As with multitasking, the CPU sp ends a certain amount of time
executing each user's program, but it works so quickly, it seems as though all the
programs are being run at the same time.
Time-sharing—-round-robin processing of programs for several users: Time-
sharing is a single computer's processing of the tasks of several users at different
stations in round-robin fashion. Time-sharing is used when several users are linked
by a communications network to a single computer. The computer will first work on
one user's task for a fraction of a second, then go on to the next user's task, and so on.
How is this done? The answer is through time slicing. Comp uters op erate so
quickly that it is possible for them to alternately apportion slices of time (fractions of
a second) to various tasks. Thus, the computer's operating system may rapidly switch
back and forth among different tasks, just as a hairdresser or dentist works with
several clients or patients concurrently. The users are generally unaware of the
switching process.
Multitasking and time-sharing differ slightly. With multitasking, the p rocessor
directs the programs to take turns accomplishing small tasks or events within the
programs. These events may be making a calculation, searching for a record, printing
out part of a document, and so on. Each event may take a different amount of time to
accomplish. With time-sharing, the computer spends a fixed amount of time with
each program before going on to the next one.
Multiprocessing—simultaneous processing of two or more programs by
multiple computers: Multiprocessing is processing done by two or more computers or
processors linked together to perform work simultaneously—that is, at p recisely the

111
same time. This can entail processing instructions from different programs or
different instructions from the same program.
Multiprocessing goes beyond multitasking, which works with only one
microprocessor. In both cases, the processing should be so fast that, by spending a
little bit of time working on each of several programs in turn, a number of p rograms
can be run at the same time. With both multitasking and multiprocessing, the
operating system keeps track of the status of each program so that it knows where it
left off and where to continue processing. But the multiprocessing operating system is
much more sophisticated than multitasking.
Multiprocessing can be done in several ways. One way is coprocessing,
whereby the controlling CPU works together with specialized microprocessors called
coprocessors, each of which handles a particular task, such as display-screen graphics
or high-speed mathematical calculations. Many sophisticated microcomputer systems
have coprocessing capabilities.
Another way to perform multiprocessing is by parallel processing, whereby
several full-fledged CPUs work together on the same tasks, sharing memory. Parallel
processing is often used in large computer systems designed to keep running if one of
the CPUs fails. These systems are called fault-tolerant systems; they have several
CPUs and redundant components, such as memory and input, output, and storage
devices.
(From Using Information Technology by William Sawyer Hutchinson)

VOCABULARY
accept v. – принимать
accommodate v. – приспосабливать
apportion v. [əˈpɔːʃn] – распределять
at a time [æt ə ˈtaɪm] – сразу, одновременно
alternately [ɔːlˈtɜːnətlɪ] – переменно
concurrently – одновременно, действуя совместно; совпадающим образом
entail v. – влечь за собой
fail v. – терпеть неудачу
fault-tolerant [ˈfɔːlt ˈtɔlərənt] – устойчивый к повреждениям; отказоустойчи-
вый
full-fledged [ˈfʊl ˈfleʤd] – развившийся; полноценный
handle v. – управлять, обрабатывать, трактовать
link v. – соединять
manage v. [ˈmænɪʤ] – управлять
multiprocessing [mʌltɪˈprəʊsesɪŋ] – многопроцессорная обработка
multiprogramming [mʌltɪˈprəʊgræmɪŋ] – мультипрограммирование
multitasking [ˈmʌltɪtɑːskɪŋ] – многозадачность, многозадачный режим
redundant [rɪˈdʌndənt] – избыточный
round-robin [,raʊndˈrɔbɪn] – циклический;

112
run v. – выполнять, прогонять (программу)
search v. [sɜːʧ] – искать
seemingly [ˈsiːmɪŋlɪ] – по-видимому
simultaneously [sɪmlˈteɪnɪəslɪ] – одновременно
slightly [ˈslaɪtlɪ] – немного, слегка
switch back / forth v. [ˈswɪʧ bæk/fɔːθ] – переключать назад / вперёд
time-sharing [,taɪm ˈʃeərɪŋ] – распределение времени
time slicing [,taɪm ˈslaɪsɪŋ] – разделение времени

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Accept, accommodate, concurrently, entail, fault, precisely, whereby.

II. Find in the above text English equivalents for the following words and
word combinations and write them out:
управление заданиями; система, устойчивая к повреждениям; искатель
базы данных; несколько полноценных процессоров; печатает документ;
выходит за рамки многозадачности; обрабатывает конкретную задачу; имеют
совместные возможности обработки; в циклическом режиме; в точно то же
самое время; в обоих случаях; для научно-исследовательских материалов;
следит за состоянием каждой программы; чтобы затратить заранее
определённое количество времени; соединены коммуникационной сетью; для
выполнения работ одновременно; если один из процессоров терпит неудачу;
гораздо более сложные; поочерёдно; из той же программы; за доли секунды;
как правило, не знают о; прежде, чем продолжить следующую; определённое
количество времени.

III. Look through the text again and find the answers to the following questions:
1. What is a computer required to perform? 2. Can word processing, spreadsheet,
database searcher be displayed in separate windows on the screen ? 3. What is task
management? 4. What does multitasking deal with? 5. How does the computer
handle both programs at once? 6. How many times is the cycle of program processing
repeated? 7. Why may it seem as if all the programs are being executed at the same
time? 8. What is multiprogramming? 9. Does CPU work quickly or slowly? 10. What
can you say about time-sharing? 11. What is the role of time slicing? 12. Why are the
users generally unaware of the switching process? 13. What is the difference between
multitasking and time-sharing? 14. What does multiprocessing deal with? 15. How
can multiprocessing be done? 16. Is the multiprocessing operating system much more
sophisticated than multitasking? 17. What ways can multiprocessing be done in? 18.
Where is parallel processing used? 19. What do fault-tolerant systems have? 20.
Which is faster: multiprocessing, multitasking, or time-sharing?

113
IV. Find in the above text synonyms of the following words:
a little, quantity, to seek out, to treat, alternately, complicated, quick, to connect.

V. Retell the above text using as many of the words and word combinations from
Exercise II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Translate a series of words. Say the words in each set aloud and mark the
stress. In which sets of words does the stressed syllable change?

Access, accessibility, accessible, accessory;


manage, management, manageable, manager, manageress;
process, processing, processor, processed;
calculate, calculating, calculation, calculator;
compute, computing, computer, computerize;
memory, memorize, memorial, memorable, memorability;
differ, different, difference, differential, differentiate;
precise, precisely, precision;
compare, comparison, comparative, comparatively, comparable;
apply, applied, application, applicable;
execute, executed, execution, executive;
special, specialization, specialize, specialized;
support, supporter, supporting, supportive;
control, controlling, controllable, controller.

II. Complete and translate:

Word-building: consist v. + ent = consistent

concur, depend, differ, exist, insist, persist, cohere, coincide, provide,


respond, emerge.

III. Find in the above text and copy out phrases in which the preposition at is
used. Translate them.

IV. Complete the statements using the words from the box.

provides successful managing contains databases several


therefore execution networks selected

1. Task management is the process of ….. a task through its life cycle. 2. The
operating system was modified and resold by ….. companies. 3. NetWare has
become the most popular operating system for coordinating microcomputer-based

114
local area ….. . 4. ….. , operating systems establish a user interface and execute and
provide services for applications software. 5. The sent e-mail automatically uses a
format that ….. the name of the related task and a link to it. 6. NetWare ….. a shell
around your own operating system. 7. In workgroups, individuals work in group s
sharing electronic files and ….. over communications lines. 8. Priority allows one of
the predefined task priorities to be ….. to set how urgent the task is. 9. Microsoft has
not been an innovative organization in technology so much as a hugely …..
marketing organization. 10. Multiprocessing means true parallel ….. of multiple
processes using more than one processor.

V. Put one suitable preposition in each space.


1. A priority can be interrupted to allow one of the tasks … higher p riority to
execute. 2. …. the ways operating systems manage tasks in order to run more
efficiently are multitasking, multiprogramming, time-sharing and multiprocessing. 3.
Using the mouse, you can move an image … one side of the screen to the other. 4.
Documentation is also invaluable …. the maintenance of a system as needed
improvements are made. 5. All managers must accept the responsibility … managing
the information system resources of their work groups and departments. 6. You can
make online searches for information in a variety … ways. 7. Early attempts … some
direct mail companies met with almost unanimous resistance. 8. ….. both
multitasking and multiprocessing, the operating system keeps track of the status of
each program. 9. Businesses are connecting … the Internet because it rep resents the
wave of the future in business telecommunications. 10. Multitasking is the technique
of concurrently executing a number of related tasks …. the same partition.
Keys: in, with, from, in, by, among, to, for, of, with.

VI. Find in the above text and copy out sentences in which linking expressions
for example, such as, however, thus and so that are used. Which of them introduces
a contrast, exemplification and summation, clarification, results and conclusions?

VII. Complete the gaps in this summary of the text on Windows using these
linking words and phrases.

because such as since in addition however although but

Several windows on a computers screen show different applications p rograms


….. word processing and spreadsheets. ….. , Windows is an operating environment
made by Microsoft. ….. Windows contains windows they can display multiple
applications. Earlier versions of Windows could not make full use of '386 and '486
chips, ….. later versions can. ….. Windows is far easier to use than DOS, its earlier
versions have not been as easy to use as the Mac operating system. This is …..
Windows sat atop the 11-year-old command-driven DOS operating system. ….. ,
many users complained that a hard-disk drive was somewhat difficult with DOS and
Windows.

115
VIII. Put the verb in brackets into the Present Continuous Passive form.
to be (am, is, are) + being + Past Participle

1. Her computer (repair) now. 2. My new contract (discuss) by them in the next
room. 3. It seems as if all the programs (execute) at the same time. 4. These
applications programs (not/use). 5. The situation with the operating environment
(review) as promised. 6. Some exercises on Present Continuous Passive (do) by
students of our group now. 7. A number of changes (make) to the p rocedure. 8. All
the programs (run) at the same time. 9. The exam on Software Engineering (take) by
my friend. 10. Our programmers (question) about the missing sophisticated
microcomputer systems.

IX. Write down all possible questions to the following sentence.


The computer is being instructed to store this code number.

TOPICS FOR DISCUSSION:

I. Discuss the arguments for the following problems. Make use of the vocabulary
of the topic.
1. There are plenty of tasks that managers will need to accomplish in their daily
work routine which purpose is to bring effectiveness and efficiency in their company.
2. One of the management tasks is to optimize motivational processes and
maximize employee’s working performances. Another managerial task is to create
and spread motivation.

II. Explain and expand on the following:


Multiprocessing systems are much more complicated than single-process
systems because the operating system must allocate resources to competing processes
in a reasonable manner.

Text 3
THREE TYPES OF USER INTERFACES
Read and translate the text.

Many operating-system functions are never apparent on the comp uter's dis play
screen. What you do see is the user interface. The user interface is the part or the
operating system that allows you to communicate, or interact, with it.
There are three types of user interfaces, for both operating systems and
applications software—command-driven, menu-driven, and graphical. The latter two
types of user interface are often called a shell.
Command-driven: A command-driven interface requires you to enter a
command by typing in codes or words. An example of such a command might be

116
DIR (for "directory"). This command instructs the computer to display a directory list
of all file names on a disk.
You type a command at the point on the display screen where the cur sor follows
the prompt. Then you press the Enter key to execute the command. You'll recall that a
cursor is a symbol (such as a blinking rectangle of light) that cues where you may
type data or enter a command.
The command-driven interface is seen on IBM and IBM-compatible computers
with the MS-DOS operating system.
Menu-driven: A menu-driven interface allows you to choose a command from a
menu. A software menu offers you options to choose from commands available for
manipulating data, such as Print or Edit.
Menus are easier to use than command-driven interfaces, especially for
beginners. Their disadvantage, however, is that they are slower to use. Th us, some
software programs offer both features—menus for novice users and keyboard codes
for experienced users.
Graphical: The easiest interface to use, the graphical user interface (GUI), uses
images to represent options. Some of these images take the form of icons. Icons are
small pictorial figures that represent tasks, functions, or p rograms —for example, a
trash can for a delete-file function.
Another feature of the GUI (pronounced "gooey") is the use of windows.
Windows divide the display screen into sections. Each window may show a different
display, such as a word processing document in one and a spreadsheet in another.
Finally, the GUI permits liberal use of the mouse. The mouse is used as a
pointing device to move the cursor to a particular place on the disp lay screen or to
point to an icon or button. The function represented by the icon can be activated by
pressing ("clicking") buttons on the mouse. Using the mouse, you can move an image
from one side of the screen to the other or change its size.
Microcomputer users first became aware of the graphical user interface in Apple
Macintosh computers (although Apple got the idea from Xerox). Later Microsoft
made a graphical user interface available for IBM and IBM -comp atible comp uters
through its Windows program.
Behind the user interface, the operating system acts like a police officer directing
traffic. This activity is performed by the supervisor, or kernel, the central comp onent
of the operating system. The supervisor, which manages the CPU, resides in main
memory while the computer is on and directs other programs to perform tasks to sup -
port applications programs. Thus, if you enter a command to print your document, the
operating system will select a printer (if there is more than one). It will then notify the
computer to begin executing instructions from the appropriate program (known as a
printer driver, because it controls, or "drives," the printer). Meanwhile, many
operating systems allow you to continue writing.
The operating system also manages memory – it keeps track of the locations
within main memory where the programs and data are stored. It can swap portions of
data and programs between main memory and secondary storage, such as your
computer’s hard disk. This capability allows a computer to hold only the most

117
immediately needed data and programs within main memory. It has ready access to
programs and data on the hard disk, thereby greatly expanding memory capacity.
There are several ways operating systems can manage memory. Some use
partitioning – that is, they divide memory into separate areas called partitions, each of
which can hold a program or data. Large computer systems often divide memory into
foreground and background areas. High-priority programs are executed in foreground
memory, and low-priority programs are executed in background memory. For
example, if a user is interacting with a program, that program will be in foreground
memory. While the user is entering data, the CPU will be unused. Thus, during that
time, the CPU can be made available to process something in background memory,
such as printing a spreadsheet. Programs wait on disk in queues for their turn to be
executed.
Files of data and programs are located in many places on your hard disk and
other secondary-storage devices. The operating system allows you to find them. If
you move, rename, or delete a file, the operating system manages such changes and
helps you locate and gain access to it. For example, you can copy, or duplicate, files
and programs from one disk to another. You can back up, or make a dup licate cop y
of, the contents of a disk. You can erase, or remove, from a disk any files or programs
that are no longer useful. You can rename, or give new filenames, to the files on a
disk.
(From Using Information Technology by William Sawyer Hutchinson)

VOCABULARY
apparent [əˈpærənt]– видимый, допустимый
appropriate [ə'prəuprɪət] – соответствующий, подходящий
available [ə'veɪləbl] – доступный
background area [ˈbækgraʊnd ˈɛərɪə] – второстепенная область, фоновая
область
back up v. [bæk ʌp] – копировать, резервировать; создавать резервную
копию
cue v. [kjuː] – подавать сигнал; указывать
cursor [ˈkɜːsə] – стрелка, указатель
delete v. – удалять
directory – справочник, каталог
drive v. – управлять
duplicate v. – копировать
erase v. [ɪˈreɪz] – стирать (запись)
feature – особенность, функция
foreground area [ˈfɔ:ɡraund ˈɛərɪə] – приоритетная область
icon – значок, иконка
immediately [ɪˈmiːdjətlɪ] – сразу, немедленно
kernel [kɜːnl] – ядро

118
notify v. [ˈnəʊtɪfaɪ] – уведомить; регистрировать
novice [ˈnɔvɪs] – новичок
offer v. [ˈɔfə] – предлагать
partitioning [pɑːˈtɪʃnɪŋ] – разделение
prompt – напоминание, подсказка
queue – очередь
rectangle [ˈrektæŋgl] – прямоугольник
remove v. [rɪˈmuːv] – удалять
require v. – требовать, нуждаться
reside v. [rɪˈzaɪd] – быть присущим, находиться
shell – (программная) оболочка; среда
slow [sləʊ] – медленный
swap v. [swɔp] – подкачивать, обмениваться
type in v. [ˈtaɪp ɪn] – вводить
trash can [ˈtræʃ kæn] – корзина (выбираемая при удалении файлов)

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[dɪˈli:t], [ˈaɪkɔn], [kəˈmɑ:nd], [kju:], [dɪˈrektərɪ], [rɪˈkwaɪə], ['djuˈplɪkət],
[ˈfi:tʃə].

II. Find in the above text English equivalents for the following word
combinations and write them out:
удалять файл; вспомогательное запоминающее устройство; маленькие
графические изображения; большие вычислительные системы; интерфейс
командного типа; неопытный пользователь; программы высокого приоритета;
драйвер принтера; справочный список; обменивать части данных и пр ограмм;
мигающий прямоугольник; ввести команду; ждут на диске в очередях; во
второстепенной (фоновой) памяти; сделать дубликат; уведомить компьютер;
значительно расширяя объём памяти; осуществляется управляющей
программой (супервизором); делят память на отдельные участки; сначала
узнал о; интерфейс на основе меню; поддерживать прикладные программы;
последние два типа; компьютеры совместимые с IBM.

III. Look through the text again and find the answers to the following questions:
1. What is never apparent on the computer's display screen? 2. What is the user
interface? 3. What does it allow? 4. How many types of user interfaces are there? 5.
What is called a shell? 6. What is the function of a command-driven interface? 7.
Which key do you press to execute the command? 8. What op erating system is the
command-driven interface seen with on IBM and IBM-compatible computers? 9.

119
Where does a menu-driven interface allow you to choose a command from? 10. Who
are menus easier to use than command-driven interfaces for? 11. What is the
disadvantage of menus? 12. What can you say about the graphical user interface? 13.
What divides the display screen into sections? 14. What moves the cursor to a
particular place on the display screen or points to an icon or button? 15. Can the
function represented by the icon be activated by pressing buttons on the mouse? 16.
What is the activity of the operating system performed by? 17. Where does the
supervisor reside in? 18. What will happen if you enter a command to print your
document? 19. How does the operating system manage memory? 20. Can operating
systems manage memory in many or few ways? 21. What areas do large comp uters
divide memory into? 22. What is the difference between high-priority and low-
priority programs? 23. When can the CPU be made available to process something in
background memory? 24. Where are files of data and programs located? 25. How can
you move, rename or delete a file?

IV. Fill in the gaps with the words and word combinations from the text.
1. The user interface is the part or the operating system that ….. , with it. 2. This
command instructs ….. to display a directory list of all file names on a disk. 3. A
menu-driven interface allows you to choose a command ….. . 4. Some software
programs offer both ….. and keyboard codes for experienced users. 5. ….. are small
pictorial figures that represent tasks, functions, or programs. 6. Windows divide ….
into sections. 7. Using the mouse, you can move an image …. or change its size. 8.
The supervisor, which manages the CPU, resides ….. while the comp uter is on and
directs other programs to perform tasks to support applications p rograms. 9. This
capability allows a computer to hold only ….. within main memory. 10. High-priority
programs are executed in foreground memory, and ….. are executed in background
memory.

V. Retell the above text using as many of the word combinations from Exercise
II as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following word


combinations:
a command-driven interface; to choose a command; to execute the command; to
delete a file; to keep track of the locations within main memory; to enter a command
by typing in codes or words; a menu-driven interface.

II. Find in the above text and copy out phrases in which the preposition by is
used, translate them.

III. Find in the above text and copy out sentences in which linking expressions
however, thus, and finally are used. Translate the sentences with them. Say which of
these linking expressions:
120
a) is used as a narrative linker?
b) expresses a contrast?
c) introduces results and conclusions?

IV. Complete the following sentences using the words from the box:

information early graphical operating select users upon


driven using input interface

1. A user interface is a visual part of a computer application or an …... system


through which a user interacts with a computer or software. 2. Tools used for
incorporating human factors in the ….. design are developed based on knowledge
of computer science, such as computer graphics, operating systems, programmi-
ng languages. 3. A command …. interface is an interface in which users must type
in commands to carry out actions. 4. …… personal computers often used
command driven interfaces. 5. Windows operating systems include an application
called "Command Prompt," which allows …… to access a command driven
interface on Windows. 6. The earliest command-line systems combined
teleprinters with computers, adapting a mature technology that had proven
effective for mediating the transfer of ….. over wires between human beings. 7.
Web-based user interfaces or web user interfaces (WUI) accept …… and provide
output by generating web pages which are transmitted via the Internet and viewed
by the user ….. a web browser program. 8. A touch user interface (TUI) is a
computer-pointing technology based ….. the sense of touch. 9. A GUI represents
the information and actions available to a user through ….. icons and visual
indicators such as secondary notation. 10. A menu-driven interface lists menu
choices that a user can ….. to navigate from one place to another within a website
or software program.

V. a) Translate the following sentences containing the Simple Infinitive


Passive:
1. It is a chance for him not to be missed. 2. The solution of this problem ought
to be found by you. 3. I made a list of things to be taken. 4. We are glad to be invited
to the scientific conference. 5. The low-priority program to be executed is waiting on
a disk in a queue. 6. A user interface determines commands to be given to the
computer. 7. The new filename needs to be given to the file just now. 8. There is no
need for the internet to be regulated. 9. Не wanted his article about software
components to be translated as soon as possible. 10. The invention of electronic
computers can be compared with the invention of the steam-engine. 11. My
conditions will have to be accepted by your Agency immediately.

b) Find in the above text the sentences with the Simple Infinitive Passive and
translate them.

VI. Ask all types of questions to the following sentences:


121
1) Using a graphical user interface, a user gives commands by selecting and
clicking on icons displayed on the screen.
2) Teleprinters had originally been invented as devices for automatic
telegraph transmission and reception.
3) A GUI allows the user to interact with electronic devices using images
rather than text commands.

VII. Find in the above text and copy out sentences containing both…and…,
translate them.

VIII. Make your own sentences with both….. and…. using words and word
combinations of the topical vocabulary.

TALKING TOPICS:

I. Prove that there is much difference and at the same time much similarity
among three main types of user interfaces. Make use of the following questions to
express your point of view:
1) What is meant by a graphical user interface?
2) What are the advantages of a graphical user interface?
3) What are disadvantages of a command line interface?
4) What interface should you use to choose the commands from lists displayed
on the screen?

II. Discuss the arguments for the following problem. Make use of the vocabulary
of the topic.
Having computers with a good user interface will make things very easy for
your workers so they can get things done fast.

III. Comment upon the following problem. Share opinions.


What are the advantages and disadvantages of Visual Basic?
Visual Basic is a programming language offering general ease of use combined
with ease of implementing a graphical user interface. It is relatively simplistic and
therefore limited in function compared to more advanced, multiple-platform
languages such as Java. However, there is a rather large knowledge base available for
new programmers looking to learn Visual Basic.
A major positive of using Visual Basic is the speed at which applications can
be developed for it. It is also quite useful as a front-end language for p rogramming
interactivity with databases. The structure of the language itself is simp le enough to
be accessible to many newer programmers, though this is traded off with a more
limited compatibility set compared to more open languages, of which there are many.
(From Wikipedia, the free encyclopedia)

IV. Do you think you will be able to use the English language in your
career? Say how.
122
Text 4
EXTERNAL UTILITY PROGRAMS
Read and translate the text.

External utility programs are special programs that provide specific useful
services not performed or performed less well by other systems software p rograms.
Examples of such services are backup of your files for storage, recovery of damaged
files, virus protection, data compression, and memory management. Some of these
features are essential to preventing or rescuing you from disaster.
Some of the principal services offered by utilities are the following:
Screen saver: A screen saver is a utility that supposedly p revents a mon itor's
display screen from being etched by an unchanging image ("burn-in"). Some p eople
believe that if a computer is left turned on without keyboard or mouse activity,
whatever static image is displayed may burn into the screen. Screen savers
automatically put some moving patterns on the screen, supposedly to prevent burn-in.
Actually, burn-in doesn't happen on today's monitors. Nevertheless, people continue
to buy screen savers, often just to have a kind of "visual wallpaper."
Data recovery: One day in the 1970s, Peter Norton w as doing a p rogramming
job when he accidentally deleted an important file. This was, and is, a common
enough error. However, instead of re-entering all the information, Norton decided to
write a computer program to recover the lost data. He called the program The Norton
Utilities. Ultimately it and other utilities made him very rich.
A data recovery utility is used to undelete a file or information that has been
accidentally deleted. Undelete means to undo the last deleted operation that has taken
place. The data or program you are trying to recover may be on a hard disk or a
diskette.
Backup: Suddenly your hard-disk drive fails, and you have no more programs or
files. Fortunately, you have used a utility to make a backup, or duplicate copy, of the
information on your hard disk. DOS has commands to help you make backups on
diskettes, but they are not easy to use. Other utilities are more convenient. Moreover,
they also condense (compress) the data, so that fewer diskettes are required.
Examples of backup utilities are Norton Backup from Symantec, Backup Exec
from Arcada Software, Colorado Backup, and Fastback Plus from Fifth Generation
Systems.
Virus protection: Few things can make your heart sink faster than the sudden
failure of your hard disk. The exception may be the realization that your computer
system has been invaded by a virus. A virus consists of hidden programming
instructions that are buried within an applications or systems p rogram. They cop y
themselves to other programs, causing havoc. Sometimes the virus is merely a simple
prank that pops up a message. Sometimes, however, it can destroy programs and data.
Viruses are spread when people exchange diskettes or download (make cop ies of)
information from computer networks or the Internet.
Fortunately, antivirus software is available. Antivirus software is a utility
program that scans hard disks, diskettes, and the microcomputer's memory to detect

123
viruses. Some utilities destroy the virus on the spot. Others notify you of p ossible
viral behavior, in case the virus originated after the antivirus software was released.
File defragmentation: Over time, as you delete old files from your hard disk and
add new ones, something happens: the files become fragmented. Fragmentation is the
scattering of portions of files about the disk in non-adjacent areas, thus greatly
slowing access to the files.
When a hard disk is new, the operating system puts files on the disk
contiguously (next to one another). However, as you update a file over time, new data
for that file is distributed to unused spaces. These spaces may not be contiguous to
the older data in that file. It takes the operat ing system longer to read these
fragmented files. By using a utility program, you can "defragment" the file and speed
up the drive's operation.
An example of a program for unscrambling fragmented files is Norton
SpeedDisk utility.
Data compression: As you continue to store files on your hard disk, it will
eventually fill up. You then have three choices: You can delete old files to make
room for the new one. You can buy a new hard disk with more capacity and transfer
the old files and programs to it. Or you can buy a data compression utility.
Data compression removes redundant elements, gap s, and unnecessary data
from a computer's storage space so less space is required to store or transmit data.
With a data compression utility, files can be made more compact for storage on your
hard-disk drive. The files are then "stretched out" again when you need them.
Memory management: Different microcomputers have different types of
memory, and different applications programs have different memory requirements.
Memory-management utilities are programs that determine how to efficiently control
and allocate memory resources.
Memory-management programs may be activated by software drivers. A driver
is a series of program instructions that standardizes the format of data transmitted
between a computer and a peripheral device, such as a mouse or p rinter. Electrical
and mechanical requirements differ among peripheral devices. Thus, software drivers
are needed so that the computer's operating system will know how to handle them.
Many basic drivers come with the operating system. If you buy a new peripheral
device, however, you need to install the appropriate software driver so the computer
can operate it.
Other examples of utilities are file conversion, file transfer, and security. A file
conversion utility converts files between any two applications or sys tems formats—
such as between WordPerfect and Word for Windows or between Windows and Mac
OS. A file transfer utility allows files from a portable computer to be transferred to a
desktop computer or a mainframe computer and vice versa. A security utility protects
unauthorized people from gaining access to your computer without using a password,
or correct code. Other utilities also exist.
(From Using Information Technology by William Sawyer Hutchinson)

VOCABULARY
accidentally – случайно
124
allocate v. [ˈæləʊkeɪt] – выделять, размещать
backup [ˈbækʌp] – дублирование, резервное копирование
burn into v. [bɜːn] – врезаться
compression [kəmˈpreʃn] – сжатие, уплотнение
condense v. – сокращать (напр., программу)
contiguous [kənˈtɪgjʊəs] – соприкасающийся
conversion [kənˈvɜːʃn] – преобразование
destroy v. – разрушать
download v. [ˈdaʊnləʊd] – «скачивать», загружать
external utility – внешняя сервисная программа; внешняя утилита
fail v. [feɪl] – приводить к сбою, не удаваться
gain v. – получать
havoc [ˈhævək] – ущерб, опустошение
handle v. – управлять, обрабатывать
invade v. – вторгаться
originate v. – происходить, начинаться
non-adjacent [nɔnəˈʤeɪsənt] – несмежный, непримыкающий
pop up v. – неожиданно возникнуть
prank – шутка
prevent v. [prɪˈvent] – предотвратить
recovery [rɪˈkʌvərɪ] – восстановление
redundant [rɪˈdʌndənt] – избыточный
release v. [rɪˈliːs] – выпускать; публиковать
remove v. [rɪˈmuːv] – удалять
rescue v. – спасать
supposedly [səˈpəʊzɪdlɪ] – по общему мнению; предположительно
take place v. – происходить
undelete v. [ʌndɪˈliːt] – восстанавливать после удаления; не стирать, не
удалять
update v. [ʌpˈdeɪt] – обновлять

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[,æksɪˈdentəlɪ], [ˈreskju:], [ɪnˈveɪd], [dɪsˈtrɔɪ], [ɪnˈstrʌkʃən], [əˈrɪdʒɪneɪt],
[ˈdæmɪdʒd], [ˈvaɪərəs].

II. Find in the above text English equivalents for the following words and
word combinations and write them out:

125
сжатие данных; заставка; противовирусная защита; фотообои (фон экр ана
компьютера); программы управления памятью; после того, как антивирусное
программное обеспечение было опубликовано; рассеивание частей файлов;
требуется меньше дискет; различные требования к памяти; чтобы не быть
запечатлённым неизменяющимся изображением; спрятаны внутри приложений;
люди без санкционированного доступа; уничтожить вирус на месте; передавать
старые файлы; в несмежных областях; к счастью; без клавиатуры или
деятельности мыши; восстановление повреждённых файлов; скрытые
инструкции по программированию; появляется сообщение; обнаружить вирусы.

III. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What services do external utility programs provide? 2. What does a screen
saver prevent a monitor's display screen from? 3. Is it necessary to buy screen savers
nowadays? 4. Why did Norton decide to write a computer program? 5. What did he
call a computer program to recover the lost data? 6. What is a data recovery utility
used for? 7. In which case do you use a utility to make a backup? 8. What is a
computer virus? 9. What does a virus consist of? 10. What does antivirus software
deal with? 11. When do utilities notify you of possible viral behavior ? 12. Is
fragmentation the scattering of portions of files about the disk in adjacent or non-
adjacent areas? 13. When can you speed up the drive’s operation? 14. Why is a data
compression utility important? 15. What utility can files be made more comp act for
storage on your hard-disk drive with? 16. What are memory-management utilities?
17. What standardizes the format of data transmitted between a computer and a
peripheral device, such as a mouse or printer? 18. Why are software drivers needed ?
19. What other examples of utilities do you know?

IV. Fill in the gaps with the words and word combinations from the text:
1. Some of these features are ….. to preventing or rescuing you from disaster. 2.
….. automatically put some moving patterns on the screen, supposed ly to p revent
burn-in. 3. One day in the 1970s, Peter Norton was doing ….. when he accidentally
deleted an important file. 4. Undelete means to undo ….. that has taken place. 5.
Sometimes the virus is merely a simple prank that ….. a message. 6. Viruses …..
when people exchange diskettes or download information from computer networks or
the Internet. 7. Fragmentation is the scattering of portions of files about the disk in
….. . 8. By using a utility program, you can "defragment" ….. and speed up the
drive's operation. 9. You can delete old files to make room ….. .10. A security utility
protects unauthorized people from gaining access to your computer ….. .

V. Find in the above text and copy out sentences in which the prepositions
among and between are used. Translate them.

VI. Retell the above text using as many of the words and word combinations
from Exercise II as you can.

126
VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which linking expressions
nevertheless, however and moreover are used. Translate the sentences with them.
Say which of these linking expressions:
a) expresses addition?
b) introduces a contrast?

II. Make your own sentences with nevertheless, however and moreover, using
words and word combinations of the topical vocabulary.

III. Choose the proper verb form and translate the sentences.
1. Memory-management utilities ….. how to efficiently control memory
resources. 2. Operating systems …. a number of utilities for managing disk
drives, printers, and other devices. 3. Some debuggers incorporate memory
protection …. storage violations such as buffer overflow. 4. Utilities are
sometimes …. as memory-resident programs. 5. Cryptographic utilities ….and
decrypt streams and files. 6. Utility programs are used to support, enhance or
expand ….. programs in a computer system. 7. I usually use this antivirus software
to scan my hard disks, and the microcomputer’s memory ….. viruses. 8. Multiple-
utility packages provide several utility disks ….. in one box, affording considerable
savings. 9. Data compression utilities output a shorter stream or a smaller file when
….. with a stream or file. 10. The clipboard is a software facility ….. for short-
term data storage and/or data transfer between documents or applications, via copy
and paste operations.
(Missing verbs: encrypt, provided, determine, used, to avoid, bundled,
contain, existing, installed, to detect)

IV. Choose the correct preposition to complete each of the following


sentences:
1. This tool is very easy-to-use and will guide the user ….. the necessary
steps. 2. Data synchronization utilities establish consistency ..... data from a source
to target data storage and vice versa. 3. Backup software makes copies of all
information stored ….. a disk and restores either the entire disk or selected files. 4.
Revision control utilities deal ….. situations where more than one user attempts to
simultaneously modify the same file. 5. File synchronization utilities maintain
consistency ….. two sources. 6. Utilities differ …. applications mostly in terms of
size, complexity and function. 7. When data is added to the clipboard …. an
application, it typically makes it available in as many different data formats as it
can. 8. Clipboard managers expand the clipboard functionality ….. an operating
system.
Keys: by, on, through, of, with, among, from, between.

V. Find in the above text and copy out phrases with the past participle in the
function of an attribute and translate them.
127
VI. Translate the following sentences containing simple gerund (active and
passive)
1. Our engineer is afraid of making copies of all his information. 2. They are
thinking about using a new data recovery utility. 3. This security utility protects
unauthorized people from gaining access to your computer without using a correct
code. 4. We're afraid of being attacked because the situation is dangerous. 5. By
using my utility program, I can speed up the drive's operation. 6. The CPU controls
the computer's basic operation by sending and receiving control signals. 7. The
programmer hates being asked to stay late at work. 8. A screen saver prevents a
monitor's display screen from being etched by an unchanging image. 9. The students
of our group don't look forward to being tested on their programming skills. 10. I
don't like being asked such questions. 11. These features are essential to preventing
or rescuing you from disaster. 12. He hates being told what data manipulations to
perform. 13. We usually use Norton SpeedDisk utility for unscrambling fragmented
files. 14. The teacher insists on being given the correct answer for this
mathematical equation. 15. Norton decided to write a computer p rogram to recover
the lost data instead of re-entering all the information. 16. Newton told a friend that
the sight of an apple falling from a tree started him thinking in the right direction. 17.
Speaking a foreign language every day is the best of learning it.

SPEAKING:
I. Look for information about cryptographic utilities and write down an
abstract under the title “Cryptographic Utilities and their Applications”. Present
it to your classmates.

II. Express your opinion on the following point of view:


How do you imagine software engineering of the future?
III. Prove the fact that internet may be the cause of many disputes and conflicts
in the family.

Text 5
LINUX
Read and translate the text.

Linux (pronounced [ˈlɪnəks] or, less frequently, [ˈlaɪnəks] ) is one of popular


versions of UNIX Operating System. It is an open source as its source code is freely
available. It is free to use. Linux was designed considering UNIX comp atibility. Its
functionality list is quite similar to that of UNIX. The defining component of Linux is
the Linux kernel, an operating system kernel first released on 5 October 1991 by
Linus Torvalds.
Linux was originally developed as a free operating system for personal
computers based on the Intel x86 architecture, but has been ported to more comp uter
hardware platforms than any other operating system. Because of the dominance

128
of Android on smartphones, Linux has the largest installed base of all general-
purpose operating systems. Linux, in its original form, is also the leading op eratin g
system on servers and other big iron systems such as mainframe computers and
virtually all fastest supercomputers.
Linux also runs on embedded systems, which are devices whose operating
system is typically built into the firmware and is highly tailored to the system; this
includes smartphones and tablet computers running Android and other Linux
derivatives, TiVo and similar DVR devices, network routers, facility automation
controls, televisions, video game consoles and smart watches.
Basic Features
Following are some of the important features of Linux Operating System:
Portable – Portability means software can work on different types of hardware
in the same way. Linux kernel and application programs support their installation on
any kind of hardware platform.
Open Source – Linux source code is freely available and it is the community
based development project. Multiple teams work in collaboration to enhance the
capability of the Linux operating system and it is continuously evolving.
Multi-User – Linux is a multiuser system. Multiple users can access system
resources like memory/ ram/ application programs at the same time.
Multiprogramming – Linux is a multiprogramming system. Multiple applicati-
ons can run at the same time.
Hierarchical File System – Linux provides a standard file structure in which
system files/ user files are arranged.
Shell – Linux provides a special interpreter program which can be used to
execute commands of the operating system. It can be used to do various types of
operations, call application programs etc.
Security – Linux provides user security using authentication features like
password protection, controlled access to specific files, and encryption of data.
Linux System Architecture consists of the following layers:
Hardware layer – Hardware consists of all peripheral devices (RAM/ HDD/
CPU etc).
Kernel – Core component of Operating System, interacts directly with hardware,
provides low level services to upper layer components.
Shell – An interface to the kernel, hiding complexity of kernel's functions from
users, takes commands from a user and executes kernel's functions.
Utilities –Utility programs give the user most of the functionalities of an
operating system.
The development of Linux is one of the most prominent examples of free and
open-source software collaboration. The underlying source code may be used,
modified and distributed – commercially or non-commercially – by anyone under
the terms of its respective licenses.
CLI shells are text-based user interfaces, which use a text for both input and
output. The dominant shell used in Linux is the Bourne-Again Shell (bash),
originally developed for the GNU project. Most low-level Linux components use

129
the CLI exclusively. The CLI is particularly suited for automation of repetitive or
delayed tasks, and provides very simple inter-process communication.
(From Wikipedia, the free encyclopedia)

Commentary
Linus Torvalds (Linus Benedict Torvalds [ˈlaɪnəs ˈtɔːrvɔˈldz]; born
December 28, 1969) is a Finnish software engineer, American naturalized, who is
the creator and, for a long time, principal developer, of the Linux kernel, which
became the kernel for operating systems (and many distributions of each) such
as GNU and years later Android and Chrome OS.
Android is a mobile operating system (OS) currently developed by Google,
based on the Linux kernel and designed primarily for touch screen mobile devices
such as smartphones and tablets.
CLI (a command-line interface) is a means of interacting with a computer
program where the user (or client) issues commands to the program in the form of
successive lines of text (command lines).
GNU [ɡnu:] is an operating system and an extensive collection of computer
software. GNU is composed wholly of free software. GNU is a recursive
acronym for "GNU's Not Unix!”, chosen because GNU's design is Unix-like, but
differs from Unix by being free software and containing no Unix code.
Bourne-Again Shell (Bash) is a Unix shell and command language written
by Brian Fox for the GNU Project as a free software replacement for the Bourne
shell.
The Bourne shell is a shell, or command-line interpreter, for computer opera-
ting systems developed by Stephen Bourne at Bell Labs.
TiVo [ˈtiˈvoʊ] is a digital video recorder (DVR) developed and marketed by
TiVo Inc. and introduced in 1999.
HDD: A hard disk drive, hard disk, hard drive or fixed disk is a data storage
device used for storing and retrieving digital information using one or more rigid
("hard") rapidly rotating disks coated with magnetic material.

VOCABULARY
arrange v. [əˈreɪnʤ] – располагать, устраивать
authentication – аутентификация, проверка подлинности
complexity [kəmˈpleksɪtɪ] – сложность, запутанность
console [kən ˈsəʊl] – пульт
derivative [dɪˈrɪvətɪv] – производная
encryption [ɪnˈkrɪpʃn] – шифрование, кодирование
enhance v. [ɪnˈhɑːns] – повышать, увеличивать, усовершенствовать
exclusively [ɪksˈklu:sɪvlɪ] – исключительно
facility [fəˈsɪlɪtɪ] – способность; оборудование

130
firmware [ˈfɜːmweər] – микропрограммное обеспечение, встроенное
программное обеспечение
frequently – часто
general-purpose [ˈʤenərəl ˈpɜːpəs] – общее назначение; универсальный
include v. – включить
hide v. – скрывать
kernel [kɜːnl] – ядро
layer – уровень
multiple – множественный, многочисленный
port v. – портировать
prominent [ˈprɔmɪnənt] – видный, выдающийся
quite [kwaɪt] – вполне
repetitive – повторяющийся
run on v. – работать на
security [sɪˈkjʊərɪtɪ] – безопасность
shell – оболочка
similar [ˈsɪmɪlə] – подобный, похожий, одинаковый
source [sɔːs] – источник
suit v. [sjuːt] – подходить, годиться
support v. [səˈpɔːt] – поддерживать
tablet [ˈtæblɪt] – блокнот, планшет
tailored [ˈteɪləd] – адаптированный, приспособленный
upper [ˈʌpə] – верхний

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words:
authentication, frequently, installation, layer, project, quite, repetitive, various.

II. Find in the above text English equivalents for the following word
combinations and write them out:
повторяющиеся или отложенные задачи; поддерживают их установку;
функциональные возможности операционной системы; как для ввода так и
для вывода; находится в свободном доступе; состоит из следующих уровней;
в соответствии с условиями соответствующих лицензий; работает на
встроенных системах; множество пользователей; сервисы низкого уровня;
умные часы; доминирующая оболочка; игровые приставки; портирована к
большему числу компьютерных аппаратных платформ; основные исходные
коды; расширить возможности.

131
III. Explain in English the meaning of:
portable, a smartphone, compatibility, a free operating system, a kernel.

IV. Ask your own questions to the text for class discussion.

V. Find in the above text antonyms of the following words:


seldom, unavailable, partially, decoding, less, slowest, different, high.

VI. Outline the main ideas of the above text and write a summary.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which the preposition for is
used. Translate them.

II. Match each group of words to the correct suffix. The suffix must fit all three
words in the group. What spelling changes do you have to make when you add the
suffix?
1 avail, manage, rely a) -ive
2 interpret, lay, program b) -ment
3 vary, outrage, continue c) -less
4 regard, tree, meaning d) -al
5 respect, defect, alternate e) -ness
6 periphery, origin, digit f) -ly
7 encrypt, communicate, instruct g) -able
8 frequent, free, virtual h) -er
9 equip, replace, improve i) -ous
10 rare, aware, user-friendly j) -ion

III. Put one suitable preposition in each space.


1. Linux is packaged ... a form known as a Linux distribution for both the
desktop and server use. 2. Distributions oriented ….. the desktop use typically
include a windowing system, such as X11. 3. Linux's greatest success …. the
consumer market is perhaps the mobile device market. 4. Today, Linux systems are
used ….. computing from embedded systems to supercomputers. 5. In many
cases, the interpreted program will be a human-readable text file, which is
manipulated ….. a text editor. 6. Android has the largest installed base of all
operating systems … any kind. 7. The control unit is responsible for processing
instructions that come ….. the computer's memory and activating the other
components of the computer. 8. Distributions intended to run … servers may omit all
graphical environments from the standard install. 9. Because Linux is freely
redistributable, anyone may create a distribution ….. any intended use.
Keys: throughout, for, in, of, toward, on, with, from, in.

IV. Analyze past participles in the following sentence:


132
Linux was originally developed as a free operating system for personal
computers based on the Intel x86 architecture, but has been ported to more comp uter
hardware platforms than any other operating system.

V. Translate the following sentences into English using words and word
combinations of the topical vocabulary:
1. Операционная система Linux является достаточно простой в
эксплуатации. 2. В 1991 году молодой программист Линус Торвальдс из
Финляндии создал первую версию системы, которая и была названа в честь
его имени. 3. Само построение операционной системы Linux исключает
работу вредоносных программ. 4. Используя эту операционную систему, вы
можете обойтись без антивирусных программ, тормозящих компьютер и
мешающих работать. 5. Ядро Linux создаётся и распространяется в
соответствии с моделью разработки свободного и открытого программного
обеспечения. 6. Сейчас существует несколько основных модификаций
операционной системы Linux. 7. Ядро Linux портировано на множество
платформ, включая x86-64,PowerPC и ARM. 8. В системах Linux пользовате-
ли работают через интерфейс командной строки, графический интерфейс
пользователя или, в случае встраиваемых систем, через элементы управления
соответствующих аппаратных средств.

SPEAKING:
I. Discuss the role of Torvalds' Linux kernel for operating systems. Use the
topical vocabulary.

II. Imagine you are an expert of operating systems. Note down the advantages of
your favourite operating system.

III. Discuss the arguments for or against the following problem. Share opinions.
Do computer games contribute to long-term violence or anti-social behaviour?

UNIT VI
Text 1
INТЕGRITY AND USABILITY
Read and translate the text.

Integrity, in terms of data and network security, is the assurance that


information can only be accessed or modified by those authorized to do so.
Measures taken to ensure integrity include controlling the physical environment of
networked terminals and servers, restricting access to data, and maintaining
rigorous authentication practices. Data integrity can also be threatened by
environmental hazards, such as heat, dust, and electrical surges.

133
Software integrity has become increasingly important in the age of hackers and
firewalls. This attribute measures a system's ability to withstand attacks (both
accidental and intentional) to its security. Attacks can be made on all three
components of software: programs, data, and documents. To measure integrity, two
additional attributes must be defined: threat and security. Threat is the p robability
(which can be estimated or derived from empirical evidence) that an attack of a
specific type will occur within a given time. Security is the probability (which can be
estimated or derived from empirical evidence) that the attack of a sp ecific typ e will
be repelled. The integrity of a system can then be defined as integrity = summation
[(1 – threat) (1 – security)] where threat and security are summed over each type of
attack.
Firewalls can deter, but not completely prevent, unauthorized access (hacking)
into computer networks. In some cases, a firewall may allow access only from trusted
locations on the internet to particular computers inside the firewall. Or it may allow
only "safe" information to pass. For example, a firewall may permit users to read E -
mail from remote locations but not to run certain programs.
Effective controls are needed to ensure information system security, that is, the
accuracy, integrity, and safety of information system activities and resources.
Controls can minimize errors, fraud, and destruction in an information services
organization. Effective controls provide quality assurance for information systems.
That is, they can make a computer-based information system more free of errors and
fraud and able to provide information products of higher quality than manual types of
information processing.
The catch phrase "user-friendliness" has become ubiquitous in discussions of
software products. If a program is not user-friendly, it is often doomed to failure,
even if the functions that it performs are valuable. Usability is an attempt to qua ntify
user-friendliness and can be measured in terms of four characteristics: (1) the
physical and or intellectual skill required to learn the system, (2) the time required to
become moderately efficient in the use of the system, (3) the net increase in
productivity (over the approach that the system replaces) measured when the system
is used by someone who is moderately efficient, and (4) a subjective assessment
(sometimes obtained through a questionnaire) of users attitudes toward the system.
The four factors just described are only a sampling of those that have been p roposed
as measures for software quality.
Usability is the ease of use and learnability of a human-made object. In
software engineering, usability is the degree to which software can be used by
specified consumers to achieve quantified objectives with effectiveness, efficien -
cy, and satisfaction in a quantified context of use.
The object of use can be a software application, website, book, tool, machine,
process, or anything a human interacts with. A usability study may be conducted
as a primary job function by a usability analyst or as a secondary job function by
designers, technical writers, marketing personnel, and others.
Usability includes methods of measuring usability, such as needs analysis
and the study of the principles behind an object's perceived efficiency or
elegance. In human-computer interaction and computer science, usability studies
134
the elegance and clarity with which the interaction with a computer program or a
web site (web usability) is designed. Usability differs from user satisfaction and
user experience because usability also considers usefulness.
The term user-friendly is often used as a synonym for usable, though it may
also refer to accessibility. Usability describes the quality of user experience across
websites, software, products, and environments.

VOCABULARY
assurance [əˈʃuərəns] – обеспечение
attribute ['ætrɪbjuːt] – атрибут
authentication [ɔː,θentɪˈkeɪʃən] – идентификация
authorize v. [ˈɔ:θəraɪz] – авторизовывать, разрешать
clarity [ˈklærɪtɪ] – ясность
destruction [dɪsˈtrʌkʃn] – разрушение, уничтожение
deter v. [dɪˈtəː] – удерживать
doom v. [duːm] – обрекать
electrical surges [ɪˈlektrɪkəl ˈsɜːʤɪz] – электрические скачки
elegance [ˈelɪɡəns] – элегантность, утончённость
ensure v. [ɪnˈʃʊə] – гарантировать
failure [ˈfeɪljə] – повреждение, отказ
firewall [ˈfaɪəwɔːl] – брандмауэр
fraud [frɔːd] – мошенничество, подделка
integrity [ɪnˈtegrɪtɪ] – целостность
hacker – хакер
hazard [ˈhæzəd] – опасность
moderately [ˈmɒdərətlɪ] – умеренно, в меру
quantify v. [ˈkwɔntɪfaɪ] – определять количество
repel v. [rɪˈpel] – отражать
restrict v. [rɪsˈtrɪkt] – ограничивать
rigorous [ˈrɪgərəs] – строгий, тщательный
sampling [ˈsɑ:mplɪŋ] – опробование, выборка
threaten v. [θretn] – угрожать
ubiquitous [ju:ˈbɪkwɪtəs] – повсеместный, непременный
usability [,juːsəˈbɪlɪtɪ] – удобство пользования
user-friendliness [ˈjuːzə-ˈfrendlɪnɪs] – удобство для пользователя
withstand v. [wɪðˈstænd] – противостоять, выдерживать

135
EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following words and word
combinations and write them out:
простота использования и познаваемость; в количественном контексте
использования; меры, принятые по обеспечению целостности; доступность;
удобство пользования также рассматривает полноценность; крылатая фраза;
не выполнять определённые программы; как случайные, так и намеренные;
может быть измерена в терминах; за воспринимаемой эффективностью
объекта; из эмпирических свидетельств; более важный; опыт пользователей;
будет происходить в данный момент времени; основная функция задания;
качество программного обеспечения; в брандмауэре; персонал; часто обре -
чена на провал; из доверяемых расположений; угроза и безопасность.

II. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What is integrity in terms of data and network security? 2. What do
measures taken to ensure integrity include? 3. Can data integrity be threatened by
environmental hazards, such as heat, dust, and electrical surges? 4. How many
additional attributes must be defined to measure integrity? 5. What is threat? 6. What
can you say about security? 7. What can the integrity of a system be defined as ? 8.
Why cannot firewalls completely prevent unauthorized access (hacking) into
computer networks? 9. What is needed to ensure information system security? 10. In
what way do effective controls provide quality assurance for information systems ?
11. Why has the catch phrase "user-friendliness" become ubiquitous in discussions
of software products? 12. What terms can usability be measured in? 13. What is
usability in software engineering? 14. What methods does usability include? 15.
Why does usability differ from user satisfaction and user experience? 15. May the
term user-friendly refer to accessibility?

III. Explain in English the meaning of:


firewall, unauthorized access, threat, trusted locations on the internet, website.
IV. Use the following word combinations in your own sentences.
Can also be threatened by; to conduct a usability study; in the age of hackers ;
user-friendly; information products of higher quality.

V. Find in the text and copy out sentences in which the preposition by is used.
Translate them.

VI. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.


136
Word-building: Noun forms can be made from adjectives with the suffix
–able/-ible using the suffix –ity.
(the quality of being able to be or having to be)
Note that spelling changes may occur:
understandable adj. – understandability n.

II. Add the suffix –ity to the following stems, make any necessary spelling
changes, and translate the words:
agreeable, comprehensible, considerable, detectable, expandable, explainable,
remarkable, researchable, flexible, interchangeable, permissible, possible,
questionable, readable, reliable, responsible, traceable.

III. a) Find in the above text nouns with the suffix –ity, copy them out, and
translate. b) Use these nouns in sentences of your own.

IV. Choose the correct preposition to complete each of the following


sentences:
1. There are a number of software firewalls available ….. the op erating system
level. 2. Most modern operating systems include a software firewall, which is enabled
….. default. 3. The software can typically be scheduled to examine all files on the
user's hard disk ….. a regular basis. 4. Correctness is the degree ….. which the
software performs the required functions accurately. 5. Applications that are
designed to handle data from various sources simultaneously require special
handling ….. information flow systems as this violates the basic information flow
policy. 6. All of these programs worked ….. any problems or perceptible
differences. 7. A software firewall can be configured to allow or deny network traffic
to or ….. a service or application running on the operating system.
Keys: without, on, in, at, from, to, by.

V. Read and translate the sentences, define the italicized verb forms:
1. When a process is marked as low-integrity, this means that it is potentially
contaminated. 2. When a process receives remote network, its integrity level
should drop, as the program may contain vulnerabilities and the traffic may be sent
by an attacker to exploit such vulnerabilities. 3. In order for software to be
consistently well engineered, its development must be conducted in an orderly
process. 4. Any software process must be conducted by people who are willing and
able to work effectively with one another. 5. Developing software often involves
people of diverse backgrounds, varying skills, and differing viewpoints on the
product to be developed. 6. This process is defined based on the experience of
engineers who have participated in successful projects in the past. 7. These scientific
laws are now being viewed as algorithms.

VI. Find in the above text and copy out sentences in which linking expressions
such as and but are used. What idea do they introduce? Translate the sentences with
them.
137
VII. Ask all types of questions to the following sentence:
Effective controls provide quality assurance for information systems.

TOPICS FOR DISCUSSION:


I. Is it right or not? Share opinions.
Data integrity is a crucial value in the design of database management software,
operating systems, data structures, and many other types of components.

II. Comment on the following.


An effective software project manager can diagnose the technical and
organizational issues that are most relevant, systematically structure a solution or
properly motivate other practitioners to develop the solution, apply lessons learned
from past projects to new situations, and remain flexible enough to change
direction if initial attempts at problem solution are fruitless.

III. Explain and expand on the following.


“Any activity becomes creative when the doer cares about doing it right, or
doing it better." (John Updike)

Text 2
MALWARE
Read and translate the text.

Malware is a term for any software that gets installed on your machine and
performs unwanted tasks, often for some third party's benefit. Malware programs can
range from being simple annoyances (pop -up advertising) to causing serious
computer invasion and damage (e.g., stealing passwords and data or infecting other
machines on the network). Additionally, some malware programs are designed to
transmit information about your Web-browsing habits to advertisers or other third
party interests, unbeknownst to you.
Some categories of malware are:
Virus – Software that can replicate itself and spread to other co mputers or are
programmed to damage a computer by deleting files, reformatting the hard disk, or
using up computer memory.
Adware – Software that is financially supported (or financially supports another
program) by displaying ads when you're connected to the Internet.
Spyware – Software that surreptitiously gathers information and transmits it to
interested parties. Types of information that is gathered include the Websites visited,
browser and system information, and your computer IP address.
Browser hijacking software – Advertising software that modifies your
browser settings (e.g., default home page, search bars, toolbars), creates desktop
shortcuts, and displays intermittent advertising pop -ups. Once a browser is hijack-
ked, the software may also redirect links to other sites that advertise, or sites that
collect Web usage information.
138
How malware gets through
Malware writers are very experienced in using tricks to get users to download
their malware. Software that comes bundled with "other software" is often called a
Trojan Horse. For example, the instant messenger software bundled with a p rogram
such as WildTangent, a known spyware offender. Peer-to-peer file sharing software,
such as Kaaza, LimeWire, and eMule, bundles various types of malware that are
categorized as spyware or adware. Software that promises to speed up the Internet
connection or assist with downloads (e.g., My Web Search) will often contain
adware.
Malware can exploit security holes in your browser as a way of invading your
machine. Sometimes websites state that software is needed to view the site, in an
attempt to trick users into clicking "Yes" thus installing software onto their machines.
Another trick is if you click "No," many error windows display. Other sites will tell
you that using a certificate makes their site "safe" which is not the case. Certificate
verification means only that the company that wrote the software is the same as the
company whose name appears on the download prompt.
Ad-ware and Spyware
The purpose for spyware to be tracking such data can vary in nature of intent
from anonymous observation software referred to as Adware to very malicious
programs such as keyloggers. These adware programs which track system's internet
visits and report it back to another computer are often installed with programs which
a user has purposely installed on a system. The terms of the installment of these
adware programs are often included in the terms of service of the user desired
software and can be willfully rejected if the user so chooses to deny these ad ditional
programs installation on the system. In some cases the desired software may be
installed without installing the Adware programs and in some cases it is required. The
more malicious version of spyware comes in the form of programs which have been
included in illegally altered software to unknowingly install on a system or which
have been installed by unauthorized users. This type of sp yware is designed to do
many things from tracking keystroke input by the user to crack passwords to
recording personal information of the user such as e-mails and screen recordings.
Spyware and Adware can often lead to the slowing of a system due in part to several
factors.
Spyware programs can slow down your computer in many different ways.
Spyware may change your Windows registry which can cause system slow down and
errors among other problems. If you are not sure what a registry is, it is used by
Windows to find the location of a program or file. Spyware programs can also take
up memory space which may cause problems computers which have a very restricted
amount of secondary storage memory. Spyware may also slow a system down by
taking up high speed memory or RAM as well as bogging down a system's CPU by
taking processing time as well as slowing an internet connection by taking away
bandwidth to broadcast information. All this extra work can cause p roblems with
your computer and ultimately shorten the life span of hardware components and your
computer as a whole.

139
There are several signs that may indicate that spyware has been installed on your
computer, here are some that may be readily noticeable. These are not all of the
indicators of spyware being installed on a system but some of the major p roblems
which may arise.
A large number of advertisement pop-ups appear very frequently every time you
browse the web or even if a web browser has not been opened.
There are bookmarks, favorites, toolbars, search bar or other components which
appear on your browser which you did not install or previously set.
(From Wikipedia, the free encyclopedia)

VOCABULARY
ads (advertisements) – объявления
advertise v. [ˈædvətaɪz] – рекламировать
adware [ˈædweər] – рекламное программное обеспечение
annoyance [əˈnɔɪəns] – раздражение
bandwidth [ˈbændwɪtθ] – пропускная способность
bog down v. [bɔg daʊn] – приостанавливаться
bundle v. [bʌndl] – связываться
bundled with – в комплекте с
damage [ˈdæmɪʤ] – ущерб, повреждение
deny v. – отрицать, отказывать
download v. [ˈdaʊnləʊd] – скачать, загрузить
due [djuː] – должное; соответствующий
gather v. [ˈgæðə] – собирать
get installed v. [ɪnˈstɔːld] – быть установленным
get through v. [θruː] – проходить (через)
hijack v. [ˈhaɪʤæk] – похищать
infect v. [ɪnˈfekt] – заражать
intermittent [ɪntəˈmɪtənt] – перемежающийся, нерегулярный, прерывистый
invade v. [ɪnˈveɪd] – вторгаться, поражать
invasion [ɪnˈveɪʒən] – вторжение
keylogger – регистрация нажатий клавиш
keystroke [ˈkiːstrəʊk] – нажатие клавиши
malicious [məˈlɪʃəs] – злонамеренный
malware [ˈmælweər] – вредоносная программа (злонамеренное программное
обеспечение)
modify v. [ˈmɔdɪfaɪ] – видоизменять
offender [əˈfendə] – правонарушитель
peer-to-peer [ˈpɪə tuːˈpɪə] – равноправные узлы; одноранговый

140
pop-up – выскакивать
prompt – напоминание, подсказка
range from v. [reɪnʤ] – колебаться от
reject v. [ˈriːʤekt] – отвергать
replicate v. [ˈreplɪkeɪt] – копировать
security [sɪˈkjʊərɪtɪ] – безопасность
setting – настройка
shortcut [ˈʃɔːtkʌt] – ссылка; ярлык
spread v. [spred] – распространять(ся)
spyware [ˈspaɪəweər] – шпионская программа; программа-шпион
surreptitiously – скрытно
toolbar [ˈtəʊlbɑːr] – панель инструментов
unbeknownst – неведомый

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Deny, hijack, invasion, installment, messenger, surreptitiously, unbeknownst.

II. Find in the above text English equivalents for the following words and
word combinations and write them out:
срывание системы центрального процессора; создаёт ярлыки на рабочем
столе; такие, как клавиатурные шпионы; могут быть легко заметными; как
проходит вредоносное программное обеспечение; программное обеспечение
хакеров; просматривать веб-страницы; очень ограниченное количество; для
взлома паролей; в пользу некоторого третьего лица; замедлить систему; в
конечном счёте; продолжительность срока службы компонентов аппаратных
средств; сообщения электронной почты и записи на экране; выполняет
нежелательные задачи; передавать информацию по радио; информация о
ваших привычках просматривания веб-страниц; от прослеживания ввода
путём нажатия клавиши; может меняться по характеру намерения; что не так;
в попытке; программное обеспечение мгновенной рассылки; заставить
пользователей загружать своё вредоносное программное обеспечение; другая
уловка; одноранговое программное обеспечение совместного использования
файлов.

III. Find in the above text synonyms of the following words:


to collect, to copy, detriment, discontinuous, intrusion, unfamiliar, lawbreaker,
tuning, to distribute, to publicize, reminder, carrying capacity, to intrude.

IV. Ask your own questions to the above text for class discussion.

V. Retell the above text using as many of the words and word combinations from
Exercise II as you can.

141
VOCABULARY AND GRAMMAR EXERCISES

I. Explain or comment on the following word combinations from text 2 contain-


ing different forms of the verb “to install”. Translate them in writing.
That gets installed, installing software onto their machines, are often installed
with programs, has purposely installed on a system, may be installed without
installing the Adware programs, to unknowingly install on a system, which have been
installed by unauthorized users, spyware has been installed, spyware being installed ,
you did not install.

II. Ask all types of questions to the following sentence:


The system had been installed before we finished our program.

III. Choose the proper verb form and translate the sentences.
1. Some malware ….. no uninstall option, and installs code in unexp ected and
hidden places. 2. A virus ….. of hidden programming instructions that are buried
within an applications or systems program. 3. Viruses are ….. when people download
information from computer networks or the Internet. 4. An optical mouse ….. an
optical sensor instead of a ball underneath. 5. Some systems let you ….. the Web or
chat using your voice instead of the keyboard. 6. An ink-jet printer generates an
image by …… tiny, precise drops of ink onto the paper. 7. Malware, short
for malicious software, is any software used ….. computer operations, gather
sensitive information, gain access to private computer systems, or display
unwanted advertising. 8. Software such as anti-virus, anti-malware, and firewalls
are ….. to protect against activity identified as malicious, and to recover from
attacks. 9. Spyware programs are generally installed by ….. security holes. 10.
A worm is a stand-alone malware program that actively transmits itself over a
network ….other computers. 11. Malware can ….. sensitive information (like
credit card numbers or passwords) or even send fake emails from a user's email
account, often without the user's knowledge.
(Missing verbs: to disrupt, has, provides, steal, spread, to infect, spraying,
exploiting, consists, used, search)

IV. Find in the above text and copy out sentences in which linking expressions
for example, such as, thus, and as well as are used. What idea do they introduce?
Translate the sentences with them.

V. Supply possessive pronouns in agreement with their nouns in the following


sentences:
1. These students have ….. English classes twice a week. 2. We usually go to
see ….. friends on Saturdays. 3. My uncle couldn’t use … notebook because it was
broken. 4. Last year Susan drove ….. son to the Academy every morning. 5. My
sister likes ….. new job very much. 6. I know this scientist but I don’t know …..
assistant. 7. I want to phone Kate. Do you know ….. phone number? 8. Do you
think most people are happy in ….. jobs? 9. Some of these chips help the
142
microprocessor perform ….. tasks. 10. Mary and ….. twin sister have an identical
interest in engineering. 11. End users become more responsible for ….. own
applications systems.

VI. Copy the following sentences. Underline personal pronouns in the


objective case:
1. I really enjoy meeting my friends and talking to them over coffee. 2. She
may contact him by phone this afternoon. 3. My parents never used to let us go out
on our own in the evening. 4. An unauthorized person with access to personal
information could use it for blackmail. 5. Security procedures generally limit
freedom to access the network, so we must implement them carefully. 6. I am very
busy. Please don’t disturb me. 7. Our manager says he knows you and the results of
your computer's calculations. 8. My friend sent me useful information about
cyberthreats. 9. Many people have executed benchmarks on Linux systems and
found them comparable.

VII. Translate the following sentences paying attention to the reflexive


pronouns.
1. Her daughter is too small to eat by herself. 2. Did your p arents redecorate
their flat by themselves? 3. Please sit down and make yourself comfortable. 4. I
introduced myself to my future senior manager. 5. My friend was so sick that he
wasn’t able to look after himself. 6. She blamed herself for the accident yesterday. 7.
Why didn’t you introduce yourself to the meeting? 8. My relatives have already lived
by themselves for a couple of years. 9. Although the text on programming languages
was very difficult we translated it by ourselves. 10. He can give me a piece of advice,
but I want to solve the problems myself. 11. We can do this exercise by ourselves. 12.
They often deceive themselves. 13. My old grandfather often talks to himself. 14.
Until 1900, civil engineering projects were generally managed by creative
architects, engineers, and master builders themselves. 15. The input data to an
interpreter is itself a program. 16. A virus might attach itself to a program such as a
spreadsheet program. 17. A worm is a computer program that has the ability to
copy itself from machine to machine.

VIII. Use the absolute form of possessive pronouns instead of the conjoint in
the following word combinations according to the model:
M o d e l: my task – a task of mine
her plan – a plan of hers

your experiment, our technologies, his result, my computing operations, their


software, her lecture, his invention, my program, our discoveries, your problem,
their explanations, your computer, its users.

IX. Translate the following sentences containing different forms of pronouns:


1. The microprocessor accepts digital data as input, processes it according to
instructions stored in its memory, and provides results as output. 2. These
143
programs can run up to 10 times faster than their counterparts. 3. Physical p arts and
all their physical components are called hardware. 4. Terminal emulation software
allows you to use your microcomputer to simulate a mainframe’s terminal. 5. We
need to mobilize public and private resources to invest in the development of
information and communication technologies in our company. 6. Probability theory
concerns itself with assumed random phenomena. 7. Physical objects can be
represented as numbers and symbols in a computer, and a program can be written to
manipulate them according to the algorithms. 8. The most effective action you can
take is to educate your users and administrators on why your security plan is
important. 9. Viruses software can replicate itself and spread to other computers. 10.
Some malware programs are designed to transmit information about your Web -
browsing habits to advertisers unbeknownst to you. 11. Spyware software
surreptitiously gathers information and transmits it to interested parties. 12. Mal ware
writers are very experienced in using tricks to get users to download their malware.
13. These adware programs track system's internet visits and rep ort them back to
another computer. 14. Facebook has recently announced an agreement with Skype
that allows its users to effortless shift to voice discussion with friends on their
Facebook network. 15. Remote-control software is useful for travelers who want to
use their home machines from afar. 16. An error in the program was caused by a
malfunction in the computer or its related equipment. 17. Viruses are famous not
only for their destructive actions, but also for their special effects, which are
almost impossible to classify. 18. The commands are entered from the keyboard or
from a program in memory or in a storage device, and they are intercepted by a
program that translates them into machine-language instructions.

X. Translate the following sentences into English using word combinations and
phrases from the above text:
1. Если операционная система или некоторые приложения зависают,
медленно работают или неожиданно закр ываются, то ваш компьютер может
быть инфицирован вредоносными программами. 2. Для кражи может
применяться сканирование жёсткого диска, регистрация нажатий клавиш и
перенаправление пользователя на поддельные сайты. 3. Вредоносное
программное обеспечение инфицирует компьютер и собирает личные
данные, получает доступ к программам или к сети, является причиной сбоев
в работе системы. 4. Троянская программа не имеет собственного механизма
размножения. 5. Некоторые вредоносные программы имеют возможность
временно отключать антивирусное программное обеспечение и межсетевые
экраны без вашего ведома. 6. Его компьютер может быть инфицирован
вредоносными программами, поскольку он не запускал каких-либо приложе -
ний, а оперативная память компьютера сильно загружена. 7. Некоторые
сетевые черви распространяются в виде сетевых пакетов, проникают
непосредственно в память компьютера и активизируют свой код. 8.
Вредоносные программы предназначены для получения несанкционирован -
ного доступа к информации.

144
SPEAKING:
I. Discuss the following questions. What is your opinion?
1) How is malware spread?
2) Why is malware dangerous?
3) Why is malware more dangerous than a virus?
4) What precautions must be made to avoid malware and virus attacks?
5) How can you detect an unwanted program?

II. Explain and expand on the following:


As malware attacks become more frequent, attention has begun to shift from
viruses and spyware protection, to malware protection, and programs that have
been specifically developed to combat malware.

III. Discuss the problem of e-mail viruses. Share opinions.

Text 3
ANTIVIRUS SOFTWARE
Read and translate the text.

Antivirus software, sometimes known as anti-malware software, is comp uter


software used to prevent, detect and remove malicious software. Antivirus soft-
ware was originally developed to detect and remove computer viruses. However,
with the proliferation of other kinds of malware, antivirus software started to
provide protection from other computer threats. In particular, modern antivirus
software can protect from: malicious browser helper objects, browser hijackers,
ransomeware, keyloggers, backdoors, rootkits, Trojan horses, worms, malicious
LSPs, fraud tools, adware and spyware. Some products also include protection
from other computer threats, such as infected and malicious URLs,
spam, scam and phishing attacks, online identity (privacy), online banking
attacks, social engineering techniques, advanced persistent threat and botnet
attacks.
One of the few solid theoretical results in the study of computer viruses is
Frederick B. Cohen's 1987 demonstration that there is no algorithm that can
perfectly detect all possible viruses. However, using different layers of defense a
good detection rate may be achieved.
Antivirus software searches the hard drive and external media attached to a
computer for any potential viruses or worms. Broadly speaking, the two main
approaches to virus detection are:
Dictionary Approach: The antivirus software checks a file and automatically
refers to a dictionary of known viruses. If a piece of code in the file matches any
virus identified in the dictionary, then the antivirus software can then either delete the
file, quarantine it so that the file is inaccessible to other programs and its virus is

145
unable to spread, or attempt to repair the file by removing the virus itself from the
file.
Suspicious Behaviour Approach: The anti-virus software monitors the behaviour
of all programs and flags any suspicious behaviour. For example, a program might be
flagged if it tries to change settings to the operating system or write to a certain
directory. Unlike the dictionary approach, the suspicious behaviour approach
therefore provides protection against brand-new viruses that do not yet exist in any
virus dictionaries.
There are several methods which antivirus engine can be used to identify
malware:
Sandbox detection is a particular behavioural-based detection technique that,
instead of detecting the behavioural fingerprint at run time, executes the programs in
a virtual environment, logging what actions the program performs.
Depending on the actions logged, the antivirus engine can determine if the
program is malicious or not. If not, then, the program is executed in the real
environment. This technique has shown to be quite effective, but it is rarely used in
end-user antivirus solutions.
Data mining techniques are one of the latest approaches applied in malware
detection. Data mining and machine learning algorithms are used to try to classify
the behaviour of a file (as either malicious or benign) given a series of file features
that are extracted from the file itself. The overall goal of the data mining process is to
extract information from a data set and transform it into an understandable structure
for further use. Aside from the raw analysis step, it involves database and data
management aspects, data pre-processing, model and inference considerations,
interestingness metrics, complexity considerations, post-processing of discovered
structures, visualization, and online updating.
Signature-based detection
Traditional antivirus software relies heavily upon signatures to identify
malware. Substantially, when a malware arrives in the hands of an antivirus firm,
it is analysed by malware researchers or by dynamic analysis systems. Then, once
it is determined to be a malware, a proper signature of the file is extracted and
added to the signatures database of the antivirus software.
Although the signature-based approach can effectively contain malware
outbreaks, malware authors have tried to stay a step ahead of such software by
writing "oligomorphic", "polymorphic" and, more recently, "metamorphic"
viruses, which encrypt parts of themselves or otherwise modify themselves as a
method of disguise, so as to not match virus signatures in the dictionary.
Rootkit detection
Antivirus software can attempt to scan for rootkits. A rootkit is a type
of malware designed to gain administrative-level control over a computer system
without being detected. Rootkits can change how the operating system functions
and in some cases can tamper with the anti-virus program and render it ineffective.
Rootkits are also difficult to remove, in some cases requiring a complete re-
installation of the operating system.

146
If a file has been infected by a computer virus, anti-virus software will
attempt to remove the virus code from the file during disinfection, but it is not
always able to restore the file to its undamaged state. In such circumstances,
damaged files can only be restored from existing backups or shadow copies (this is
also true for ransomware); installed software that is damaged requires re-
installation.
(From Wikipedia, the free encyclopedia)

Commentary
LSPs: Layered Service Providers are pieces of code that are used to monitor,
intercept and control communication between WinSock and the Internet
application that calls WinSock (e.g. your Internet Browser). Malicious LSPs can
be used to steal information that you submit through the Internet.
URL ([ˈjuː ɑːr ˈel]): A Uniform Resource Locator, commonly informally
termed a web address is a reference to a web resource that specifies its location on
a computer network and a mechanism for retrieving it.

VOCABULARY
approach – подход
aside from [əˈsaɪd] – кроме, за исключением
backdoor – бэкдор («чёрный ход»)
backup – резервное копирование; резервные копии
benign [bɪˈnaɪn] – доброкачественный
botnet – сеть роботов, бот-сеть; (The word botnet is a combination of the
words robot and network.)
data mining – интеллектуальный анализ данных
defense [dɪˈfens] – защита
delete v. – стирать, удалить
detect v. – обнаруживать
directory [dɪˈrektərɪ] – справочник
disguise [dɪsˈɡaɪz] – маскировка
engine [ˈendʒɪn] – механизм
fingerprint [ˈfɪŋɡəprɪnt] – цифровой отпечаток; отпечаток пальца
flag v. – отмечать
fraud – мошенничество, подделка
inference [ˈɪnfərəns] – вывод
keylogger – кейлоггер; клавиатурный перехватчик; регистрация нажатий
клавиш
log v. – регистрировать
malicious browser helper objects – вредоносные вспомогательные объекты
браузера
match v. – соответствовать, подходить, совпадать
147
outbreak – внезапное появление; эпидемия
persistent [pəˈsɪstənt] – постоянный, неизменный
phishing [ˈfɪʃɪŋ] – фишинг
proliferation [prəu ,lɪfəˈreɪʃən] – быстрое увеличение количества, распрост-
ранение
quarantine v. [ˈkwɔrənti: n] – изолировать
ransomware [ˈrænsəmweər] – программное обеспечение с вирусом-
вымогателем
restore v. [rɪsˈtɔː] – восстанавливать
rootkit [ˈru ːtkɪt] – руткит
scam – мошенничество, обман, жульничество
signature [ˈsɪgnɪʧə] – подпись
spam – спам
suspicious – подозрительный
tamper v. – подделывать
threat [θret] – угроза, опасность
visualization [,vɪzjʊəlaɪˈzeɪʃn] – визуализация, отображение
worm [wɜːm] – саморазмножающийся вирус, червь

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[ˈbækˈdɔ:], [dɪˈli:t], [ˈtæmpə], [frɔ:d], [əˈprəutʃ], [ˈbækˈʌp], [səsˈpɪʃəs],
[ˈmælweər], [ˈautbreɪk], [ˈtrəʊʤən], [məˈlɪʃəs].

II. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
определённый поведенческий метод обнаружения; в некоторых случаях;
алгоритмы машинного обучения; вредоносная программа, предназначенная
для получения контроля над компьютерной системой; учитывая ряд
особенностей файла; действительная подпись файла; новые вирусы; вообще
говоря; существующие резервные копии или теневые копии; разные уровни
защиты; модель и соображения вывода; кроме необработанного аналитичес-
кого шага; содержать эпидемии вредоносных программ; в таких
обстоятельствах; чтобы удалить компьютерные вирусы; классифицировать
поведение файла; единообразный локатор (определитель местонахождения)
ресурса; может вмешаться (подделать) в антивирусную программу;
вредоносная программа попадает в руки антивирусной фирмы; угонщики
браузера; оставаться на шаг впереди; жульничество и фишинговые атаки.

III. Fill in the gaps with the words and expressions from the text.

148
1. With the proliferation of other kinds of malware, .... started to provide
protection from other computer threats. 2. ….. searches the hard drive and external
media attached to a computer for any potential viruses or worms. 3. The anti-virus
software checks a file and ….. refers to a dictionary of known viruses. 4. The
suspicious behaviour approach provides protection against brand-new viruses that do
not yet exist in ….. . 5. The overall goal of the data mining process is to extract
information from ….. and transform it into an understandable structure for further
use. 6. When a malware arrives ….. , it is analysed by malware researchers or by
dynamic analysis systems. 7. "Metamorphic" viruses encrypt parts of themselves
or otherwise ….. as a method of disguise, so as to not match virus signatures in the
dictionary. 8. A rootkit is a type of malware designed to gain administrative-level
control over a computer system ….. . 9. If a file has been infected by a computer
virus, ….. will attempt to remove the virus code from the file during disinfection .

IV. Answer the following questions using the word combinations and phrases of
the topical vocabulary:
1. What is antivirus software sometimes known as? 2. Was antivirus soft-
ware originally developed to detect and remove computer viruses? 3. What can
modern antivirus software protect from? 4. When did Frederick B. Cohen
demonstrate that there is no algorithm that can perfectly detect all possible
viruses? 5. What two main approaches to virus detection do you know? 6. Which
technique executes the programs in a virtual environment, logging what actions the
program performs? 7. Which technique is one of the latest approaches applied in
malware detection? 8. What does traditional antivirus software rely heavily up on?
9. What happens when a malware arrives in the hands of an antivirus firm? 10.
What is a rootkit designed for? 11. Can rootkits tamper with the anti-virus
program in some cases? 12. Is anti-virus software always able to restore the file to
its undamaged state if it has been infected by a computer virus?

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text synonyms of the following words:


protection, to eliminate , to recover, to correspond, intelligible, to register,
permanent, seldom, aim, except.

II. Find in the above text and copy out adjectives with the negative prefixes in-
and un-, use them in sentences of your own.

III. Complete the sentences with the words from the box.

web them monitors malware successful malicious operating


executable step files
149
1. The label "antivirus" was originally given to programs that identified and
removed a particular type of ….. called a virus. 2. An antivirus software program is a
computer program that can be used to scan ….. to identify and eliminate comp uter
viruses and other malicious software. 3. Most web browsers disp lay the URL of a
….. page above the page in an address bar. 4. To be …… in the medium and long
term, the virus dictionary approach requires periodic online downloads of up dated
virus dictionary entries. 5. Data mining is the analysis ….. of the "knowledge
discovery in databases" process. 6. The suspicious behaviour approach ….. the
behaviour of all programs. 7. If the program seems to be using self-modifying code or
otherwise appears as a virus, one could assume that the …… program has been
infected with a virus. 8. Phishing is the attempt to acquire sensitive
information such as usernames, passwords, and credit card details, often for …..
reasons, in an electronic communication. 9. Dictionary-based anti-virus software
typically examines files when the computer's operating system creates, opens, and
closes ….. . 10. A sandbox emulates the …. system and runs the executable p rogram
in this simulation.

IV. Find in the above text and copy out sentences in which linking expressions
however, although and otherwise are used. Translate the sentences with them. Say
which of these linking expressions:
a) expresses a contrast?
b) introduces an alternative?

V. Translate the following sentences having gerund, analyze its form and
syntactical function.
1. Being a software developer means always being up to date with the latest
trends and technologies. 2. He wants to use this technique to accomplish examining
files to look for known viruses by means of a virus dictionary. 3. Today antivirus
programs are useful for preventing infections caused by many types of malware,
including worms, Trojan horses, spyware, keyloggers, ransomware, and adware. 4.
These data mining methods can be used in creating new hypotheses to test against the
larger data populations. 5. This anti-virus software can either delete the file, or
attempt to repair it by removing the virus itself from the file. 6. One of the benefits of
buying a system is that it has detailed documentation with it. 7. A rootkit is a typ e
of malware designed to gain administrative-level control over a computer system
without being detected. 8. After examining a file the anti-virus software refers to a
dictionary of known viruses. 9. Malware authors have tried to stay a step ahead of
such software by writing "oligomorphic", "polymorphic" and, more recently,
"metamorphic" viruses. 10. Henry’s being a brilliant malware researcher is a well
known fact.

VI. This sentence includes examples of both ing - forms, the gerund and the
present participle. Say which words in italics are the gerund and which are the
present participle.

150
Some antivirus-software will try to emulate the beginning of the code of each
new executable program that is being executed before transferring control to an
executable program.

VII. Ask all types of questions to the following sentence:


We saw the engineer having made the antivirus program operate.

TOPICS FOR DISCUSSION:


I. Explain and expand on the following:
Data mining is an interdisciplinary subfield of computer science. It is the
computational process of discovering patterns in large data sets involving methods at
the intersection of artificial intelligence, machine learning, statistics, and database
systems.

II. Discuss the following questions. Use the topical vocabulary.


1) How does antivirus software work?
2) How do you imagine antivirus software of the future?

UNIT VII
Text 1
SOFTWARE PROCESS AND PROJECT METRICS
Read and translate the text.

Measurement is fundamental to any engineering discipline, and software


engineering is no exception. Measurement enables us to gain insight by p roviding a
mechanism for objective evaluation. Lord Kelvin once said: When you can measure
what you are speaking about and express it in numbers, you know something about it;
but when you cannot measure, when you cannot express it in numbers, your
knowledge is of a meager and unsatisfactory kind: it may be the beginning of
knowledge, but you have scarcely, in your thoughts, advanced to the stage of a
science. The software engineering community has finally begun to take Lord Kelvin's
words to heart. But not without frustration and more than a little controversy!
Software metrics refers to a broad range of measurements for computer software.
Measurement can be applied to the software process with the intent of imp roving it
on a continuous basis. Measurement can be used throughout a software p roject to
assist in estimation, quality control, productivity assessment, and p roject control.
Finally, measurement can be used by software engineers to help assess the quality of
technical work products and to assist in tactical decision making as a project
proceeds.
What is it? Software process and product metrics are quantitative measures that
enable software people to gain insight into the efficacy of the software p rocess and
the projects that are conducted using the process as a framework. Basic quality and
productivity data are collected. These data are then analyzed, compared against p ast
151
averages, and assessed to determine whether quality and productivity imp rovements
have occurred. Metrics are also used to pinpoint problem areas so that remedies can
be developed and the software process can be improved. Who does it? Software
metrics are analyzed and assessed by software managers. Measures are often
collected by software engineers. Why is it important? If you don’t measure,
judgement can be based only on subjective evaluation. With measurement, trends
(either good or bad) can be spotted, better estimates can be made, and true
improvement can be accomplished over time. What are the steps? Begin by defining
a limited set of process, project, and product measures that are easy to collect. These
measures are often normalized using either size- or function-oriented metrics. The
result is analyzed and compared to past averages for similar projects performed
within the organization.
There are four reasons for measuring software processes, products, and
resources: to characterize, to evaluate, to predict, or to improve. We characterize to
gain understanding of processes, products, resources, and environments, and to
establish baselines for comparisons with future asses sments. We evaluate to
determine status with respect to plans. Measures are the sensors that let us know
when our projects and processes are drifting off track, so that we can bring them back
under control. We also evaluate to assess achievement of quality goals and to assess
the impacts of technology and process improvements on products and processes. We
predict so that we can plan. Measuring for prediction involves gaining understandings
of relationships among processes and products and building models of these
relationships, so that the values we observe for some attributes can be used to predict
others. We do this because we want to establish achievable goals for cost, schedule,
and quality— so that appropriate resources can be applied. Predictive measur es are
also the basis for extrapolating trends, so estimates for cost, time, and quality can be
updated based on current evidence. Projections and estimates based on historical data
also help us analyze risks and make design/cost trade-offs. We measure to imp rove
when we gather quantitative information to help us identify roadblocks, root causes,
inefficiencies, and other opportunities for improving p roduct quality and p rocess
performance.
(By Roger S. Pressman)
VOCABULARY
apply v. [əˈplaɪ]– применять
assess v. – оценивать, давать оценку
assist v. – помогать, содействовать
average [ˈævərɪʤ] – средняя величина; средний
comparison [kəmˈpærɪsn] – сравнение
controversy [ˈkɔntrəvɜːsɪ] – споры; противоречие
drift off v. – дрейфовать прочь
efficacy [ˈefɪkəsɪ] – эффективность
enable v. – давать возможность, позволять
evaluation – оценка, анализ, оценивание; вычисление

152
extrapolating [ɪkˈstræpəleɪtɪŋ] – экстраполирующий
framework [ˈfreɪmwɜːk] – структура, основа
frustration [frʌsˈtreɪʃn] – разочарование
gather v. – собирать
inefficiency [ɪnɪˈfɪʃənsɪ] – неэффективность; неспособность; недействен-
ность
intent – намерение, цель
judgement [ˈʤʌʤmənt] – суждение, оценка
meager – мизерные, скудный
measure v. – оценивать; measure n. – показатель, критерий, мера
metrics [ˈmetrɪks] – система показателей, метрика
performance – производительность, результативность; выполнение
pinpoint v. – точно определить, выявить
proceed v. [prəˈsi:d] – продолжать
quantitative – количественный
remedy – средство
roadblock – преграда, заграждение
scarcely [ˈskɛəslɪ] – вряд ли, с трудом
schedule [ˈʃedju:l] – расписание; планирование
spot v. – обнаружить, определить
throughout [θruːˈaʊt] – на протяжении; повсюду
thought [θɔːt] – мысли

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following word
combinations and write them out:
наши проекты и процессы сбиваются с курса; модели построения этих
отношений; для сравнения с будущими оценками; на протяжении всего
проекта программного обеспечения; даёт нам возможность разобраться; для
оказания помощи в оценке; обеспечивая механизм; прогнозирующие меры;
сделать компромиссы дизайна/стоимости; не исключение; выразить в числах;
установить достижимые цели; улучшения продуктов и процессов; чтобы
точно определить проблемные участки; без разочарования; количественные
показатели; соответствующие ресурсы; на постоянной основе; с будущими
оценками; проекты, выполняемые в рамках организации; широкий диапазон
измерений.

II. Look through the text again and find the answers to the following questions:
1. Why is measurement fundamental to any engineering discip line? 2. Do you
agree with Lord Kelvin’s words? Explain why. 3. What does software metrics refer

153
to? 4. In which case can measurement be applied to the software p rocess? 5. What
enables software people to gain insight into the efficacy of the software p rocess and
the projects? 6. What are metrics also used to? 7. Who is software metrics analyzed
and assessed by? 8. Why is it important not to base judgement on subjective
evaluation? 9. What four reasons are there for measuring software processes,
products, and resources? 10. What does measuring for prediction involve? 11. What
helps us analyze risks and make design/cost trade-offs?

III. Fill in the gaps with the words and expressions from the text.
1. Measurement can be applied to the software process ….. on a continuous
basis. 2. These data are then analyzed, compared against past averages, and assessed
to determine whether ….. . 3. ….. are often collected by software engineers. 4. The
result is analyzed and compared to ….. for similar projects performed within the
organization. 5. Measures are the sensors that let us know when ….. , so that we can
bring them back under control. 6. Projections and estimates based ….. also help us
analyze risks and make design/cost trade-offs.

IV. Make up your own sentences or situations with the following word
combinations:
to be no exception; to establish goals; without frustration; with respect to; to
gain understanding of; to be based on subjective evaluation; to assist in estimation; to
bring back under control; to assess achievement; to gain insight; to accomp lish over
time.

V. Retell the above text using as many of the word combinations and phrases of
the topical vocabulary as you can.

VI. Give your own definitions of the following terms:


prediction, software process, baselines for comparisons, productivity
improvements, metrics.

VOCABULARY AND GRAMMAR EXERCISES

I. a) Study the meaning of the verbs with the suffix –ify.

The suffix –ify means to make or to become like the base word.

class – classify false – falsify


simple – simplify identity – identify
intense – intensify example – exemplify
clear – clarify person – personify
mode – modify specific – specify

b) Read and translate these word combinations:

154
to classify measurements for computer software; to identify building models; to
intensify assessments; to falsify quantitative measures; to clarify function-oriented
metrics; to exemplify quantitative information; to simplify a difficult explanation; to
personify projects performed within the organization ; to identify a mechanism for
objective evaluation; to clarify achievable goals; to falsify the numbers; to modify the
software process; to identify opportunities for imp roving p rocess p erformance; to
specify quality goals.

II. Find in the above text and copy out phrases containing nouns with the suffix –
ment, explain what base words these derivative nouns are formed from, translate
them.

III. Find in the text and copy out phrases in which the preposition by is used,
translate them.

IV. Ask all types of questions to the following sentence:

These data are then analyzed, compared against past averages, and assessed to
determine whether quality and productivity improvements have occurred.

V. Choose the proper verb form and translate the sentences.


1. A software metric is a standard of a measure of a degree to which a
software system or process ….. some property. 2. Evidence shows that software
metrics are ….. widely used by government agencies, IT consultants, academic
institutions, and commercial and academic development estimation software. 3.
Product metrics ….. the characteristics of the product such as size, complexity,
design features, performance, and quality level. 4. Software quality metrics are
more closely ….. with process and product metrics than with project metrics. 5.
The defect rate metrics ….. code quality per unit. 6. Process metrics …. collected
across all projects over long periods of time. 7. The skill and motivation of people
….. been shown to be the single most influential factor in quality and
performance. 8. Project level defect rates, efforts, calendar times and related data
are collected and evaluated in an attempt …. indicators that can improve
organizational process performance. 9. Since quantitative measurements are
essential in all sciences, there ….. a continuous effort by computer
science practitioners and theoreticians to bring similar approaches to s oftware
development.
(Missing verbs: has, describe, to uncover, possesses, measure, is, being,
associated, are)

VI. Define the functions of the past participles in the following sentence:
The result is analyzed and compared to past averages for similar p rojects
performed within the organization.

155
VII. This sentence includes examples of both ing - forms, the gerund and the
present participle. Say which words are the gerund and which are the present
participle.
Measuring for prediction involves gaining understandings of relationships
among processes and products and building models of these relationships, so that the
values can be used to predict others.

SPEAKING:
I. Discuss the arguments for the following problem. Make use of the vocabulary
of the topic.
The only rational way to improve any process is to measure specific attributes of
the process, develop a set of meaningful metrics based on these attributes and then
use the metrics to provide indicators that will lead to a strategy for improvement.
II. Think of reasons why we pay tribute to great scientists. Speak about them.

III. Comment upon the following statement. Share opinions.


Modern civilization is everything that has been achieved thanks to science.

Text 2
SOFTWARE PROCESS METRICS
Read and translate the text.

Within the software engineering context, a measure provides a quantitative


indication of the extent, amount, dimension, capacity, or size of some attribute of a
product or process. Measurement is the act of determining a measure. The IE EE
Standard Glossary of Software Engineering Terms defines metric as “a quantitative
measure of the degree to which a system, component, or p rocess p ossesses a given
attribute.” When a single data point has been collected (e.g., the number of errors
uncovered in the review of a single module), a measure has been established.
Measurement occurs as the result of the collection of one or more data points (e.g., a
number of module reviews are investigated to collect measures of the number of
errors for each).
A software metric relates the individual measures. A software engineer collects
measures and develops metrics so that indicators will be obtained. An indicator is a
metric or combination of metrics that provide insight into the software process, a
software project, or the product itself. An indicator provides insight that enables the
project manager or software engineers to adjust the process, the project, or the
process to make things better. For example, four software teams are working on a
large software project. Each team must conduct design reviews but is allowed to
select the type of review that it will use. Upon examination of the metric, errors found
per person-hour expended, the project manager notices that the two teams using more
formal review methods exhibit errors found per person-hour expended that is 40
percent higher than the other teams. Assuming all other parameters equal, this
156
provides the project manager with an indicator that formal review methods may
provide a higher return on time investment than another, less formal review approach.
He may decide to suggest that all teams use the more formal approach. The metric
provides the manager with insight. And insight leads to informed decision making.
Metrics should be collected so that process and product indicators can be
ascertained. Process indicators enable a software engineering organization to gain
insight into the efficacy of an existing process (i.e., the paradigm, software
engineering tasks, work products, and milestones). They enable managers and
practitioners to assess what works and what doesn’t. Process metrics are collected
across all projects and over long periods of time. Their intent is to provide indicators
that lead to long-term software process improvement. Project indicators enable a
software project manager to (1) assess the status of an ongoing project, (2) track
potential risks, (3) uncover problem areas before they go “critical,” (4) adjust work
flow or tasks, and (5) evaluate the project team’s ability to control quality of software
work products. In some cases, the same software metrics can be used to determine
project and then process indicators. In fact, measures that are collected by a p roject
team and converted into metrics for use during a project can also be transmitted to
those with responsibility for software process improvement. For this reason, many of
the same metrics are used in both the process and project domain.
Software process metrics can provide significant benefit as an organization
works to improve its overall level of process maturity. However, like all metrics,
these can be misused, creating more problems than they solve. Grady Booch suggests
a “software metrics etiquette” that is appropriate for both managers and practitioners
as they institute a process metrics program:
• Use common sense and organizational sensitivity when interpreting metrics
data.
• Provide regular feedback to the individuals and teams who collect measures
and metrics.
• Don’t use metrics to appraise individuals.
• Work with practitioners and teams to set clear goals and metrics that will be
used to achieve them.
• Never use metrics to threaten individuals or teams.
• Metrics data that indicate a problem area should not be considered “negative.”
These data are merely an indicator for process improvement.
• Don’t obsess on a single metric to the exclusion of other important metrics.
As an organization becomes more comfortable with the collection and use of
process metrics, the derivation of simple indicators gives way to a more rigorous
approach called statistical software process improvement (SSPI). In essence, SSPI
uses software failure analysis to collect information about all errors and defects
encountered as an application, system, or product is developed and used. Failure
analysis works in the following manner: 1. All errors (e.g., flaw in specification, flaw
in logic, nonconformance to standards) and defects are categorized by origin. 2. The
cost to correct each error and defect is recorded.
Software process metrics are used for strategic purposes. Software project
measures are tactical. That is, project metrics and the indicators derived from them
157
are used by a project manager and a software team to adapt p roject work flow and
technical activities. The first application of project metrics on most software projects
occurs during estimation. Metrics collected from past projects are used as a basis
from which effort and time estimates are made for current software work. The project
manager uses these data to monitor and control progress.
(By Roger S. Pressman)

Commentary
IEEE: The Institute of Electrical and Electronics Engineers (pronounced "I
triple E") is a professional association with its corporate office in New York City. Its
objectives are the educational and technical advancement of electrical and electronic
engineering, telecommunications, computer engineering and allied disciplines.

Grady Booch (born February 27, 1955) is an American software engineer, best
known for developing the Unified Modeling Language with Ivar Jacobson and James
Rumbaugh. He is recognized internationally for his innovative work in software
architecture, software engineering, and collaborative development environments.

VOCABULARY
adjust v. [əˈʤʌst] – регулировать, настраивать; приспосабливать
appraise v. – оценивать
approach [əˈprəʊʧ] – подход, метод
ascertain v. – установить
attribute – свойство, качество; отличительная черта
data point – точка данных
dimension – измерение
e. g. (сокр. от лат. exempli gratia) – например
encounter v. [ɪnˈkaʊntə] – сталкиваться, обнаруживать
equal [ˈi:kwəl] – приравнивать, равнять
estimation – оценка, определение; расчёт
exclusion [ɪksˈklu:ʒən] – исключение
expend v. – тратить
extent – степень, мера; размер
feedback – обратная связь, ответная реакция
flaw [flɔː] – недостаток
i.e. (id est) – то есть
indication – указание, показание; обозначение
indicator – показатель
investigate v. – исследовать, изучать
maturity [məˈtjʊərɪtɪ] – завершённость; зрелость
merely [ˈmɪəlɪ] – только, лишь

158
metrics [ˈmetrɪks] – метрика, система показателей
milestone [ˈmaɪlstəʊn] – веха
obsess v. on – преследовать, завладеть; зацикливаться на
obtain v. – получить, добиться; приобретать
overall [ˈəʊvərɔːl] – общий, всесторонний
possess v. [pəˈzes] – обладать, иметь
relate v. – иметь отношение, затрагивать
responsibility – ответственность
review [rɪˈvju:] – анализ, проверка; рассмотрение
rigorous [ˈrɪgərəs] – тщательный, точный
single – отдельный, единственный
threaten v. [θretn] – угрожать
uncover v. [ʌnˈkʌvə] – раскрыть, обнаруживать

EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Ascertain, dimension, expend, estimation, project, quantitative, strategic.

II. Find in the above text English equivalents for the following word
combinations and write them out:
не зацикливайтесь на одной метрике; более строгий подход; усилие и
оценки времени; текущий проект; ошибки, найденные на затраченный
человеко-час; встречаемые как приложение; общий уровень зрелости
процессов; ошибки, обнаруженные в обзоре; стратегические цели; для оценки
физических лиц; анализ отказов; обладает данной отличительной чертой;
недостаток в спецификации; долгосрочные улучшения процесса разработки
программного обеспечения; как для руководителей, так и специалистов-
практиков; количество ошибок; может обеспечить значительные выгоды;
следующим образом; оценить способность команды проекта; касается
отдельных мер; установить чёткие цели; менеджер с пониманием;
преобразуются в систему показателей (метрики).

III. Find in the text synonyms of the following words:


to face, analysis, to endanger, defect, aim, to establish, distinctive feature, total,
calculation, elimination, guideline, to explore.

IV. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What does a measure provide within the software engineering context? 2.
What is the definition of a metric according to the IEEE Standard Glossary of
Software Engineering Terms? 3. Does the measurement occur as the result of the

159
collection of one or more data points? 4. Who collects measures and develops metrics
so that indicators will be obtained? 5. What is an indicator? 6. What enables the
project manager or software engineers to adjust the process? 7. Which review
methods may provide a higher return on time investment than another less formal
review approach? 8. Does insight lead to informed or uninformed decision making?
9. How should metrics be collected? 10. What do project indicators enable a software
project manager to do? 11. What can the same software metrics be used for in some
cases? 12. When can software process metrics provide significant benefit ? 13. What
kind of “software metrics etiquette” does Grady Booch suggest? 14. When does the
derivation of simple indicators give way to a more rigorous approach? 15. What does
statistical software process improvement use? 16. How does failure analysis work?
17. Are software process metrics used for strategic or tactical p urposes? 18. What
does it mean for software project measures to be tactical? 19. What are metrics
collected from past projects used for?

V. Fill in the gaps with the words and expressions from the text.
1. Measurement is the act of determining ….. . 2. Measurement occurs ….. of
the collection of one or more data points. 3. ….. collects measures and develops
metrics so that indicators will be obtained. 4. Each team must conduct ….. but is
allowed to select the type of review that it will use. 5. Process indicators enable a
software engineering organization ….. the efficacy of an existing process. 6.
However, like all metrics, these can be misused, creating ….. than they solve. 7. All
errors (e.g., flaw in specification, flaw in logic, nonconformance to standards) and
defects are categorized ….. . 8. The project manager uses these data ….. .

VI. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which linking expressions for
example and in fact are used. Translate the sentences with them. Say which of these
linking expressions:
a) expresses reality and contradicts an idea in the previous sentence?
b) introduces exemplification and summation?

II. Make up your own sentences or situations with the following phrases:
to collect measures, to provide insight into, to conduct a design review, for
current software work, to obsess on a single metric, responsibility for software
process improvement, to work on a large software project, in some cases.

III. Find in the text and copy out sentences in which the preposition during is
used, translate them.

IV. Translate the sentences and define the italicized verb forms.
160
1. IEEE develops and participates in educational activities such as accreditation
of electrical engineering programs in institutes of higher learning. 2. An individual
can join the IEEE as a student member, p rofessional member, or associate member.
3. As a project proceeds, measures of effort and calendar time expended are
compared to original estimates. 4. Booch earned his master's degree in electrical
engineering in 1979 from the University of California. 5. Booch has devoted his
life's work to improving the art and the science of software development. 6.
The Booch method is a technique used in software engineering. 7. System Utility
programs are responsible to do specialized, individual level tasks. 8. With these
functions the software becomes the ability to upload and download from the Internet.
9. A metric is a measurement of the degree that any attribute belongs to a system,
product or process. 10. Process metrics focus on improving the long term p rocess of
the team or organization.

V. Ask all types of questions to the following sentence:


Process metrics are collected across all projects and over long periods of time.

VI. Find in the above text and copy out sentences containing Future Simple
Passive, translate them.

VII. State functions of the past participles in the following sentence:


Metrics collected from past projects are used as a basis from which effort and
time estimates are made for current software work.

TALKING TOPICS:

I. Explain and expand on the following definition of measurement:


Measurement is the empirical, objective assignment of numbers, according to a
rule derived from a model or theory, to attributes of objects or events with the intent
of describing them.

II. What could you add to prove this point of view? Give your reasons.
Metrics are used to maintain control over the software development p rocess. It
allows managers to manage resources more efficiently so the overall team would be
more productive. Using metrics companies can make much better estimations on the
cost, length, effort, etc. of a project which leads to them giving a more accurate view
of the overall project. This better view will allow the company to bid for projects
more successfully, make projects more likely to succeed and will greatly reduce the
risk of late delivery, failure, being penalized for late delivery, bankruptcy, etc.

161
Text 3
METRICS FOR SOFTWARE QUALITY
Read and translate the text.

The overriding goal of software engineering is to produce a high- quality


system, application, or product. To achieve this goal, software engineers must apply
effective methods coupled with modern tools within the context of a mature software
process. In addition, a good software engineer (and good software engineering
managers) must measure if high quality is to be realized. The qualit y of a system,
application, or product is only as good as the requirements that describe the problem,
the design that models the solution, the code that leads to an executable program, and
the tests that exercise the software to uncover errors. A good software engineer uses
measurement to assess the quality of the analysis and design models, the source code,
and the test cases that have been created as the software is engineered. To accomplish
this real-time quality assessment, the engineer must use technical measures to
evaluate quality in objective, rather than subjective ways. The project manager must
also evaluate quality as the project progresses. Private metrics collected by individual
software engineers are assimilated to provide project level results. Although many
quality measures can be collected, the primary thrust at the project level is to measure
errors and defects. Metrics derived from these measures provide an indication of the
effectiveness of individual and group software quality assurance and control
activities. Metrics such as work product (e.g., requirements or design) errors per
function point, errors uncovered per review hour, and errors uncovered p er testing
hour provide insight into the efficacy of each of the activities implied by the metric.
Error data can also be used to compute the defect removal efficiency (DRE) for each
process framework activity. McCall and Cavano defined a set of quality factors that
were a first step toward the development of metrics for software quality. These
factors assess software from three distinct points of view: (1) product operation
(using it), (2) product revision (changing it), and (3) product transition (modifying it
to work in a different environment; i.e., "porting" it).
First, the framework provides a mechanism for the project manager to identify
what qualities are important. These qualities are attributes of the software in addition
to its functional correctness and performance which have life cycle implications.
Such factors as maintainability and portability have been shown in recent years to
have significant life cycle cost impact . . . Secondly, the framework provides a means
for quantitatively assessing how well the development is progressing relative to the
quality goals established . . . Thirdly, the framework provides for more interaction of
QA personnel throughout the development effort . . . Lastly, . . . quality assurance
personnel can use indications of poor quality to help identify [better] standards to be
enforced in the future. It is interesting to note that nearly every aspect of comp uting
has undergone radical change as the years have passed since McCall and Cavano did
their seminal work in 1978. But the attributes that provide an indication of software
quality remain the same. Although there are many measures of software quality,
correctness, maintainability, integrity, and usability provide useful indicators for the
project team.
162
Correctness. A program must operate correctly or it provides little value to its
users. Correctness is the degree to which the software performs its required function.
The most common measure for correctness is defects per KLOC, where a defect is
defined as a verified lack of conformance to requirements. When considering the
overall quality of a software product, defects are those problems reported by a user of
the program after the program has been released for general use. For quality
assessment purposes, defects are counted over a standard p eriod of time, typ ically
one year.
Maintainability. Software maintenance accounts for more effort than any other
software engineering activity. Maintainability is the ease with which a p rogram can
be corrected if an error is encountered, adapted if its environment changes, or
enhanced if the customer desires a change.
Measurement enables managers and practitioners to improve the software
process; assist in the planning, tracking, and control of a software project; and assess
the quality of the product (software) that is produced. Measures of specific attributes
of the process, project, and product are used to compute software metrics. These
metrics can be analyzed to provide indicators that guide management and technical
actions. Process metrics enable an organization to take a strategic view by p roviding
insight into the effectiveness of a software process. Project metrics are tactical. They
enable a project manager to adapt project work flow and technical approach in a real -
time manner. Both size- and function-oriented metrics are used throughout the
industry. Size-oriented metrics use the line of code as a normalizing factor for other
measures such as person-months or defects. The function point is derived from
measures of the information domain and a subjective assessment of problem
complexity.
Software quality metrics, like productivity metrics, focus on the process, the
project, and the product. By developing and analyzing a metrics baseline for quality,
an organization can correct those areas of the software process that are the cause of
software defects. Metrics are meaningful only if they have been examined for
statistical validity. The control chart is a simple method for accomplishing this and at
the same time examining the variation and location of metrics results.
Data collection, metrics computation, and metrics analysis are the three steps
that must be implemented to begin a metrics program. In general, a goal-driven
approach helps an organization focus on the right metrics for its business. By creating
a metrics baseline—a database containing process and product measurements—
software engineers and their managers can gain better insight into the work that they
do and the product that they produce.
(By Roger S. Pressman)

Commentary
McCall and Cavano: James A. McCall and Joseph P. Cavano are project
engineers.
QA: Quality assurance is a way of preventing mistakes or defects in
manufactured products and avoiding problems when delivering solutions or services
to customers.
163
KLOC: Short for thousands (kilo) of lines of code. KLOC is a measure of the
size of a computer program. The size is determined by measuring the number of lines
of the source code a program has.

VOCABULARY
adapt v. – адаптировать, приспособить
account for v. – составлять; объясняться
apply v. – применять, использовать
assurance [əˈʃʊərəns] – гарантия, обеспечение
baseline – базовая линия, исходный уровень
conformance [kənˈfɔːməns] – соответствие
distinct [dɪsˈtɪŋkt] – определённый, особый, отдельный
enforce v. [ɪnˈfɔːs] – приводить в исполнение; принуждать
engineer v. – проектировать; устраивать
exercise v. [ˈeksəsaɪz] – осуществлять, выполнять
framework [ˈfreɪmwɜːk] – структура, основа
imply v. – подразумевать, предполагать, означать
life cycle – жизненный цикл, цикл развития; срок службы
maintainability – пригодность для обслуживания
mature [məˈtjʊə] – продуманный, развитый
measure v. – измерять, оценивать, определять
overriding [əʊvəˈraɪdɪŋ] – важнейший, основной, главный, первостепенный
quality assurance – обеспечение качества
remain v. – оставаться, находиться
removal [rɪˈmu:vəl] – удаление, устранение, исключение
thrust – толчок; направление
track v. – прослеживать, отслеживать
transition [trænˈsɪʒən] – переход, превращение
validity [vəˈlɪdɪtɪ] – законность, обоснованность

EXERCISES TO THE TEXT

I. Re-write the following transcribed words into English spelling:


[əˈdæpt], [θrʌst], [əˈplaɪ], [dɪˈfekt], [ˈprɔʤekt], [səˈluːʃn], [enʤɪˈnɪə], [ˈmeʒə],
[meɪnˈteɪnəbɪlɪtɪ].
II. Find in the above text English equivalents for the following word
combinations and write them out:
приходится больше усилий; основное направление на уровне проекта;
эффективность удаления дефекта; стандарты должны быть исполнены в
будущем; оценить качество продукта; развитый процесс разработки
программного обеспечения; причина дефектов программного обеспечения;
164
вместе с современными инструментами; необходимая функция; приспособить
производственный поток проекта; способом в реальном времени; атрибуты
программного обеспечения; цели, установленные относительно качества;
проверенное отсутствие соответствия к требованиям; получать стратегическое
представление; приводит к исполняемой программе; управляемый целью
подход; меры, такие как человеко-месяцы или дефекты; сообщённые
пользователем проблемы; различные точки зрения.

III. Look through the text again and find the answers to the following questions:
1. What must software engineers do to achieve the overriding goal of software
engineering? 2. Why must a good software engineer measure if high quality is to be
realized? 3. What measures must the engineer use to accomplish this real-time quality
assessment? 4. What are private metrics collected by individual software engineers
assimilated for? 5. What provides an indication of the effectiveness of individual and
group software quality assurance and control activities? 6. Can error data also be used
to compute the defect removal efficiency for each process framework activity? 7.
What three distinct points of view can be used to assess software according to McCall
and Cavano? 8. What provides a mechanism for the project manager to identify what
qualities are important? 9. Does the framework provide a means for quantitat ively
assessing how well the development is progressing relative to the quality goals
established? 10. Do the attributes that provide an indication of software quality
remain the same as the years have passed since McCall and Cavano did their seminal
work in 1978? 11. What kind of measures of software quality are there to p rovide
useful indicators for the project team? 12. Can you give a definition of correctness ?
13. What is the role of maintainability? 14. Why is measurement important for
managers and practitioners? 15. What is the difference between p rocess metrics and
project metrics? 16. Which metrics use the line of code as a normalizing factor for
other measures such as person-months or defects? 17. In what way can an
organization correct those areas of the software process that are the cause of software
defects? 18. What three steps must be implemented to begin a metrics program?

IV. Find in the above text synonyms of the following words:


transformation, to make up, to monitor, advanced, accordance, guarantee, initial
level, particular, unmistakably, to employ, flaw.

V. Outline the main ideas of the above text and write a summary.

VOCABULARY AND GRAMMAR EXERCISES

I. Complete and translate:

Word-building: abstractive adj. + ness = abstractiveness n.

Assiduous, aware, bright, busy, complete, dark, friendly, innovative, large, light,
mean, new, open, persuasive, quick, ready, robust, sensitive, unique.
165
II. Find in the above text nouns with the suffix –ness, copy them out and
translate.

III. Make up your own sentences or situations with the following phrases:
the overriding goal, for statistical validity, to guide management, to p rovide an
indication of the effectiveness, to use the measure for correctness, to uncover errors,
to derive from the measures, a set of quality factors, over a standard period of time, to
be meaningful.

IV. Find in the above text and copy out sentences in which linking expressions
although and in addition are used. What idea do they introduce? Translate the
sentences with them.

V. Complete the sentences below by choosing the correct prepositions:


of (2) into for per to (2) in from

1. Communicativeness is necessary ….. testability and human engineering. 2.


Software that exhibits high quality ….. operation, transition, and revision will
continue to serve its users well. 3. Actions can be taken in response to the insight
gained ….. this information. 4. Software metrics can be classified …… three
categories: product metrics, process metrics, and project metrics. 5. Product metrics
describe the characteristics ….. the product such as size, complexity, design features,
performance, and quality level. 6. Languages that have a fixed column format such as
FORTRAN may have the physical-lines-to-source-instructions ratio closest ….. one.
7. The defect rate metrics measure code quality ….. unit. 8. When development ….. a
software product is complete and it is released ….. the market, it enters the
maintenance phase of its life cycle.

VI. Put the Infinitives in brackets in the Present Perfect Passive Tense:

have/has been given

1. Metrics always (to use) to help guide managers with decisions about their
organizations. 2. Our software engineer has used a cost-oriented metric for
maintainability called spoilage—the cost to correct defects encountered after the
software (to release) to its end-users. 3. Metrics are meaningful only if they (to
examine) for statistical validity. 4. The measurement is used to assess the quality of
the analysis and design models, the source code, and the test cases that (to create) as
the software is engineered. 5. Such factors as maintainability and portability (to
show) in recent years to have significant life cycle cost impact. 6. Defects are those
problems reported by a user of the program after the program (to release) for general
use. 7. Metrics are meaningful only if they (to examine) for statistical validity.

VII. Define the functions of the Simple Infinitive in the following sentences:

166
1. The purpose of software is to provide certain functionality for solving some
specific problems or to perform certain tasks. 2. It can be difficult to determine
which measures are the best for giving a true picture of software quality. 3. Data
collection, metrics computation, and metrics analysis are the three steps that must be
implemented to begin a metrics program. 4. The ultimate measure of software
productivity is the number of functions a development team can produce given a
certain amount of resource, regardless of the size of the software in lines of code. 5.
To achieve this goal, we must apply effective methods coupled with modern tools
within the context of a mature software process. 6. To acco mplish this real-time
quality assessment, the engineer must use technical measures to evaluate quality in
objective way. 7. Process metrics enable an organization to take a strategic view by
providing insight into the effectiveness of a software process. 8 . The framework
provides a mechanism for the project manager to identify what qualities are
important. 9. The overriding goal of software engineering is to produce a high -
quality application. 10. Private metrics collected by individual software engineers are
assimilated to provide project level results.

VIII. Ask all types of questions to the following sentence:


These metrics can be analyzed to provide indicators that guide management and
technical actions.

TALKING TOPICS:

I. Discuss these questions. Share opinions.


1) Is defect tracking necessary?
2) Who should decide which metrics are most useful?
3) How can a team get the most value out of its quality metrics program?

II. Explain and expand on the following statement:


By developing and analyzing a metrics baseline for quality, an organization can
correct those areas of the software process that are the cause of software defects.
III. Comment upon the following quotation:
“Software metrics let you know when to laugh and when to cry.” (Tom Gilb)

167
UNIT VIII
Text 1
RISK ANALYSIS AND MANAGEMENT
Read and translate the text.

Risk analysis and management are a series of steps that help a software team to
understand and manage uncertainty. Many problems can plague a software project. A
risk is a potential problem—it might happen, it might not. But, regardless of the
outcome, it’s a really good idea to identify it, assess its probability of occurrence,
estimate its impact, and establish a contingency plan should the problem actually
occur. Everyone involved in the software process—managers, software engineers,
and customers—participate in risk analysis and management. Why is it imp ortant?
Think about the Boy Scout motto: “Be prepared.”
Software is a difficult undertaking. Lots of things can go wrong, and frankly,
many often do. It’s for this reason that being prepared— understanding the risks and
taking proactive measures to avoid or manage them—is a key element of good
software project management. What are the steps? Recognizing what can go wrong is
the first step, called “risk identification.” Next, each risk is analyzed to determine the
likelihood that it will occur and the damage that it will do if it does occur. Once this
information is established, risks are ranked, by probability and impact. Finally, a plan
is developed to manage those risks with high probability and high impact. What is the
work product? Peter Drucker once said, "While it is futile to try to eliminate risk, and
questionable to try to minimize it, it is essential that the risks taken be the right risks."
Before we can identify the "right risks" to be taken during a software project, it is
important to identify all risks that are obvious to both managers and practitioners.
Reactive vs. proactive strategies
Reactive risk strategies have been laughingly called the “Indiana Jones School of
risk management”. In the movies that carried his name, Indiana Jones, when faced
with overwhelming difficulty, would invariably say, “Don’t worry, I’ll think of
something!” Never worrying about problems until they happened, Indy would react
in some heroic way. Sadly, the average software project manager is not Indiana Jones
and the members of the software project team are not his trusty sidekicks. Yet, the
majority of software teams rely solely on reactive risk strategies. At best, a reactive
strategy monitors the project for likely risks. Resources are set aside to deal with
them, should they become actual problems. More commonly, the software team does
nothing about risks until something goes wrong. Then, the team flies into action in an
attempt to correct the problem rapidly. This is often called a fire fighting mode.
When this fails, “crisis management” takes over and the project is in real jeopardy. A
considerably more intelligent strategy for risk management is to be proactive. A
proactive strategy begins long before technical work is initiated. Potential risks are
identified, their probability and impact are assessed, and they are ranked by
importance. Then, the software team establishes a plan for managing a risk. The
primary objective is to avoid a risk, but because not all risks can be avoided, the team
works to develop a contingency plan that will enable it to respond in a controlled and
effective manner.
168
Although there has been considerable debate about the proper definition for the
software risk, there is general agreement that the risk always involves two
characteristics: a set of risk information sheets is produced. How do I ensure that I’ve
done it right? The risks that are analyzed and managed should be derived from
thorough study of the people, the product, the process, and the project.
• Uncertainty—the risk may or may not happen; that is, there are no 100%
probable risks.
• Loss—if the risk becomes a reality, unwanted consequences or losses will
occur.
When risks are analyzed, it is important to quantify the level of uncertainty and
the degree of loss associated with each risk. To accomplish this, different categories
of risks are considered. Project risks threaten the project plan. That is, if project risks
become real, it is likely that project schedule will slip and that costs will increase.
Project risks identify potential budgetary, schedule, personnel (staffing and
organization), resource, customer, and requirements problems and their imp act on a
software project. Project complexity, size, and the degree of structural uncertainty
can also be defined as project (and estimation) risk factors. Technical risks threaten
the quality and timeliness of the software to be produced. If a technical risk becomes
a reality, implementation may become difficult or impossible. Technical risks
identify potential design, implementation, interface, verification, and maintenance
problems. In addition, specification ambiguity, technical uncertainty, technical
obsolescence, and "leading-edge" technology are also risk factors.
(By Roger S. Pressman)
Commentary
Peter Drucker: Peter Ferdinand Drucker ([ˈdrʌkər]; German: [ˈdʀʊkɐ];
November 19, 1909 – November 11, 2005) was an Austrian-born American
management consultant, educator, and author, whose writings contributed to the
philosophical and practical foundations of the modern business corporation. He
was also a leader in the development of management education, he invented the
concept known as management by objectives and self-control, and he has been
described as "the founder of modern management".

The Boy Scout: The Boy Scouts of America (BSA) is one of the largest
youth organizations in the United States, with more than 2.4 million youth
members and nearly one million adult volunteers. Since its founding in 1910 as
part of the international Scout Movement, more than 110 million Americans have
been at some point members of the BSA.

VOCABULARY
ambiguity [æmbɪˈgju:ɪtɪ] – двусмысленность, неоднозначность
avoid v. [əˈvɔɪd] –избежать
contingency [kən ˈtɪnʤənsɪ] – непредвиденное обстоятельство, нештатная
ситуация

169
eliminate v. [ɪˈlɪmɪneɪt] – устранить, исключить
fail v. – не удаваться
frankly – откровенно
futile [ˈfju:taɪl] –бесполезный, бессмысленный
invariably [ɪnˈveərɪəblɪ] – неизменно
jeopardy [ˈʤepədɪ] – опасность, риск
laughingly [ˈlɑːfɪŋlɪ] –смеясь; со смехом
"leading-edge" technology [ˈli:dɪŋ eʤ tekˈnɔləʤɪ] – передовые технологии
likelihood [ˈlaɪklɪhʊd] – вероятность
motto [ˈmɔtəʊ] – девиз
obsolescence [ɒbsəˈlesns] – устаревание, износ
obvious – очевидный, заметный, явный
occurrence [əˈkʌrəns] –возникновение
once [wʌns] – один раз, однажды
outcome [ˈaʊtkʌm] – результат
overwhelm v. [əʊvəˈwelm] – переполнять, подавлять
participate v. – участвовать, принимать участие
plague v. [pleɪg] – досаждать, мешать
proactive [ˈprəʊæktɪv] – инициативный
questionable [ˈkwesʧənəbl] – сомнительный, спорный
rank v. – классифицировать, причислять
sidekick – закадычный друг, кореш
slip v. – скользить
solely [ˈsəʊllɪ] –исключительно
take over v. – брать верх; принимать на себя
thorough [ˈθʌrə] – тщательный, всесторонний
timeliness [ˈtaɪmlɪnɪs] – своевременность
uncertainty [ʌnˈsɜːtntɪ] –неопределённость
undertake v. – предпринимать, совершать

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
график проекта; нежелательные последствия или потери; независимо от
результата; правильное определение; находится в реальной опасности; все
участвующие в процессе разработки программного обеспечения; связанные с
каждым риском; избежать риска; чтобы определить вероятность; набор
информационных листов о рисках; техническое устаревание; с высокой
170
вероятностью; полагаться исключительно на реактивные стратегии риска;
когда сталкивался с колоссальными трудностями; не являются его испытан-
ными корешами; риски классифицируются; пока что-то идёт не так, как
надо; их воздействие на проект программного обеспечения; и менеджерам и
практикам.

II. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What helps a software team to understand and manage uncertainty? 2. Is a risk
a potential problem? 3. Who participates in risk analysis and management? 4. Why is
it important to identify a risk? 5. What must you do to avoid or manage the risks? 6.
What steps should you undertake to identify and manage the risks? 7. What can you
say about reactive risk strategies? 8. Do the majority of software teams rely solely on
reactive or proactive risk strategies? 9. What is often called a fire fighting mode? 10.
Which strategy begins long before technical work is initiated ? 11. Why should the
software team work to develop a contingency plan? 12. How many characteristics
does the risk always involve? 13. When is it important to quantify the level of
uncertainty and the degree of loss associated with each risk ? 14. In what way do
project risks threaten the project plan? 15. What do technical risks threaten?

III. Fill in the gaps with the words and expressions from the text:
1. Many problems can plague …… . 2. Everyone involved in the software
process ……. participate in risk analysis and management. 3. Each risk is analyzed to
determine the likelihood that it will occur and the damage that it will do ….. . 4. …..
have been laughingly called the “Indiana Jones School of risk management”. 5.
When this fails, “crisis management” takes over and ….. is in real jeopardy. 6.
Potential risks are identified, their probability and impact are assessed, and they are
ranked ….. . 7. The risks that ….. should be derived from thorough study of the
people, the product, the process, and the project. 8. When risks are analyzed, it is
important to ….. and the degree of loss associated with each risk. 9. If a technical risk
becomes ….. , implementation may become difficult or impossible.

IV. Find in the text and copy out sentences in which the preposition with is used.
Translate them.

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

Word-building: the suffix –ance (or –ence) can be added to either


adjectives or verbs to form abstract nouns. This is particularly used for adjectives
ending in –ent or –ant (where the spelling changes to replace -t with -ce) and
171
various verbs. (Nouns with these suffixes mean action, state, condition or
quality.)
E.g.: independent adj. – independence
accept v. – acceptance

II. a) Translate the following abstract nouns, give the base words they are
formed from:
absence, appearance, assistance, attendance, clearance, competence,
difference, emergence, existence, insurance, observance, performance, preference,
reference, sequence, significance.
b) Pick out from the text sentences with the suffix –ance/–ence.

III. Find in the above text and copy out phrases containing adverbs with the
suffix –ly. Say what adjectives these derivative adverbs are formed from, translate
them.

IV. Choose the proper verb form and translate the sentences.
1. Technical risks ….. because the problem is harder to solve than we thought it
would be. 2. Peter Drucker was ….. in Vienna and moved to USA in 1937 and
settled there on. 3. Drucker, ….. the imbalance of information and power, began
writing on how companies could rework their management structures in order to
become more efficient. 4. We have already ….. a brief introduction to the
concepts of risk management for software development projects. 5. Risk
management is also ….. with making judgments about how risk events are to be
treated, valued, compared and combined. 6. Risk management for software projects is
intended ….. the chances of unexpected events. 7. Our software team … a p lan for
managing the risks last week. 8. The method of identifying risks may ….. on
culture and industry practice. 9. Once risks have been identified, they must then
….. as to their potential negative impact, such as damage or loss, and to the
probability of occurrence. 10. Risk reduction or "optimization" ….. reducing the
severity of the loss or the likelihood of the loss from occurring.
(Missing verbs: provided, be assessed, occur, concerned, involves, born, to
minimize, depend, having noticed, established)

V. Ask all types of questions to the following sentence:


You can use experiments to observe where problems occur, and to find ways
to introduce preventative and detective actions.

VI. Point out the gerunds in the following sentences and give the function of
each. Say whether it is the subject of a verb, object of a verb or governed by a
preposition.
1. It’s for this reason that being prepared— understanding the risks and taking
proactive measures to avoid or manage them—is a key element of good software
project management. 2. He denied having been established a plan for managing the
negative consequences. 3 Recognizing what can go wrong is the first step, called
172
“risk identification.” 4. By performing different kinds of operations on a comp uter,
you can solve a lot of different problems. 5. These methods of analysis help those
who practice risk management to use established ways of identifying a risk. 6.
Project managers should be familiar with the principles of risk management from
the earliest days of their training in project management and project management
principles. 7. Strategies to manage threats typically include avoiding the t hreat,
reducing the negative effect or probability of the threat, transferring all or part of
the threat to another party.

SPEAKING:
I. Discuss the arguments for the following problem. Make use of the topical
vocabulary.
Acknowledging that risks can be p ositive or negative, optimizing risks means
finding a balance between negative risk and the benefit of the operation or
activity; and between risk reduction and effort applied.

II. Explain and expand.


A risk can be found in almost anything that we set out to do or accomplish in
life. Think of a risk as anything that can potentially have a negative impact on
something that is of value to you. The risk can be caused by any number of
factors. To understand the severity of a risk, the risk is often analyzed for
probability; the higher the chance that it will happen the higher the risk.

III. Work in pairs. Compose the dialogue on the following situation.


A friend of yours is going to drop his studies. How would you try to persuade
him not to do that?

Text 2
RISK IDENTIFICATION
Read and translate the text.
Risk identification is a systematic attempt to specify threats to the p roject p lan
(estimates, schedule, resource loading, etc.). By identifying known and p redictable
risks, the project manager takes a first step toward avoiding them when possible and
controlling them when necessary. There are two distinct types of risks for each of the
categories: generic risks and product-specific risks.
Generic risks are a potential threat to every software p roject. Pro duct-specific
risks can be identified only by those with a clear understanding of the technology, the
people, and the environment that is specific to the project at hand. To identify
product-specific risks, the project plan and the software statement of scope are
examined and an answer to the following question is developed: "What special
characteristics of this product may threaten our project plan?" One method for
identifying risks is to create a risk item checklist. The checklist can be used for risk

173
identification and focuses on some subset of known and predictable risks in the
following generic subcategories:
• Product size—risks associated with the overall size of the software to be built
or modified.
• Business impact—risks associated with constraints imposed by management or
the marketplace.
• Customer characteristics—risks associated with the sophistication of the
customer and the developer's ability to communicate with the customer in a timely
manner.
• Process definition—risks associated with the degree to which the software
process has been defined and is followed by the development organization.
• Development environment—risks associated with the availability and quality
of the tools to be used to build the product.
• Technology to be built—risks associated with the complexity of the system to
be built and the "newness" of the technology that is packaged by the system.
• Staff size and experience—risks associated with the overall technical and
project experience of the software engineers who will do the work.
The risk item checklist can be organized in different ways. Questions relevant to
each of the topics can be answered for each software project. The answers to these
questions allow the planner to estimate the impact of a risk. A different risk item
checklist format simply lists characteristics that are relevant to each generic
subcategory. Finally, a set of “risk components and drivers" are listed along with
their probability. Although generic risks are important to consider, usually the
product-specific risks cause the most headaches. Be certain to spend the time to
identify as many product-specific risks as possible.
A number of comprehensive checklists for software project risk p rovide useful
insight into generic risks for software projects and should be used whenever risk
analysis and management is instituted. However, a relatively short list of questions
can be used to provide a preliminary indication of whether a project is “at risk.”
(By Roger S. Pressman)
VOCABULARY
along with – вместе с, наряду с
complexity [kəmˈpleksɪtɪ] – сложность, запутанность
constraint [kənˈstreɪnt] – ограничение
distinct – различный
driver – фактор; управляющая программа
estimate v. – оценивать
generic [ʤɪˈnerɪk] – универсальный, общий
headache [ˈhedeɪk] – головная боль
impose v. – навязывать, помещать
institute v. [ˈɪnstɪtjuːt] – устанавливать
item checklist – контрольный пункт; контрольный список элемента
overall ['əuvərɔːl] – полный, общий

174
predictable – предсказуемый, прогнозируемый
preliminary [prɪˈlɪmɪnərɪ] – предварительный, подготовительный
relevant [ˈrelɪvənt] – соответствующий
scope [skəup] – возможности, размах
sophistication [səˈfɪstɪˈkeɪʃən] – сложность; усовершенствование
staff [stɑ:f] – штат, сотрудники, персонал
statement – оператор; формулировка
subset – подмножество
tool [tuːl] –инструмент, механизм

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
программы определения сферы возможностей; ограничения, навязанные
управлением или рынком; пакуется системой; обеспечивают необходимое
понимание универсальных рисков; для проекта «под рукой»; специфичные
для продукта риски; оценить влияние риска; своевременно; общий размер
программного обеспечения; известные и предсказуемые риски; вызывают
наибольшую головную боль; как можно больше специфичных для продукта
рисков; связанные с доступностью и качеством инструментов; просто пере-
числяет характеристики.

II. Ask your own questions to the text for class discussion.

III. Find in the above text antonyms of the following words:


unknown, long, few, in a ill-timed manner, similar, to prohibit.

IV. Discuss the problems dealt with in the text given above using the words and
word combinations from Ex. I.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

Word-building: the prefix sub- means ‘below’: submarine = sub + marine


meaning ‘below the sea’; substandard = sub + standard meaning ‘below the
standard’.

II. Add the prefix sub- to the front of each base word to make a new word and
translate them:
divide, active, array, error, scribe, structure, surface, account, concept,
device, formula, function, indicate, logarithmic, zero.

175
III. Find in the text and copy out sentences containing the words with the
prefix sub- and use them in the sentences of your own.

IV. Match a word from A with a phrase from B to make collocations.


A B
1 turn on a) mail in time
2 specify b) the project plan
3 carry out c) some processing
4 process d) different engineering techniques
5 store e) the characteristics
6 perform f) risks
7 describe g) instructions in the memory
8 threaten h) a variety of computations
9 undergo i) a computer
10 combine j) an understanding of software
11 send k) a special function
12 gain l) threats
13 identify m) digital data

V. Define the -ing forms and the syntactic function of each in the following
sentences:
1. By identifying known and predictable risks, the project manager takes a first
step toward avoiding them when possible and controlling them when necessary. 2.
We got interested in the idea of finding and managing information on the Internet by
virtue of sending out mobile programs. 3. Programming is the process of p reparing,
testing, correcting instructions for a computer. 4. Risk identification software allows
the project manager to plan and control the course of the risk identification
process through using computerized tools.

VI. Translate the following sentences paying special attention to the


infinitives as parts of compound nominal predicates.

The infinitive after the linking verb BE is part of the compound nominal
predicate.

1. His aim was to organize the risk item checklist. 2. Your task will be to
perform programming of a computer. 3. The purpose of test plans is to determine
conditions that mark the success or failure of software. 4. My only chance is to
speak to him. 5. The function of this chip is to process as many as a million or more
instructions per second. 6. His sole desire is to be accepted without question by the
project manager. 7. Their purpose is to automate the testing of a program's existing
code in order to find defects. 8. The most important thing for us is to determine the
way in which things are done around here. 9. Your duty is to attempt to estimate the
impact of a risk. 10. His assistant's main task is to gather appropriate information for
the research. 11. Their overall strategic plan was to modernize the tools to be used to
176
build the product. 12. My advice to you is not to confuse the terms “data” and
information” with each other. 13. A future task is to approximate time averages on a
computer. 14. The purpose of his theorem is to show the relation between a
conditional probability and its reverse form. 15. Your task is to filter inessential or
false threats and to focus on project-related risks in order to make the project less
risky.

VII. Find in the above text the sentence containing the infinitive in the function
of a compound nominal predicate and write it out.

VIII. Translate the following sentences into English:


1. Тестирование считается успешным, если найден дефект или ошибка, и
они устраняются. 2. Менеджер проекта выполняет координацию людских,
финансовых и технических ресурсов при реализации задач проекта. 3.
Управление рисками является важной проблемой выполнения проекта и
представляет собой процесс определения рисков и разработки мероприятий по
уменьшению их влияния на проект. 4. Для управления риском проводится
идентификация и анализ риска, оценка критических рисков и планирование
непредвиденных ситуаций. 5. Оценка совершенствования процессов
проводится для установления количественных характеристик процессов и
продуктов. 6. Для идентификации и оценки рисков необходимо применять
соответствующие методы. 7. Мы определяем качество в терминах атрибутов,
значимых для данного конкретного проекта и/или ассоциированного с ним
продукта.

SPEAKING:

I. Discuss the role of risk identification. Say what threats to the project plan it
specifies and what steps should be taken to avoid them.
II. Speak about methods for identifying risks. Do you know the possible ways of
their improvement.
III. Answer the following question. Give your reasons.
Which lesson do you do most preparation for at your Academy?

Text 3
SOFTWARE QUALITY ASSURANCE
Read and translate the text.

Software developers will agree that high-quality software is an imp ortant goal.
But how do we define quality? A wag once said, "Every program does something
right, it just may not be the thing that we want it to do." Philip Crosby, in his book on
quality, provides a wry answer to this question: The problem of quality management
is not what people don't know about it. The problem is what they think they do know
. . . For our purposes, software quality is defined as conformance to explicitly stated
177
functional and performance requirements, explicitly documented development
standards, and implicit characteristics that are expected of all professionally
developed software.
There is little question that this definition could be modified or extended. In fact,
a definitive definition of software quality could be debated endlessly. The definition
serves to emphasize three important points: 1. Software requirements are the
foundation from which quality is measured. Lack of conformance to requirements is
lack of quality. 2. Specified standards define a set of development criteria that guide
the manner in which software is engineered. If the criteria are not followed, lack of
quality will almost surely result. 3. A set of implicit requirements often goes
unmentioned (e.g., the desire for ease of use and good maintainability). If software
conforms to its explicit requirements but fails to meet implicit requirements, software
quality is suspect.
Some software developers continue to believe that software quality is something
you begin to worry about after a code has been generated. Software quality assurance
(SQA) is an umbrella activity that is applied throughout the software process. It’s not
enough to talk the talk by saying that software quality is important, you have to (1)
explicitly define what is meant when you say “software quality,” (2) create a set of
activities that will help ensure that every software engineering work product exhibits
high quality, (3) perform quality assurance activities on every software p roject, (4)
use metrics to develop strategies for improving your software process and, as a
consequence, the quality of the end product.
Everyone involved in the software engineering process is responsible for quality.
Why is it important? You can do it right, or you can do it over again. If a software
team stresses quality in all software engineering activities, it reduces the amount of
rework that it must do. That results in lower costs, and more importantly, imp roved
time-to-market.
Before software quality assurance activities can be initiated, it is imp ortant to
define ‘software quality’ at a number of different levels of abstraction. Once you
understand what quality is, a software team must identify a set of SQA activities that
will filter errors out of work products before they are passed on.
A Software Quality Assurance Plan is created to define a software team’s SQA
strategy. During analysis, design, and code generation, the primary SQA work
product is the formal technical review summary report. During testing, test plans and
procedures are produced. Other work products associated with process improvement
may also be generated. Then we must ensure that we’ve done it right. It is imp ortant
to find errors before they become defects thereby reducing the amount of rework that
our software team has to perform.
SQA encompasses (1) a quality management approach, (2) effective software
engineering technology (methods and tools), (3) formal technical reviews that are
applied throughout the software process, (4) a multitiered testing strategy, (5) control
of software documentation and the changes made to it, (6) a procedure to ensure
compliance with software development standards (when applicable), and (7)
measurement and reporting mechanisms.

178
All engineered and manufactured parts exhibit variation. The variation between
samples may not be obvious without the aid of precise equipment to measure the
geometry, electrical characteristics, or other attributes of the p arts. However, with
sufficiently sensitive instruments, we will likely come to the conclusion that no two
samples of any item are exactly alike. Variation control is the heart of quality control.
A manufacturer wants to minimize the variation among the products that are
produced, even when doing something relatively simple like duplicating diskettes.
Quality of design refers to the characteristics that designers specify for an item.
The grade of materials, tolerances, and performance specifications all contribute to
the quality of design. As higher-grade materials are used, tighter tolerances and
greater levels of performance are specified, the design quality of a product increases,
if the product is manufactured according to specifications. Quality of conformance is
the degree to which the design specifications are followed during manufacturing.
Again, the greater the degree of conformance, the higher is the level of quality of
conformance. In software development, quality of design encompasses requirements,
specifications, and the design of the system. Quality of conformance is an issue
focused primarily on implementation. If the implementation follows the design and
the resulting system meets its requirements and performance goals, conformance
quality is high.
Variation control may be equated to quality control. Quality control involves the
series of inspections, reviews, and tests used throughout the software process to
ensure each work product meets the requirements placed upon it. Quality control
includes a feedback loop to the process that created the work product. Th e
combination of measurement and feedback allows us to tune the p rocess when the
work products created fail to meet their specifications. A key concept of quality
control is that all work products have defined, measurable specifications to which we
may compare the output of each process. The feedback loop is essential to minimize
the defects produced.
(By Roger S. Pressman)

VOCABULARY
alike [əˈlaɪk] – похожий, подобный
applicable [ˈæplɪkəbl] – применимый, пригодный
assurance [əˈʃʊərəns] – обеспечение, гарантия
compliance [kəmˈplaɪəns] – соответствие
conform v. [kən ˈfɔ:m] – соответствовать, приспосабливать
definitive [dɪˈfɪnɪtɪv] – окончательный
duplicate v. [ˈdju:plɪkɪt] – дублировать, копировать
encompass v. [ɪnˈkʌmpəs] – охватывать, включать
engineer v. [enʤɪˈnɪə] – проектировать
equate v. [ɪˈkweɪt] – приравнивать, равнять

179
exhibit v. [ɪgˈzɪbɪt] – проявлять, показывать, представлять
explicitly [ɪkˈsplɪsɪtlɪ] – явно, однозначно
fail v. – потерпеть неудачу, провалиться
feedback loop [ˈfi:dbæk lu:p] – контур обратной связи, цикл обратной связи;
обратная связь
implicit – неявный
lack – отсутствие
maintainability – ремонтопригодность
multitiered ['mʌltɪ'taɪəd] –мультиуровневый, многоуровневый
obvious ['ɔbvɪəs] – очевидный, понятный
pass on v. – проходить дальше; передавать дальше
requirement [rɪˈkwaɪəmənt] – требование
suspect – подозрительный
wag – шутник, остряк
wry [raɪ] – противоречивый, ироничный
tiered ['taɪəd] – многоуровневый
tune v. [tju:n] – отладить, приспосабливать; настроить

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
многоуровневая стратегия тестирования; даёт ироничный ответ; как
последствие; настроить процесс; отвечает своим требованиям; скорее всего
придём к выводу; высококачественное программное обеспечение; согласно
спецификации; улучшенное время выхода на рынок; совершенствование
процесса; не отвечает подразумеваемым требованиям; контроль изменения;
с достаточно чувствительными приборами; есть маленький вопрос; на
протяжении процесса разработки программного обеспечения; способствуют
повышению качества проектирования; после того, как код создан; подход к
управлению качеством; на многих разных уровнях абстракции; цикл
обратной связи с процессом.

II. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. How is quality defined? 2. Why could a definitive definition of software
quality be debated endlessly? 3. What important points does the definition serve to
emphasize? 4. When is software quality suspect? 5. What is software quality
assurance? 6. Why is everyone involved in the software engineering process
responsible for quality? 7. Where is it important to define ‘software quality’? 8.
What is a software quality assurance p lan created for? 9. Is it important to find errors
before they become defects? 10. What does software quality assurance encomp ass?
11. What do all engineered and manufactured parts exhibit? 12. Without what can’t
180
the variation between samples be obvious? 13. What is the heart of quality control?
14. What refers to the characteristics that designers specify for an item? 15. Does
quality of design encompass requirements, specifications, and the design of the
system in software development? 16. When is conformance quality high ? 17. What
allows us to tune the process when the work products created fail to meet their
specifications?

III. Find in the above text and copy out sentences in which the prepositions
among and between are used. Translate them.

IV. Make up your own sentences or situations with the following phrases:
a software developer, to define a set of development criteria, to perform quality
assurance activities, to minimize the defects, the quality of the end product, to be
responsible for quality, to come to the conclusion.

V. Retell the above text using as many of the word combinations from Exercise I
as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Use the following base words to make adjectives with the suffix –less and
translate them:

Word-building: power n. + less = powerless adj.

care, charge, doubt, end, error, help, hope, meaning, regard, resource, skill,
success, thought, use.

II. Find in the above text and copy out the sentence containing an adverb with
the suffix -less, translate it.

III. Complete the following sentences using the words from the box:

assurance manager fully release updates to analyze exact


of respectively part

1. If defects appear after the software is released and a patch needs to be


developed, regression testing is used to ensure that new errors are not created by
the ….. . 2. We can guarantee that ….. duplicates of the software are always created.
3. This approach views quality control as ….. of the manufacturing process. 4.
Quality control activities may be …. automated, entirely manual, or a combination of
automated tools and human interaction. 5. Quality ….. is an essential activity for any
business that produces products to be used by others. 6. Software quality
assurance consists ….. a means of monitoring the software engineering processes

181
and methods used to ensure quality. 7. We want ….. current initiatives in
multimodel software process improvement and identify criteria for multimodel
solutions. 8. Multimodel initiatives are categorized into three different groups,
….. : quality approach harmonization, quality approach integration, and quality
approach mapping. 9. The bug is assigned to development project ….. who will
analyze the bug. 10. We’d like to ensure that the variance in the number of bugs is
also minimized from one ….. to another.

IV. Study the grammar table and learn.

The comparative degree can be used in parallel constructions of the type "the
more … the more… ".
For example: The more I think about this software quality, the less I like it.

V. Translate the following sentences. Pay special attention to the comparison of


parallel increase or decrease.
1. The sooner the variation is minimized the better. 2. The longer we stayed
there, the better we felt. 3. The longer she thinks of the quality of design the less she
likes it. 4. It is assumed that the greater the error between the experimental value and
the true value is, the less likely it is that the experimental value will be observed. 5.
The more appropriate software quality assurance plan you select, the faster you’ll
find errors. 6. The more compact idea is elaborated, the more correct results with
less effort will be reached. 7. The better the quality assurance activities are
performed on every software project, the higher the quality of the end p roduct will
be. 8. The sooner we define a set of development criteria, the less the costs for
supervising and exercising control are needed.

VI. Find in the above text the sentence containing the parallel construction o f
the type "the more...the more”, translate it.

VII. Translate the following sentences paying attention to functions of the verb
“to have”.
1. We must find errors before they become defects thereby reducing the amount
of rework that our software team has to p erform. 2. Many definitions of software
quality have been proposed in the literature. 3. A set of fundamental design
concepts has evolved lately. 4. He has no need for such information. 5. This
supporting process has to provide the independent assurance. 6. Software design
has already involved problems solving and planning a software solution. 7. Many
companies have a separate department devoted to quality assurance. 8. Our
designer has to consider alternative approaches, judging each based on the
requirements of the problem, the resources available to do the job. 9. Developers
and engineers have to use universally approved steps to prevent errors in the
system.10. The test engineers have used commercially designed testing tools to
look for potential issues. 11. Information and communication technologies have

182
been widely adopted throughout our society. 12. Today, every company has
mechanisms to ensure quality in its products.
VIII. Write down all possible questions to the following sentences:
1. During the early days of computing, quality was the sole responsibility of the
programmer.
2. The first formal quality assurance and control function was introduced at Bell
Labs in 1916.

TALKING TOPICS:

I. Discuss the following questions. Use the topical vocabulary.


1) What does a software quality assurance engineer do?
2) What is difference between quality assurance and quality control?
3) How can new Software QA processes be introduced in an existing
organization?

II. Look for information and write down an abstract under the title “The
history of quality assurance in software development”. Present it to your
classmates.

III. Arrange short debates on the following question:


Are there any regulations in your Academy that you think are unnecessary?

Text 4
SOFTWARE RELIABILITY
Read and translate the text.

There is no doubt that the reliability of a computer program is an important


element of its overall quality. If a program repeatedly and frequently fails to perform,
it matters little whether other software quality factors are acceptable. Software
reliability, unlike many other quality factors, can be measured, directed and estimated
using historical and developmental data. Software reliability is defined in statistical
terms as "the probability of failure-free operation of a computer program in a
specified environment for a specified time". To illustrate, program X is estimated to
have a reliability of 0.96 over eight elapsed processing hours. In other words, if
program X were to be executed 100 times and require eight hours of elapsed
processing time (execution time), it is likely to operate correctly (without failure) 96
times out of 100. Whenever software reliability is discussed, a pivotal question arises:
What is meant by the term failure? In the context of any discussion of software
quality and reliability, failure is nonconformance to software requirements. Yet, even
within this definition, there are gradations. Failures can be only ann oying or
catastrophic. One failure can be corrected within seconds while another requires
weeks or even months to correct. Complicating the issue even further, the correction

183
of one failure may in fact result in the introduction of other errors that ultimately
result in other failures.
Early work in software reliability attempted to extrapolate the mathematics of
hardware reliability theory to the prediction of software reliability. Most hardware -
related reliability models are predicated on failure due to wear rather than failure due
to design defects. In hardware, failures due to physical wear (e.g., the effects of
temperature, corrosion, shock) are more likely than a design -related failure.
Unfortunately, the opposite is true for software. In fact, all software failures can be
traced to design or implementation problems; wear does not enter into the p icture.
There has been debate over the relationship between key concepts in hardware
reliability and their applicability to software. Although an irrefutable link has yet
been established, it is worthwhile to consider a few simple concepts that apply to both
system elements.
Software quality assurance (SQA) is an umbrella activity that is applied at each
step in the software process. SQA encompasses procedures for the effective
application of methods and tools, formal technical reviews, testing strategies and
techniques, poka-yoke devices, procedures for change control, procedures for
assuring compliance to standards, and measurement and reporting mechanisms. SQA
is complicated by the complex nature of software quality—an attribute of comp uter
programs that is defined as "conformance to explicitly and implicitly specified
requirements." But when considered more generally, software quality encompasses
many different product and process factors and related metrics. Software reviews are
one of the most important SQA activities. Reviews serve as filters throughout all
software engineering activities, removing errors while they are relatively inexpensive
to find and correct. The formal technical review is a stylized meeting that has been
shown to be extremely effective in uncovering errors. To properly conduct software
quality assurance, data about the software engineering process should be collected,
evaluated, and disseminated. Statistical SQA helps to improve the quality of the
product and the software process itself. Software reliability models extend
measurements, enabling collected defect data to be extrapolated into projected failure
rates and reliability predictions. We can recall the words of Dunn and Ullman:
"Software quality assurance is the mapping of the managerial p recepts and design
disciplines of quality assurance onto the applicable managerial and technological
space of software engineering." The ability to ensure quality is the measure of a
mature engineering discipline. When the mapping is successfully accomplished,
mature software engineering is the result.
(By Roger S. Pressman)

Commentary
Poka-yoke is a Japanese term that means "mistake-proofing" or “inadvertent
error prevention”. A poka-yoke is any mechanism in a lean manufacturing process
that helps an equipment operator avoid (yokeru) mistakes (poka). Its purpose is to
eliminate product defects by preventing, correcting, or drawing attention
to human errors as they occur.

184
VOCABULARY
annoy v. [əˈnɔɪ] – раздражать, надоедать
applicability [əplɪkəˈbɪlɪtɪ] – применяемость, предназначение
arise v. [əˈraɪz] – возникать, появляться
conformance [kənˈfɔːməns] – соответствие
disseminate v. [dɪˈsemɪneɪt] – распространить, распространяться
elapse v. [ɪˈlæps] – проходить, истекать;
extrapolate v. [ɪkˈstræpəleɪt] – экстраполировать
failure [ˈfeɪljə] – отказ; неспособность; провал
improve v. – улучшить, совершенствовать
inadvertent – неумышленный, случайный
irrefutable [ɪˈrefjʊtəbl] – неопровержимый, неоспоримый
lean – непромышленный
mapping – сопоставление; отображение
mature [məˈtjʊə] – зрелый; развитый, продуманный
pivotal [ˈpɪvətl] –центральный, основной, ключевой
poka-yoke device – устройство защиты от «дурака»
precept [ˈpriːsept] – предписание, правило
predicate v. [ˈpredɪkɪt] – утверждать; основывать (утверждения)
recall v. [rɪˈkɔːl] – вспоминать
reliability [rɪlaɪəˈbɪlɪtɪ] – надёжность, безотказность
repeatedly [rɪˈpiːtɪdlɪ] – неоднократно
result in v. – приводить к, вызывать
review [rɪˈvjuː] – обзор, анализ
trace v. – отследить, обнаружить
ultimately – в конечном счёте, в конце концов, в конечном итоге
unfortunately [ʌnˈfɔːʧʊnətlɪ] – к сожалению, к несчастью
wear [wɛə] – износ
worthwhile [ˈwɜːθwaɪl] – заслуживающий внимания; целесообразный

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
затраченное время; зрелая программная инженерия; в раскрытии
ошибок; нет никаких сомнений; в отличие от многих других факторов
качества; на протяжении всего инженерно-программного обеспечения; стоит
рассмотреть; включает процедуры; была дискуссия; это имеет небольшое
значение; за восемь прошедших часов обработки; провал, связанный с
185
проектом; чтобы экстраполировать на прогнозируемые темпы провалов;
усложняя проблему ещё больше; способность обеспечения качества; отказ
является несоответствием требований к программному обеспечению;
неопровержимая связь.

II. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. Is the reliability of a computer program an important element of its overall
quality? 2. How can software reliability be measured, directed and estimated? 3.
What terms can software reliability be defined in? 4. What question arises whenever
software reliability is discussed? 5. Can all failures be corrected within seconds? 6.
What did early work in software reliability attempt to do? 7. What are the most
hardware-related reliability models predicated on? 8. What debate has there been? 9.
Where is software quality assurance applied? 10. What serves as filters throughout all
software engineering activities, removing errors? 11. What is essential to do to
properly conduct software quality assurance? 12. Whose words about software
quality assurance can we recall? 13. When is mature software engineering the result?

III. Make up your own sentences or situations with the following phrases:
to be predicated on failure, to conduct software quality assurance, explicitly and
implicitly specified requirements, to improve the quality of the p roduct, there is no
doubt, software reliability, procedures for assuring compliance to standards, to result
in other failures, elapsed processing time, to remove errors.

IV. Find in the above text and copy out sentences in which the prepositions
without and within are used, translate them.

V. Retell the above text using as many of the word combinations and phrases
from Exercise I as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Study the grammar table and learn.

Word-building: the negative prefix non- is added to nouns of action,


condition, or quality with the sense of “absence, lack of,” or simply “not”:
non-Catholic
This Latin negative prefix can form negative adjectives with many present
participles and past participles regardless of the origin of the stem word such as:
existent - nonexistent
smoking - non-smoking
Another interesting fact about non- is that it can often form negative
adjectives by joining verbs, to express the meaning that the thing described does not
perform the action described by the verb:
stop v. - non-stop
186
Whether to add a hyphen depends upon whether American or British usage
is being observed.

II. a) Add the prefix non- to the front of each base word to make a new word and
translate them
acceptance, architectural, availability, conductor, decimal, dimensional,
essential, event, flammable, freezing, linear, professional, schematic, standard,
synchronous, type.

b) Find in the above text and copy out the sentence containing a noun with
prefix non-, translate it.

III. Find in the above text and copy out sentences in which linking expressions in
fact, in other words, although and due to are used. Translate the sentences with
them. Say which of these linking expressions:
a) expresses rephrasing and correcting?
b) introduces a contrast?
c) introduces a reason?
d) expresses reality or contradicts an idea in the previous sentence?

IV. Complete the gaps in this summary using the linkers in the box.

because nevertheless however hence conversely

For estimating software reliability by stratified sampling, it would be ideal if


cluster analysis could separate successful executions from failures. ….., this is not
likely, because failures are often caused by small defects in a large program. Two
executions may differ only in regard to reaching a particular defect, with the result
that one execution fails, while the other does not. ……, two otherwise dissimilar
executions may fail ….. they each encounter a certain defect. ….., failures may not
cluster together even if they have the same cause. ….., if a failed execution has an
unusual profile, say because it reaches seldom-executed code, the failure may be
isolated in a small cluster. This is often sufficient to make stratified sampling
effective.

V. Complete the following sentences using the words from the box:

many also properly producing given such as delivered


or being

1. Software reliability is the probability that software will work ….. in a


specified environment and for a given amount of time. 2. For reliability testing,
data is gathered from various stages of development, … the design and operating

187
stages. 3. Poka yokes keep processes from ….. errors. 4. Poka-Yoke is
a device ….. method that prevents people from making mistakes. 5. Software
reliability testing helps discover ….. problems in the software design and
functionality. 6. To find reliability of software, we need to find output spa ce from
….. input space and software. 7. An error may disappear before ….. detected. 8.
A failure occurs when an error passes through the system-user interface and
affects the service …. by the system. 9. Preventing errors obviously
improves quality, but it ….. plays a major role in improving productivity.

VI. Mind the meanings of ‘time’.


1. This phenomenon is known from ancient times. 2. The program w as not
performed in time. 3. At the same time this cycle is repeated twice. 4. Software
quality assurance will be conducted within minimum time. 5. If p rogram X were to
be executed 100 times and require eight hours of elapsed processing time (execution
time), it is likely to operate correctly 96 times out of 100. 6. They tested reliability
very carefully because it lasted over a long time. 7. The experiment was repeated
many times. 7. The power radiated as light is almost three times as great as the
power radiated at heat. 8. Modern computers based on integrated circuits are
millions to billions of times more capable than the early machines. 9. At that time he
was loading the program on one of the two PCs. 10. Failures can be corrected many
times faster than it was weeks or even months ago. 11. Any time average may be
found by the statistical formula. 12. Programmers expended much time and effort to
learn how to program one computer. 13. With time-sharing, the computer spends a
fixed amount of time with each program before going on to the next one.

VII. State functions of the past participles in the following sentence.


When considered more generally, software quality encompasses many different
product and process factors and related metrics.

TALKING TOPICS:

I. Express your opinion on the following point of view:


Software is an integral part of many critical and non-critical applications, and
virtually any industry is dependent on computers for their basic functioning. As
computer software permeates our modern society, and will continue to do so in the
future, the assurance of its quality becomes an issue of critical concern.

II. Discuss the arguments for the following problem. Make use of the vocabulary
of the topic.
The future reliability of software can be predicted based upon its reliability
during operational testing.

188
Text 5
THE ART OF DEBUGGING
Read and translate the text.

Software testing is a process that can be systematically p lanned and specified .


Test case design can be conducted, a strategy can be defined, and results can be
evaluated against prescribed expectations. Debugging occurs as a consequence of
successful testing. That is, when a test case uncovers an error, debugging is the
process that results in the removal of the error. Although debugging can and should
be an orderly process, it is still very much an art. A software engineer, evaluating the
results of a test, is often confronted with a "symptomatic" indication of a software
problem. That is, the external manifestation of the error and the internal cause of the
error may have no obvious relationship to one another. The poorly understood mental
process that connects a symptom to a cause is debugging.
Debugging is not testing but always occurs as a consequence of testing. The
debugging process begins with the execution of a test case. Results are assessed and a
lack of correspondence between expected and actual performance is encountered. The
debugging process attempts to match symptom with cause, thereby leading to error
correction. The debugging process will always have one of two outcomes: (1) the
cause will be found and corrected, or (2) the cause will not be found . In the latter
case, the person performing debugging may suspect a cause, design a test case to help
validate that suspicion, and work toward error correction in an iterative fashion.
Why is debugging so difficult? In all likelihood, human psychology has more to
do with an answer than software technology. However, a few characteristics of bugs
provide some clues: 1. The symptom and the cause may be geograp hically remote.
That is, the symptom may appear in one part of a program, while the cause may
actually be located at a site that is far removed. 2. The symptom may disappear
(temporarily) when another error is corrected. 3. The symptom may actually be
caused by nonerrors (e.g., round-off inaccuracies). 4. The symptom may be caused by
human error that is not easily traced. 5. The symptom may be a result of timing
problems, rather than processing problems. 6. It may be difficult to accurately
reproduce input conditions (e.g., a real-time application in which inp ut ordering is
indeterminate). 7. The symptom may be intermittent. This is particularly common in
embedded systems that couple hardware and software inextricably. 8. The symptom
may be due to causes that are distributed across a number of tasks running on
different processors. During debugging, we encounter errors that range from mildly
annoying (e.g., an incorrect output format) to catastrophic (e.g. the system fails,
causing serious economic or physical damage). As the consequences of an error
increase, the amount of pressure to find the cause also increases. Often, pressure
sometimes forces a software developer to fix one error and at the same time introduce
two more. Some people are good at debugging and others aren't. Although
experimental evidence on debugging is open to many interpretations, large variances
in debugging ability have been reported for programmers with the same education
and experience. Commenting on the human aspects of debugging, Schneiderman
states: “The variety within all computer programs that must be diagnosed [for
189
debugging] is probably greater than the variety within all other examples of systems
that are regularly diagnosed.” Although it may be difficult to "learn" debugging, a
number of approaches to the problem can be proposed. Regardless of the ap proach
that is taken, debugging has one overriding objective: to find and correct the cause of
a software error. The objective is realized by a combination of systematic evaluation,
intuition, and luck. The basis of debugging is to locate the problem's source [the
cause] by binary partitioning, through working hypotheses that predict new values to
be examined.
In general, three categories for debugging approaches may be proposed: (1)
brute force, (2) backtracking, and (3) cause elimination. The brute force category of
debugging is probably the most common and least efficient method for isolating the
cause of a software error. We apply brute force debugging methods when all else
fails. Using a "let the computer find the error" philosophy, memory dumps are taken,
run-time traces are invoked, and the program is loaded with WRITE statements.
Although the mass of information produced may ultimately lead to success, it more
frequently leads to wasted effort and time. Backtracking is a fairly common
debugging approach that can be used successfully in small p rograms. Beginning at
the site where a symptom has been uncovered, the source code is traced backward
(manually) until the site of the cause is found. Unfortunately, as the number of source
lines increases, the number of potential backward paths may become unmanageably
large. The third approach to debugging—cause elimination—is manifested by
induction or deduction and introduces the concept of binary partitioning. Data related
to the error occurrence are organized to isolate potential causes.
Conventional methods for software engineering and the aforementioned data can
be used to prove or disprove the hypothesis. Alternatively, a list of all possible causes
is developed and tests are conducted to eliminate each. If initial tests indicate that a
particular cause hypothesis shows promise, data are refined in an attempt to isolate
the bug. Each of these debugging approaches can be supplemented with debugging
tools. We can apply a wide variety of debugging compilers, dynamic debugging aids
("tracers"), automatic test case generators, memory dumps, and cross-reference maps.
However, tools are not a substitute for careful evaluation based on a complete
software design document and clear source code. Before the correction is made, the
source code (or, better, the design) should be evaluated to assess coupling of logic
and data structures. If the correction is to be made in a highly coupled section of the
program, special care must be taken when any change is made. If we correct the
process as well as the product, the bug will be removed from the current program and
may be eliminated from all future programs.
(By Roger S. Pressman)

VOCABULARY
aforementioned [əˈfɔːmenʃnd] – вышеупомянутый, вышесказанный
aid – помощь, поддержка
backtracking [ˈbæktrækɪŋ] – отслеживание в обратном порядке
backward [ˈbækwəd] – обратный
190
be confronted with v. – сталкиваться с
brute [bruːt] – грубый
consequence [ˈkɔnsɪkwəns] – последствие
conventional [kən ˈvenʃənl] – обычный
correspondence [,kɔrɪsˈpɔndəns] – соответствие
couple v. [ˈkʌpl] – связывать(ся)
debugging [diːˈbʌgɪŋ] – отладка
disappear v. [dɪsəˈpɪə] – исчезать, пропадать
dump – дамп
eliminate v. [ɪˈlɪmɪneɪt] – устранять
encounter v. [ɪnˈkauntə] – встречаться, обнаруживать
fairly [ˈfɛəlɪ] – справедливо, довольно, почти
in all likelihood – по всей вероятности
increase v. [ɪnˈkriːs] – увеличиваться
increase n. [ˈɪnkriːs] –повышение, увеличение
indeterminate [,ɪndɪˈtə:mɪnɪt] – неопределённый
inextricably – неразрывно
intermittent [,ɪntəˈmɪtənt] – неустойчивый, периодический
invoke v. [ɪnˈvəuk] – вызывать
iterative [ˈɪtərətɪv] – условный; повторяющийся, итеративный
manifest v. [ˈmænɪfest] – проявлять
occurrence – частота появления
outcome [ˈautkʌm] – результат
overriding [əʊvəˈraɪdɪŋ] – первостепенный, важнейший
partitioning [pɑ:ˈtɪʃənɪŋ] – разделение
refine v. – уточнять; совершенствовать
removal [rɪˈmu:vəl] – удаление
round-off inaccuracy – погрешность округления
statement – оператор; заявление
substitute [ˈsʌbstɪtju:t] – замена
suspect v. [ˈsʌspekt] – подозревать, предполагать, догадываться
temporarily [ˈtemprərəlɪ] – временно, ненадолго
test case – тестовый сценарий; пробный вариант
trace v. – прослеживать
uncover v. [ʌnˈkʌvə] – раскрыть, обнаружить
validate v. [ˈvælɪdeɪt] – проверять
waste v. [weɪst] – тратить впустую, растрачивать

191
EXERCISES TO THE TEXT

I. Transcribe the following words, explain the reading rules. Pronounce the
words.
Apply, cause, diagnosed, evaluation, experience, manifestation, psychology,
symptom.

II. Look through the text and find equivalents to the following:
число строк исходного кода; дампы памяти; может быть оценён вопреки
предписанным ожиданиям; большое разнообразие отладки компиляторов;
сильно взаимосвязанный раздел программы; количество возможных обратных
путей; грубая сила; потраченное впустую усилие и время; удаление ошибки;
довольно общий подход отладки; организованный процесс; которые
располагаются в диапазоне от умеренно раздражающего к катастрофическо-
му; средства отладки; одна наиважнейшая цель; карты перекрёстной ссылки;
внутренняя причина ошибки; чтобы сравнить симптом с причиной; величина
давления; в последнем случае; выполнение тестового сценария; дают некоторые
представления; список всех возможных причин; итеративным способом;
динамические пособия отладки; неразрывно связывают аппаратное и
программное обеспечение.

III. Fill in the gaps with the words and expressions from the text.
1. Debugging occurs as a ….. of successful testing. 2. ….. , evaluating the results
of a test, is often confronted with a "symptomatic" indication of a software p roblem.
3. The debugging process begins with ….. . 4. The symptom may appear ….. , while
the cause may actually be located at a site that is far removed. 5. As the consequences
of an error increase, the amount of pressure ….. also increases. 6. Regardless of the
approach ….. , debugging has one overriding objective: to find and correct the cause
of a software error. 7. The brute force category of debugging is probably ….. for
isolating the cause of a software error. 8. ….. is a fairly common debugging approach
that can be used successfully in small programs. 9. Data ….. the error occurrence are
organized to isolate potential causes. 10. We can apply ….. of debugging comp ilers,
dynamic debugging aids ("tracers"), automatic test case generators, memory dumps,
and cross-reference maps.

IV. Answer the following questions using the phrases and word combinations
from Exercise II:
1. What kind of process is software testing? 2. What happens when a test case
uncovers an error? 3. What does the debugging process begin with? 4. How many
outcomes will the debugging process always have? 5. May the symptom disappear
temporarily when another error is corrected? 6. What kind of errors do we encounter
during debugging? 7. When does the amount of pressure to find the cause increase?
8. What objective does debugging have regardless of the approach that is taken? 9.
How many categories for debugging approaches may be proposed? 10. When do we
usually apply brute force debugging methods? 11. What is a fairly common
192
debugging approach that can be used successfully in small programs? 12. What is the
name of the third approach to debugging? 13. How are data related to the error
occurrence organized? 14. What else can be used to prove or disprove the
hypothesis? 15. Can a list of all possible causes be developed and tests conducted to
eliminate each? 16. When should the source code (or the design) be evaluated to
assess coupling of logic and data structures? 17. When will the bug be removed from
the current program and eliminated from all future programs?

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following phrases:


the error occurrence, to conduct test case design, to set breakpoints, to uncover
an error, to propose debugging approaches, to assess results, to find and correct the
cause of a software error; the removal of the error.

II. Complete the sentences with the words from the box.

design bug complexity system user cause input method

1. Debugging is a straightforward application of the scientific ….. that has been


developed over 2,500 years. 2. We hope that we will find a clue that can lead us to
the ….. of an error. 3. Once a ….. has been found, it must be corrected. 4. To start
remote debugging, a debugger connects to a remote … over a network. 5. Each
test step is accomplished through a series of systematic test techniques that assist in
the ….. of test cases. 6. After the bug is reproduced, the ….. of the program needs
to be simplified to make it easier to debug. 7. The dump of the process space may
be obtained automatically by the system, or manually by the interactive ….. . 8.
The difficulty of software debugging varies greatly with the ….. of the system.

III. Find in the above text and copy out words with the negative prefixes non-,
in-, un- and dis-, use them in sentences of your own.

IV. Find in the above text and copy out sentences in which linking expressions
due to, however, although and alternatively are used. Translate the sentences with
them. Say which of these linking expressions:
a) introduces an alternative idea?
b) introduces a contrast?
c) introduces a reason?

V. Find in Text 5 the sentences with the Simple Infinitive Passive and translate
them.
VI. Choose the proper verb form and translate the sentences.
193
1. In many situations, a program defect ….. by an erroneous pattern of logic that
may be reproduced elsewhere. 2. Debugging is the process of finding and resolving
of defects that ….. correct operation of computer software or a system. 3. The
debugging skill of the programmer can be a major factor in the ability ….. a
problem. 4. Software debugging also ….. , to some extent, on the programming
language used and the available tools. 5. Debuggers are software tools which …..
the programmer to monitor the execution of a program, stop it, restart it,
set breakpoints, and change values in memory. 6. In programming languages such
as C or assembly, bugs ….. silent problems such as memory corruption. 7. A
typical example of a problem ….. would be a variable dereference that
occurs before the variable is assigned a value. 8. After the test case is sufficiently
simplified, a programmer can use a debugger ….. program states and track down
the origin of the problem. 9. The debugger can control the execution of the
program on the remote system and ….. information about its state. 10. Test
techniques ….. the process of executing a program or application with the intent
of finding software bugs (errors or other defects).
(Missing verbs: enable, include, prevent, detected, retrieve, is caused, to
examine, depends, may cause, to debug)

TOPIC FOR DISCUSSION:


I. Imagine that you are a television reporter. You are interviewing:
an experienced software developer. Ask him about his education, his scientific
career, his work and debugging skill; his success and failures; the tests he took p art
in; his opinion on modern test techniques and debugging methods; his future p lans;
the way he spends a typical day.

UNIT IX
Text 1
SOFTWARE DESIGN
Read and translate the text.

Software design is the process by which an agent creates a specification of a


software artifact, intended to accomplish goals, using a set of primitive
components and subject to constraints. Software design may refer to either all the
activities involved in conceptualizing, framing, implementing, and ultimately
modifying complex systems. Software design usually involves problem solving
and planning a software solution. This includes both a low-level component
and algorithm design and a high-level architecture design.
Software design is the process of implementing software solutions to one or
more sets of problems. One of the main components of software design is the
software requirements analysis (SRA). SRA is a part of the software
development process that lists specifications used in software engineering.
Furthermore, a software design may be platform-independent or platform-
specific, depending upon the availability of the technology used for the design.
194
The main difference between software analysis and design is that the output
of a software analysis consists of smaller problems to solve. Additionally, the
analysis should not be designed very differently across d ifferent team members or
groups. In contrast, the design focuses on capabilities and thus multiple designs
for the same problem can and will exist. Depending on the environment, the
design often varies, whether it is created from reliable frameworks or
implemented with suitable design patterns. Design examples include operation
systems, WebPages, mobile devices or even the new cloud computing paradigm.
Software design is both a process and a model. The design process is a
sequence of steps that enables the designer to describe all aspects of the software
for building. It is important to note, however, that the design process is not
always a straightforward procedure; the design model can be compared to an
architect’s plans for a house. It begins by representing the totality of the thing that
is to be built (e.g., a three-dimensional rendering of the house); slowly, the thing
is refined to provide guidance for constructing each detail (e.g., the plumbing
layout). Similarly, the design model that is created for software provides a variety
of different views of the computer software. Basic design principles enable the
software engineer to navigate the design process. A good designer should
consider alternative approaches, judging each based on the requirements of the
problem, the resources available to do the job.
The design should be traceable to the analysis model. Because a single
element of the design model can often be traced back to multiple requirements, it
is necessary to have a means for tracking how requirements have been satisfied by
the design model.
The design should not reinvent the wheel. Systems are constructed using a
set of design patterns, many of which have likely been encountered before. These
patterns should always be chosen as an alternative to reinvention. Time is short
and resources are limited; design time should be invested in representing truly
new ideas and integrating patterns that already exist when applicable.
The design should "minimize the intellectual distance" between the software
and the problem as it exists in the real world. That is, the structure of the software
design should, whenever possible, mimic the structure of the problem domain.
Well-designed software should never "bomb"; it should be designed to
accommodate unusual circumstances, and if it must terminate processing, it
should do so in a graceful manner.
Design is not coding, coding is not design. Even when detailed procedural
designs are created for program components, the level of abstraction of the design
model is higher than the source code. The only design decisions made at the
coding level should address the small implementation details that enable the
procedural design to be coded.
The design should be assessed for quality as it is being created, not after the
fact. A variety of design concepts and design measures are available to a ssist
the designer in assessing quality throughout the development process. The design
should be reviewed to minimize conceptual (semantic) errors. A design team
should ensure that major conceptual elements of the design (omissions,
195
ambiguity, and inconsistency) have been addressed before worrying about the
syntax of the design model.
(From Wikipedia, the free encyclopedia)

VOCABULARY
accommodate v. [əˈkɔmədeɪt] – приспосабливать, согласовывать
address v. [əˈdres] – рассматривать, затрагивать
ambiguity [æmbɪˈgjuːɪtɪ] – неоднозначность, двусмысленность, нечёт-
кость
artifact [ˈɑːtɪfækt] – артефакт, экспонат
assist v. – содействовать, способствовать
cloud computing [klaʊd kəmˈpjuːtɪŋ] – облачные вычисления, облачная
обработка
constraint [kənˈstreɪnt] – сдерживающий фактор, ограничение
domain – домен
framework – структура, конструкция, основа
framing – структурирование
graceful – корректный
inconsistency [,ɪnkən ˈsɪstənsɪ] – несоответствие
judge v. – оценивать, судить
mimic v. [ˈmɪmɪk] – подражать, копировать
omission [əˈmɪʃn] – упущение, недоработка
output – результат, итог
plumbing layout – сантехническая разводка
reinvent v. – заново изобретать
sequence [ˈsi:kwəns] – последовательность
straightforward [streɪtˈfɔːwəd] – понятный, однозначный, чёткий
suitable [ˈsju:təbl] – подходящий, соответствующий
terminate v. [ˈtə:mɪneɪt] – завершать
traceable – прослеживаемый
wheel – колесо
EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
корректным способом; оценивая каждый на основе требований;
спецификация артефакта программного обеспечения; на протяжении всего
процесса разработки; интегрирование образцов; выполнять цели; ресурсы,
доступные, для выполнения задания; высокоуровневый проект архитектуры;
независимый от платформы; используя набор примитивных компонентов и с
учётом ограничений; хорошо разработанное программное обеспечение; как
196
только возможно; на уровне кодирования; процесс внедрения программных
решений; не должны изобретать колесо; проект должен прослеживаться; в
зависимости от среды; подходящие шаблоны разработки; представляя
совокупность всего; действительно новые идеи.

II. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What kind of process is a software design? 2. What does the software
design usually involve? 3. Why is the software requirements analysis one of the
main components of the software design? 4. When may a software design
be platform-independent or platform-specific? 5. What is the main difference
between a software analysis and a design? 6. In which case can the design often
vary? 7. What do design examples include? 8. What does a sequence of steps
enable the designer to do? 9. How should a good designer consider alternative
approaches? 10. Why should the design be traceable to the analysis model? 11.
Should the design reinvent the wheel? 12. What should design time be invested
in? 13. What does it mean that the design should "minimize the intellectual
distance" between the software and the problem? 14. Is the level of abstraction of
the design model higher than the source code? 15. What design decisions should
address the small implementation details that enable the procedural design to be
coded? 16. When should the design be assessed for quality? 17. What is available
to assist the designer in assessing quality throughout the development process?
18. What should be made to minimize conceptual (semantic) errors?

III. Make up your own sentences or situations with the following phrases:
to implement software solutions, to make design decisions, should not be
designed very differently, to consider alternative approaches, to reinvent the
wheel, a means for tracking, to minimize errors, to accommodate unusual
circumstances.

IV. Find in the above text and copy out sentences in which the preposition by is
used, translate them.

V. Retell the above text using as many of the word combinations and phrases
from Exercise I as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. a) Add the prefix re- to the front of each base verb to make a new verb and
translate them:

Word-building: re + arrange v. = rearrange v.


(re- in front of the verb means ‘again or back’)

197
to appear, to build, to consider, to make, to mind, to move, to name, to
organize, to pack, to place, to search, to set, to structure, to tell, to type, to view, to
write.
b) Find in Text 1 and copy out sentences containing verbs with the prefix re-,
translate them.

II. Find in the above text and copy out sentences containing ‘should/should
not’. Some of the sentences are active and some are passive.

III. Translate the following sentences and define the italicized verb forms.
1. A design is integrated if care is taken in defining interfaces between
design components. 2. The design should be structured to accommodate the
change. 3. In order to achieve this outcome, rules of style and format should be
defined for a design team before design work begins. 4. The design concepts
enable a design to achieve this principle. 5. Creative skill, past experience, and an
overall commitment to quality are examples of critical success factors for a
competent design. 6. The design should be structured to degrade gently, even
when aberrant data, events, or operating conditions are encountered. 7. The
design should exhibit uniformity and integration. 8. There is sometimes a
tendency to focus on minutiae when the design is reviewed, missing the forest for
the trees. 9. The software can be restored to a specified condition within a
specified period of time. 10. After the purpose and specifications of software are
determined, software developers will design or employ designers to develop a plan
for a solution.

IV. Ask all types of questions to the following sentence.


In order to represent an algebraic expression in a computer program, most
systems seek to store the minimum information needed to specify the expression
uniquely.

V. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Существует целый спектр различных атрибутов, помогающих оценить и
добиться качественного дизайна. 2. Разработка программного обеспечения
является творческим процессом. 3. Продукт состоит из программного кода,
документации и различных артефактов. 4. Артефакты представляют собой
дополнительные результаты, полученные в ходе разработки программного
обеспечения, ожидаемые или полученные случайным образом. 5. Нам следует
расширить и скорректировать модели реальной системы, чтобы они могли быть
реализованы компьютерной программой. 6. В процессе анализа р азработчики
могут использовать все доступные источники информации (документы,
интервью, аналогичные приложения) и устранить возникающие неопределён-
ности. 7. Тестирование позволяет раскрыть случайные ошибки, котор ые
появились в системе в процессе её создания.

198
TOPICS FOR DISCUSSION:

I. Explain the following:


Software design is a process to transform user requirements into some
suitable form, which helps the programmer in software coding and implementa-
tion.
II. What is your opinion on the following problems? Prove your point of view.
1) What other foreign language besides English would you learn if you had
the opportunity?
2) Many people say that learning foreign languages is a waste of time.

Text 2
SOFTWARE TESTING STRATEGIES
Read and translate the text.

A strategy for software testing integrates software test case design methods
into a well-planned series of steps that result in the successful construction of
software. The strategy provides a road map that describes the steps to be conducted as
part of testing, when these steps are planned and then undertaken, and how much
effort, time, and resources will be required. Therefore, any testing strategy must
incorporate test planning, test case design, test execution, and resultant data
collection and evaluation. A software testing strategy should be flexible enough to
promote a customized testing approach. At the same time, it must be rigid enough to
promote reasonable planning and management tracking as the project p rogresses. In
many ways, testing is an individualistic process, and the number of different typ es of
tests varies as much as the different development approaches. For many years, our
only defense against programming errors was careful design and the native
intelligence of the programmer. Similarly, different test methods are beginning to
cluster themselves into several distinct approaches and philosophies.
The objective of software testing is to uncover errors. To fulfill this objective, a
series of test steps—unit, integration, validation, and system tests—are p lanned and
executed. Unit and integration tests concentrate on functional verification of a
component and incorporation of components into a p rogram structure. Validation
testing demonstrates traceability to software requirements, and system testing
validates software once it has been incorporated into a larger system. Each test step is
accomplished through a series of systematic test techniques that assist in the design of
test cases. With each testing step, the level of abstraction with which software is
considered is broadened. Unlike testing (a systematic, planned activity), debugging
must be viewed as an art. A strategy for software testing is developed by the p roject
manager, software engineers, and testing specialists.
Testing is a set of activities that can be planned in advance and conducted
systematically. For this reason a template for software testing—a set of step s into
which we can place specific test case design techniques and testing methods—should
199
be defined for the software process. All provide the software developer with a
template for testing and all have the following generic characteristics:
• Testing begins at the component level and works "outward" toward the
integration of the entire computer-based system.
• Different testing techniques are appropriate at different points in time.
• Testing is conducted by the developer of the software and (for large projects)
an independent test group.
• Testing and debugging are different activities, but debugging must be
accommodated in any testing strategy.
A strategy for software testing must accommodate low-level tests that are
necessary to verify that a small source code segment has been correctly implemented
as well as high-level tests that validate major system functions against customer
requirements. A strategy must provide guidance for the practitioner and a set of
milestones for the manager. Because the steps of the test strategy occur at a time
when dead-line pressure begins to rise, progress must be measurable and p roblems
must surface as early as possible.
Verification refers to the set of activities that ensure that software correctly
implements a specific function. Validation refers to a different set of activities that
ensure that the software that has been built is traceable to customer requirements.
Verification and validation encompasses a wide array of SQA activities that
include formal technical reviews, quality and configuration audits, performance
monitoring, simulation, feasibility study, documentation review, database review,
algorithm analysis, development testing, qualification testing, and installation testing.
Quality is incorporated into software throughout the process of software
engineering. Proper application of methods and tools, effective formal technical
reviews, and solid management and measurement all lead to quality that is confirmed
during testing.
A strategy for software testing may also be viewed in the context of the
spiral. Unit testing begins at the vortex of the spiral and concentrates on each unit
(i.e., component) of the software as implemented in source code. Testing
progresses by moving outward along the spiral to integration testing, where the
focus is on design and the construction of the s oftware architecture. Taking
another turn outward on the spiral, we encounter validation testing, where
requirements established as part of software requirements analysis are validated
against the software that has been constructed. Finally, we arrive at system testing,
where the software and other system elements are tested as a whole. To test
computer software, we spiral out along streamlines that broaden the scope of
testing with each turn.
(By Roger S. Pressman)

VOCABULARY
appropriate [ə'prəuprɪət] – соответствующий, подходящий
audit ['ɔ:dɪt]– аудит (проверка)
broaden v. ['brɔ:dn] – расширять(ся)

200
cluster v. [ˈklʌstə] – группировать
conduct v. – проводить, осуществлять
confirm v. [kənˈfɜːm] – подтверждать
debugging – отладка
dead-line – конечный срок, предельный срок
feasibility – выполнимость, возможность
flexible [ˈfleksəbl] – гибкий
fulfill v. [fʊlˈfɪl] – выполнить, осуществить
in advance – заранее
milestone [ˈmaɪlstəun] – веха, этап
native – собственный
objective [əbˈdʒektɪv] – цель, задача
outward [ˈautwəd] – направленный наружу; исходящий
promote v. [prəˈməʊt] – способствовать, содействовать
refer to v. [rɪˈfɜː tuː] – ссылаться на
rigid [ˈrɪdʒɪd]– твёрдый, жёсткий
scope – сфера, область; охват
spiral out v. [ˈspaɪərəl] – раскручиваться спиралью
streamline – направление потока
surface v. [ˈsɜːfɪs] – всплыть; зд. появиться
template [ˈtemplɪt] – шаблон
test case design – проект тестового сценария
traceable – прослеживаемый
turn – поворот
unit – модуль, блок
validate v. [ˈvælɪdeɪt] – подтверждать; проверять
verify v. [ˈverɪfaɪ] – проверять
vortex [ˈvɔ:teks] – вихрь

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
твёрдое управление и измерение; интегрирует методы разработки тесто-
вого сценария программного обеспечения; сделав еще один поворот нар ужу по
спирали; широкий спектр; подобным образом; в отличие от тестирования;
требования заказчика; давление конечного срока; в целом; технико-
экономическое обоснование; индивидуальный подход тестирования; выявить
ошибки; в вихре спирали; проблемы нужно выявить как можно раньше;

201
должна быть приспособлена; разумное планирование; подтвер ждают главные
системные функции; надлежащее применение методов и инструментов.

II. Make up your own sentences or situations with the following word
combinations:
to cluster oneself into, to arrive at system testing, to incorporate comp onents
into a program structure, to accomplish each test step through systematic test
techniques, to be traceable to customer requirements.

III. Answer the following questions using the words and word combinations of
the topical vocabulary:
1. What does a strategy for software testing integrate? 2. Must any testing
strategy incorporate test planning, test case design, test execution, and resultant data
collection and evaluation? 3. Why should a software testing strategy be flexible? 4.
How does the number of different types of tests vary? 5. Do different test methods
cluster themselves into several distinct approaches and philosophies ? 6. What is the
objective of software testing? 7. What should be done to fulfill this objective? 8.
What demonstrates traceability to software requirements? 9. In what way is each test
step accomplished? 10. Who is a strategy for software testing developed by? 11. Can
testing be planned in advance and conducted systematically? 12. What is a temp late
for software testing? 13. What generic characteristics do specific test case design
techniques and testing methods have? 14. What are low-level tests necessary for? 15.
What is the difference between verification and validation? 16. Is quality
incorporated into software throughout the process of software engineering? 17. How
may a strategy for software testing also be viewed? 18. Where does unit testing
usually begin? 19. Are software and other system elements tested using system
testing?

IV. Find in the above text and copy out sentences in which the prepositions
against and through are used. Translate them.

V. Explain in English the meaning of:


performance monitoring, debugging, test case design techniques, a practitioner.

VI. Retell the above text using as many of the words and word combinations
from Exercise I as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Find in the above text and copy out sentences in which linkers because,
therefore, finally and as well as are used. Which of them introduces a result and a
conclusion, a reason and a purpose, an addition or is used as a narrative linker?

II. Make your own sentences with because, therefore, finally and as well as,
using word combinations and phrases of the topical vocabulary.
202
III. Complete the sentences with the words from the box.

engineer conflict engineering operations repeatedly errors


cases tasks

1. Software design sits at the technical kernel of software ….. and is ap p lied
regardless of the software process model that is used. 2. The goal of interface
design is to define a set of interface objects and actions that enable a user to
perform all defined ….. in a manner that meets every usability goal defined for the
system. 3. Once the objects and actions have been defined and elaborated …. ,
they are categorized by type. 4. The software …... creates a computer program, its
documentation, and related data structures. 5. In many ….. , the developer also
conducts integration testing—a testing step that leads to the construction (and test)
of the complete program structure. 6. Independent testing removes the ….. of
interest that may otherwise be present. 7. While testing is conducted, the developer
must be available to correct ….. that are uncovered. 8. Logical ….. consist in
comparing, selecting, sorting, matching and determining.

IV. Choose the correct preposition to complete each of the following


sentences:
1. A set of fundamental software design concepts has evolved …. the p ast
four decades. 2. The use of information hiding as a design criterion for modular
systems provides the greatest benefits when modifications are required …. testing
and later, during software maintenance. 3. Software components include program
modules and the various data representations that are manipulated ... the program.
4. An alternative approach to task analysis takes an object -oriented point …..
view. 5. Security testing attempts to verify that protection mechanisms built ….. a
system will, in fact, protect it from improper penetration. 6. When a test case
uncovers an error, debugging is the process that results … the removal of the error.
7. Beginning ….. a symptomatic indication of a problem, the debugging activity
must track down the cause of an error. 8. ….. a psychological point of view,
software analysis and design (along with coding) are constructive tasks. 9. The
software developer is always responsible ….. testing the individual units
(components) of the program, ensuring that each performs the function for which it
was designed.
Keys: with, of, for, over, from, during, in, by, into.

V. Ask questions to which the following statements may serve as the answers.
1. My software testing has already been checked by the project manager . 2.
A strategy for software testing has been developed by Mike lately. 3. This software
developer has been known to me for a long time. 4. The new regulations have just
been announced. 5. Your documentation has been processed and posted back to
you today. 6. This information has been just said over the radio. 7. Testing has
already been conducted by the developer of the software and an independent test
group. 8. Errors in the database haven’t yet been corrected by the software engineers.
203
VI. Read the above text again, find and copy out sentences with the Present
Perfect Passive tense form. Translate them into your language.

VII. Study the grammar table and learn.

The structure as…as is used to compare things that are of similar proportion.
We can show that two things are not equal using not + as + adjective + as.

VIII. a) Translate the following sentences paying attention to the grammar.


1. The students answered as well as they could. 2. The testing specialist is
probably as influenced by the software testing views as you are. 3. He worked for
as long as he wanted to on the software testing strategy. 4. Send the source code as
soon as possible. 5. He is as good a software developer as you are. 6. A specific
function must be implemented as soon as possible. 7. He wanted to accommodate
debugging in the testing strategy as successful as you did. 8. The algorithm analysis
wasn’t as difficult as we expected. 9. Although he was bored during the feasibility
study, he managed to look as interested as usual. 10. Our software engineer
conducts testing as often as she can: twice a week. 11. Your defense program
against programming errors doesn't have as many features as the other one.

b) Find in the above text and copy out sentences with the structure as…as
and translate them.

IX. Ask all types of questions to the following sentence:


Much effort and time will be required to conduct these planned testing steps.

TALKING TOPICS:
I. Discuss the arguments for the following problem. Make use of the
vocabulary of the topic.
It’s often better to have a few small, well-focused teams than a single large
team.
II. Read the following point of view. What could you add to prove it?
“Testing is an unavoidable part of any responsible effort to develop a software
system.” (William Howden)

Text 3
OBJECT- ORIENTED DESIGN
Read and translate the text.

An object-oriented approach to the development of software was first pro-


posed in the late 1960s. Object-oriented design is the process of planning a system
of interacting objects for the purpose of solving a software problem. It is one
approach to software design.
204
An object contains encapsulated data and procedures grouped together to
represent an entity. The 'object interface' defines how the object can be interacted
with. An object-oriented program is described by the interaction of these objects.
Object-oriented design is the discipline of defining the objects and their
interactions to solve a problem that was identified and documented during object-
oriented analysis.
What follows is a description of the class-based subset of object-oriented
design, which does not include object prototype-based approaches where objects
are not typically obtained by instancing classes but by cloning other (prototype)
objects. Object-oriented design is a method of design encompassing the process
of object-oriented decomposition and a notation for depicting logical and physical
as well as state and dynamic models of the system under design.
The input for object-oriented design is provided by the output of object-
oriented analysis. Realize that an output artifact does not need to be completely
developed to serve as input of object-oriented design; analysis and design may
occur in parallel, and in practice the results of one activity can feed the other in a
short feedback cycle through an iterative process. Both analysis and design can be
performed incrementally, and the artifacts can be continuously grown instead of
completely developed in one shot.
Some typical input artifacts for object-oriented design are:
Conceptual model: The result of object-oriented analysis, it captures
concepts in the problem domain. The conceptual model is explicitly chosen to be
independent of implementation details, such as concurrency or data storage.
Use case: A description of sequences of events that, taken together, lead to a
system doing something useful. Each use case provides one or more scenarios that
convey how the system should interact with the users called actors to achieve a
specific business goal or function. Use case actors may be end users or other
systems. In many circumstances use cases are further elaborated into use case
diagrams. Use case diagrams are used to identify the actor (users or other systems)
and the processes they perform.
System sequence diagram: A system sequence diagram is a picture that
shows, for a particular scenario of a use case, the events that external actors
generate their order, and possible inter-system events.
User interface documentations (if applicable): Document that shows and
describes the look and feel of the end product's user interface. It is not mandatory
to have this, but it helps to visualize the end-product and therefore helps the
designer.
Relational data model (if applicable): A data model is an abstract model
that describes how data is represented and used. If an object database is not used,
the relational data model should usually be created before the design, since the
strategy chosen for object-relational mapping is an output of the object-oriented
design process. However, it is possible to develop the relational data model and
the object-oriented design artifacts in parallel and the growth of an artifact can
stimulate the refinement of other artifacts.
(From Wikipedia, the free encyclopedia)
205
VOCABULARY
capture v. [ˈkæpʧə] – получать, фиксировать
concurrency [kən ˈkʌrənsɪ] – параллельная обработка
convey v. [kən ˈveɪ] – сообщать
decomposition [,diːkɔmpəˈzɪʃn] – декомпозиция; разложение
depict v. – изображать
elaborate v. [ɪˈlæbərɪt] – разработать
encapsulate v. [ɪnˈkæpsjʊleɪt] – инкапсулировать
encompass v. [ɪnˈkʌmpəs] – охватывать, включать
entity – объект, сущность
explicitly [ɪkˈsplɪsɪtlɪ] – явно, ясно, чётко
feed v. – снабжать, обеспечивать
growth [grəʊθ] – увеличение, развитие
incrementally [ɪnkrɪˈmentɪlɪ] – пошагово; постепенно, поэтапно
instancing – инстанцирование
iterative [ˈɪtərətɪv] – итеративный, повторяющийся
mandatory [ˈmændətərɪ] – обязательный, необходимый
notation – представление, нотация
object-oriented design – объектно-ориентированное проектирование
refinement – усовершенствование, улучшение, доработка
relational [rɪˈleɪʃənl] – реляционный, относительный
scenario [sɪˈnɑːrɪəʊ] – сценарий; вариант, ситуация
shot – попытка
sequence [ˈsi:kwəns] – последовательность
subset – подмножество

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
объектно-реляционное отображение; при многих обстоятельствах;
вариант использования; проектируемая система; инстанцируя классы; а не
полностью за один раз; чтобы решить проблему; подходы, основанные на
прототипе объекта; за короткий цикл обратной связи; агенты (исполнители)
варианта использования; нотация для изображения; чтобы служить в
качестве входных данных объектно-ориентированного проектирования; что-
бы идентифицировать агента; основанное на классе подмножество; система
взаимодействующих объектов; рост артефакта; возможные межсистемные
события; объектно-ориентированное разложение; выходной артефакт; стиль

206
пользовательского интерфейса конечного продукта; вариант использования;
может произойти параллельно.

II. Find in the above text synonyms of the following words:


parallel processing, clearly, obligatory, repetitive, to cover, outer, totally,
aim, improvement.

III. Fill in the gaps with the words and expressions from the text.
1. An object contains encapsulated data and procedures ….. to represent
an entity. 2. ….. for object-oriented design is provided by the output of object-
oriented analysis. 3. The conceptual model is explicitly chosen to be independent
of implementation details, such as ….. . 4. Use case ….. may be end users or other
systems. 5. A data model is an ….. model that describes how data is represented
and used. 6. It is possible to develop the relational data model and the ….. artifacts
in parallel.

IV. Ask your own questions to Text 3 for class discussion.

V. Find in the above text and copy out sentences containing both….and…,
translate them.

VI. Retell the above text using as many of the phrases and word combinations
from Exercise I as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following phrases:


to solve a software problem, an approach to software design, a subset of
object-oriented design, to feed the activity in a short feedback cycle, to be further
elaborated, in many circumstances.

II. Complete the sentences with the words from the box.

manager requirements outcomes on required within functional


more

1. The debugging process will always have one of two ….. : (1) the cause
will be found and corrected, or (2) the cause will not be found. 2. An operation
changes one or more attribute values that are contained ….. the object. 3. The
technical ….. who is faced with an object-oriented project applies these
management activities. 4. The number of support classes is an indication of the
amount of effort ….. to develop the software. 5. Software project estimation
remains ….. art than science. 6. The objective of object-oriented analysis is to
develop a model that describes computer software as it works to satisfy a set of
customer-defined ….. . 7. At an application level, the object model focuses …..
207
specific customer requirements as those requirements affect an application to be
built. 8. This sub-step defines ….. requirements for the way the software actually
works, i.e., what functions it performs.

III. Translate the sentences and define the italicized verb forms.
1. An object retains its identity as long as it exists, although its properties
might change. 2. Each object is said to be an instance of a particular class. 3. The
definition of a class fixes its characteristics: the instance variables or attributes
and the procedures related to it. 4. The objects in an object-oriented design are
related to the solution to the problem that is being solved. 5. Object-oriented
program systems and database systems can theoretically be considered to be
identical. 6. Active objects are used when an object needs to update its own state
at specified intervals. 7. Along with coding languages like XML and other markup
languages, object oriented programming can drive both highly conceptual and
highly functional programs. 8. Object-oriented programming language supports
an implementation of a program design which has been based on an object-
oriented paradigm. 9. Object-oriented programming languages typically share
low-level features with high-level procedural programming languages.

IV. Translate the following sentences having ing – forms. Say which words in
italics are gerunds and which are present participles.
1. Encapsulation prevents external code from being concerned with the
internal workings of an object. 2. If the representation is hidden, it can be changed
without affecting the objects that use these attributes. 3. If a class disallows
calling code from accessing internal object data and forces access through
methods only, this is a strong form of abstraction or information hiding known
as encapsulation. 4. While upgrading the information network, the company has
worked alongside the national government to promote the spread of information
technology. 5. Object-oriented design is the discipline of defining the objects and
their interactions. 6. Competition is intensifying as barriers to market entry fall and
emerging suppliers expand their capabilities by means of technology.

V. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Объектно-ориентированный подход использует объектную декомпо-
зицию. 2. Каждый объект системы обладает своим собственным поведением,
моделирующим поведение объекта реального мира. 3. Абстрагирование
концентрирует внимание на внешних особенностях объекта и позволяет
отделить самые существенные особенности его поведения от деталей их
реализации. 4. Выбор правильного набора абстракций для заданной
предметной области представляет собой главную задачу объектно -
ориентированного проектирования. 5. Инкапсуляция – это процесс
отделения друг от друга отдельных элементов объекта, определяющих его
устройство и поведение. 6. Определение классов и объектов – одна из самых
сложных задач объектно-ориентированного проектирования. 7. Программа,
208
полученная при реализации объектно-ориентированного исходного кода,
описывает взаимодействие объектов. 8. Объекты содержат инкапсулиро-
ванные данные и процедуры, сгруппированные вместе, отображая сущность
объекта.

SPEAKING:

I. Express your opinion on the following point of view. Give your reasons.
Object-oriented design is a design strategy where system designers think in
terms of ‘things’ instead of operations or functions.

II. Arrange short debates on the following problem:


The physical world limits the size of artifacts that we can construct, but
computer programs don’t know such limits. Programs are mathematical crea-
tures, their scale and scope are limited only by our imaginations.

III. What would you do if you had to write good software?

UNIT X
Text 1
SOFTWARE ARCHITECTURE
Read and translate the text.

Software architecture refers to the high level structures of a software


system, the discipline of creating such structures, and the documentation of these
structures. These structures are needed to reason about the software system. Each
structure comprises software elements, relations among them, and proper ties of
both elements and relations. The architecture of a software system is a metaphor,
analogous to the architecture of a building.
Software architecture choices include specific structural options from
possibilities in the design of software. For example, the systems that controlled
the space shuttle launch vehicle had the requirement of being very fast and very
reliable. Therefore, an appropriate real-time computing language would need to
be chosen. Additionally, to satisfy the need for reliability the choice could be
made to have multiple redundant and independently produced copies of the
program, and to run these copies on independent hardware while cross-checking
results.
Documenting software architecture facilitates communication between
stakeholders, captures early decisions about the high-level design, and allows
reuse of design components between projects. Overall, the macroscopic system
structure refers to architecture as a higher level abstraction of a software system
that consists of a collection of computational components together with
connectors that describe the interaction between these components.
209
Software architects should concern themselves with those decisions that
have high impact on the system and its stakeholders. Since designing the
architecture takes place at the beginning of a software system's lifecycle, the
architect should focus on decisions that "have to" be right the first time.
Following this line of thought, architectural design issues may become non-
architectural once their irreversibility can be overcome.
Software architecture should not be considered merely a set of models or
structures, but should include the decisions that lead to these particular structures,
and the rationale behind them.
There is no sharp distinction between software architecture versus design
and requirements engineering. They are all part of a "chain of intentionality"
from high-level intentions to low-level details. Software architecture typically
refers to the bigger structures of a software system, and it deals with how multiple
software processes cooperate to carry out their tasks. Software design refers to the
smaller structures and it deals with the internal design of a single software
process.
The architecture of a system describes its major components, their
relationships (structures), and how they interact with each other. Software
architecture and design include several contributory factors such as business
strategy, quality attributes, human dynamics, design, and IT environment.
Architecture serves as a blueprint for a system. It provides an abstraction to
manage the system complexity and establish a communication and coordination
mechanism among components. It defines a structured solution to meet all the
technical and operational requirements, while optimizing the common quality
attributes like performance and security. Further, it involves a set of significant
decisions about the organization related to software development and each of
these decisions can have a considerable impact on quality, maintainability,
performance, and the overall success of the final product. These decisions
comprise of:
• Selection of structural elements and their interfaces by which the system
is composed;
• Behavior as specified in collaborations among those elements;
• Composition of these structural and behavioral elements into large sub-
system;
• Architectural decisions align with business objectives;
• Architectural styles guide the organization.
Software architecture exhibits the following:
Multitude of stakeholders: software systems have to cater to a variety of
stakeholders such as business managers, owners, users and operators. These
stakeholders all have their own concerns with respect to the system . Balancing
these concerns and demonstrating how they are addressed is part of designing the
system. This implies that architecture involves dealing with a broad variety of
concerns and stakeholders, and has a multidisciplinary nature. Architecture
documentation shows that all stakeholder concerns are addressed by modeling and

210
describing the architecture from separate points of view associated with the
various stakeholder concerns.
Quality-driven: classic software design approaches were driven by required
functionality and the flow of data through the system, but the current insight is
that the architecture of a software system is more closely related to its quality
attributes such as fault-tolerance, backward compatibility, extensibility, reliabili-
ty, maintainability, availability, security, usability, and other such –ilities.
Recurring styles: like building architecture, the software architecture
discipline has developed standard ways to address recurring concerns. These
"standard ways" are called by various names at various levels of abstraction.
Common terms for recurring solutions are architectural style, reference
architecture and architectural pattern.
Conceptual integrity: a term introduced by Fred Brooks to denote the idea
that the architecture of a software system represents an overall v ision of what it
should do and how it should do it. This vision should be separated from its
implementation. The architect assumes the role of "keeper of the vision", making
sure that additions to the system are in line with the architecture, hence
preserving conceptual integrity.
(From Wikipedia, the free encyclopedia)

VOCABULARY
align with v. [əˈlaɪn] – совместить с; согласовать с
attribute [ˈætrɪbjuːt] – атрибут, свойство
backward [ˈbækwəd] – обратный
blueprint – копирка; план
cater to v. – обслуживать; стараться, угождать
choice [ʧɔɪs] – выбор, вариант; возможность выбора
compose v. [kəmˈpəʊz] – составлять, компоновать
composition [kɔmpəˈzɪʃn] – составление, структура
concern [kən ˈsɜːn] – проблема
connector [kəˈnektər] – соединитель
contributory [kən ˈtrɪbjʊtərɪ] – содействующий
cross-checking – перекрёстная проверка
extensibility [ɪkstensəˈbɪlɪtɪ] – расширяемость
fault-tolerance [fɔːlt ˈtɔlərəns] – отказоустойчивость
intentionality [ɪntenʃəˈnælɪtɪ] – преднамеренность
irreversibility [ɪrɪvɜːsəˈbɪlɪtɪ] – необратимость
multidisciplinary [mʌltɪˈdɪsɪplɪnərɪ] – многопрофильный, междисципли-
нарный
multiple [ˈmʌltɪpl] – множественный, многочисленный

211
multitude – множество
overall [ˈəʊvərɔːl] – в целом; общий
overcome v. [əʊvəˈkʌm] – преодолеть
preserve v. [prɪˈzɜːv] – сохранить
property [ˈprɔpətɪ] – свойство, характеристика, особенность
rationale [ræʃəˈnɑːl] – обоснование; основная причина; довод
reason about v. [riːzn] – рассуждать о, аргументировать
recurring [rɪˈkɜːrɪŋ] – повторяющийся, периодический
redundant [rɪˈdʌndənt] – избыточный, излишний, чрезмерный
relate to v. – касаться, относиться, иметь отношение
run v. – работать, запускать
single – единый, отдельный
space shuttle launch vehicle – космический челнок ракеты-носителя
stakeholder [ˈsteɪkhəʊldər] – заинтересованная сторона, субъект деятель-
ности

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
согласовать с бизнес-целями; обратная совместимость; должны обслу-
живать различные заинтересованные стороны; архитектура предполагает
решение широкого спектра проблем; сохраняя концептуальную целост-
ность; чтобы обозначить идею; несколько содействующих факторов;
рассуждать о системе программного обеспечения; сложившееся понимание;
должны быть отделены от его реализации; конкретные структурные
параметры; управлять сложной системой; потребность в надёжности;
архитектурный образец; управляемые качеством; независимые аппаратные
средства; надлежащий язык вычислений в режиме реального времени;
получает первые решения; как производительность и безопасность; повтор-
ное использование компонентов проекта; жизненный цикл системы
программного обеспечения; адресовать повторяющиеся проблемы; отчётли-
вое различие; внутренний проект; значительное влияние на качество;
проблемы относительно системы; называют разными именами.

II. Fill in the gaps with the words and expressions from the text.
1. Each structure comp rises software elements, relations among them, and
properties of ….. . 2. Software architecture ….. include specific structural options
from possibilities in the design of software. 3. To satisfy the need ….. the choice
could be made to have multiple redundant and independently produced copies of
the program. 4. The macroscopic system structure refers to ….. as a higher level
abstraction of a software system. 5. ….. should concern themselves with those

212
decisions that have high impact on the system and its stakeholders. 6. Software
architecture should include the decisions that ….. , and the rationale behind them.
7. The architecture of a system ….. its major components, their relationships
(structures), and how they interact with each other. 8. Architecture provides an
abstraction to manage the system complexity and establish a communication and
coordination mechanism ….. . 9. Architecture documentation shows that all
stakeholder concerns are addressed by modeling and describing the architecture
….. associated with the various stakeholder concerns. 10. The architecture of a
software system is …. its quality attributes such as fault-tolerance, backward
compatibility, extensibility, reliability, maintainability, availability, security,
usability, and other such –ilities.

III. Look through the text again and find the answers to the following
questions:
1. What does software architecture refer to? 2. Can the architecture of a
software system be a metaphor, analogous to the architecture of a building? 3.
What do software architecture choices include? 4. What choice could be made to
satisfy the need for reliability? 5. What facilitates communication between
stakeholders and captures early decisions about the high-level design? 6. What
can you say about the macroscopic system structure? 7. Who should concern
oneself with those decisions that have high impact on the system and its
stakeholders? 8. Why should the architect focus on decisions that "h ave to" be
right the first time? 9. What decisions should software architecture include? 10. Is
there any sharp distinction between software architecture versus design and
requirements engineering? 11. What is the difference between software
architecture and software design? 12. What does the architecture of a system
describe? 13. Does the architecture define a structured solution to meet all the
technical and operational requirements? 14. Which decisions does architecture
comprise of? 15. Who do software systems have to cater to? 16. What does
architecture documentation show? 17. What is the current insight related to? 18.
What has developed standard ways to address recurring concerns ? 19. Are these
"standard ways" called by the same names at various levels of abstraction? 20.
Who was the term ‘conceptual integrity’ introduced by? 21. What idea does it
denote?

IV. Find in the above text and copy out sentences in which the preposition to is
used. Translate them.

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following phrases:


213
to reason about the software system, specific structural options, to be
closely related to different quality attributes, to concern oneself with, to meet all
the technical and operational requirements, to cater to a variety of stakeholders, to
preserve conceptual integrity.

II. Complete the sentences with the words from the box.

characteristics engineer assessment software design focuses


represents overall

1. The ….. developer and customer must meet to define product objectives and
scope. 2. Information content ….. the individual data and control objects that
constitute some larger collection of information transformed by the software. 3. A set
of architectural patterns enable a software ….. to reuse design level concep ts. 4. The
architectural design description should address how the design architecture achieves
requirements for performance, capacity, reliability, security, adaptability, and other
system … . 5. Program and data structure contribute to an ….. view of software
architecture, while procedure provides the detail necessary for algorithm
implementation. 6. Architectural ….. represents the structure of data and p rogram
components that are required to build a computer-based system. 7. Architectural
design ….. on the representation of the structure of software components, their
properties, and interactions. 8. Quality attributes for architectural design ….. include
reliability, performance, security, maintainability, flexibility, testability, p ortability,
reusability, and interoperability.

III. Study the grammar table and learn.

There are several English words which may be used both as a verb and an
adjective.
For example: secure v. – гарантировать
secure adj. – безопасный
correct v. – исправлять
correct adj. – правильный

IV. Find in the above text and copy out phrases having words which may be
used both as a verb and an adjective.

V. Read and translate the following sentences. Pay attention to the function of
the past participle.
1. Software architecture reduces the risks associated with the construction of
the software. 2. Software integrity has become increasingly imp ortant in the age of
hackers and firewalls. 3. The use of information hiding as a design criterion for
modular systems provides the greatest benefits when modifications are required
during testing and later, during software maintenance. 4. The architectural design

214
indicates how the program architecture has been derived from the analysis model. 5.
Design constraints, such as physical memory limitations or the necessity for a
specialized external interface, may dictate special requirements for assembling or
packaging of software. 6. The software that is built for computer -based systems
exhibits one of many architectural styles. 7. Data-flow architecture is ap plied when
input data are to be transformed through a series of computational or manipulative
components into output data. 8. Once requirements engineering uncovers the
characteristics and constraints of the system to be built, the architectural p attern or
combination of patterns that best fits those characteristics and constraints can be
chosen. 9. One of the many problems faced by software engineers during the design
process is a general lack of quantitative methods for assessing the quality of proposed
designs. 10. All stakeholder concerns are addressed by modeling and describing
the architecture from separate points of view associated with the various
stakeholder concerns.

VI. a) Form the comparative degree of the following adjectives:


appropriate, broad, classic, common, computational, conceptual,
considerable, current, far, fast, final, independent, large, major, multiple,
operational, overall, particular, redundant, reliable, separate, sharp, significant,
single, specific, structural, various.
b) Find in the above text adjectives in the comparative degree, write out
phrases with them.

SPEAKING:
I. Discuss the role of software architecture in the software development.

II. Comment on the following quotation. Share opinions.


“Software architecture is the development work product that gives the highest
return on investment with respect to quality, schedule and cost.” (Len Bass et al.)

Text 2
COMPONENT-LEVEL DESIGN
Read and translate the text.

Component-level design, also called procedural design, occurs after data,


architectural, and interface designs have been established. The intent is to translate
the design model into operational software. But the level of abstraction of the existing
design model is relatively high, and the abstraction level of the operational p rogram
is low. The translation can be challenging, opening the door to the introduction of
subtle errors that are difficult to find and correct in later stages of the software
process. Software seems to be different from many other p roducts, where as a rule
higher quality implies a higher p rice. Those who want really reliable software will
discover that they must find a means of avoiding the majority of bugs to start with,
and as a result, the programming p rocess will become cheaper. Effective
215
programmers should not waste their time debugging—they should not introduce bugs
to start with. When the design model is translated into source code, we must follow a
set of design principles that not only perform the translation but also do not
“introduce bugs to start with.”
Data, architectural, and interface design must be translated into operational
software. To accomplish this, the design must be represented at a level of abstraction
that is close to code. Component-level design establishes the algorithmic detail
required to manipulate data structures, effect communication between software
components via their interfaces, and implement the processing algorithms allocated to
each component. A software engineer performs component-level design. You have to
be able to determine whether the program will work before you build it. The
component-level design represents the software in a way that allows you to review
the details of the design for correctness and consistency with earlier design
representations (i.e., the data, architectural, and interface designs). It provides a
means for assessing whether data structures, interfaces, and algorithms will work.
Design representations of data, architecture, and interfaces form the foundation for
component-level design. The processing narrative for each comp onent is translated
into a procedural design model using a set of structured programming constructs.
Graphical, tabular, or text-based notation is used to represent the design.
The procedural design for each component, represented in graphical, tabular, or
text-based notation, is the primary work product produced during component-level
design. Then a design walkthrough or inspection is conducted. The design is
examined to determine whether data structures, interfaces, processing sequences, and
logical conditions are correct and will produce the appropriate data or control
transformation allocated to the component during earlier design steps.
It is possible to represent the component-level design using a programming
language. In essence, the program is created using the design model as a guide. An
alternative approach is to represent the procedural design using some intermediate
(e.g., graphical, tabular, or text-based) representation that can be translated easily into
source code. Regardless of the mechanism that is used to rep resent the comp onent
level design, the data structures, interfaces, and algorithms defined should conform to
a variety of well-established procedural design guidelines that help us to avoid errors
as the procedural design evolves.
(By Roger S. Pressman)

VOCABULARY
allocate v. [ˈæləukeɪt] – выделять, размещать
avoid v. [əˈvɔɪd] – избежать, предотвратить
bug – ошибка
challenge v. [ˈʧælɪnʤ] – оспаривать, отрицать
conform v. [kənˈfɔːm] – соответствовать
consistency [kən ˈsɪstənsɪ] – последовательность, согласованность
construct [kənˈstrʌkt] – конструкция, концепция
216
debugging – отладка
evolve v. [ɪˈvɔlv] – развиваться
guideline [ˈgaɪdlaɪn] – руководящий принцип, направляющая линия
i.e. – то есть
imply v. [ɪmˈplaɪ] – подразумевать, предполагать, означать
intent – намерение
intermediate [ɪntəˈmiːdjət] – промежуточный
means [miːnz] – средство, способ
narrative [ˈnærətɪv] – описательная часть, изложение
notation [nəuˈteɪʃən] – нотация, примечание, обозначение
step – шаг, этап
subtle [sʌtl] – утончённый, изощрённый
tabular [ˈtæbjʊlə] – табличный
via [ˈvaɪə] – через, при помощи
walkthrough [ˈwɔːkθruː] – прохождение
waste v. [weɪst] – тратить впустую, растрачивать

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
устоявшиеся процедурные принципы проектирования; проект уровня
компонентов; основанная на тексте нотация; близок к коду; операционное
программное обеспечение; обработка последовательностей; альтернативный
подход; алгоритмы обработки, выделенные каждому компоненту; неуловимые
ошибки; более ранние представления проекта; как правило; в сущности; найти
средство избежать большинства ошибок; рассмотреть подробности проекта; не
вводить ошибки для начала; в результате; в качестве руководства; не стоит
тратить своё время на отладку; во время предыдущих этапов пр оектирования;
средство для оценки; набор структурированных программных конструкций.

II. Fill in the gaps with the words and expressions from the text.
1. But ….. of the existing design model is relatively high, and the abstraction
level of the operational program is low. 2. …. should not waste their time
debugging—they should not introduce bugs to start with. 3. To accomp lish this, the
design must be represented at a level of abstraction that ….. . 4. The component-level
design represents the software ….. that allows you to review the details of the design
for correctness and consistency with earlier design representations . 5. Graphical,
tabular, or text-based notation ….. to represent the design. 6. It is possible to
represent the ….. design using a programming language.

217
III. Answer the following questions using the phrases and word combinations
from Exercise I:
1. When does component-level design occur? 2. What is its intent? 3. Why can
the translation be challenging? 4. Must effective programmers find a means of
avoiding the majority of bugs to start with? 5. What set of design principles must we
follow when the design model is translated into source code? 6. What must be
translated into operational software? 7. What does component-level design establish?
8. Who performs component-level design? 9. What do you have to be able to
determine? 10. In what way does the component-level design represent the software?
11. What forms the foundation for component-level design? 12. How is the processing
narrative for each component translated into a procedural design model ? 13. What is
used to represent the design? 14. Is the procedural design for each component,
represented in graphical, tabular, or text-based notation, the p rimary work p roduct
produced during component-level design? 15. What is the design examined for? 16. Is
it possible to represent the component-level design using a p rogramming language?
17. What alternative approach is there? 18. What should conform to a variety of well-
established procedural design guidelines regardless of the mechanism that is used to
represent the component level design?

IV. Find in the above text and copy out phrases in which the preposition during
is used. Translate them.

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following phrases:


to find and correct errors; reliable software; a means of avoiding the majority of
bugs; to review the details of the design; to conduct a design walkthrough or
inspection; to be represented in graphical, tabular, or text-based notation; regardless of
the mechanism.

II. Complete the sentences with the words from the box.

design data stepwise form level applications algorithm

1. You must use ….. refinement to develop the algorithm. 2. The algorithm
design model represents the ….. at a level of detail that can be reviewed for quality.
3. Modern Web …... deliver increasingly sophisticated processing functions. 4.
Therefore, component-level ….. for WebApps often incorporates elements of content
design and functional design. 5. To achieve these capabilities, we will design and
construct WebApp functional components that are identical in ….. to software
components for conventional software. 6. The component is a higher ….. of

218
abstractions defined by their interfaces. 7. All operations that access the same ….. are
defined within one class.

III. Find in Text 2 and copy out sentences having the time conjunctions after
and before, analyze the use of the tense forms of the verb in both the main clause and
the time clause.

IV. Translate the sentences and define the italicized verb forms.
1. The design of data structures is defined by the data model developed for the
system. 2. Structured programming has led to more readable and testable code. 3.
Only those operations that are relevant to a particular category of clients should be
specified in the interface. 4. We will present a specific process that is generally
applicable to a range of end-user software. 5. A large number of advertisement p op-
ups appear very frequently every time you browse the web or even if a web browser
has not been opened. 6. He suggested an alternative approach to represent the
procedural design using some intermediate representation that could be translated
easily into source code. 7. Component-level design establishes the algorithmic detail
required to manipulate data structures, effect communication between software
components via their interfaces. 8. I am identifying all design classes that correspond
to the problem domain.

V. These sentences include examples of both ing - forms, the gerund and the
present participle. Say which words are gerunds and which are present participles.
1. A component is a basic building block for the computer software. 2. A
component helps in achieving the objectives and requirements of system to be built.
3. Experienced designers consider most of the alternative design solutions before
settling on the final design model. 4. Each construct has a predictable logical
structure where control enters at the top and exits at the bottom, enabling a maintainer
to easily follow the procedural flow. 5. Constraints usually specify invariant
conditions that must hold for the system being modeled. 6. He is of the op inion that
debugging a program is a hard job. 7. The process for developing a well -understood
business application with a highly experienced team can be quite different from the
process of developing an experimental artificial intelligence program with a group of
academic researchers. 8. Having a well-defined software process can help participants
meet the challenges and minimize the trying times. 9. The translation can be
challenging, opening the door to the introduction of subtle errors.

VI. Ask all types of questions to the following sentences:


1. Although the video control circuits can be programmed in application
software, all video subsystems have different programming interfaces.
2. The results of the component-level design have been affected by the changed
conditions.

TALKING TOPICS:

219
I. Give extensive answers.
1) Why is it important to perform a component-level design?
2) How do I ensure that I’ve done it right?

II. Comment upon the following statement. Share opinions.


Many software practitioners continue to believe that reuse is “more trouble
than it’s worth.”

III. Discuss the following problem:


Do you know people who put their whole life into their work? Is it a quality to
be admired?

Text 3
STRUCTURED PROGRAMMING
Read and translate the text.

The foundations of component-level design were formed in the early 1960s


and were solidified with the work of Edsger Dijkstra and his colleagues. In the late
1960s, Dijkstra and others proposed the use of a set of constrained logical constructs
from which any program could be formed. The constructs emphasized "maintenance
of functional domain." That is, each construct had a predictable logical structure, was
entered at the top and exited at the bottom, enabling a reader to follow p rocedural
flow more easily. The constructs are sequence, condition, and rep etition. Sequence
implements processing steps that are essential in the specification of any algorithm.
Condition provides the facility for selected processing based on some logical
occurrence, and repetition allows for looping. These three constructs are fundamental
to structured programming—an important component-level design technique. The
structured constructs were proposed to limit the procedural design of software to a
small number of predictable operations. Complexity metrics indicate that the use of
the structured constructs reduces program complexity and thereby enhances
readability, testability, and maintainability. The use of a limited number of logical
constructs also contributes to a human understanding process that psychologists call
chunking. To understand this process, consider the way in which you are reading this
page. You do not read individual letters but rather recognize p atterns or chunks of
letters that form words or phrases. The structured constructs are logical chunks that
allow a reader to recognize procedural elements of a module, rather than reading the
design or code line by line. Understanding is enhanced when readily recognizable
logical patterns are encountered. Any program, regardless of application area or
technical complexity, can be designed and implemented using only the three
structured constructs. It should be noted, however, that dogmatic use of only t hese
constructs can sometimes cause practical difficulties.
Structured programming is a programming paradigm aimed at imp roving the
clarity, quality, and development time of a computer program by making extensive
220
use of subroutines, block structures, for and while loops—in contrast to using simple
tests and jumps such as the goto statement which could lead to "spaghetti code"
which is difficult both to follow and to maintain.
It emerged in the late 1950s with the appearance of the ALGOL 58 and
ALGOL 60 programming languages, with the latter including support for block
structures. Contributing factors to its popularity and widespread acceptance, at first in
academia and later among practitioners, include the discovery of what is now known
as the structured program theorem in 1966.
The principles of structured programming include a technique that takes a top-
down design approach with block-oriented structures. A p rogrammer will break a
program’s source code into logically structured chunks. The main features include
sequencing, selection, and iteration. Following the structured p rogram theorem, all
programs are seen as composed of control structures:
"Sequence"; ordered statements or subroutines executed in sequence.
"Selection"; one or a number of statements is executed depending on the state
of the program. This is usually expressed with keywords such as if..then..else..end if.
"Iteration"; a statement or block is executed until the program reaches a certain
state, or operations have been applied to every element of a collection. This is usually
expressed with keywords such as while, repeat, for or do..until. Often it is
recommended that each loop should only have one entry p oint (and in the original
structural programming, also only one exit point, and a few languages enforce this).
"Recursion"; a statement is executed by repeatedly calling itself until
termination conditions are met. While similar in practice to iterative loops, recursive
loops may be more computationally efficient, and are implemented differently as a
cascading stack.
It is possible to do structured programming in any programming language,
though it is preferable to use something like a procedural programming language.
Some of the languages initially used for structured programming include: ALGOL,
Pascal, PL/I and Ada – but most new procedural programming languages since that
time have included features to encourage structured p rogramming, and sometimes
deliberately left out features – notably GOTO – in an effort to make unstructured
programming more difficult. Structured programming (sometimes known as modular
programming) is a subset of imperative programming that enforces a logical structure
on the program being written to make it more efficient and easier to understand and
modify.
(From Wikipedia, the free encyclopedia)

Commentary
Edsger Wybe Dijkstra – Dutch pronunciation: [ˈɛtsxər ˈwibə ˈdɛɪkstra];
(May 11, 1930 –August 6, 2002) was a Dutch computer scientist. He received the
1972 Turing Award for fundamental contributions to developing p rogramming
languages, and was the Schlumberger Centennial Chair of Computer Sciences at
The University of Texas at Austin from 1984 until 2000.

221
Goto (goto, GOTO, GO TO or other case combinations, depending on the
programming language) is a statement found in many computer programming
languages. It performs a one-way transfer of control to another line of code; in
contrast a function call normally returns control. The jumped-to locations are usually
identified using labels, though some languages use line numbers.
Spaghetti code is a slang used to describe a program's source code that is
difficult to read or follow by a human because of how the original programmer wrote
the code.
For loop: In computer science a for-loop (or simply for loop) is a control flow
statement for specifying iteration, which allows code to be executed repeatedly. The
name for-loop comes from the English word for, which is used as the keyword in
most programming languages to introduce a for-loop.
While loop: In most computer programming languages, a while loop is a
control flow statement that allows code to be executed repeatedly based on a given
Boolean condition.

VOCABULARY
aim v. – стремиться, нацелиться
bottom – основание, основа
cause v. [kɔːz] – обуславливать, вызывать
chunk [ʧʌŋk] – часть, порция, фрагмент, блок
chunking – разделение на блоки
clarity [ˈklærɪtɪ] – ясность, чёткость
constrain v. [kənˈstreɪn] – ограничивать
construct [kənˈstrʌkt] – конструкция, концепция
deliberately [dɪˈlɪbərɪtlɪ] – намеренно, умышленно
encourage v. [ɪnˈkʌrɪʤ] – стимулировать, способствовать
enforce v. [ɪnˈfɔ:s]– осуществлять, приводить в исполнение
enhance v. [ɪnˈhɑ:ns] – улучшать
exit v. [ˈeksɪt] – выходить
facility [fəˈsɪlɪtɪ] – возможность, способность; объект
for loop – цикл for
GOTO statement [ˈgəʊtəʊ] – оператор GOTO (переход)
imperative [ɪmˈperətɪv] – императивный; обязательный, крайне важный
indicate v. [ˈɪndɪkeɪt] – указывать
iteration [ɪtəˈreɪʃn] – итерация, повторение
loop v. – зацикливать
loop – цикл
module [ˈmɔdjuːl] – модуль, блок

222
readability [riːdəˈbɪlɪtɪ] – разборчивость, удобство чтения
readily [ˈredɪlɪ] – с готовностью, быстро
recursion [riːˈkɜːʃn] – рекурсия
repetition [repɪˈtɪʃn] – повторение, повторяемость
sequencing [ˈsiːkwənsɪŋ] – упорядочивание, секвенирование
solidify v. [səˈlɪdɪfaɪ] – укреплять, упрочить
stack – стек
statement – оператор
thereby [ˈðɛəˈbaɪ] – тем самым
while loop – цикл с условием продолжения (с предусловием)

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
блоки букв; предсказуемая логическая структура; нисходящий подход к
проектированию; упорядоченные операторы или подпрограммы; независимо от
прикладной области; с того времени; как каскадный стек; строка за строкой;
влияющие факторы; движение к оператору; выполненные последовательно;
логически структурированные блоки; широко распространённое принятие;
императивное программирование; обслуживание функционального домена;
итерационные циклы; должен иметь только одну точку входа; сложность
программы; условия завершения; включая поддержку блочных структур;
повторение допускает цикличное выполнение; на основе некоторого
логического возникновения; следовать за процедурным потоком; широкое
применение подпрограмм; распознать процедурные элементы модуля ; обычно
выражается ключевыми словами.

II. Fill in the gaps with the words and expressions from the text.
1. In the late 1960s, ….. proposed the use of a set of constrained logical
constructs from which any program could be formed. 2. ….. implements p rocessing
steps that are essential in the specification of any algorithm. 3. These …. are
fundamental to structured programming—an important component-level design
technique. 4. The use of a limited number of logical constructs also contributes to a
human understanding process that ….. . 5. Any program, ….. , can be designed and
implemented using only the three structured constructs. 6. The principles of
structured programming include ….. that takes a top-down design approach with
block-oriented structures. 7. Recursive loops may be more ….. efficient, and are
implemented differently as a cascading stack. 8. Some of the languages initially used
for structured programming include ….. but most new procedural programming
languages since that time have included features to encourage structured
programming.

223
III. Find in the above text synonyms of the following words:
chosen, important, clearness, to restrict, unit, targeted, vast, to make up.

IV. Find in the text and copy out phrases in which the preposition at is used.
Translate them.

V. Write some problem questions to the above text for class discussion.

VI. Outline the main ideas of the above text and write a summary.

VOCABULARY AND GRAMMAR EXERCISES

I. Translate the following word combinations into English:


структурное программирование, любой алгоритм, один вход и один
выход, нисходящее программирование, разработка подпрограмм, пр ивести к
нежелательным результатам, повышается надёжность программ, отладка и
тестирование программы, последовательность выполнения блоков, логический
фрагмент текста, возникновение ошибок, парадигма программирования, любой
допустимый оператор , программа состоит из блоков, повысить читаемость
текста.

II. Complete the sentences below by choosing the correct prepositions:


by for about over at of into
1. Spaghetti code can be caused by several factors, such as continuous
modifications by several people ….. a long life cycle. 2. Spaghetti code can be
reduced ….. keeping your code organized, formatted properly, commenting, using
subroutines, and if possible breaking your code into sections. 3. A p rogrammer will
break a program’s source code ….. logically structured chunks. 4.
Structured programming can be seen as a subset or sub-discipline ….. procedural
programming, one of the major programming paradigms. 5. Dijkstra's ideas …..
structured programming helped lay the foundations for the birth and development of
the professional discipline of software engineering, enabling programmers to
organize and manage increasingly complex software projects. 6. ….. a low level,
structured programs are often composed of simple, hierarchical program flow structur
es. 7. Historically, several different structuring techniques or methodologies have
been developed ….. writing structured programs.

III. Choose the proper verb form and translate the sentences.
1. Dijkstra was one of a small group of academics and industrial programmers
who advocated a new programming style ….. the quality of programs. 2. Many
languages ….. the goto statement, and many do not. 3. The program ….. from one
area to another, but this jumping is formal and more easily predictable, because for
loops and functions provide flow control. 4. Data Structured Programming ….. on
aligning data structures with program structures. 5. Structured programming ….. the
most famous for removing or reducing reliance on the GOTO statement. 6. In 1968,
224
the Dutch computer scientist Edsger W. Dijkstra ….. the term "structured
programming". 7. Unlike many other kinds of loops, such as the while-loop, the for-
loop is often ….. by an explicit loop counter or loop variable. 8. The while construct
….. of a block of code and a condition/expression.
Keys: is based, consists, to improve, coined, distinguished, jumps, is, support.

IV. Find in the above text and copy out sentences in which linkers such as and
however are used. Which of them introduces a contrast or clarification?

V. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Структурное программирование является методологией разработки
программного обеспечения, в основе которой лежит представление программы
в виде иерархической структуры блоков. 2. Методология структурного про-
граммирования появилась как следствие возрастания сложности задач и
усложнения программного обеспечения. 3. Спагетти-код представляет собой
слабо структурированную и трудную для понимания программу, содер жащую
много операторов goto и других конструкций, ухудшающих стр уктурирован-
ность. 4. Код с goto трудно форматировать, так как он может нарушать
парадигму структурного программирования. 5. В результате пр оектирования
мы получили программу, в которой принципиально отсутствует оператор
перехода goto. 6. Нисходящее пошаговое проектирование исключает
использование оператора goto. 7. Императивные языки программирования
манипулируют данными в пошаговом режиме, используя последовательные
инструкции и применяя их к разнообразным данным. 8. Зависимость,
предписывающая повторение цикла, либо выход из него, называется условием
повторения цикла. 9. Полный однократный проход цикла от начала до конца
называется итерацией.10. Цикл со счётчиком необходимо использовать , когда
мы знаем количество итераций цикла. 11. Структурное программирование
нацелено на улучшение ясности, качества, и время разработки компьютерной
программы.

SPEAKING:

I. Imagine you have received the task to make a lecture entitled “Structure of a
C program”. What problems can you discuss in it?

II. Arrange short debates on the following problem:


Learning computer programming is essential for engineering students these
days. There are many programming languages that need to be learned by the
telecommunication engineer students. Various programming languages are included
in the curriculum of telecommunication engineering courses. Assembly languages are
taught to them to make them familiar with the hardware interface. C p rogramming
language is taught as structured programming language and is useful for develop ing
the hardware interface applications. In the last year of the undergraduate
225
telecommunication engineering courses C++, an objected oriented programming
language is included.
Which computer language should be emphasized on during this limited
period?

Text 4
POINTERS
Read and translate the text.

Memory and addresses


Memory in a typical modern computer is divided into two classes: a small
number of registers, which live on the CPU chip and perform specialized functions
like keeping track of the location of the next machine code instruction to execute or
the current stack frame, and main memory, which (mostly) lives outside the CPU
chip and which stores the code and data of a running program. When the CPU wants
to fetch a value from a particular location in main memory, it must supply an address:
a 32-bit or 64-bit unsigned integer on typical current architectures, referring to one of
up to 232 or 264 distinct 8-bit locations in the memory. These integers can be
manipulated like any other integer; in C, they appear as pointers, a family of types
that can be passed as arguments, stored in variables, returned from functions, etc.
Pointer variables
A pointer variable is a variable that holds a pointer, just like an int variable is a
variable that holds an int. To declare a pointer-valued 150 variable, write a
declaration for the thing that it points to, but include a * before the variable name: int
*pointerToInt; double *pointerToDouble; char *pointerToChar; char
**pointerToPointerToChar. These declarations create four pointer variables, named
pointerToInt, pointerToDouble, pointerToChar, and pointerToPointerTo Char. On a
typical 64-bit machine, each will be allocated 8 bytes, enough to represent an address
in memory. The contents of these variables are initially arbitrary: to use them, you
will need to compute the address of something and assign it to the variable.
Declaring a pointer-valued variable allocates space to hold the pointer but not
to hold anything it points to. Like any other variable in C, a pointer -valued variable
will initially contain garbage—in this case, the address of a location that might or
might not contain something important. To initialize a pointer variable, you have to
assign to it the address of something that already exists. Typically this is done using
the & (address-of) operator: int n; /* an int variable */ int *p; /* a pointer to an int */
p = &n; /* p now points to n */.
Pointer variables can be used in two ways. The simplest way is to get their
value as with any other variable. This value will be an address, which can be stored in
another pointer variable of the same type. But more often you will want to work o n
the value stored at the location pointed to. You can do this by using the *
(dereference) operator, which acts as an inverse of the address-of operator: 151 int n;
/* an int variable */ int *p; /* a pointer to an int */ p = &n; /* p now points to n */ *p
226
= 2; /* sets n to 2 */ *p = *p + *p; /* sets n to 4 */. The * operator binds very tightly,
so you can usually use *p anywhere you could use the variable it p oints to without
worrying about parentheses. However, a few operators, such as the -- and ++
operators and the . operator used to unpack structs, bind tighter.
Printing pointers
You can print a pointer value using printf with the %p format specifier. To do
so, you should convert the pointer to type void * first using a cast, although on
machines that don’t have different representations for different p ointer types, this
may not be necessary.
The null pointer
The special value 0, known as the null pointer, may be assigned to a pointer of
any type. It may or may not be represented by the actual address 0, but it will act like
0 in all contexts (e.g., it has the value false in an if or while statement). Null p ointers
are often used to indicate missing data or failed functions. Attempting to dereference
a null pointer can have catastrophic effects, so it’s important to be aware of when you
might be supplied with one.
Pointers and functions
A simple application of pointers is to get around C’s limit on having only one
return value from a function. Because C arguments are copied, assigning a value to
an argument inside a function has no effect on the outside. Generally, if you p ass the
value of a variable into a function (with no &), you can be assured that the function
can’t modify your original variable. When you pass a pointer, you should assume that
the function can and will change the variable’s value. If you want to write a function
that takes a pointer argument but promises not to modify the target of the pointer, use
const, like this: void printPointerTarget (const int *p) { printf ("%d\n", *p);}
The one exception might be if the target of the pointer represents an abstract
data type, and you want to modify its representation during some operation to
optimize things somehow in a way 155 that will not be visible outside the abstraction
barrier, making it appear to leave the target constant. Note that while it is safe to pass
pointers down into functions, it is very dangerous to pass pointers up . The reason is
that the space used to hold any local variable of the function will be reclaimed when
the function exits, but the pointer will still point to the same location , even though
something else may now be stored there. So this function is very dangerous.
(By James Aspnes)

NOTE:
* = asterisk [ˈæstərɪsk] («звёздочка»)
/ = [forward] slash (косая черта с наклоном вправо, проф. слэш)
& = ampersand (амперсанд). The ampersand is the logogram "&", rep resent-
ting the conjunction word "and".
= equals or is equal to
. = dot
{ } open brace and close brace (curly brackets – фигурные скобки) = the set
of ... . Curly brackets are used to enclose groups of statements.

227
( ) = round brackets (круглые скобки);
% = per cent. The % indicates that it will change that part of the text with some
variable also passed as argument.

e.g.: /* a pointer to an int */ p = &n – /* указатель на интервал */p = &n

Commentary
James Aspnes is a professor in Computer Science at Yale University. He
earned his Ph.D. in computer science from Carnegie Mellon University in 1992. His
main research interest is distributed algorithms.

VOCABULARY
allocate v. [ˈæləukeɪt] – выделять; определять место, распределять
arbitrary – произвольный
assign v. – приписывать
be assured v. – уверить
bind v. ( bound; bound) – связывать
cast – бросок; форма, образец
char [tʃɑ:] (character) – символ
convert v. – превращать
declaration [ˈdekləˈreɪʃən] – объявление
declare v. [dɪˈklɛə] – объявлять, признавать
dereference v. [diːˈrefrəns] – разыменовывать
double [ˈdʌbl] – двойной; дважды
fetch v. – получать
garbage [ˈgɑːbɪʤ] – мусор
integer, int –целое число
inverse ['ɪn'vɜːs] – инверсия
parentheses [pəˈrenθəsiːz] – круглые скобки
pass v. – пропускать, прогонять, проходить
pointer – указатель
reclaim v. [rɪˈkleɪm] – исправлять, востребовать
specifier – спецификатор
stack frame – стековый фрейм
struct (structure) – структура
target [ˈtɑːgɪt] – цель
tightly [ˈtaɪtlɪ] – сильно, плотно
unary [ˈʌnərɪ] – унарный
value [ˈvælju:] – значение, величина
variable [ˈvɛərɪəbl] – переменная

228
void – пусто
worry about v. – волноваться о

EXERCISES TO THE TEXT

I. Find in the above text English equivalents for the following phrases and
word combinations and write them out:
параметры C; может быть передано как параметры; 150 переменных со
знаком указателя; объявление переменной со знаком указателя; передать
указатели в функции; укажет на то же расположение; используемые, чтобы
распаковать структуры; недостающие данные или отказавшие функции; цель
указателя; текущий стековый фрейм; отказаться от указателей; попытка
разыменовать нулевой указатель; чтобы ввести пусто *; рабочая пр ограмма; *
оператор связывает очень плотно; параметр в функции; параметр указателя;
одно возвращаемое значение; вычислить адрес; вне барьера абстракции;
инверсия операции вычисления адреса; запишите объявление; содержать
указатель; пространство, использованное для содержания любой локальной
переменной функции; будет первоначально содержать мусор;

II. Fill in the gaps with the words and expressions from the text.
1. Memory in a typical modern computer is divided into ….. classes. 2. A
pointer variable is a variable that holds ….. , just like an int variable is a variable that
holds an int. 3. ….. , each will be allocated 8 bytes, enough to represent an address in
memory. 4. Declaring a pointer-valued variable allocates space ….. but not to hold
anything it points to. 5. This value will be ….. , which can be stored in another
pointer variable of the same type. 6. You can print a pointer value using ….. . 7. Null
pointers are often used ….. missing data or failed functions. 8. Because C arguments
are copied, assigning a value to an argument ….. has no effect on the outside. 9.
When you pass a pointer, you should assume that the function can and will change
….. . 10. Note that while it is safe to pass pointers ….. , it is very dangerous to p ass
pointers up.

III. Answer the following questions using the phrases and word combinations
from Exercise I:
1. How many classes is memory in a typical modern computer divided into? 2.
What classes is memory in a typical modern computer divided into? 3. What must the
CPU supply when it wants to fetch a value from a particular location in main
memory? 4. Can these integers be manipulated like any other integer? 5. What must
you do to declare a pointer-valued 150 variable? 6. On what kind of machine will
these variables be allocated 8 bytes? 7. Are the contents of these variables initially
arbitrary? 8. What do you have to do when initializing a pointer variable? 9. What is
the simplest way to get the value of pointer variables as with any other variable? 10.
How should you convert the pointer to type void * ? 11. What type of a p ointer may
the special value 0, known as the null pointer be assigned to ? 12. What can you be

229
assured if you pass the value of a variable into a function (with no &)? 13. When is it
very dangerous to pass pointers up?

IV. Give your own definitions of the following terms:


variable, the false value, arbitrary, a running program.

V. Retell the above text using as many of the words and word combinations of
the topical vocabulary as you can.

VOCABULARY AND GRAMMAR EXERCISES

I. Make up your own sentences or situations with the following phrases:


to perform specialized functions, to fetch a value, to supply an address, the
variable name, to hold the pointer, without worrying about, to convert the p ointer to
type void * , missing data or failed functions, to assign a value to an argument, to
dereference a null pointer, to modify the target of the pointer, it is very dangerous.

II. Complete the sentences with the words from the box.

delimiters pointer end memory to denote programming value


operator

1. In C, C++, and Go, a prefix "&" is an unary operator denoting the address in
..... of the argument. 2. A symbol in computer ..... is a p rimitive data type whose
instances have a unique human-readable form. 3. The slash is used as a division .....
in most programming languages. 4. Slashes are used as the standard ….. for regular
expressions. 5. In computer science, the asterisk is commonly used ….. pointers,
repetition, or multiplication. 6. You can cast the return ….. of a function to void. 7.
Comments that begin with /* (a slash and an asterisk) and …... with */ were
introduced in PL/I. 8. The character '*' in front of the variable is used to declare a ….
variable.

III. Choose the proper verb form and translate the sentences.
1. In the 20th century, following the development of formal logic, the ampersand
….. a commonly used logical notation for the binary operator or sentential
connective AND. 2. Programming languages differ from natural languages in that
natural languages are only used for interaction between people, while p rogramming
languages also allow humans ….. instructions to machines. 3. The specification of a
programming language is intended to provide a definition that the language users and
the implementors can use to determine whether the behaviour of a program is correct,
….. its source code. 4. The %*d ….. for formatting the printing outputs of an integer
using the printf() or fprintf(). 5. The asterisk is also used in regular expressions …..
zero or more repetitions of a pattern. 6. In the B programming language and
languages that borrow syntax from it, such as C, PHP, Java, comments in the source
code are marked by an asterisk ….. with the slash. 7. Declarations may also ….. by
230
various type and storage modifiers: for instance, a constant variable may be indicated
by the modifier const. 8. The forward slash is used in Unix and Linux …. systems,
for specifying a file path-name, and separating a directory from sub-file components.
(Missing verbs: to communicate, be marked, to denote, became, is used, based,
given, combined)

IV. Find in the above text and copy out phrases with the past participle in the
function of an attribute and translate them.

V. Ask all types of questions to the following sentences:


1. The character '&' is used to access the memory address of any variable.
2. An array is a block of memory that holds one or more objects of a given type.

VI. Translate the following sentences into English using the words and word
combinations of the topical vocabulary:
1. Указатель – это переменная, диапазон значений которой состоит из
адресов ячеек памяти или специального значения, т.е. нулевого адреса. 2.
Языки программирования, в которых предусмотрен тип указателей, содержат
две основные операции над ними: присваивание и разыменование. 3.
Разыменование может быть явным и неявным. 4. Указатель может ссылаться на
переменную или функцию. 5. Любой указатель необходимо объявить перед
использованием, как и любую переменную. 6. После имени указателя идут
круглые скобки, в этих скобках перечисляются все аргументы через запятую
как в объявлении прототипа функции. 7. Символ указателя и его имя бер утся в
круглые скобки, чтобы показать, что это указатель, а не функция,
возвращающая указатель на определённый тип данных. 8. Для того, чтобы
узнать адрес конкретной переменной в С++ существует унарная операция
взятия адреса &.

SPEAKING:
I. Express your opinion on the following problem. Give your reasons.
If there were no pointers could you pass a "reference" to your object to a
function?
II. Comment upon the following question. Share opinions.
What are the benefits of using an array in practical programming?

III. Look for information and write a report on:


How do pointers work in Java?
Present it to your classmates.

IV. Develop the situation.


Your parents don’t want you to study Software Engineering. Persuade them that
it is your real calling.

231
GRAMMAR REFERENCES

ENGLISH TENSES (ACTIVE VOICE)

INDEFINITE CONTINUOUS PERFECT PERFECT


CONTINUOUS
verb be + -ing have + III form have been + -ing

I/You/we/they ask am have have


He/she/it asks is asking asked been asking
are has has
*Repeated,
customary action. *Action (process) *Completed action *Action (process) which
PRESENT

going on at the present connected with the began in the past and is
usually/generally moment. present; result. still going on now.
always/never for a month
often/seldom now, at present, already/yet a long time
sometimes at the moment ever/never since 5 o’clock
lately/recently how long
*Fact this week/today since when
*Future action (to a *Future action planned by now
timetable, schedule) before

asked was had asked had been asking


took asking
were
*Action (succession *Action (process) * Action completed *Action (process) which
of actions) in the taking place at a given before a certain began before a definite
past. moment in the past. moment in the past moment in the past and
was still going at the
PAST

moment.
yesterday at 5 yesterday by 5 o’clock yesterday He had been working for
last week from 5 to 6 yesterday before he came 2 hours, when my brother
3 days ago for 3 days last week by the end of last year came.
all day long
the whole day *At sequence of
when he came tenses.

will ask will be asking will have asked will have been asking

*Future action. *Action (process) *Action completed *Action (process) which


taking place at a given before a definite will begin before a
moment in the future. moment in the future. definite moment in the
FUTURE

future and will be going


on at that moment.
tomorrow at 5 tomorrow by 5 o’clock tomorrow When you come, I’ll have
next week from 5 to 6 tomorrow when he comes been working for 2 hours.
in 3 days for 3 days next week by next summer
in 2037 all day long tomorrow
when he comes

232
ENGLISH TENSES (PASSIVE VOICE)

INDEFINITE CONTINUOUS PERFECT


to be + III form to be being + III form to have been + III form
PRESENT

*Customary action *Action (process) taking place *Completed action connected


at a given moment in the past. with the present.

He is answered the The cake is being cooked now. The work has been done today.
questions every day.

*Action (succession of *Action (process) taking * Action completed before a


actions) in the past. place at a given moment in the certain moment in the past
past.
PAST

He was answered the The cake was being cooked the He said his car had been bought
questions yesterday. whole evening. yesterday.
They were taken home The work had been done by 5
yesterday. pm yesterday.

*Future action
*Action completed before a
definite moment in the future.
FUTURE

I will be taken there The work will have been done by


tomorrow. 5 pm tomorrow.
FUTURE-in-the

He said that I would be He said that the work would


PAST

taken there the next day. have been done by 5 pm the next
day.

233
ENGLISH PRONOUNS
(Местоимения)
Personal pronouns (Личные местоимения)
Личные местоимения изменяются по падежам: если они употребляются в
предложении в качестве подлежащего, то они стоят в именительном падеже;
если они употребляются в качестве дополнения, то они стоят в объектном
падеже.

Именительный падеж Объектный падеж


I я me мне, меня
Един. he он him ему, его
число she она her ей, ее
it оно, он, она it ему/ей, его/ее
we мы us нам, нас
Множ.
you вы, ты, Вы you вам, вас; тебе,тебя
число
they они them им, их

Demonstrative pronouns (Указательные местоимения)


Единственное число Множественное число
this - этот, эта, это these - эти
that - тот, та, то those - те

Possessive pronouns (Притяжательные местоимения)


Притяжательные местоимения служат определениями к существительным и
всегда занимают место перед определяемыми существительными. Если возникает
необходимость употребить притяжательное местоимение без существительного, то
существует специальная форма, которая называется абсолютной формой.

Местоимения
форма личные притяжательные абсолютная
I my mine мой
Един. he his his его
число she her hers ее
it its its его/её
we our ours наш
Множ.
you your yours ваш
число
they their theirs их

Reflexive pronouns (Возвратные местоимения)


Местоимения, оканчивающиеся на "-self (-selves во множественном
числе)", называют возвратными. Возвратные местоимения показывают, что
действие, называемое в предложении, направлено на лицо, которое его

234
выполняет, следовательно, возвратное местоимение должно быть по форме
соотнесено с подлежащим.

I - myself we - ourselves
you - yourself you - yourselves
he - himself they – themselves
she - herself
it - itself

THE NUMERAL (ИМЯ ЧИСЛИТЕЛЬНОЕ)


Образование количественных и порядковых числительных
В английском языке, так же как и в русском числительные делятся на
количественные числительные (Cardinal Numerals) и порядковые числительные
(Ordinal Numerals).

Количественные Порядковые
1 one first
2 two second
3 three third
4 four fourth
5 five fifth
6 six sixth
7 seven seventh
8 eight eighth
9 nine ninth
10 ten tenth
11 eleven eleventh
12 twelve twelfth
13 thirteen thirteenth
14 fourteen fourteenth
15 fifteen fifteenth
16 sixteen sixteenth
17 seventeen seventeenth
18 eighteen eighteenth
19 nineteen nineteenth
20 twenty twentieth
21 twenty-one twenty-first
22 twenty-two twenty-second
30 thirty thirtieth
40 forty fortieth
50 fifty fiftieth

235
60 sixty sixtieth
70 seventy seventieth
80 eighty eightieth
90 ninety ninetieth
100 a (one) hundred a (one) hundredth
101 a (one) hundred and one a (one) hundred and first
102 a (one) hundred and two a (one) hundred and second
200 two hundred two hundredth
253 two hundred and fifty-three two hundred and fifty-third
1,000 a (one) thousand a (one) thousandth
1,001 a (one) thousand and one a (one) thousand and first
2,250 two thousand two hundred and two thousand two hundred
fifty and fiftieth
3,000 three thousand three thousandth
100,000 a (one) hundred thousand a (one) hundred thousandth
1,000,00 a (one) million a (one) millionth
0
2,000,00 two million two millionth
0

Образование количественных числительных:

1. Количественные числительные от 13 до 19 включительно


образуются прибавлением суффикса -teen к соответствующим названиям
единиц первого десятка: four- fourteen, seven-seventeen.
Примечание. Числительные с суффиксом -teen имеют два ударения
('four'teen, 'fif'teen и т. д.), причём ударение на последнем слоге сильнее, чем на
первом. Когда эти числительные употребляются с существительными, ударение
падает на первый слог, а второй слог становится неударным: 'fourteen 'pens,
'fifteen 'pencils.
2. Названия количественных числительных, обозначающих десятки,
образуются добавлением суффикса -ty к названиям единиц: six-sixty, seven-
seventy.
Некоторые числительные образуются со следующими отклонениями
от общего правила:
two-twelve-twenty three-thirteen-thirty
five—fifteen—fifty eight—eighteen—eighty
Числительное forty отличается в написании от four, fourteen.
3. Десятки с единицами образуются таким же способом, как и в
русском языке:
22 twenty-two; 48 forty-eight
4. При обозначении количественных числительных разряды
многозначных чисел разделяются запятой: 7,000; 5,550,000.

236
5. Между сотнями (или тысячами и миллионами) следующими за ними
десятками (или единицами, если нет десятков) в любом разряде всегда ставится
союз and:
246 two hundred and forty-six 206 two hundred and six
5,050 five thousand and fifty 5,005 five thousand and five
3,525,250 three million five hundred and twenty-five thousand two hundred
and fifty
6. Числительные 100; 1,000; 1,000,000 употребляют с неопределённым
артиклем ‘а’ или с числительным ‘оne’.
100 a hundred \ one hundred
1,002 a thousand and two \one thousand and two

7. Числительные hundred, thousand, million не принимают окончания


-s во множественном числе:
three hundred
four thousand
five million
3,005,240 three million five thousand two hundred and forty
Примечание. Числительные hundred, thousand и million переходят в
разряд существительных и принимают окончание если они употребляются для
обозначения неопределённого количества сотен, тысяч или миллионов. В этом
случае за ними следует существительное с предлогом of.
Thousands of workers were streaming out of the plants. -- Тысячи рабочих
потоками выходили из заводов.
8. Существительное, которое следует за числительным, употребляется
без предлога и соответствует в русском языке существительному в
родительном падеже:
three thousand books – три тысячи книг
ten students – десять студентов

Образование порядковых числительных:


1. Порядковые числительные образуются прибавлением суффикса -th
к количественным числительным:
four—fourth thirteen —thirteenth seven—seventh fifteen—
fifteenth
Образование трёх первых числительных составляет исключение из
этого правила:
one —first two —second three—third
При образовании порядковых числительных fifth пятый и twelfth
двенадцатый буква v в названиях количественных числительных (five, twelve)
меняется на f и опускается буква е; в числительном eight выпадает буква t, а в
числительном nine опускается буква е:
five -fifth twelve—twelfth eight —eighth nine —ninth

237
При образовании порядковых числительных, обозначающих десятки,
начиная с 20, конечная буква у меняется на i и добавляется е перед суффиксом -
th для обозначения дополнительного звука [i]:
twenty—twentieth thirty —thirtieth
2. При образовании составных порядковых числительных, состоящих
из двух или более чисел, только последнее число приобретает форму
порядкового числительного, а предшествующие числа выражаются
количественными числительными, так же как и в русском языке:
twenty-third —двадцать третий five hundred and eighty-seventh —
пятьсот восемьдесят седьмой.
Имена существительные, определяемые порядковым числительным,
употребляются с определённым артиклем. Артикль сохраняется перед
порядковым числительным, если даже существительное не выражено, а лицо
подразумевается.
The first law of motion has the idea of motion and the idea of force. —
Первый закон движения cодержит понятие движения и понятие силы.
The second basket was the same size as the first. — Вторая корзина
была такого же размера, как и первая.
Примечание. Употребление неопределённого артикля с пор ядковым
именем числительным придаёт порядковому числительному дополнительное
значение, соответствующее русскому еще один:
Under certain circumstances, a second electron may enter the outer orbit.
— При некоторых обстоятельствах второй (ещё один) электрон может войти во
внешнюю орбиту.

ДРОБНЫЕ И СМЕШАННЫЕ ВЕЛИЧИНЫ


Простые дроби выражаются посредством количественных числительных в
числителе и порядковых в знаменателе:
1/3 a (one) third
1/5 a (one) fifth
1/6 a (one) sixth
1/100 a (one) hundredth
Дробные величины 1/2 и 1/4 передаются особыми словами: a (one) half
(l/2), a (one) quarter (1/4).
Примечание. Если имени существительному предшествует слово half, то
артикль ставится непосредственно перед существительным:
half a kilometre полкилометра
half an hour полчаса
half the distance половина расстояния.
Но:
a kilometre and a half полтора километра
an hour and a half полтора часа.
Если в числителе стоит число более единицы, то к слову, обозначающему
знаменатель, прибавляется окончание -s:
2/3 two thirds
238
4/9 four ninths
3/5 three fifths
9/10 nine tenths
Существительное, которое следует за дробным числительным, стоит в
единственном числе:
5/8 inch — 5/8 дюйма (читается: five eighths of an inch);
3/5 foot — 3/5 фута (читается: three fifths of a foot).
Существительное, которое следует за смешанным числом, стоит во
множественном числе:
2 1/4 metres 2 1/4 метра (читается: two and a quarter metres или two metres
and a quarter).
Десятичные дроби отделяются от целого числа точкой, а не запятой, как в
русском языке: 1.34; 0.8 (или .8).
Десятичные дроби читаются следующим образом:
0.8 или .8 point eight (точка восемь) или nought point eight (ноль точка
восемь) или о [ou] point eight (ноль точка восемь)
0.006 point nought nought six или nought point two oes [ouz] six или о [ou]
point two oes six
1.02 one point nought two или one point о [ou] two
4.25 four point twenty-five или four point two five
Существительное, которое следует за десятичной дробью, стоит в
единственном числе, если в дробном количестве нет целых единиц, и во
множественном числе, если в дробном количестве есть целые единицы:
0.5 centimetre читается: nought point five of a centimetre
5.2 centimetres читается: five point two centimetres.
Примечание. При чтении десятичных дробей между числительным,
обозначающим целое число, и словом point делается короткая пауза.

КОЛИЧЕСТВЕННЫЕ и ПОРЯДКОВЫЕ ЧИСЛИТЕЛЬНЫЕ в


ДАТАХ
1. Обычно дату читают в виде двух двузначных чисел, соответствующих
двум первым и двум последним цифрам. Например, "1855 год" пр оизносится
как "eighteen fifty-five", а 1147 - как "eleven forty-seven". Если в дате есть нули, то
она произносится так: 1900 - "niniteen hundred" (варианты: "nineteen oo",
"nineteen zero-zero"); 1905 - "nineteen o (или zero) five".
Т.е., при чтении четырёхзначных чисел, обозначающих годы, сначала
читаются две первые цифры, а затем две последние:
1992 - nineteen ninety – two
1853 - eighteen fifty – three
Даты с 2000 года по 2010 читаются немного по-другому (например: 2005 –
"two thousand (and) five"), а начиная с 2011 – уже "как положено", в виде двух
двузначных чисел (например, 2013 – "twenty thirteen").
2000 – two thousand
2015 – twenty fifteen

239
2. Даты пишутся так: 2nd Jan., или Jan. 2nd., или 2.1. - и читаются: the
second of January или January the second.
Часто указывается также и год. Пишется: May 15th, 1943 или 15.5.43.
Читается: May the fifteenth nineteen forty - three.
В письмах обычно названия следующих месяцев пишутся сокращённо:
January - Jan.
September - Sept.
February - Feb.
October - Oct.
March - Mar.
November - Nov.
April - Apr.
December - Dec.
August - Aug.
3. Американцы пишут даты по - другому. Они вначале указывают месяц, а
затем число: 15th of May - 5.15.
Так, the fifteenth of May nineteen forty-three в американском варианте будет
5.15.43.
4. Когда необходимо указать в дате день недели, то пишется так: Monday,
9th November.
Таким образом, обычно записывается число на классной доске и в тетради,
а читается так: Today is Monday, November the ninth (или the ninth of November.

THE INFINITIVE
Инфинитив — неличная форма глагола, обозначающая действие или
состояние безотносительно к лицу, его совершающему. Формальным признаком
инфинитива является частица to:
Формы времени и залога инфинитива показаны в таблице:

The Functions of the Infinitive in the Sentence (Функции инфинитива)


Инфинитив может выполнять в предложении функции: подлежащего,
сказуемого, дополнения, определения, обстоятельства.

240
1. Подлежащее (простое и сложное). В этом случае инфинитив обычно
стоит в начале предложения перед сказуемым.

To compromise is rational.
To discuss this question is useless.
It was a real pleasure to speak to her.

2. Часть составного сказуемого.


2.1. После подлежащего, выраженного словами типа:
aim – цель, task – задача, intention – намерение и так далее

Our aim is to learn English.


The important thing is to repeat all the rules.

2.2. Часть составного глагольного сказуемого после модальных глаголов,


вспомогательных глаголов, глаголов обозначающих начало, процесс или конец
действия.

He can translate this article without a dictionary.


He will translate the article next week.
It began to rain.

3. Дополнение (простое и сложное).


В этой функции инфинитив стоит после глагола или прилагательного.
She agreed to pay the bill.
I was disappointed to hear that you didn’t pass the exam.
It was stupid of me to say that.
We can’t decide what to buy Sue for her birthday.
I’m waiting for my sister to phone me.
It is important for everyone to be here on time.

4. Определение.
He was the first to translate this article.
I have nobody to share my troubles.
The captain was the last to leave the ship (= who left the ship).
Here is the article to be translated at once.

5. Обстоятельство.
5.1. Обстоятельство цели.
В этом случае инфинитив может стоять как в самом начале предложения
перед подлежащим, так и в конце предложения. В функции обстоятельства
цели инфинитиву могут предшествовать союзы in order to (чтобы), so as (для
того чтобы).
To translate such an article without a dictionary you must know English well.
We left early so as to have more time.
241
We left early in order not to be late.
He stopped to read a wall newspaper.

5.2. Обстоятельство следствия или результата.


He is too tired to drive a car.
To hear him talk one might think that he knows everything.

6. Инфинитив в функции вводных слов или предложений.


To be perfectly frank, you are a bad driver.

THE GERUND
ITS FORMS AND FUNCTIONS
(Герундий. Формы и функции)
Герундий представляет собой неличную форму глагола, выражающую
название действия и обладающую как свойствами существительного, так и
свойствами глагола. В русском языке соответствующая форма отсутствует.
Герундий образуется с помощью окончания – ing, прибавляемому с
соответствующими орфографическими изменениями к инфинитиву глагола:
to run – running, to live – living, to try – trying, to lie – lying.

Gerund Active Passive


Indefinite reading being read
She likes reading. She likes being read.
having having been
Perfect
read read
Thank you for having helped me. I remember having
been asked this question.

Functions Examples
Reading books is useful. Smoking is harmful. Reading
Subject
love stories made her cry.
His hobby is collecting stamps. The main thing is getting
Predicative
there in time. Seeing is believing.
Part of a
Compound Verbal She went on reading. She stopped smoking.
Predicate
I couldn’t avoid speaking to her. The film is worth seeing.
Direct Object
I don’t mind waiting.
Prepositional I am fond of reading. He insisted on doing the work
Object himself. I don’t like his habit of making people wait.
Attribute All liked the idea of going to the country. I have no

242
intention of discussing this question. There are different
ways of solving this problem. She liked the idea of
studying software engineering.
On entering the room he came up to me. He left the room
Adverbial Modifier
without saying a word. Excuse me for being so late.

243
APPENDIX I
IRREGULAR VERBS
Infinitive Past Past Translation
Indefinite Participle

arise arose arisen возникать,


появляться
awake awoke / awoke / будить;
awaked awaked просыпаться
be was / were been быть
bear bore born(e) носить, выносить
beat beat beaten бить
become became become становиться
begin began begun начинать(ся)
bind bound bound связывать, обязы-
вать
bite bit bitten кусать
blow blew blown дуть
break broke broken ломать
bring brought brought приносить
broadcast broadcast broadcast передавать по
радио (телевидению)
build built built строить
burn burnt burnt гореть, жечь
buy bought bought покупать
catch caught caught ловить,
схватывать
choose chose chosen выбирать
come came come приходить
cost cost cost стоить
cut cut cut резать
do did done делать
draw drew drawn тащить; рисовать;
выводить
(заключение)
drink drank drunk пить
drive drove driven гнать; везти;
ехать
eat ate eaten есть (принимать
пищу)
fall fell fallen падать
feed fed fed питать, подавать
feel felt felt чувствовать
flee fled fled бежать, спасаться
бегством

244
fight fought fought бороться,
сражаться
find found found находить
fly flew flown летать
forbid forbade forbidden запрещать
forget forgot forgotten забывать
forgive forgave forgiven прощать
freeze froze frozen замерзать,
замораживать
get got got получать;
становиться
give gave given давать
go went gone идти, ехать
grow grew grown расти,
выращивать
hang hung hung висеть, вешать
have had had иметь
hear heard heard слышать
hide hid hid / hidden прятать
hit hit hit ударять;
поражать
hold held held держать
hurt hurt hurt повредить,
ушибать
keep kept kept держать, хранить
know knew known знать
lay laid laid класть
lead led led вести
learn learnt / learnt / учиться
learned learned
leave left left оставлять,
уезжать
lie lay lain лежать
light lit / lighted lit / lighted зажигать,
освещать
lose lost lost терять
make made made делать;
заставлять
meet met met встречать
pay paid paid платить
put put put класть
read read read читать
ride rode ridden ездить верхом
ring rang rung звонить; звенеть
rise rose risen подниматься
245
run ran run бежать
say said said говорить, сказать
see saw seen видеть
seek sought sought искать,
разыскивать;
стараться
sell sold sold продавать

send sent sent посылать


set set set устанавливать,
располагать

shine shone shone сиять, светить


show showed shown показывать
shut shut shut закрывать
sit sat sat сидеть
sleep slept slept спать
speak spoke spoken говорить
speed sped sped спешить;
ускорять
stand stood stood стоять
string strung strung привязывать
sweep swept swept мести
swim swam swum плавать
take took taken брать
teach taught taught обучать, учить
tell told told рассказывать
think thought thought думать
throw threw thrown бросать
understand understood understood понимать
wake woke / woken / будить;
waked waked просыпаться
wear wore worn носить
win won won выигрывать
write wrote written писать

246
APPENDIX II
WORDS AND PHRASEOLOGICAL UNITS OF GENERAL SCIENTIFIC
VOCABULARY

A
а также (и) - as well as

Б
без доказательства – for granted
без подготовки – off hand
без сомнения – it can hardly be doubted
бесспорные факты – indisputable facts, facts without contradiction
более того – what is more
брать на себя задачу - to undertake the task of
будет полезно иметь в виду – it may be useful to keep in mind
быть бесполезным – to be of no use
быть в центре внимания – to be in the highlight
быть действительным (справедливым) – to be valid, to be true, to hold true
быть общеизвестным – to be a matter of common knowledge (observation)
быть полезным – to be of use
быть уверенным – to be sure of smth.

В
в более узком смысле - in a more restricted sense
в виду того, что – as, in view of the fact that, on the account of
в дальнейшем – from now on, in the following, in what follows
в данном исследовании – in the present study
в действительности – as a matter of fact, in fact
в терминах – in terms of
весьма показательно – it is highly symptomatic
в заключение – in conclusion
в конце концов – after all
в любом случае – in either case
в области (науки) – in the field of
в общем – on the whole
в общих чертах – in general terms, in outline
во всех отношениях – in every way
вообще говоря – generally speaking
в первую очередь – primarily
в первый раз – for the first time
в принципе – in principle
в противоположность чему-либо – as opposed to, by contrast to (with), in
contrast with
в результате – as a consequence, as a result
время от времени - from time to time, on and again, now and then
в связи с – in connection with
все это не противоречит – all this is not contradictory to

247
в смысле – in the sense of
в соответствии – in accordance with, in keeping with, in response to

в среднем – on the average


в частности – in particular
вызывать сомнение – to raise doubt
Вы проводили исследование по…? - Have you done any studies on…?
в этом суть дела – that is the point

Г
главное значение – principal value
главным образом – chiefly, mainly
говорить на авось – to speak at random
грубо говоря – in rough outline

дальнейшее изучение – further study


данные по – data on
дать понять – to make clear
действовать от имени – to act on the authority of
делать попытку – to make an attempt
делать усилие – to make an effort
делиться опытом – to share the experience
дело в том, что – the fact of the matter is, the point is that
для того, чтобы – in order that, for the purpose of , in order to
довольно подробно – in some detail
до известной (некоторой) степени – to a certain degree, to a certain extent
до настоящего времени – up to the present
до недавнего времени - until recently
до сих пор – so far
другая точка зрения – alternative point of view
другими словами – to put it in another way, to put it the other way round, in
other terms

Е
если бы не – but for
есть основания сомневаться в том, что – it is doubtful that

З
за исключением – all but, except for, other than, with the exception of
заниматься проблемой – to take up a problem
заниматься чем-либо – to be concerned with, to deal with
заслуживающий внимания – worthy of note

И
и так далее – and so forth, and so on

248
из-за отсутствия – for lack of
изменяться в пределах от….до – to be variable from….to, to vary between
именно в этом и заключается трудность – this, of course, is where the
difficulty lies
иметь дело с – to be concerned with, to deal with
иметь общее с – to have in common with
иметь применение – to be of use
интересно, что – it is curious that
исходя из опыта – as a matter of experience

исходя из предположения – on the assumption of

К
как бы ни – no matter how
как показано – as shown
как это обычно имеет место – as it is usually the case
косвенное доказательство – indirect evidence
к сожалению, я должен сказать, что – I am sorry to say that
кроме того – in addition to

Л
лучший способ понять, как – the best way to understand how
любыми способами – by any means

М
между прочим – by the way
мне трудно согласиться с – I can hardly agree with
много раз – over and over again

Н
надежные данные – reliable data
наоборот – on the contrary
на практике – in practice
например – for example, for instance
насколько мне (нам) известно – as far as I (we) know
настоятельная потребность – urgent need
на том основании, что – on the ground that
научная общественность – scientific community
научный вклад – scientific contribution
находиться на правильном (неправильном) пути – to be on the right (wrong)
lines
не без основания – with reason
не иметь ничего общего с – to have nothing to do with
нельзя сказать, что – one cannot say that
непосредственная связь – direct relationship
несмотря на – in spite of

249
неясная идея – vague idea
ни в коем случае – by no means

О
обоснованный метод – valid method
обратное справедливо, когда - the converse is true when
обращать внимание на – to pay attention to
обычное объяснение – routine interpretation
обычные явления – ordinary phenomena
об этом не может быть и речи – it is out of the question
один многообещающий путь исследования – one promising line of research
оставлять без внимания – to leave aside
остается только – there remains only

отдать должное – to give credit for


очевидно, что – it is obvious that
ошибочное предположение – erroneous assumption

П
первоисточник исследования – fountainhead of research
перевернуть вверх дном – to turn upside down
по ассоциации – by association
поднимать вопрос – to open a question, to raise a question
позднее – later on
полагая, что – assuming that
положить конец – to put an end to
получить признание – to gain acceptance
по меньшей мере – to say the least
по методу – after the fashion of, after the fashion of
по мнению – in the opinion of
по причине – because of, by reason of, by virtue of, due to, owing to
по сравнению – as against, as compared to (with), in comparison to (with)
по существу – in principle
предварительная работа (исследования) – preliminary work
предмет обсуждения – the point at issue, the subject matter
предположим, что – let us suppose that
прежде всего – above all, first and foremost, first of all
привлекать внимание к – to attract attention to, to draw attention to
придавать значение – to attach importance to, to place emphasis on
при данных обстоятельствах – under the circumstances
придерживаться мнения – to adhere to the opinion, to be of the opinion
принимать во внимание – to take into account, to take into consideration
при помощи – with the assistance
приступать к разрешению проблемы – to attack the problem
при условии, что – on condition that, under conditions
приходить к заключению (выводу) – to arrive at a conclusion

250
при этих условиях – under these conditions
проблема, которой мы занимаемся – the subject we are dealing with
проблема, о которой идет речь – the problem in question
прямое доказательство – direct evidence

Р
рабочая теория – working theory
разрешать проблему – to solve a problem, to tackle a problem
ранее поставленный вопрос – the question posed above

С
само собой разумеется – it goes without saying
слабое место – weak point
сложное понятие – sophisticated concept
соблюдать условия – to observe conditions
совместная работа – joint work
современное исследование – current study
современный метод – current method (technique, procedure)

с одной (другой) стороны – on the one (other) hand

сомнительная теория – ambiguous theory


соответствующее объяснение – adequate explanation
с помощью – by means of, with the aid of , with the help of
с самого начала – from the very beginning
сталкиваться с проблемой – to face a problem
с точностью до – with the accuracy of
строго говоря – strictly speaking
суммируя результаты – summing up the results
считать доказанным – to take for granted

Т
таким образом – in such a manner
тем более, что – especially as, the more so
теперь можно понять – one can now grasp
теперь мы можем – we are now in a position
то есть – that is
точка зрения – point of view, view point
точнее говоря – to be more exact
точно такой же – just the same
тщательное изучение – thorough study

У
убедительное свидетельство – convincing evidence
убедительные данные – convincing data
уделять внимание – to give attention to, to pay attention to
удовлетворять требованиям – to meet the demands, to meet the requirements
упоминать о – to take mention of

251
установить предел – to place the limit, to set the limit
учитывать (принимать во внимание) – to take into account, to take into
consideration, to
take account of

Ф
фоновые знания – background knowledge

Ч
что касается – as far as smth. is concerned, as for, as regards, as to

Э
экспериментальные данные – experimental results
экспериментальный метод – trial and error method
эмпирический подход – empirical approach
эти идеи были поддержаны – these ideas were taken up
это вполне согласуется с – this is in relation to
это не исключает – this does not preclude

Я
являться следствием – to be due to
являться результатом – to be the result of, to result from

я возражаю – I object to
я заканчиваю словами – I close with the words

я разделяю ваше мнение – I share your opinion


я убежден, что – I am convinced that

252
LITERATURE
1. Roger S. Pressman, Ph.D. Software Engineering. A Practitioner’s Approach. /
Fifth Edition - The McGraw-Hill Companies, Inc., 2001.
2. Е. В. Гольцова. Английский язык для пользователей ПК и пр ограммис-
тов. Самоучитель. Санкт-Петербург. Учитель и ученик. КОРОНА пр инт.-
2002.
3. Gibson, J.D. Principles of Digital and Analog Communications. - [2nd ed.],
Macmillan, - New York. 1993.
4. William Sawyer Hutchinson. Using information technology. – [3d edition]. -
Irwin Mc-Graw Hill Companies, Inc., 1997.
5. James A. O’Brien. Management Information Systems.The Mc-Graw Hill
Companies, Inc., 1996.
6. Michael O'Flynn. Probability, Random Variables and Random Processes . /
ISBN 978-O-O6-O44915-5(O-O6-O44915-2) - HarperCollins, 1982.
7. Alexander L.G. Longman. English Grammar Practice for Intermediate
Students/ Alexander L.G. Longman. – Longman Group UK Limited, 1990.
8. Close R.A. A Reference Grammar for Students of English. Longman Group
Ltd, 1985.
8. Raymond Murphy. English Grammar in Use. Fourth edition. Cambridge
University Press. 2012.
10. Martin Hewings. Advanced Grammar in Use. Second edition. Cambridge
University Press 2012.
11. Jeremy Harmer. Essential Teacher Knowledge. – Pearson Education Limited
2012.
12. English-Russian/ Russian-English Dictionary. V.K. Muller. Москва, –
ЭКСМО, 2012.
13. English-Russian Dictionary of Telecommunications and Data Security. –
Oдесса: ОНАС им. А.С. Попова, 2012.
14. Новый большой англо-русский словарь. В 3-х т. – М.: Русский
язык,1998.
Electronic resources:
1. http://www.businessdictionary.com/definition/user- interface. html#ixzz 49aJR Mh
B4
2. hans.schaefer@ieee.org
3. "The Free On-line Dictionary of Computing, http://www.foldoc.org/, Editor
Denis Howe".
4. http://www.cs.yale.edu/homes/aspnes/#classes

253
254

Das könnte Ihnen auch gefallen