.


:




:

































 

 

 

 


Exercise 8.Choose the best form.




1. We....... win, but I dont think theres much chance. (may, might)

2. That....... be her daughter theyre nearly the same age. (cant, mustnt)

3. You absolutely..... go and see Liz. (should, must)

4. I think you.......... try to relax more. (should, must)

5. You............ pass a special exam to be a teacher. (must, have to)

6. In this country boys......... do military service. (must not, dont have to)

7. When I was 18 we...... two years in the army (had to do, must have done)

8. She..... very quietly I didnt hear her go. (had to leave, must have left)

9. You....... get in without a ticket not a chance. (may not. cant)

10. At what age.......... you get a driving license? (can, may)

 

Exercise 9. Do you know the English words for nationalities and languages? Complete the sentences; use a dictionary to help you.

1. The people who live in.............. speak Greek.

2. The language that people speak in Hungary is called.................

3. The language............ people speak in China is called............

4. The people who live in........... speak Italian.

5. The............ live in...................... Turkish.

6. The language................. Algeria is called Arabic.

7. The people.................... Holland...........................

8. The language.....................................Irish.

9. The people........... Portugal......................

10........................ Japan ..........................

 

 

Exercise 10. Transform the sentences to the passive:

1. They owe a lot of money to the bank.

2. You can buy videos like this one anywhere.

3. Someone has to write the history of the European Community one day.

4. Someone may have already written the history of the European Community.

5. When we arrived home, we found that someone had broken one of our windows.

6. They have sold their car to pay their debts.

7. The manager always welcomes new employees.

8. They are building a new supermarket near the church.

9. They fought the battle in i623.

10. Someone was cleaning the windows while I was there.

11. Someone has moved my desk!

12. They are taking the refugees to a camp outside the village.

13. Someone has singed all the documents before I arrived.

14. They were questioning us and searching our vehicle at the same time.

15. They will post our letters when the ship arrives at the next port of call.

16. They are opening the case again because theyre not satisfied with the verdict.

17. Have you changed anything?

18. How soon will they repeat that TV program?

19. Have you prepared all the documents?

20. Have the tested all the machines?

 

 

Exercise 11. Put the right form of infinitive (with or without to).

1. Ive never been to Italy but Id like . there. (go)

2. Im in a difficult position. What do you advise me ? (do)

3. She said the letter was personal and wouldnt let me . it. (read)

4. The customs officer made Sally .. her case. (open)

5. We were kept at the police station for two hours and then we were allowed (go)

6. Hot weather makes me . tired. (feel)

7. Where would you recommend me .. for my holidays? (go)

8. The film was very sad. It made me .. (cry)

9. Carols parents always encouraged her . hard at school. (study)

10. Let me your bag for you. (carry)

11. Her parents wouldnt let her out alone. (go)

 

 

WRITING

 

1. Describe the characteristics of the succeeding generations of computer programming languages.

2. Describe the differences between machine languages, assembly languages and high-level languages.

3. Name four common high-level programming languages.

4. Today programming methods are undergoing changes. New fourth-generation languages, fifth-generation languages and object-oriented programming methods are now in use. Describe the differences in these programming approaches.


UNIT 14

SOFTWARE ENGINEERING

 

Vocabulary Bank Unit 14

Task1. Read and learn the basic vocabulary terms.

 


1. analyst (n)

2. artificial

3. artificial intelligence

4. browse

5. bundle (v)

6. clarify (v)

7. coding

8. decision tables

9. direct implementation

10. diverse (adj)

11. documentation

12. encapsulation

13. encapsulation (n)

14. executable modules

15. feasibility (n)

16. fetch (v)

17. flowchart (n)

18. implementation (n)

19. Information systems

20. inheritance

21. intelligence

22. iteration (n)

23. label

24. loop (n)

25. loop instruction

26. maintain (v)

27. markup (adj, n)

28. markup language

29. modify (v)

30. network system

31. pilot implementation

32. polymorphism,

33. polymorphys

34. pseudocode (n)

35. repeatedly (adv)

36. sequence (n)

37. software engineering

38. specification (n)

39. sticky (adv)

40. systems analyst

41. tag codes

42. testing and adapting



Reading activity

TEXT 14A. SOFTWARE ENGINEERING

 

Software engineering is the discipline of designing high quality software solutions. Software consists of programs (sets of instructions for controlling a computer) and data (the material that has to be processed). Programs are written in computer languages by people called programmers. A systems analyst is a person who designs or modifies information systems to meet users' requirements. This includes investigating feasibility and cost, producing documentation, and testing prototypes of the system. Producing a program, therefore, involves a number of stages including:

a) clarifying the problem by considering the requirements of the potential users

b) designing the solution to the problem by first deciding on the overall structure of the solution

c) coding the program by first choosing an appropriate programming language and inputting the program code

d) testing and debugging the program (identifying and fixing any problems or faults in the program code)

e) documenting and maintaining the program including writing instructions for using the program.

Systems analysts first need to talk to the people involved in the computing problem, including the people managing the system and the users or potential users of the system. They need to establish factors such as:

a) the nature of the problem

b) what systems already exist

c) to what extent any existing systems are computerised (changed so that they can be operated or controlled using a computer)

d) what output (the processed data or signals that come out of a computer system) will be required from the system

e) who will be using the system and what parts of the system they need to be able to use

f) the computing experience of the staff and what training would be required

g) what hardware (the physical components of a computer system) already exists and what would need to be added, including the specification of the hardware and whether a network system is required (a system where a number of computers and peripheral devices are connected together).

They then have to plan the structure of the solution and check it through with the people involved to make sure it meets their requirements. Next, they have to choose a suitable programming language and write the program (a set of instructions, written in a computer language, that control the behaviour of a computer), continually testing and adapting it until it works to the satisfaction of the customer and users. The system then has to be put into service and the users have to be trained. This involves documenting the program specifications and writing instructions for using the system.

Programming languages commonly use different structures for sequencing program instructions, including:

- conditional instructions i.e. if a certain condition is true, then process this instruction (if X then Y). Decision tables are used to indicate how a conditional structure will process data. They show all the different inputs that might arise for each condition and the resulting outputs that would be produced by the conditional instruction.

- iterations or loop instructions i.e. process these instructions repeatedly until or while a particular condition is true, or false (do... until... or do... while...).

Program flowcharts can be used to show the sequence of instructions in a program and are sometimes used for designing parts of programs such as iterations. Pseudocode is a method of writing a description of a computer program using a mixture of natural language and computer language code.

There are a large number of computer languages available for use by programmers. Each language is designed for use in solving particular types of problem and therefore has particular strengths and weaknesses. A systems analyst has to decide which language is most appropriate in each situation. Languages such as C++ are particularly suitable for writing systems programs (programs that are used to control the basic functions of a computer system e.g. operating system programs). Languages such as Visual Basic and Pascal are easy to use and are particularly suitable for learning how to program. FORTRAN is designed for solving engineering problems, COBOL for writing business programs, Ada for military purposes, Prolog and LISP for working in artificial intelligence (an area of computing concerned with developing computer programs that perform tasks that can normally only be done using human intelligence). Logo is particularly suited for use by young children. Some languages such as HTML and XML are markup languages rather than programming languages i.e. they use tag codes (labels) for marking text for use in programs such as Web browsers. Languages such as Java and Perl have a number of specialised uses including adding features to Internet connections and webpages (hyperlinked documents).

Converting to new computer systems can be done in different ways. Each strategy has its advantages and disadvantages. These include:

a) direct implementation where the old system is simply removed and the new system installed. In this strategy only one system is used at any one time but there is no fall back (alternative system that can be used if problems occur in the main system) if the new system does not operate properly.

b) parallel implementation where the old and the new systems are both used at the same time until the users are satisfied that the new system is working properly. The advantage is that if the new system does not operate properly, the old system is available as a fallback. The disadvantage is that two systems have to be maintained.

c) phased implementation where the old system is gradually replaced by the new system, one part at a time. The advantage is that people can gradually get used to the new system and certain problems can be dealt with as they arise. The disadvantage is that this method is more complex and time-consuming. In addition, there may be problems of incompatibility between the old and new systems.

