ЛАБОРАТОРНАЯ РАБОТА № 2. Структурный подход к программированию. Стадия «Эскизный проект»



Лабораторный практикум

ЛАБОРАТОРНАЯ РАБОТА № 1. Этапы разработки программного обеспечения при структурном подходе к программированию. Стадия «Техническое задание»

Цель работы: ознакомиться с правилами написания технического задания.

Лабораторная работа рассчитана на 4 академических часа.

Теоретическая часть. Разработка технического задания

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

Порядок разработки технического задания

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

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

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

· 1. Общие положения

· 1.1. Техническое задание оформляют в соответствии с ГОСТ 19.106—78 на листах формата А4 и АЗ по ГОСТ 2.301—68, как правило, без заполнения полей листа. Номера листов (страниц) проставляют в верхней части листа над текстом.

· 1.2. Лист утверждения и титульный лист оформляют в соответствии с ГОСТ 19.104—78. Информационную часть (аннотацию и содержание), лист регистрации изменений допускается в документ не включать.

· 1.3. Для внесения изменений и дополнений в техническое задние на последующих стадиях разработки программы или программного изделия выпускают дополнение к нему. Согласование и утверждение дополнения к техническому заданию проводят в том же порядке, который установлен для технического задания.

· 1.4. Техническое задание должно содержать следующие разделы:

o • введение;

o • наименование и область применения;

o • основание для разработки;

o • назначение разработки;

o • технические требования к программе или программному изделию;

o • технико-экономические показатели;

o • стадии и этапы разработки;

o • порядок контроля и приемки;

o • приложения.

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

· 2. Содержание разделов

· 2.1. Введение должно включать краткую характеристику области применения программы или программного продукта, а также объекта (например, системы), в котором предполагается их использовать. Основное назначение введения — продемонстрировать актуальность данной разработки и показать, какое место эта разработка занимает в ряду подобных.

· 2.2. В разделе «Наименование и область применения» указывают наименование, краткую характеристику области применения программы или программного изделия и объекта, в котором используют программу или программное изделие.

· 2.3. В разделе «Основание для разработки» должны быть указаны:

o • документ (документы), на основании которых ведется разработка. Таким документом может служить план, приказ, договор и т. п.;

o • организация, утвердившая этот документ, и дата его утверждения;

o • наименование и (или) условное обозначение темы разработки.

· 2.4. В разделе «Назначение разработки» должно быть указано функциональное и эксплуатационное назначение программы или программного изделия.

· 2.5. Раздел «Технические требования к программе или программному изделию» должен содержать следующие подразделы:

o • требования к функциональным характеристикам;

o • требования к надежности;

o • условия эксплуатации;

o • требования к составу и параметрам технических средств;

o • требования к информационной и программной совместимости;

o • требования к маркировке и упаковке;

o • требования к транспортированию и хранению;

o • специальные требования.

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

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

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

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

· 2.5.5. В подразделе «Требования к информационной и программной совместимости» должны быть указаны требования к информационным структурам на входе и выходе и методам решения, исходным кодам, языкам программирования. При необходимости должна обеспечиваться защита информации и программ.

· 2.5.6. В подразделе «Требования к маркировке и упаковке» в общем случае указывают требования к маркировке программного изделия, варианты и способы упаковки.

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

· 2.5.8. В разделе «Технико-экономические показатели» должны быть указаны: ориентировочная экономическая эффективность, предполагаемая годовая потребность, экономические преимущества разработки по сравнению с лучшими отечественными и зарубежными образцами или аналогами.

· 2.6. В разделе «Стадии и этапы разработки» устанавливают необходимые стадии разработки, этапы и содержание работ (перечень программных документов, которые должны быть разработаны, согласованы и утверждены), а также, как правило, сроки разработки и определяют исполнителей.

· 2.7. В разделе «Порядок контроля и приемки» должны быть указаны виды испытаний и общие требования к приемке работы.

· 2.8. В приложениях к техническому заданию при необходимости приводят:

o • перечень научно-исследовательских и других работ, обосновывающих разработку;

o • схемы алгоритмов, таблицы, описания, обоснования, расчеты и другие документы, которые могут быть использованы при разработке;

o • другие источники разработки.

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

