Основы проектирования информационных систем. История проектирования ПО. Категории современных проектов ИС

Страницы работы

Содержание работы

Модуль 2 Основы проектирования информационных систем

Проектирование информационных систем

Основы проектирования информационных систем

  • История проектирования программного обеспечения
  • Настоящее и будущее проектирования программного обеспечения
  • Эволюция языков программирования
  • Зрелость процесса разработки информационных систем
  • Уровни CMM/CMMI

Начало 70-х годов – “Software Crisis” (Кризис ПО)

  • Отставание разработки от графика
  • Превышение сметы расходов
  • Требуемый функционал не реализован в полном объёме
  • Низкая производительность ИС
  • Качество ПО не устраивает потребителей
  • Высокие затраты на сопровождение ПО в крупных организациях (от 60% до 80% затрат на ИС)

Проектирование ПО

  • Проектирование ПО (program engineering – инженерия ПО) – совокупность инженерных методов и средств создания ПО
  • Фундаментальная идея – проектирование ПО является формализуемым процессом, который можно изучать и совершенствовать

История проектирования ПО

  • 70-е и 80-е годы – появление и развитие структурного подхода, систематизация и стандартизация процессов создания ПО
  • Середина 80-х годов – появление объектно-ориентированного подхода
  • 90-е годы переход к промышленному, сборочному способу создания ПО
  • Начало XXI века – переход на полностью объектно-ориентированные платформы, становление Интернета, как универсальной информационной системы

Цели проектирования ПО

  • Соответствие получаемой ИС требованиям заказчика на момент внедрения
  • Разработка должна осуществляться в срок и в рамках бюджета
  • Качество получаемых ИС должно удовлетворять требованиям
  • Должна быть обеспечена интеграция разрабатываемой ИС в существующую инфраструктуру
  • Получаемые ИС должны быть масштабируемыми и легко сопровождаемыми

Категории современных проектов ИС

  • Мелкие – команда менее 10 человек, продолжительность от 3 до 6 месяцев
  • Средние – команда от 20 до 30 человек, продолжительность 1-2 года
  • Крупные – команда от 100 до 300 человек, продолжительность 3-5 лет
  • Гигантские – команда от 1000 до 2000 человек, продолжительность 7-10 лет

Нерешённые проблемы

  • Недостаточное понимание задач пользователей
  • Трудность отслеживания изменений требований
  • Трудность сопровождения
  • Позднее обнаружение ошибок
  • Недостаточное качество
  • Низкая производительность
  • Трудность управления командой разработчиков и процессом разработки

Успешность проектов ИС

Улучшение динамики происходит за счёт роста мелких и средних проектов

Основные причины краха проектов ИС

  • Нечёткая и неполная формулировка требований
  • Частое изменение требований
  • Недостаточное привлечение пользователей при проектировании
  • Сложность сопровождения

Трудности сопровождения ИС

  • На стадии сопровождения «выплывают» ошибки проектирования
  • Накопление проблем
    • Расползание границ проекта
    • Нарастание программного кода и усложнение внесения в него изменений
    • Текучесть кадров
    • Прекращение использования платформы приводит к необходимости переноса ПО

Эволюция языков программирования

  • 1GL – программирование на машинном языке
  • 2GL – всевозможные ассемблеры
  • 3GL – процедурные языки общего назначения, такие как Бейсик, Кобол, Фортран, Паскаль, Си, Ада
  • 4GL – базирующиеся на словарях языки программирования, позволяющие увеличить производительность разработки систем, когда программы пишутся так, что состоят из команд прикладного пакета (обычно написанного на языках 2GL и/или 3GL)
    • Программы на языках СУБД FoxBase, Paradox
    • Языки запросов (SQL) и отчетов
  • 5GL – языки искусственного интеллекта
    • Пролог (от программирование на основе логики) декларативный язык программирования для задач искусственного интеллекта, обработки естественных языков

GL – Generation Language – Язык уровня

Применение языков программирования в ИС

  • 1GL – применяются в микропрограммах
  • 2GL – применяются во встраиваемых системах, системах реального времени
  • 3GL – наиболее часто применяемые языки для описания логики и управления ИС
  • 4GL – применяются для работы с данными и управления готовой ИС
  • 5GL – почти не применяются

Зрелось процесса разработки ИС

  • Модель CMM – Capability Maturity Model, модель технологической зрелости организации
  • Разработана SEI – Software Engineering Institute Институт техники программного обеспечения Карнеги-Мелона в 1991 году
  • Выпущено семейство моделей: – SW-CMM для программных продуктов, SE-CMM – для системной инженерии, Acquisition CMM – для закупок, People CMM – для управления людскими ресурсами, ICMM – для интеграции продуктов
  • Модель CMMI – Capability Maturity Model Integration объединяет ранее выпущенные модели, устраняет ошибки и учитываюет требования международных стандартов, разработана в 2002 году
  • Пять уровней зрелости организации (по возрастанию): Initial, Repeatable, Defined, Managed и Optimizing
  • SQA (Software Quality Assurance) – гарантия качества ПО, заключается в формировании численных показателей качества ПО (метрик)

Уровень 1 – начальный (Initial)

Уровень 2 – воспроизводимый (Repeatable)

  • Группы процессов
  • Управление требованиями
  • Управление конфигурацией
  • Планирование проекта
  • Мониторинг и контроль проекта
  • Управление контрактами
  • Измерения и анализ
  • Обеспечение качества процесса и продукта

Уровень 3 – Определённый (Defined)

  • Группы процессов
  • Спецификация требований
  • Интеграция продукта
  • Верификация
  • Аттестация
  • Стандартизация процессов организации
  • Обучение
  • Интегрированное управление проектом
  • Управление рисками
  • Анализ и принятие решений

Уровень 4 – Управляемый (Managed)

  • Группы процессов
  • Управление производительностью и продуктивностью
  • Количественное управление проектом

Уровень 5 – Оптимизируемый (Optimizing)

  • Группы процессов
  • Внедрение технологических и организационных инноваций
  • Причинно-следственный анализ и разрешение проблем

Похожие материалы

Информация о работе