0% found this document useful (0 votes)
57 views4 pages

Unit 14 Text 14a+tasks

text

Uploaded by

Светлана
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views4 pages

Unit 14 Text 14a+tasks

text

Uploaded by

Светлана
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

UNIT 14. SOFTWARE ENGINEERING. GRAMMAR REVISION.

UNIT 14

SOFTWARE ENGINEERING

Vocabulary Bank Unit 14

Task1. Read and learn the basic vocabulary terms.


1. analyst (n) 31. pilot implementation
2. artificial 32. polymorphism,
3. artificial intelligence 33. polymorphys
4. browse 34. pseudocode (n)
5. bundle (v) 35. repeatedly (adv)
6. clarify (v) 36. sequence (n)
7. coding 37. software engineering
8. decision tables 38. specification (n)
9. direct implementation 39. sticky (adv)
10. diverse (adj) 40. systems analyst
11. documentation 41. tag codes
12. encapsulation 42. testing and adapting
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
UNIT 14. SOFTWARE ENGINEERING. GRAMMAR REVISION.
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.
UNIT 14. SOFTWARE ENGINEERING. GRAMMAR REVISION.
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.


UNIT 14. SOFTWARE ENGINEERING. GRAMMAR REVISION.
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?

You might also like