Читайте также: |
|
Obsolete - застарілий
Punched card - перфокарта
Card reader – пристрій для зчитування з перфокарт; картрідер
application-specific – пов’язаний з конкретним застосуванням, спеціалізований
high-order language – мова високого рівня
vendor – поставник, виробник, продавець, проф. вендор
custom software – ПЗ на замовлення, виготовлене для однієї фірми чи галузі
flourish – бути в розквіті, процвітати
modular programming – модульне програмування
data abstraction – абстракція даних; абстрагування даних, абстрактне представлення даних
boost – підтримка, рекламування, зростання (популярності)
Spur – підганяти, спонукати, стимулювати
Run over – виходити за рамки, перевищувати
Emphasize – робити наголос, підкреслювати, надавати особливого значення
Exercise 6. Give derivatives to the words below.
Maintain, test, measure, read, manage, satisfy, develop, use, possible, differ, ability, predict.
Exercise 7. Give synonyms (a) and antonyms (b) to the words below.
a) evolve, be concerned with, maximize, flaw, controversial, obsolete, rubric, high-order language, spur, few, a few;
b) maximize, obsolete, application-specific, high-order language, custom software.
Exercise 8. Read and translate the text.
History of Software Engineering
Part 1
From its origin 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. How best to create high quality software is a separate and controversial problem covering software design principles, so-called "best practices" for writing code, as well as broader management issues such as optimal team size, process, how best to deliver software on time and as quickly as possible, work-place "culture," hiring practices, and so forth. All this falls under the broad rubric of software engineering.
The Pioneering Era. The most important development was that new computers were coming out almost every year or two, rendering existing ones obsolete. Software people had to rewrite all their programs to run on these new machines. Programmers did not have computers on their desks and had to go to the "machine room". Jobs were run by putting punched cards for input into the machine's card reader and waiting for results to come back on the printer.
The field was so new that the idea of management by schedule was non-existent. Making predictions of a project's completion date was almost impossible. Computer hardware was application-specific. Scientific and business tasks needed different machines. Due to the need to frequently translate old software to meet the needs of new machines, high-order languages like FORTRAN, COBOL, and ALGOL were developed. Hardware vendors gave away systems software for free as hardware could not be sold without software. A few companies sold the service of building custom software but no software companies were selling packaged software.
The notion of reuse flourished. As software was free, user organizations commonly gave it away. Groups like IBM's scientific user group SHARE offered catalogs of reusable components. Academia did not yet teach the principles of computer science. Modular programming and data abstraction were already being used in programming.
1945 to 1965: The origins. The term software engineering first appeared in the late 1950s and early 1960s. Programmers have always known about civil, electrical, and computer engineering and debated what engineering might mean for software. The NATO Science Committee sponsored two conferences on software engineering in 1968 and 1969, which gave the field its initial boost. Many believe these conferences marked the official start of the profession of software engineering.
To 1985: The software crisis. Software engineering was spurred by the so-called software crisis of the 1960s, 1970s, and 1980s, which identified many of the problems of software development. Some used the term software crisis to refer to their inability to hire enough qualified programmers.
Exercise 9. Answer the following questions.
1. What is writing software concerned with?
2. What falls under the broad rubric of software engineering?
3. What were the difficulties of writing software in the pioneering era connected with?
4. Why were high-order languages like FORTRAN, COBOL, and ALGOL developed?
5. When did the term software engineering first appear?
6. What marked the official start of the profession of software engineering?
7. What problems of software development did the software crises identify?
Exercise 10. Give Ukrainian equivalents to the following word combinations:
From its origin; to maximize the quality of software; maintainable software; flaws or "bugs"; elegance and conciseness; a controversial problem; "best practices" for writing a code; to fall under the broad rubric of software engineering; pioneering era; to render existing computers obsolete; punched cards; card reader; predictions of a project's completion; application-specific hardware; to frequently translate old software; high-order languages; hardware vendors; custom software; packaged software; the notion of reuse flourished; modular programming and data abstraction; civil, electrical, and computer engineering; to give the field its initial boost; to be spurred by the so-called software crisis; to emphasize quality.
Exercise 11. Memorize the following words and word combinations.
silver bullet – оригінальне рішення (проблеми), проф. срібна пуля
decade – десятиріччя, десять років, декада
paramount – першорядний, основний
seemingly – мабуть, очевидно
trumpet – сурмити, трубити, сповіщати
tout – розхвалювати, рекламувати, нав’язувати
argue – сперечатися, обговорювати, переконувати, доводити
10-fold – десятикратний
rage – шаленіти, лютувати, бушувати
eventually – кінець-кінцем, врешті-решт, зрештою
pop up – несподівано виникати, з’являтися
lightweight methodology – легка методологія
report generator – генератор звітів
niche – ніша, вузькоспеціалізований сектор ринку
diverse – інший, різний, різноманітний
prominence – видатне становище, популярність
display system – система відображення (даних), система індикації
e-mail system – система електронної пошти
thumbnail – маленький, мініатюрний
retrieval – пошук даних, вибірка даних
proliferation – поширення, розповсюдження
flood – наповнювати, переповнювати
pre-screening – попередній відбір (відсів), попередній перегляд
web-based – що базується на Інтернет-технологіях, що використовує Інтернет-технологію
search engine – пошукова система, пошукова служба, пошуковий механізм
Search Engine Optimization (SEO) – оптимізація пошукових систем
Дата добавления: 2015-08-27; просмотров: 53 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Text 1. Software Engineering as a contentious issue | | | Deployment – застосування, розгортання, введення в дію, впровадження, розміщення |