Пример 1.1. Разработать техническое задание на программный продукт, предназначенный для наглядной демонстрации школьникам графиков функций одного аргумента у =/(х). Разрабатываемая программа должна рассчитывать таблицу значений и строить график функций на заданном отрезке по заданной формуле и менять шаг аргумента и границы отрезка. Кроме этого, программа должна запоминать введенные формулы.

Техническое задание к данному примеру смотри в приложении 2.

Пример 1.2. Разработать техническое задание на разработку «Модуля автоматизированной системы оперативно-диспетчерского управления теплоснабжением корпусов Московского института».

Техническое задание к данному примеру смотри в приложении 3.

Порядок выполнения работы

· 1. Разработать техническое задание на программный продукт (см. варианты заданий в приложении 1).

· 2. Оформить работу в соответствии с ГОСТ 19.106—78. При оформлении использовать MS Office.

· 3. Сдать и защитить работу.

Защита отчета по лабораторной работе

Отчет по лабораторной работе должен состоять из:

· 1. Постановки задачи.

· 2. Технического задания на программный продукт.

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

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

· 1. Приведите этапы разработки программного обеспечения.

· 2. Что включает в себя постановка задачи и предпроектные исследования?

· 3. Перечислите функциональные и эксплуатационные требования к программному продукту.

· 4. Перечислите правила разработки технического задания.

· 5. Назовите основные разделы технического задания.

ЛАБОРАТОРНАЯ РАБОТА № 2. Структурный подход к программированию. Стадия «Эскизный проект»

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

Лабораторная работа рассчитана на 4 академических часа.

Теоретическая часть. Разработка спецификаций

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

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

Структурный анализ предполагает использование следующих видов моделей:

o • диаграмм потоков данных (DFD — Data Flow Diagrams), описывающих взаимодействие источников и потребителей информации через процессы, которые должны быть реализованы в системе;

o • диаграмм «сущность—связь» (ERD — Entity-Relationship Diagrams), описывающих базы данных разрабатываемой системы;

o • диаграмм переходов состояний (STD — State Transition Diagrams), характеризующих поведение системы во времени;

o • функциональных диаграмм (методика SADT);

o • спецификаций процессов;

o • словаря терминов.

Спецификации процессов

Спецификации процессов обычно представляют в виде краткого текстового описания, схем алгоритмов, псевдокодов, форм или диаграмм Насси — Шнейдермана

Словарь терминов

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

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

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

Функциональные диаграммы

Функциональные диаграммы отражают взаимосвязи функций разрабатываемого программного обеспечения.

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

Диаграммы потоков данных

Для описания потоков информации в системе применяются диаграммы потоков данных (DFD — Data flow diagrams). DFD позволяет описать требуемое поведение системы в виде совокупности процессов, взаимодействующих посредством связывающих их потоков данных. DFD показывает, как каждый из процессов преобразует свои входные потоки данных в выходные потоки данных и как процессы взаимодействуют между собой.

Диаграммы «сущность—связь»

Диаграмма сущность—связь — инструмент разработки моделей данных, обеспечивающий стандартный способ определения данных и отношений между ними. Она включает сущности и взаимосвязи, отражающие основные бизнес-правила предметной области. Такая диаграмма не слишком детализирована, в нее включаются основные сущности и связи между ними, которые удовлетворяют требованиям, предъявляемым к НС.

Порядок выполнения работы

o 1. На основе технического задания из лабораторной работы № 1 выполнить анализ функциональных и эксплуатационных требований к программному продукту.

o 2. Определить основные технические решения (выбор языка программирования, структура программного продукта, состав функций ПП, режимы функционирования) и занести результаты в документ, называемый «Эскизным проектом» (см. приложение 4).

o 3. Определить диаграммы потоков данных для решаемой задачи.

o 4. Определить диаграммы «сущность—связь», если программный продукт содержит базу данных.

o 5. Определить функциональные диаграммы.

o 6. Определить диаграммы переходов состояний.

o 7. Определить спецификации процессов.

o 8. Добавить словарь терминов.

o 9. Оформить результаты, используя MS Office или MS Visio в виде эскизного проекта.

o 10. Сдать и защитить работу.

Защита отчета по лабораторной работе

Отчет по лабораторной работе должен состоять из:

o 1. Постановки задачи.

o 2. Документа «Эскизный проект», содержащего:

o • выбор метода решения и языка программирования;

o • спецификации процессов;

o • все полученные диаграммы;

o • словарь терминов.

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

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

