Page 76 - 4130
P. 76
LESSON 14
SOFTWARE DESIGN
PART 1
Task 1. Learn the following words and word combinations:
Sophisticated, reduce, refinement, elaboration, decomposing,
complementary concepts, modularity, a good return on investment,
yield, imply, structural partitioning, inaccessible.
Task 2. Make up your own sentences using words and phrases
from the previous exercise.
TEXT 1
DESIGN CONCEPTS
The design concepts provide the software designer with a
foundation from which more sophisticated methods can be applied.
A set of fundamental design concepts has evolved. They are:
1. Abstraction - Abstraction is the process or result of
generalization by reducing the information content of a
concept or an observable phenomenon, typically in order to
retain only information which is relevant for a particular
purpose.
2. Refinement - It is the process of elaboration. A hierarchy is
developed by decomposing a macroscopic statement of
function in a stepwise fashion until programming language
statements are reached. In each step, one or several
instructions of a given program are decomposed into more
detailed instructions. Abstraction and Refinement are
complementary concepts.
3. Modularity - Software architecture is divided into
components called modules.
74