Этапы создания программного обеспечения
3.1. Постановка задачи
На этом этапе человек, хорошо представляющий предметную область, должен четко определить цель разработки, сформулировать задачи и предложить подход к их решению.
3.2. Моделирование
это замещение одного объекта (оригинала) другим (моделью) и изучение свойств оригинала путем исследования свойств модели. Замещение производится с целью упрощения, удешевления, ускорения изучения свойств оригинала. Оригинал и модель сходны по одним параметрам и различны по другим. Замещение правомерно (адекватно), если интересующие исследователя характеристики оригинала и модели определяются однотипными подмножествами параметров и связаны одинаковыми зависимостями этих параметров.
Модели бывают физические (макеты и опытные образцы) и математические (аналитические - математические соотношения - или имитационные, написанные на специальных алгоритмических языках).
Имитационное моделирование - это метод исследования, заключающийся в имитации на компьютере с помощью комплекса программ процесса функционирования технологии или отдельных ее частей и элементов.
Сущность метода имитационного моделирования заключается в разработке таких алгоритмов и программ, которые имитируют поведение системы, ее свойства и характеристики в необходимом для исследования составе, объеме и области изменения параметров.
Принципиальные возможности метода весьма велики, он позволяет при необходимости исследовать системы любой сложности и назначения с любой степенью детализации. Ограничениями являются лишь мощность используемых компьютеров и трудоемкость подготовки сложного комплекса программ.
3.3. Алгоритмизация задачи
Алгоритм – это точное предписание, определяющее последовательность действий исполнителя, направленных на решение поставленной задачи.
Три способа записи алгоритмов это словесный (рецепты, инструкции, правила), графический (блоксхемы по типовым правилам оказываются более наглядными), на алгоритмических языках (записи в виде операторов и зарезервированных слов).
Свойства алгоритма (должны быть обеспечены при его разработке):
Однозначность, под которой понимается единственность толкования исполнителем правил выполнения действий и порядка их выполнения.
Конечность, т.е. обязательность завершения каждого из действий, составляющих алгоритм, и алгоритма в целом.
Результативность, предполагающая, что выполнение алгоритма должно завершиться получением определенных результатов.
Массовость, определяющая возможность применения данного алгоритма для решения целого класса задач, отвечающих общей постановке задачи. Для того чтобы алгоритм обладал этим свойством, следует составлять алгоритм, используя обозначения величин и избегая конкретных значений.
Правильность это способность алгоритма давать правильные результаты решения поставленной задачи.
3.4. Программирование
- это составление программы обеспечивает возможность выполнения алгоритма и поставленной задачи исполнителем ПК. Для этого используем алгоритмические языки программирования (например, Pascal, Basic), имеющие собственный язык, операторы, синтаксис и т.д.
3.5. Ввод программы и исходных данных
- осуществляется с клавиатуры или из файлов на жестком диске.
3.6. Компиляция (трансляция)
- преобразование исходного текста программ, написанных на каком-либо языке программирования, в машинный код.
3.7. Автономная отладка программы
это процесс тестирования программы на контрольных примерах. Эти примеры стремятся выбрать так, чтобы при работе с ними программа прошла все основные пути блоксхемы алгоритма, поскольку на каждом из путей могут быть свои ошибки (от зацикливания до выдачи бессмысленного результата).
Сложные программы отлаживают фрагментами. Используют отладчики специальные программы, которые позволяют выполнять отлаживаемую программу "по шагам", наблюдать за изменением значений переменных, выражений и других объектов программы. При этом возможно выявление следующих типов ошибок:
Синтаксические - как результат нарушения правил написания предложений языка. Выявляются при компиляции программы.
Семантические - связанные с недопустимыми значениями параметров, недопустимыми действиями над параметрами. Выявляются при работе программы или на этапе ее отладки.
Логические - связанные с неправильным использованием тех или иных алгоритмических конструкций. Могут давать неправильные результаты при работе программы, но, например, лишь при определенном сочетании параметров. Нарушение работы программы не вызывают.
Алгоритмические - была постановка задачи. Алгоритм разработан неправильно. Результат - программа работает без ошибок, но делает не то, что нужно.
3.8. Комплексная отладка
На этом этапе программа запускается в системе других программ и вводятся исходные данные, требуемые по условиям задачи. Полученные в результате решения выходные данные анализируются постановщиком задачи. Результат анализа может быть типа все правильно, есть логические ошибки, неправильная постановка задачи.
3.9. Документирование
Выполняется, например, по ЕСПД (Единая система программной документации). Это стандарт, определяющий состав и содержание программной документации (руководство системному администратору, руководство пользователю и т.д.).
3.10. Эксплуатация
Осуществляется в течение некоторого времени до момента физического или морального старения компьютерной техники (программного обеспечения), завершающегося изъятием программного обеспечения из эксплуатации.