- •Введение
- •1. Проектирование прикладных программ на языке высокого уровня
- •1.1. Особенности разработки программного обеспечения на языке высокого уровня
- •1.1.1. Функциональные принципы работы компьютера
- •1.1.2. Понятие о низкоуровневом программировании
- •1.1.3. Основные языки программирования высокого уровня
- •1.1.4. Процедурное и событийное программирование
- •1.1.5. Технология быстрой разработки приложений
- •1.1.6. Классификация программных средств
- •1.2. Основные фазы проектирования программных продуктов
- •1.2.1. Определение проекта и анализ процесса проектирования с позиций теории управления
- •1.2.2. Классификация проектов
- •1.2.3. Основные фазы проектирования
- •2. Жизненный цикл программных продуктов, методология и технология разработки
- •2.1. Процессы жизненного цикла
- •2.1.1. Структура жизненного цикла по стандарту iso/iec 12207
- •2.1.2. Основные процессы
- •2.1.3. Вспомогательные и организационные процессы
- •2.2. Модели жизненного цикла
- •2.2.1. Каскадная модель
- •2.2.2. Спиральная модель
- •2.3. Методология, технология и инструментальные средства разработки прикладного программного обеспечения
- •3. Объектно-ориентированное программирование в рамках языка object pascal
- •3.1. Элементарная грамматика языка Object Pascal
- •3.2. Основные структурные единицы
- •3.2.1. Структуры главного файла программы и модулей
- •3.2.2. Общая характеристика объявляемых элементов
- •3.3. Типы данных и операции над ними
- •3.3.1. Порядковые типы
- •3.3.2. Действительные типы
- •3.3.3. Строки
- •3.3.4. Массивы
- •3.3.5. Множества
- •3.3.6. Записи
- •3.3.7. Файлы
- •3.3.8. Указательные типы
- •3.3.9. Вариантные типы
- •3.3.10. Объекты, классы и интерфейсы
- •3.4. Операторы языка Object Pascal
- •3.4.1. Оператор присваивания
- •3.4.2. Оператор безусловного перехода
- •3.4.3. Оператор if
- •3.4.4. Оператор case
- •3.4.5. Организация цикла с помощью оператора for
- •3.4.6. Цикл repeat … until
- •3.4.7. Цикл while … do
- •3.4.8. Дополнительные операторы организации циклов
- •3.4.9. Оператор with...Do
- •3.5. Обработка исключительных ситуаций
- •3.6. Процедуры и функции
- •4. Интегрированная среда delphi
- •4.1. Общий внешний вид и основные возможности
- •4.2. Главное меню
- •4.2.1. Меню File
- •4 .2.2. Депозитарий – хранилище объектов
- •4.2.3. Меню Edit и команды контекстного меню визуального редактора форм
- •4.2.4. Меню Search
- •4.2.5. Меню View
- •4.2.6. Меню Project
- •4.2.7. Меню Run
- •4.2.8. Меню Component и палитра компонентов
- •4.2.9. Меню Database, Tools, Windows, Help
- •4.3. Инспектор объектов
- •4.4. Редактор кода и его настройка
- •4.5. Общие настройки среды проектирования
- •4.6. Некоторые дополнительные настройки
- •5. Основные элементы построения интерактивного интерфейса прикладных программ
- •5.1. Формы и фреймы – основа визуализации интерфейсных элементов
- •5.2. Наиболее общие свойства, методы и события компонентов
- •5.3. Типы пользовательского интерфейса
- •5.3.3. Форма со вкладками
- •5.4. Основные стандартные компоненты
- •5.4.1. Надписи
- •5.4.2. Текстовое поле ввода
- •5.4.3. Класс tCheckBox
- •5.4.4. Списки
- •5.4.5. Радиокнопки
- •5.4.6. Кнопки
- •5.4.7. Панели
- •5.4.8. Меню
- •5.4.9. Таймер
- •5.4.10. Визуализация больших текстовых фрагментов
- •5.4.11. Визуализация структурированных данных
- •5.4.12. Компоненты построения баз данных
- •5.5. Компоненты организации диалога
- •5.5.1. Окна сообщений
- •5.5.2. OpenDialog, SaveDialog и другие компоненты стандартных диалоговых окон
- •5.6. Средства управления конфигурацией
- •5.7. Работа с графикой
- •Заключение
- •Библиографический список
- •Оглавление
1.2.3. Основные фазы проектирования
Каждый проект, независимо от сложности и объема работ, проходит в своем развитии определенные фазы, стадии, этапы – от возникновения идеи до полного завершения проекта [8]. Выделим в общем виде следующие фазы развития прикладного расчетного и информационного ПО:
формирование концепции;
разработка технического задания;
проектирование;
разработка или изготовление;
ввод программных средств в эксплуатацию.
Начальные фазы проекта, как правило, имеют существенное влияние на достигаемый результат. В них принимаются основные проектные решения. По экспертным оценкам специалистов, обычно 30 % вклада в конечный результат проекта вносят фазы концепции и технического задания; по 20 % – фазы проектирования и разработки, 30 % – фаза завершения проекта. Вторую и частично третью фазы принято называть фазами системного проектирования, а последние две (иногда совместно с фазой проектирования) – фазами реализации.
Главным содержанием работ на первоначальной концептуальной фазе проектирования являются:
формирование идеи, постановку целей;
формирование ключевой команды проекта;
изучение мотивации и требований заказчика и других участников;
сбор исходных данных и анализ существующего состояния;
определение основных требований и ограничений, требуемых материальных, финансовых и трудовых ресурсов;
сравнительную оценку альтернативных вариантов решения задачи;
представление предложений, их экспертизу и утверждение.
Главной задачей фазы технического задания является разработка такого технического предложения, которое бы в переговорах с заказчиком плавно и непротиворечиво становилось техническим заданием. Здесь имеется в виду, что заказчик, как правило, ожидает абсолютной адекватности предметной области и разрабатываемого ПО, а также полной функциональности при любом наборе исходных данных. Поэтому очень важно на этом этапе определить границы применения разработанной программы и четко оговорить ее функциональные и сервисные возможности. Общее содержание работ этой фазы:
разработка основного содержания и базовой структуры проекта;
разработка и утверждение технического задания;
планирование и декомпозиция базовой структурной модели проекта;
составление сметы и бюджета проекта, определение потребности в ресурсах;
разработка календарных планов и укрупненных графиков выполнения работ;
подписание контракта с заказчиком;
ввод в действие средств коммуникации участников проекта и контроля за ходом работ.
Среди работ этой фазы стоит выделить определение границ применения разработанного ПО, списка и текста сообщений о внештатных ситуациях.
На фазе проектирования формируются основные информационные структуры, определяются подсистемы и их взаимосвязи, выбираются наиболее эффективные способы выполнения проекта и использования ресурсов. Характерные работы на этой фазе:
выполнение базовых проектных работ;
разработка частных технических заданий;
выполнение концептуального проектирования;
составление технических спецификаций и инструкций;
представление проектной разработки, экспертиза и утверждение;
Фаза разработки, пожалуй, наиболее трудоемкая стадия проектирования. Здесь осуществляется разработка запланированных подсистем, их объединение и тестирование, а также координация и оперативный контроль выполнения проектных работ. Основное содержание:
выполнение работ по разработке программного обеспечения;
выполнение подготовки к внедрению системы;
контроль и регулирование основных качественных показателей проекта.
На завершающей фазе ввода в эксплуатацию проводятся испытания, опытная эксплуатация системы в реальных условиях, ведутся переговоры о результатах выполнения проекта и о возможных новых контрактах. Основные виды работ:
комплексные испытания;
подготовка кадров для эксплуатации разработанной системы;
подготовка рабочей документации, сдача системы заказчику и ввод ее в эксплуатацию;
сопровождение, поддержка, сервисное обслуживание;
оценка результатов проекта и подготовка итоговых документов;
разрешение конфликтных ситуаций и закрытие работ по проекту;
накопление опытных данных для последующих проектов, анализ опыта и определение направлений развития.
Кроме того, необходимо отметить, что на обнаружение ошибок, допущенных на стадии системного проектирования, расходуется примерно в два раза больше времени, чем на последующих фазах, а их исправление обходится в пять раз дороже. Поэтому на начальных стадиях проекта разработку следует выполнять особенно тщательно. Наиболее часто на начальных фазах допускаются следующие ошибки [8]:
неправильная интерпретация исходной постановки задачи;
ошибки в определении интересов заказчика;
концентрация на маловажных, сторонних интересах;
неправильное или недостаточное понимание деталей;
неполнота функциональных спецификаций (системных требований);
ошибки в определении требуемых ресурсов и сроков;
редкая проверка на согласованность этапов и отсутствие контроля со стороны заказчика (нет привлечения заказчика).