o 1. Назовите этапы разработки программного обеспечения.

o 2. Что такое жизненный цикл программного обеспечения?

o 3. В чем заключается постановка задачи и предпроектные исследования?

o 4. Назовите функциональные и эксплуатационные требования к программному продукту.

o 5. Перечислите составляющие эскизного проекта.

o 6. Охарактеризуйте спецификации и модели.

ЛАБОРАТОРНАЯ РАБОТА № 3. Структурный подход к программированию. Стадия «Технический проект»

Цель работы: изучить вопросы проектирования программного обеспечения.

Лабораторная работа рассчитана на 4 академических часа.

Теоретическая часть. Составляющие технического проекта

ПРОЕКТ ТЕХНИЧЕСКИЙ — образ намеченного к созданию объекта, представленный в виде его описания, схем, чертежей, расчетов, обоснований, числовых показателей.

Технический проект

Цель технического проекта — определение основных методов, используемых при создании информационной системы, и окончательное определение ее сметной стоимости.

Техническое проектирование подсистем осуществляется в соответствии с утвержденным техническим заданием.

Технический проект программной системы подробно описывает:

· • выполняемые функции и варианты их использования;

· • соответствующие им документы;

· • структуры обрабатываемых баз данных;

· • взаимосвязи данных;

· • алгоритмы их обработки.

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

При разработке технического проекта оформляются:

· • ведомость технического проекта. Общая информация по проекту;

· • пояснительная записка к техническому проекту. Вводная информация, позволяющая ее потребителю быстро освоить данные по конкретному проекту;

· • описание систем классификации и кодирования;

· • перечень входных данных (документов). Перечень информации, которая используется как входящий поток и служит источником накопления;

· • перечень выходных данных (документов). Перечень информации, которая используется для анализа накопленных данных;

· • описание используемого программного обеспечения. Перечень программного обеспечения и СУБД, которые планируется использовать для создания информационной системы;

· • описание используемых технических средств. Перечень аппаратных средств, на которых планируется работа проектируемого программного продукта;

· • проектная оценка надежности системы. Экспертная оценка надежности с выявлением наиболее благополучных участков программной системы и ее узких мест;

· • ведомость оборудования и материалов. Перечень оборудования и материалов, которые потребуются в ходе реализации проекта.

Структурная схема

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

Функциональная схема

Функциональная схема — это схема взаимодействия компонентов программного обеспечения с описанием информационных потоков, состава данных в потоках и указанием используемых файлов и устройств (см. разд. 4.1.2).

Разработка алгоритмов

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

Структурные карты

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

Техника структурных карт Джексона основана на методе структурного программирования Джексона, который выявляет соответствие между структурой потоков данных и структурой программы. Основное внимание в методе сконцентрировано на соответствии входных и выходных потоков данных.

Порядок выполнения работы

· 1. На основе технического задания из лабораторной работы № 1 и спецификаций из лабораторной работы № 2 разработать уточненные алгоритмы программ, составляющих заданный программный модуль. Использовать метод пошаговой детализации.

· 2. На основе уточненных и доработанных алгоритмов разработать структурную схему программного продукта.

· 3. Разработать функциональную схему программного продукта (разд. 4.1.2).

· 4. Представить структурную схему в виде структурных карт Константайна.

· 5. Представить структурную схему в виде структурных карт Джексона.

· 6. Оформить результаты, используя MS Office или MS Visio в виде технического проекта.

· 7. Сдать и защитить работу.

Защита отчета по лабораторной работе

Отчет по лабораторной работе должен состоять из:

· 1. Структурной схемы программного продукта.

· 2. Функциональной схемы.

· 3. Алгоритма программы.

· 4. Структурной карты Константайна.

· 5. Структурной карты Джексона.

· 6. Законченного технического проекта программного модуля.

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

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

· 1. Назовите этапы разработки программного обеспечения.

· 2. В чем заключается проектирование программного обеспечения?

· 3. Перечислите составляющие технического проекта.

· 4. Охарактеризуйте структурный подход к программированию.

· 5. Из чего состоят структурная и функциональная схемы?

· 6. Охарактеризуйте метод пошаговой детализации при составлении алгоритмов программ.

· 7. Приведите понятие псевдокода.

· 8. В чем заключается методика Константайна?

· 9. В чем заключается методика Джексона?


Дата добавления: 2020-04-08; просмотров: 1136; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!