d) pilot implementation where the new system is tried out in one section of the company to make sure that it works as required. The advantage is that problems can be identified and solved before the new system is implemented throughout the company. The disadvantage is that it takes longer to introduce the new system.

 

Task 2. Answer the following questions.

 

1. What does the term software engineering imply? 2. What does software consist of? 3. What do systems analysts do? 4. What are the stages of producing a program? 5. Why do systems analysts need to talk to different specialists? What factors do they need to establish? 6. When can they start writing a program? 7. What is used to show the sequence of instructions in a program? 8. What programme instructions are considered in the text? 9. What is a pseudocode? 10. Why are there a large number of computer languages available for use by programmers? 11. Can you compare strengths and weaknesses of different programming languages? 12. What are the ways of converting to new computer systems? 13. What are advantages and disadvantages of direct implementation and pilot implementation?

 

 

Task 3. Put these five stages of programming in the correct sequence.

 

I. a) Design a solution

b) Code the program

c) Document and maintain the program

d) Clarify the problem

e) Test the program

II. To which stage do each of these steps belong.

a) Clarify objectives and users.

b) Debug the program.

c) Write programmer documentation.

d) Do a structured walk through.

e) Select the appropriate programming language.

 

 

Task 4. Find the English equivalents for the following word combinations

1. ; 2 , ; 3. ; 4. ; 5. ; 6. ; 7. ; 8. ; 9. ; 10. , 11. , .

Task 5. Match the terms with their definitions.

 

artificial intelligence, b) a program, c) a markup language, d) systems programs, e) a pseudocode, f) an output, g) a systems analyst, h) a network system

 

1. A person who designs or modifies information systems to meet users requirements. 2. A set of instructions written in a computer language that control the behaviour of a computer. 3. The processed data or signals that come out of a computer system. 4. A system where a number of computers and peripheral devices are connected together. 5. A method of writing a description of a computer program using a mixture of natural languages and a computer language code. 6. Programs that are used to control the basic functions of a computer system. 7. Developing computer programs that perform tasks that can normally be done using human intelligence. 8. A set of tags that can be inserted into a document to indicate its layout and appearance.

 

 

Task 6. Mark the following as True or False.

 

1. Pilot implementation means that both systems run at the same time for a period. 2. Phased implementation is when parts of the system are converted separately. 3. Parallel implementation is when the new system is piloted in part of the company before extending it to the whole company. 4. Pascal is extremely difficult to use and is not suitable for learning how to program. 5. Fortran is designed for writing business programs. 6. Java and Perl have a number of specialized uses including adding features to internet connections and webpages.

 

 

Task 7. Complete the gaps using the verbs from the box.

 

collected, put, generated, will flow, will help, be directed, be implemented, touch, will use, will be used, were uncovered, include

 

Based on the data (1), the systems analyst must together an implementation plan. This plan should a logical model of the proposed new system, with a representation how information , through the new system from input, through processing, to output. The plan should on every potential use of data throughout the organization. As with the reports during the previous study stages, the report should be written in terms of the systems users in this case, in terms, of how users the new system and how it , them to carry out their jobs. The solutions report should to management, to help them understand the need for the new system, the way the new system , how it will help the entire organization and how it can as a cost effective solution to the problems that .

 

 

Task 8. Translate the following sentences.

 

1. Computer information systems may be designed to take care of just one operational area, but todays more complex systems are more likely to be designed to integrate a variety of operational procedures. 2. New methods are developed to deal with the complex process of designing and maintaining computer systems. 3. A website designer wants to enable the data or his website to be easily processed by a number of different programs. 4. Each element of the system has a particular function and each unit must be designed to interact with the other elements of the system. 5. Although the complexity of the tasks to be performed and the number of the users to be served will help to determine the type of computer to be used, there may be a number of different hardware configurations that will meet the need. 6. When users of a system access the data for some useful purpose, they are accessing the data in order to learn from it or to add it to other types of data for decision making. 7. A computer information system must be seen as a system that is used to transform data into useful information. 8. If the information system is to be successful, it must be designed to provide information in a way that is usable and useful to all management personnel. 9. Using centralised system, computer communications will undoubtedly be used to transmit data electronically between locations. 10. To update or modify an existing system the same procedures can be used. 11. As the process of systems analyses and design has been formalised, a new kind of professionals, known as systems analysts has emerged with the special skill and knowledge required to deal with all aspects of systems development. 12. The systems analysts function is to design and implement system that facilitates the storage and processing of data, and methods for accessing that data.

