Программная инженерия. Теория и практика - страница 28

Шрифт
Интервал


поставленных задач. После этого весь цикл работ начинается сначала.

Безусловно, совершенствование процессов жизненного цикла программного обеспечения абсолютно необходимо. Однако следует иметь в виду, что построение «более зрелого» процесса разработки не обязательно обеспечивает создание более качественного программного обеспечения. Это хотя и связанные, но совершенно различные процессы.

Использование формальных моделей и методов позволяет создавать понятные, непротиворечивые спецификации на разрабатываемое программное обеспечение. Конечно, внедрение таких методов имеет смысл, хотя оно весьма дорого и трудоемко, а возможности их применения весьма ограничены. Основная же проблема – проблема сложности разрабатываемого программного обеспечения с совершенствованием процессов разработки – пока не решена. Создание программного обеспечения по-прежнему предъявляет повышенные требования к квалификации тех, кто этим занимается: проектировщикам программного обеспечения и непосредственно программистам.


Контрольные вопросы

1. Дайте понятие программной инженерии.

2. Назовите дату зарождения программной инженерии как отдельной науки.

3. В чем отличие программной инженерии от информатики?

4. В чем отличие программной инженерии от системотехники?

5. Приведите примеры дисциплин информатики и программной инженерии (дисциплины не путать с учебными предметами).

6. Раскройте понятие «программное обеспечение».

7. Перечислите характеристики ПО по Бруксу и кратко охарактеризуйте каждую.

8. C какими иными видами человеческой деятельности соотносится создание ПО в данной главе?

9. Что понимают под термином «технология программирования»?

10. Что называют подходом и чем он отличается от метода?

11. Назовите основные периоды истории развития технологии программирования. Чем характеризуются эти периоды? Как изменялись основные подходы и используемые средства?

12. Дайте определение понятия «сложная иерархическая система». Какой подход используют при разработке таких систем? На каких характеристиках этих систем он основан? В чем особенность данного подхода при разработке программного обеспечения?

13. Что понимают под термином «жизненный цикл программного обеспечения»? Какие основные процессы включают в это понятие?

14. Назовите основные этапы разработки программного обеспечения. Какие основные задачи решаются на этих этапах?