- •73Лекция16. Проектирование программного обеспечения аис
- •Лекция 16. Проектирование программного обеспечения аис
- •Жизненный цикл программного обеспечения
- •Разработка программ
- •Алгоритмизация задач
- •Структурный подход к проектированию программного обеспечения
- •Методология sadt
- •Моделирование потоков данных
- •Моделирование данных
- •Модульное программирование
- •Объектно-ориентированный подход к проектированию программного обеспечения
- •Объект.Метод Параметр1, Параметр2,..
- •Инструментальные средства разработки программного обеспечения
- •Case-технологии разработки программного обеспечения аис
- •Контрольные вопросы
Инструментальные средства разработки программного обеспечения
Разработка программного обеспечения осуществляется с использованием различных инструментальных средств, обеспечивающих:
оригинальное программирование;
использование пакетов прикладных программ – типовые программы, реализующие функции обработки данных;
автоматизацию основных этапов разработки программ.
Наиболее традиционными средствами разработки являются языки и системы программирования. Языки программирования принято делить на машинные и алгоритмические языки.
Машинные языки содержат машинные команды, соответствующие простейшим операциям обработки. Машинные команды привязаны к определенному классу компьютеров и/или операционных систем.
Алгоритмические языки программирования описывают алгоритм задачи, обеспечивают наглядность алгоритма и удобство сопровождения программы. Алгоритмические языки делятся на машинно-ориентированные, процедурно-ориентированные и проблемно-ориентированные языки.
Машинно-ориентированные языки программирования являются языками низкого уровня, поскольку они учитывают архитектуру и тип компьютеров. Программирование на таких языках трудоемко, но программы оптимальны с точки зрения потребных ресурсов компьютера. Примеры машинно-ориентированных языков программирования — различные ассемблеры1 (Macro Assembler, Turbo Assembler и др.) определенного класса компьютеров.
Процедурно-ориентированные языки программирования, такие как Visual Basic, Pascal, C++, Ada, Cobol, PL1 и др. позволяют описать набор процедур обработки, реализуют типовые вычислительные структуры:
1. Последовательности блоков (инструкций): 1, 2, 3, 4 и т.д.
Все блоки (инструкции) выполняются в строгой последовательности (Рис.5 А)
2. Условный переход (Рис.5 Б) – проверка заданного условия (2) и выбор альтернативного действия: если условие истинно – 3, иначе - 4. После этого управление передается блоку 5.
3. Альтернативный выбор (Рис.5 В) – проверка условия (2), если условие истинно – выполнение действия 3, иначе проверка условия (4); если условие истинно – выполнение действия 5 и т.д. Если не выполнилось ни одного условия или выполнились действия (3 или 5 и т.п.), управление передается блоку 6.
А Б В
Рисунок 5
4. Циклический процесс – цикл «пока» (Рис. 6А). Цикл повторяется, пока истинно условие (2) – блок 3. Если условие (2) ложно, передача управления блоку 4.
5. Циклический процесс – цикл «до» (Рис. 6Б). Цикл выполняется как минимум один раз – блок 2. После проверки условия (3), если оно истинно, выполняется блок (2), иначе управление передается блоку 4.
А Б
Рисунок 6
Языки программирования объектного типа используют в программном коде класса объектов или процедурах обработки событий также элементы структурного программирования.
Проблемно-ориентированные языки программирования — реляционные языки запросов высокого уровня, генераторы отчетов и т.д. позволяют идентифицировать проблему, входную и выходную информацию, не указывая конкретных процедур обработки.
Пакеты прикладных программ (ППП) делятся на классы:
Проблемно-ориентированные ППП – обеспечивают решение задач определенной предметной области;
Методо-ориентированные ППП – поддерживают определенного вида модели и методы решения задач, применяются независимо от предметной области;
ППП общего назначения – обеспечивают поддержку информационных технологий (текстовые работы, графические работы, стандартные вычисления и т.п.).
ППП содержат различные инструментальные средства, облегчающие настройку и адаптацию ППП к условиям конкретного применения, обеспечивающие сопровождение ППП (генераторы экранных форм, генераторы отчетов, языки запросов высокого уровня, стандартные информационные технологии, алгоритмические языки программирования).