Task 9. What do you know about programming? Answer the Internet Quiz.

 

1. When creating a computer program, the _____ designs the structure of the program.

a) end user

b) systems analyst

c) programmer

d) all of the above

e) none of the above

 

2. Checking a computer program for errors is called _____.

a) bugging

b) debugging

c) correcting

d) syntaxing

 

3. The computer itself uses _____ language.

a) natural

b) assembly

c) machine

d) high-level

e) none of the above

 

4. The language which is best for mathematical models is _____.

a) FORTRAN

b) BASIC

c) Java

d) C

e) COBOL

 

 

5. The term BASIC is an acronym for _____.

a) Balanced Assembly System Integrated Code

b) Basic All System Internal Code

c) Beginner's Assembly Syntax Instruction Code

d) Beginner's All-purpose Symbolic Instruction Cod

 

6. A programming language which looks like normal English is a(n) _____ language.

a) normal

b) high-level

c) natural

d) 4GL

 

7. The process of writing the computer instructions is called _____.

a) coding

b) compiling

c) debugging

d) interpreting

 

8. The most widely used language for business programs is _____.

a) FORTRAN

b) BASIC

c) Java

d) C

e) COBOL

 

9. The _____ must decide what a new program is to accomplish.end user

a) systems analyst

b) programmer

c) supervisor

Task. 10. Work in groups and discuss the following questions.

 

1. Have you ever had any problems with the computer?

2. What kind of errors do you make with computers?

3. How do you behave when things go wrong with a computer?

 

 

Task 11. Read the text on the page below and complete the table.

 

  Text A Text B Text C
  Type of error        
  Definition        
  Example      
Ways to avoid or deal with this kind of error      

 

 

System errors affect the computer or its peripherals. For example, you might have written a program which needs access to a printer. If there is no printer present when you run the program the computer will produce a system error message. Sometimes a system error makes the computer stop working altogether and you will have to restart the computer. A sensible way of avoiding system errors is to write code to check that peripherals are present before any data is sent to it. Then the computer would warn you by a simple message on the screen, like printer is not ready or available.

Syntax errors are mistakes in the programming language (like typing PRNIT instead of PRINT). Syntax errors cause the program to fail. Some translator programs wont accept any line that has syntax errors. Some only report a syntax error when they run the program. Some languages also contain special commands such as debug, which will report structural errors in a program. The programming manual for the particular language youre using will give details of what each error message means.

Logic errors are much more difficult to detect than syntax errors. This is because a program containing logic errors will run, but it wont work properly. For example, you might write a program to clear the screen and then print hello. Here is a code for this:

 

10 Message

20 PRINT Hello

30 CLS

40 END

 

The code has a logic error in it, but the syntax is right so it will run. You can get rid of logic errors from simple programs by hand-testing them or doing a dry run which means working through each line of the program on paper to make sure it does what you want it to do. You should do this long before you type in the code.


Task 12. Read the quotations about programming below. Discuss with other students what point you think each quotation is trying to make and whether you agree with it.

 

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. (Rich Cook)

To understand a program you must become both the machine and the program. (Alan J. Perlis)

Perhaps if we wrote programs from childhood on, as adults we'd be able to read them. (Alan J. Perlis)

It is easier to change the specification to fit the program than vice versa. (Unknown)

One machine can do the work of fifty ordinary men. No machine can do the work of one extraordinary man. (Elbert Hubbard)

Those parts of the system that you can hit with a hammer are called hardware; those program instructions that you can only curse at are called software. (Anonymous)

The most harmful error of any program will not be discovered until the program has been in production for at least six months. (Troutman's programming postulates)

Real programmers never work from 9 to 5. If any real programmer is around at 9 a.m., its because they were up all night. (Some computer geek)

Task 13. Read the text and do the exercises below.





:


: 2018-11-10; !; : 818 |


:

:

, .
==> ...

1715 - | 1496 -


© 2015-2024 lektsii.org - -

: 0.145 .