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

Лекция 1

Введение в современные технологии программирования

Под технологией программирования понимается совокупность обобщенных и систематизированных знаний, или наука, об оптимальных способах (приемах и процедурах) проведения процесса программирования, обеспечивающего в заданных условиях получение программной продукции с заданными свойствами.

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

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

Технологическая линия имеет единую регламентированную технологию программирования, все компоненты которой на заданном рабочем интервале согласованы и настроены на конкретные условия конкретного коллектива специалистов. В технологической линии четко указано оборудование, на котором надо работать, и технология его использования – «делай так, а не иначе».

Разработка программного обеспечения уже никогда не будет про­изводиться так, как это делалось раньше. Такова нынешняя реальность: члены одной команды больше не работают вместе. Зачастую они разделены террито­риально, но и находясь в одном офисе, в силу загруженности почти не контактируют между собой или же делают это крайне-неэффективно, тогда как потребность в обмене информацией и согласовании действий очень велика. Нередко даже основным участникам проекта — его руководителям, архитекторам системы, разработчикам программного обеспечения и тестировщикам — бы­вает довольно сложно обменяться необходимыми сведениями, не говоря уже о сотрудниках отдела внедрения и эксплуатации. Проводятся бесконечные совещания, телефонные переговоры, переписка по электронной почте, а работа, тем временем, тормозится, проект не укладывается в бюджет или вообще не со­ответствует требованиям.

1.1.Требования к современным технологиям программирования

Анализ известных и широко распространенных технологий и методов программирования позволяет сформулировать следующие основные требования к ним.

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

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

  3. Технология программирования должна быть безбумажной. Это значит, что весь процесс изготовления программного изделия и управления деятельностью коллектива программистов должен быть максимально дебюрократизирован и выполняться за пультом экрана с минимальным расходом бумаги. Документация на программное изделие (техническое описание, инструкции пользователю, инструкции по эксплуатации и т.п.) должны заноситься и храниться в основном на магнитных носителях. Работа пользователя должна обеспечиваться развитой информационно-справочной системой.

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

  5. Технология программирования не должна быть связана с языком программирования, так как по современным представлениям он не является определяющим звеном в технологии программирования.

  6. Технология программирования должна быть простой в освоении, с автоматически включаемыми средствами подсказки и обучения универсального применения. Эти средства должны быть иерархическими и оперативно привязанными к изготовляемому программному продукту. Должна быть предусмотрена система автоматической генерации средств подсказки и обучения применительно к изготовляемому программному изделию.

  7. Технология программирования должна иметь средства автоматической фиксации всех действий, выполняемых в процессе коллективного изготовления программного изделия – должны вестись и храниться в системе журналы (протоколы, дневники разработки). Эти средства должны позволять восстанавливать любые состояния процесса на любом этапе изготовления программного изделия, а также использоваться в процессе его эксплуатации.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]