Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции-ТРПС.doc
Скачиваний:
13
Добавлен:
15.11.2018
Размер:
810.5 Кб
Скачать

1.6. Технология программирования и информатизация общества

Технология программирования играла разную роль на разных этапах развития программирования. По мере повышения мощности компьютеров и развития средств и методологии программирования росла и сложность решаемых задач с применением компьютеров, что и привело к повышенному вниманию к технологии программирования. Резкое удешевление стоимости компьютеров и, в особенности, стоимости хранения информации на магнитных носителях привело к широкому внедрению компьютеров практически во все сферы человеческой деятельности, что существенно изменило направленность технологии программирования. Человеческий фактор стал играть в ней решающую роль. Сформировалось достаточно ясное понятие качества ПС, причем предпочтение стало отдаваться не столько эффективности ПС, сколько удобству работы с ним для пользователей, конечно, при равной надежности. Широкое использование компьютерных сетей привело к интенсивному развитию распределенных вычислений; появилась возможность для дистанционного доступа к удаленной информации и для электронного способа обмена сообщениями между людьми. Компьютерная техника из средства решения отдельных задач все более превращается в средство информационного моделирования реального и мыслимого мира. Все это ставит перед технологией программирования новые и достаточно трудные задачи.

2. Общие принципы разработки программных средств

2.1. Специфика разработки программных средств

1. Прежде всего, напомним о существующем противоречии, когда с одной стороны, мы имеем неформальный характер требований к ПС в виде постановки задачи, а также неформальное понятие программной ошибки, а с другой – формализованный основной объект разработки в виде итоговой программы. Тем самым разработка ПС содержит этапы формализации, а переход от неформального к формальному остается существенно неформальным.

2. Разработка ПС носит творческий характер, когда на каждом шаге приходится делать какой-либо выбор и принимать какое-либо решение. Она не сводится к выполнению какой-либо последовательности регламентированных действий. Тем самым эта разработка ближе к процессу проектирования каких-либо сложных устройств, но никак не к их массовому производству.

3. Вполне понятно, что продукт разработки представляет собой некоторую совокупность текстов в виде статических объектов, тогда как смысл или семантика этих текстов выражается процессами обработки данных и действиями пользователей, запускающих эти процессы, т.е. является динамическим. Это предопределяет выбор разработчиком ряда специфичных приемов, методов и средств.

4. Продукт разработки имеет и другую специфическую особенность – программное средство при своем использовании не расходуется и не расходует дополнительных ресурсов.

2.2. Основные подходы при создании пс

К настоящему время сложилось пять основных подходов к организации процесса создания и использования ПС [9].

Водопадный подход. При таком подходе разработка ПС состоит из цепочки этапов. На каждом этапе создаются документы, используемые на последующем этапе. В исходном документе фиксируются требования к ПС. В конце этой цепочки создаются программы, включаемые в ПС.

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

Прототипирование. Этот подход моделирует начальную фазу исследовательского программирования вплоть до создания рабочих версий программ, предназначенных для проведения экспериментов с целью установить требования к ПС. В дальнейшем должна последовать разработка ПС по установленным требованиям в рамках какого-либо другого подхода, например, водопадного.

Формальные преобразования. Этот подход включает разработку формальных спецификаций ПС и превращение их в программы путем корректных преобразований. На этом подходе базируется, например, компьютерная CASE-технология разработки ПС.

Сборочное программирование. Этот подход предполагает, что ПС конструируется из предопределенного набора компонент. Должна существовать некоторая библиотека таких компонент, каждая из которых может многократно использоваться в разных ПС. Процесс разработки ПС при данном подходе состоит скорее из сборки программ из компонент, чем из их программирования. В качестве примера реализации данного способа можно указать такие RAD системы, как Visual Basic и Delphi.

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