Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Design Concepts

Читайте также:
  1. Architecture and design
  2. Design Considerations
  3. Design Constraints
  4. Domain-driven design
  5. Object-oriented analysis and design
  6. Rules of Design

Design concepts provide a 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 the information which is relevant to 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.

4. Software Architecture. It refers to the overall structure of the software and the ways in which that structure provides conceptual integrity for a system. A good software architecture will yield a good return on investment with respect to the desired outcome of the project, e.g. in terms of performance, quality, schedule and cost.

5. Control Hierarchy. A program structure that represents the organization of program components and implies a hierarchy of control.

6. Structural Partitioning. The program structure can be divided both horizontally and vertically. Horizontal partitions define separate branches of modular hierarchy for each major program function. Vertical partitioning suggests that control and work should be distributed top down in the program structure.

7. Data Structure. It is a representation of the logical relationship among individual elements of data.

8. Software Procedure. It focuses on the processing of each module individually.

9. Information Hiding. Modules should be specified and designed so that information contained within a module is inaccessible to other modules that have no need for such information.

 

Exercise 9. Answer the following questions.

1. What do design concepts provide a software designer with?

2. What are the fundamental design concepts?

3. What is abstraction?

4. What is refinement?

5. How is hierarchy developed?

6. What is software architecture divided into?

7. What is software architecture?

8. What will a good software architecture yield?

9. What is control hierarchy?

10. What does the horizontal and vertical partitioning of a structure suggest?

11. What is data structure?

12. What does a software procedure focus on?

13. What is information hiding?

 

Exercise 10. Give Ukrainian equivalents to the following word combinations.

Design concepts, to apply sophisticated methods, a set of fundamental design concepts, an observable phenomenon, in order to retain the information which is relevant to a particular purpose, the process of elaboration, decomposing a macroscopic statement of function in a stepwise fashion, complementary concepts, to yield a good return on investment with respect to the desired outcome of the project, in terms of performance, quality, schedule and cost, to imply a hierarchy of control, horizontal and vertical partitions, information hiding, to specify modules.

 

Exercise 11. Memorize the following types of conditional sentences.

I. Real situation in the future. 1) If I am not busy, I will help you.   2) If we debug the program, it will work correctly. 1) Якщо я не буду зайнятий, то допоможу тобі. 2) Якщо ми налагодимо програму, то вона буде працювати правильно.
II. Unreal situation in the present/ future. 1) If I were (was) not busy tomorrow, I would help you. 2) If we debugged the program, it would work correctly. 1) Якби я не був завтра зайнятий, то допоміг би тобі. 2) Якби ми налагодили програму (сьогодні), то вона б працювала правильно.
III. Unreal situation in the past. 1) If I had not been busy yesterday, I would have helped you. 2) If you had worked systematically, you would not have failed the exam. 1) Якби я не був зайнятий вчора, то допоміг би тобі.   2) Якби ти систематично працював, то не провалив би екзамен.
IV. Mixed type (combination of unreal situation in the present and in the past). 1) If I were (was) as clever as you, I would not have failed the exam. 2) If we had debugged the program yesterday, it would work correctly (today). 1) Якби я був такий розумний, як ти, то не провалив би екзамен. 2) Якби ми налагодили програму вчора, то вона б працювала правильно (сьогодні).

.

Exercise 12. Follow the table of Exercise 11 and use all possible types of conditionals with each of the following sentences. Translate them.

1. If you (to know) English well, you (to work) abroad. 2. If you (to study) well, you (to be) a good specialist. 3. If you (to be) an experienced worker, you (can make) a good career. 4. If you (to have) a good memory, you (can learn) easily many programming languages. 5. If you (to know) a lot of programming languages, you (to find) a good job. 6. If you (to install) a virus scanner, you computer (to be) protected. 7. If antivirus software periodically (to receive) virus definition updates the software's effectiveness (to be maintained). 8. If the resulting software (to comprise) well defined, independent components, that (to lead) to better maintainability.

Exercise 13. Open the brackets using the verbs in the proper form. Translate the sentences.

1. If the problem (to be) not well-defined, it (to result) in poor design. 2. If you (to work) harder, you (to make) more progress. 3. If people (not to use) so much paper, there (to be) more rainforests. 4. If people (to share) their cars, there (to be) fewer cars on the roads. 5. If we (to use) bicycles, we (to have) less air pollution. 6. If he (to work) harder yesterday, he (to make) fewer mistakes. 7. If he (to go) to the party last weekend, he (to have) a nice evening. 8. If he (to go) on a diet, he (to lose) more weight. 9. We (can go) for a walk, if it (not to be) hot today. 10. If I (to be) you, I (to get married) last year. 11. If I (to have) a dictionary, I (to translate) the article yesterday.

 

