Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основная книга по С++й.doc
Скачиваний:
16
Добавлен:
28.10.2018
Размер:
2.07 Mб
Скачать

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

Решение любой прикладной задачи с использованием электронных вычислительных машин (ЭВМ) состоит из следующих этапов: анализ требований и формальная постановка задачи; выбор или разработка математической модели; анализ способов решения; логическое проектирование и разработка алгоритма; кодирование (написание программы); тестирование и отладка программного обеспечения; внедрение, использование и сопровождение программного обеспечения.

Постановка задачи разработки программного обеспечения является самым первым и наиболее важным этапом при проектировании программного обеспечения. Именно здесь закладывается фундамент будущей программы. Если на этом этапе допущены ошибки или не предусмотрены какие-то важные детали, то это отразится на конечном результате, а вносить изменения и исправления в такой проект будет крайне проблематично. Более того, если задача поставлена неверно, то её дальнейшее решение не имеет смысла. На этапе постановки задачи необходимо ответить на следующие вопросы:

  • существуют ли методы или способы решения задачи без использования ЭВМ, нужно ли решать данную задачу на ЭВМ;

  • какие «дивиденды» принесет использование ЭВМ для решения задачи, что будет улучшено, ускорено, оптимизировано, сэкономлено при использовании ЭВМ, какова основная цель применения ЭВМ;

  • что необходимо из оборудования, кроме универсальной ЭВМ, какой тип ЭВМ необходим для решения задачи, какая платформа(ы) ЭВМ может подойти, какая операционная система будет управлять работой ЭВМ, какое дополнительное программное обеспечение нужно;

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

  • каков формат исходных (входных) данных, какие данные и в какой форме необходимы для решения задачи;

  • каков формат промежуточных и выходных данных, какие данные и в какой форме необходимо получить;

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

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

Анализ формальной постановки задачи

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

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

Официальному заключению договора обычно предшествуют:

  • выяснение реальной необходимости такой системы;

  • оценка возможности ее разработки и примерного объема затрат;

  • определение ожидаемого эффекта от внедрения.

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

  • анализ обстановки (совокупность условий, в которых предполагается эксплуатировать программную систему: используемые аппаратные и программные ресурсы, внешние условия ее функционирования, состав людей и работ, относящихся к системе);

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

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

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