- •19.0. Введение
- •19.1. Моделирование как метод познания
- •20.1. Формы представления моделей
- •20.2. Классификация математических моделей
- •21.1. Математическая модель системы (объекта)
- •21.2. Методы математического моделирования
- •21.3. Технология математического моделирования системы (объекта)
- •1 Этап. Формулирование целей и задач моделирования, выявление проблем, описание объекта исследования.
- •2 Этап. Изучение априорной информации об объекте исследования.
- •3 Этап. Формализация постановки задачи: формальное описание целей и задач моделирования, формулировка требований.
- •4 Этап. Стратегическое и тактическое планирование эксперимента с объектом.
- •5 Этап. Экспериментирование с объектом.
- •6 Этап. Идентификация объекта.
- •7 Этап. Оценка адекватности модели, ее свойств, устойчивости, областей применения.
- •8 Этап. Решение задач моделирования, подведение итогов.
- •21.4. Контрольные вопросы и задания
- •22.1. Понятие информационной модели
- •22.2. Этапы моделирования
- •22.3. Типовые информационные модели
- •Графы, сети, деревья
- •23.1. Понятие алгоритма
- •23.2. Свойства алгоритма
- •23.3. Данные алгоритмов
- •23.4. Элементарные алгоритмические действия
- •23.5. Способы записи алгоритмов
- •24.0. Введение
- •25.0. Введение
- •26.0. Введение
- •27.0. Введение
- •28.1. Вычисление конечных и бесконечных сумм и произведений
- •28.2. Решение уравнений итерационными методами
- •28.3. Расчет таблиц функциональных зависимостей
- •28.4. Подсчет числа положительных, отрицательных и нулевых элементов массивов
- •28.5. Расчет модуля вектора и нормы матрицы
- •28.6. Расчет среднего и дисперсии элементов в массивах
- •28.7. Поиск минимальных или максимальных значений в массивах
- •28.8. Алгоритмы упорядочивания элементов в массивах
- •28.9. Умножение матрицы на вектор и матрицы на матрицу
- •28.10. Возведение квадратной матрицы в целую степень
- •28.11. Исключение элементов массивов
- •28.12. Расчет определителя квадратной матрицы
- •28.13. Транспонирование матриц
- •29.1. Что такое язык программирования?
- •29.2. Низкоуровневые языки программирования
- •29.3. Языки высокого уровня
- •Навигация по разделам:
- •29.3.1. Процедурные языки программирования
- •29.3.2. Функциональные языки программирования
- •29.3.3. Логические языки программирования
- •30.0. Введение
- •31.0. Введение
- •31.1. Постановка и формализация задачи
- •31.2. Разработка алгоритмов решения задачи
- •31.2. Разработка алгоритмов решения задачи
- •31.4. Анализ результатов
- •31.5. Сопровождение программ
- •32.0. Введение
- •33.1. Технология структурного программирования
- •33.2. Структурные методы анализа и проектирования по
- •33.3. Модульное программирование
- •Навигация по разделу
- •33.3.1. Hipo - диаграмма
- •33.3.2. Метод нисходящего проектирования
- •33.3.3. Метод расширения ядра
- •33.3.4. Метод восходящего проектирования
- •33.4. Базовые управляющие структуры структурного программирования
- •33.5. Проектирование и тестирование программы
- •33.6. Подпрограммы, процедуры и функции
- •Навигация по разделу:
- •33.6.1. Основные понятия и терминология
- •33.6.2. Локальность
- •33.6.3. Параметры процедуры
- •34.1. Методология объектно-ориентированного программирования
- •34.2. Объектно-ориентированные методы анализа и проектирования по
- •34.3. Основные принципы построения объектной модели
- •34.4. Основные элементы объектной модели
- •34.5. Пример разработки консольного приложения в технологии объектно-ориентированного подхода
- •Навигация по разделу:
- •34.5.1. Диаграмма прецендентов uml
- •34.5.2. Диаграмма последовательности uml для прецедента
- •34.5.3. Диаграмма классов uml для прецендента «перевести р-ичную строку в число»
- •34.5.4. Текст приложения на языке Object Pascal
- •35.0. Введение
- •35.1. История развития бд
- •35.2. Классификация бд
- •Навигация по разделу:
- •35.2.1. Основные функции субд
- •36.1. Основные понятия бд
- •36.2. Основные понятия реляционной модели бд
- •36.3. Предпроектное обследование предметной области. Связи таблиц
- •36.4. Нормализация отношений
- •36.5. Общие сведения о ms Access
- •36.6. Приложение
- •36.6. Приложение
- •37.2. Связь между таблицами и целостность данных
- •37.3. Создание запросов в ms access
- •Навигация по разделу:
- •37.3.1. Запросы на выборку
- •37.3.2. Запросы с параметрами
- •37.2.3. Запросы с вычислениями
- •37.2.4. Итоговые запросы
- •37.2.5. Перекрестные запросы
- •37.4. Формы
- •37.5. Отчеты
- •38.0. Введение
- •38.1. Различные подходы к построению систем ии
- •38.2. Экспертные системы
- •Методы, основанные на правилах.
- •Методы, основанные на фреймах.
33.3.1. Hipo - диаграмма
↑ Наверх
HIPO - диаграмма предназначена для спецификации (описания) требований к программе или функциональному (логическому) модулю.
Она является результатом анализа процесса обработки данных, выполняемого программой (или модулем), с точки зрения исходных данных и результатов работы программы.
HIPO - диаграмма имеет следующий вид:
В разделе “вход” перечисляются имена входных данных, их типы, диапазоны возможных значений.
В разделе “выход” перечисляются имена выходных данных, их типы, диапазоны возможных значений.
В разделе “обработка” для каждого выхода необходимо указать, с какими входами он связана и как. В этом разделе содержится описание того, что делает программа, а не как она это делает.
Таким образом, HIPO-диаграмма – это описание поведения процесса обработки данных в таких существенных признаках, как входные значения, выходные значения и связь между ними.
Рассмотрим построение HIPO-диаграммы для модуля «1. 1. Перевод 10-ичного целого в р-ичное целое» с рис. 33.1.
1. 1. Модуль Перевод 10-ичного целого в р-ичное целое, представленное строкой о | ||
Вход |
Обработка |
Выход |
Ip – строка, p – целое значение |
I - десятичный эквивалент р-ичной строки Ip – строки, содержащей p- ичное представление числа. р — основание системы счисления в диапазоне 2.. 16. |
I - целое число |
33.3.2. Метод нисходящего проектирования
↑ Наверх
Метод нисходящего проектирования подобен методу получения детального изображения из более общего вида с помощью телескопического увеличения. На, начальном шаге формируется предложение, описывающее функцию всей программы. Затем определяются ее подфункции. Эта процедура является рекурсивной, т. е., следуя ей, каждая из подфункций может расчленяться до тех пор, пока ее составные части не будут окончательно уточнены. Метод нисходящего проектирования, иногда называемый функциональной декомпозицией, основан на двух стратегиях: пошаговом уточнении, разработанном Е. Дейкстрой, и анализе сообщений, базирующемся на работах Йодана, Константайна и Мейерса. Эти стратегии отличаются способами определения начальных спецификаций, методами, используемыми при разбиении задачи на части, и правилами записи [20].
33.3.3. Метод расширения ядра
↑ Наверх
Метод расширения ядра отличается от способа нисходящего проектирования: в нем больше внимания вначале уделяется выявлению множества вспомогательных функций, а не определению функции всей программы в целом. Эти функции можно получить, применяя методы проектирования структур данных, которые используются при иерархическом модульном проектировании, разработанном Джексоном, или определяя области хранения данных с последующим анализом связанных с ними функциональных единиц (как в методе определения спецификаций модуля, разработанном Парнасом) [20].
33.3.4. Метод восходящего проектирования
↑ Наверх
При использовании метода восходящего проектирования в первую очередь определяются вспомогательные функции, которые могут потребоваться для проектируемой программы. Модульная декомпозиция заключается в нахождении ключевых модулей промежуточных уровней, которые затем разрабатываются восходящим и нисходящим способами одновременно. Эти модули не являются вспомогательными в том смысле, что потребность в них возникает в нескольких точках программы. Необходимость в использовании этих модулей может возникать в других программах или системах.
Функции, определяемые как вспомогательные при восходящем проектировании, реализуются с помощью модулей самых нижних уровней [20].
← 33.2. Структурные методы анализа и... |
33.4. Базовые управляющие структуры... |