Exercise 14. Learn the following examples.

1. I wish I were (was) rich. 1.Шкода, що я не багатий. (Добре було б, коли б я був багатий.)
2. I wish I lived in the country. 2. Шкода, що я не живу в селі. (Добре було б, коли б я жив у селі.)
3. I wish you had translated the article yesterday. 3. Шкода, що ви не переклали статтю вчора. (Добре було б, коли б ви переклали статтю вчора.)
4. I wish she would come home tomorrow. 4. Шкода, що вона не приїде додому завтра. (Добре було б, коли б вона приїхала додому завтра.)
5. I wish you could give it to me next month. 5. Шкода, що ти не даси це мені завтра. (Добре було б, коли б ти дав це мені завтра.)

Exercise 15. Open the brackets using the verbs in the proper form. Translate the sentences.

1. I wish I (can) give up smoking. 2. I wish I (pass) my driving test last month. 3. He wishes he (not to break) the window. 4. I wish it (to be) summer. 5. I wish you (to read) more in future. 6. I wish I (to know) Spanish. 7. She wishes she (to live) in the Crimea. 8. I wish I never (to suggest) this idea. 9. He wishes he (to earn) more money. 10. I wish he (to come) tomorrow. 11. I wish it (to be) not late to go there. 12. I wish you (to know) Physics better. 13. My friend wishes he (to enter) the University. 14. I wish you (not to drink) so much coffee in the evening.

Exercise 16. Translate the following sentences.

1. Було б добре, якби зараз були канікули. 2. Якби я був на вашому місці, то порадився б з батьками. 3. Якби ви допомогли мені розв’язати цю задачу, то я був би вам дуже вдячний. 4. Шкода, що ви запізнилися на концерт. 5. Якби я довідалася про це раніше, то не сиділа б зараз вдома. 6. Якби я знав французьку мову, то уже давно б поговорив з нею. 7. Якби ви тоді послухалися моєї поради, то не були б в такому скрутному становищі зараз. 8. Шкода, що нам раніше не спало на думку прошукати книгу в бібліотеці. 9. Якщо я розбагатію, то куплю собі дорогу машину. 10. Шкода, що вона не прийде завтра. 11. Якби ви його зустріли, то не впізнали б його.

Exercise 17. Play a game. Look at this sequence of sentences, then use the prompts below to act out similar hypotheses.

S1: If I were rich, I would go on holiday.

S2: If I went on holiday, I’d go to London.

S3: If I went to London, I’d visit Buckingham Palace.

S4: If I visited Buckingham Palace, I would meet the Queen.

S5: If I met the Queen …

 

· If I won &1,000,000 …

· If I met my favourite film star …

· If I got lost in the mountains …

 

Exercise 18. Memorize the following words and word combinations.

Consideration - розгляд, обговорення, принцип, фактор, що враховується

consider – розглядати, брати до уваги, обговорювати, враховувати

achieve – досягати, отримувати

compatibility – сумісність

interoperability – функціональна сумісність, можливість взаємодії (програмних та апаратних виробів різних поставників)

backward-compatible – зворотно сумісний, сумісний назад (що не виключає використання попередніх версій чи модифікацій)

extensibility – розтяжність, можливість розширення (нарощення)

underlying – що лежить під чимось; що лежить в основі, основний, головний, базовий

fault-tolerance – відмовостійкість

resistant – що чинить опір, стійкий, міцний

component failure – відмова елемента

maintainability – ремонтопридатність, підтримка, супровід, зручність обслуговування

update – оновлення, оновлена (виправлена) версія

comprise – містити в собі, вміщати, охоплювати

packaging – пакет

box – стійка, блок, модуль, прямокутник (на блок-схемі)

enhance – збільшувати, посилювати, поліпшувати

robustness – “запас міцності”, стійкість, надійність (системи) tolerate – витримувати

invalid – невірний, неправильний, недійсний, помилковий,

resilience – можливість системи протидіяти помилкам, можливість системи до відновлення функцій

withstand – протистояти, витримувати, чинити опір, опиратися

hostile – ворожий

target user/audience – цільовий користувач/аудиторія

default value – значення по умовчанню


Дата добавления: 2015-08-27; просмотров: 108 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Software Design| Design Considerations

mybiblioteka.su - 2015-2024 год. (0.011 сек.)