Что понимают под технологичностью программного обеспечения почему

Обновлено: 07.07.2024

Файл "tehnologia" внутри архива находится в папке "Учебник - Технология программирования". PDF-файл из архива "Г.С. Иванова - Учебник - Технология программирования", который расположен в категории "книги и методические указания". Всё это находится в предмете "информационные технологии" из второго семестра, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информационные технологии" в общих файлах.

Просмотр PDF-файла онлайн

Текст 14 страницы из PDF

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

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

Что понимают под технологичностью программного обеспечения? Почему?2. Дайте определение модуля. Чем вызвано изменение этого понятия? Как изменились требования кмодулям в настоящее время и почему?3. Что понимают под связностью и сцеплением модулей? Какие типы связности и сцеплениясчитаются допустимыми и почему? В чем особенность библиотек ресурсов?4. Чем нисходящий подход к разработке отличается от восходящего? Перечислите достоинства инедостатки этих подходов?5. Что называют структурным программированием и почему? Назовите основные и дополнительныеструктуры. Объясните, в чем сложность использования схем алгоритмов при проектированииструктурных программ? Какие способы описания структурных алгоритмов существуют?6.

ОПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ К ПРОГРАММНОМУОБЕСПЕЧЕНИЮ И ИСХОДНЫХ ДАННЫХДЛЯ ЕГО ПРОЕКТИРОВАНИЯЭтап постановки задачи – один из наиболее ответственных этапов создания программного продукта. Наэтом этане формулируют основные требования к разрабатываемому программному обеспечению. От того,насколько полно определены функции и эксплуатационные требования, насколько правильно принятыпринципиальные решения, определяющие процесс проектирования, во многом зависит стоимость разработки иее качество.3.1. Классификация программных продуктов по функциональному признакуКаждый программный продукт предназначен для выполнения определенных функций.По назначению все программные продукты можно разделить натри группы: системные,прикладные и гибридные (рис.

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

Так мультипрограммные операционные системысущественно сложнее однопрограммных, что хорошо видно на примере MS DOS иWINDOWS.Оболочки (например, NORTON COMMANDER) в свое время появились дляорганизации более удобного интерфейса пользователя с файловой системой MS DOS.Современные оболочки, такие, как FAR, используют для обеспечения пользователюпривычной среды при работе с файловой системой.К утилитам принято относить программы и системы, непосредственно не входящие всостав операционной системы, но обеспечивающие выполнение75определенных функций, таких как архивация файлов, проверка компьютера на заражениевирусами, осуществление удаленного доступа к информации и др.Прикладные программы и системы ориентированы на решение конкретныхпользовательских задач.Различают пользователей:• разработчиков программ;• непрограммистов, использующих компьютерные системы для достижения своих целей.Разработчики программ используют специальные инструментальные средства, такие каккомпиляторы, компоновщики, отладчики, которые последнее время обычно интегрируют всистемы программирования и среды разработки.

Современные среды программирования,например, Delphi, Visual C++, реализуют визуальную технологию разработки программныхпродуктов и предоставляют программистам огромные библиотеки компонентов, которыеможно включать в свою разработку. К этой же группе относят инструментальныекомплексы создания баз данных, такие как Access, FoxPro, Oracle, средства созданияинтеллектуальных систем, например,76экспертных, обучающих, систем контроля знаний и т.д. Последнее достижение в этомнаправлении – CASE-средства разработки программного обеспечения, такие как ERwin,BPwin, Paradigm Plus, Rational Rose и др.Пользователи-непрограммисты в соответствии с современными требованиями недолжны быть профессионалами в проблемах создания программных продуктов и спецификеих взаимодействия с операционной системой.

Для них разрабатывают специальныепрограммные продукты, ориентированные на определенную предметную область. Такиепродукты условно можно разделить на продукты общего назначения, профессиональныесреды или пакеты, обучающие системы, развлекающие программы и т.д.Продукты общего назначения используют разные группы пользователей. К ним можноотнести текстовые редакторы, например, WinWord, электронные таблицы типа Excel,графические редакторы, информационные системы общего назначения, например, картаМосквы, программы-переводчики, и т.п.Профессиональные продукты предназначены для специалистов в различных областях,например, к ним можно отнести:• системы автоматизации проектирования, ориентированные на различные техническиеобласти;• системы-тренажеры, например, тренажер для отработки действий пилотов в аварийнойситуации;• бухгалтерские системы, например, 1C;• издательские системы, например, PageMaker, QuarkXpress;• профессиональныеграфическиесистемы,например,AdobeIllustrator,PhotoShop, CorelDraw и т.

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

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

Читайте также: