0

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

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

Общая характеристика  методологии

Любая деятельность становится эффективной, когда исполнители овладевают ее методами, понимают принципы и законы, которым подчиняется данная деятельность, т.е. то, что составляет основу знаний и умений настоящего специалиста-профессионала. Принципы, законы и методы присущи любой деятельности, в том числе и проектированию информационных систем. Объединяющей основой процесса разработки являются методологии проектирования информационных систем, которые определяет закономерности и принципы архитектурного построения систем, а также сущность и основные отличительные  особенности проекта, как процесса создания информационной системы. 

В данной статье рассматриваются только некоторые, наиболее распространенные методологии проектирования информационных систем, приводится их сравнительный анализ и даются рекомендации по использованию их на практике создания информационных систем.

В общем случае методология проектирования объединяет два понятия: «методология» и «проектирование», каждое из которых также имеет два аспекта.

Методология (от «метод» и «логия») это:

  • -учение о структуре, логической организации, методах и средствах деятельности;
  • -система принципов и способов организации и построения теоретической и практической деятельности, а также учение об этой системе.

Под проектированием понимается:

  • проектирование как процесс создания артефактов и составления описания(документации), необходимых для создания проектируемой системы или объекта;
  • проектирование как последовательность операций по разработке и созданию системы или объекта.

Отсюда следует различать два вида методологий проектирования информационных систем:

  • методология архитектурного проектирования(разработка артефактов проектирования);
  • методология управления проектом, как процесса разработки.

Под методологией архитектурного проектирования понимается учение об архитектуре(структуре, логической организации), о принципе действия и составе еще не существующей информационной системы, наилучшим образом удовлетворяющей определенным требованиям и потребностям, о методах и средствах поиска и принятия проектных решений, а также о составлении описания(документации), необходимого для создания информационной системы в заданных условиях.

Методология управления процессом проектирования (управления проектом) информационных систем заключается в системе принципов и способов организации процесса создания информационной системы и в обеспечении управления этим процессом для того, чтобы гарантировать выполнение требований, как к самой системе, так и к характеристикам процесса разработки.

Методология реализуется с помощью методов и технологий проектирования.

Наиболее распространенные методы оригинального проектирования информационных систем рассмотрены в одноименной статье. Под технологией проектирования понимается пошаговая последовательность действий или операций по созданию артефактов проектирования с указанием применения конкретных инструментальных средств проектирования (CASE — средств), а также используемых графических средств представления проектных решений(нотаций моделирования).

Методологии архитектурного проектирования

В основе методологии проектирования информационных систем лежат принципы создания их. Главный принцип построения различных систем – принцип иерархической декомпозиции обусловливает следующие виды методологий:

  •  структурно-функциональная методология, в основу которой положен принцип функциональной декомпозиции, когда структура информационной системы описывается в терминах иерархии ее функций(процессов, работ) и передачи информации между отдельными функциональными элементами;
  • объектно-ориентированная методология основана на принципе объектной декомпозиции, а структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами:
  • методология построения интегрированных информационных систем (Architecture of Integrated Information Systems, ARIS), которая основывается на концепции интеграции, предлагающей целостный взгляд на автоматизируемые бизнес-процессы, и представляет собой множество различных методологий, интегрированных в рамках единого системного подхода;
  • методология синергетического проектирования информационных систем, основанная на принципах синергетики, как науке о не равновесных процессах(управляемый хаос и т.п.).

В структурно-функциональной методологии основным артефактом проектирования является структура. Структура информационной системы это относительно устойчивый способ (закон) связи ее элементов, который обеспечивает целостность информационной системы любой сложности.

Достоинством структурно-функциональной методологии является простота восприятия декомпозиции системы на понятные функции, виды работ и информации.

Объектно-ориентированная методология проектирования информационной системы базируется на объектной декомпозиции предметной области, для которой создается система, а сама ситема представляется как совокупность взаимодействующих объектов, созданных на предопределенных классах. Главным достоинством этой методологии является построение информационной системы на понятиях близким к понятиям реальной предметной области.

К преимуществам  методологии ARIS разработчики относят следующие:

  • -возможность рассматривать объект автоматизации с разных точек зрения: при анализе деятельности каждому аспекту можно уделять достаточное внимание  и только после детального изучения всех аспектов можно перейти к построению интегрированной модели, отражающей все существующие связи между подсистемами организации;
  • — богатство методов, позволяет моделировать широкий спектр систем; -все модели и объекты создаются и хранятся в единой базе проекта, что обеспечивает построение интегрированной и целостной модели предметной области.

Таким образом, методологии архитектурного проектирования являются фундаментальной основой их структурного построения, отражающей состав компонентов системы и принципов их взаимодействия.

Методологии управления проектом

По определению Института управления проектами (Project Management Institute, PMI), проект  это временное предприятие, осуществляемое с целью создания уникального продукта или услуги. В любой инженерной дисциплине под проектированием обычно понимается некий унифицированный подход, с помощью которого мы ищем пути решения определенной проблемы, обеспечивая выполнение поставленной задачи.

В самом общем случае методология проектирования информационных систем  состоит из следующих основных элементов: ролей, навыков, видов деятельности, используемых техник(технологий), инструментария, поставляемых артефактов, стандартов, мер качества и приоритетов проекта.

Методология управления проектами — это набор принципов и закономерностей(стандарт) ведения проектов от старта до завершения. Она определяет:

  •  Конкретные принципы работы: способы оценки постановки задач, сроков выполнения, распределения и передачи заданий между сотрудниками и отделами, стандарты для совместной работы;
  •  Определённые методы и  инструменты управления проектами;
  •  Способы оценки результатов решения задач, отдельных этапов и проекта в целом.

К настоящему времени создано много разных методологий управления проектами информационных систем, которые отличаются принципами работы и используемыми методами и инструментами управления.

Логическую организацию, сущность и основные отличительные  особенности проекта информационных систем, определяемые методологией проектирования, наиболее целесообразно представлять в виде моделей процесса проектирования. Модель процесса проектирования – это структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении  всех стадий проектирования.

Кроме того каждый проект информационной системы характеризуется собственными специфическими рисками и рассматривает их как неизбежный начальный этап, которым следует заниматься разработчикам.

Рассмотрим основные современные методологии управления проектами, которые чаще всего применяют при проектировании информационных систем.

Каскадная модель процесса проектирования ИС

Принцип каскадной (waterfall) модели, ставший популярным в 70-х гг. 19-го века, по-прежнему рассматривается как эталонный и используется в качестве стандарта в производственной практике. Схема каскадной модели представлена на рисунке. 

На схеме показано, что процесс проектирования  структурирует операции в виде линейного каскада этапов, в котором выходные данные одного этапа поступают на вход другого.

Может существовать много вариантов каскадной модели, использование каждой из которых зависит от организации и особенностей проекта. Однако  основная философия не меняется. Все каскадные процессы основаны на единой общей философии и характеризуются тремя принципами: они последовательны, основаны на этапах и управляются документацией. Они предполагают, что один этап должен быть закончен до начала следующего, и результатом каждого этапа становится подготовка одного или нескольких документов, формирующих входные данные для следующего этапа. В частности, во всех вариантах требуется, чтобы фаза создания требований была завершена для всего приложения до начала фазы проектирования.

Каскадная модель наилучшим образом подходит для создания информационных систе для объектов высокой критичности(атомные электростанции и т.п.).

Спиральная модель

Основной характеристикой спиральной модели является то, что она циклична, а не линейна, как каскадная модель. Схематично спиральная модель показана на рисунке. 

Каждый цикл спирали состоит из четырех стадий, каждая стадия в свою очередь представлена одним квадрантом декартовой диаграммы. Радиус спирали представляет расходы, понесенные в процессе на данном этапе, угловой размер представляет развитие процесса.

Руководящим принципом, лежащим в основе методологии, является представление структуры проекта в виде процессов, управляемыми уровнями рисков.

Рисками называются потенциально неблагоприятные обстоятельства, могущие повлиять на процесс разработки и конечное качество продуктов.

Спиральная модель направлена на выявление и устранение проблем с высокой степенью риска путем тщательного проектирования процесса вместо одинакового разрешения обычных и по-настоящему опасных проблем.

Главными рисками являются следующие:

— неправильное понимание пользовательских требований и положение в основу разработки продукта ошибочных допущений;

— слишком большое количество времени на завершение разработки, что приводит к неприемлемой протяженности цикла от производства продукта до выпуска его на рынок.

Во многих практических случаях это — самые вероятные риски, связанные с разработкой нового программного продукта.

Гибкие методологии управления проектами

Проекты современных информационных систем обычно требуют гибкости, быстрых изменений и способности подстраиваться под новые требования бизнеса и рынка. Для таких проектов нужны гибкие методы управления проектами. Эти особенности должны учитывать Методологии проектирования информационных систем этого вида.

Сущность гибкой методологии Agile(«эджайл», «гибкий») заключается в том, что проект выполняется небольшими циклами, в результате каждого из которых получается готовая функция или продукт. В каждом следующем цикле проект дорабатывается и улучшается. Работы могут выполняться параллельно, при этом все результаты видны ещё до окончания проекта. В  случае появления новых требований их легко включить в следующий цикл работы.

Положительным  проектной методологии Agile можно считать:

  •  Полная гибкость и свобода изменений. Например, если конкуренты выпустили новую функцию, её можно быстро разработать в уже начатом проекте.
  •  Низкие риски — прямо в процессе команда получает обратную связь от бизнеса и пользователей, поэтому в итоге проект вряд ли провалится.
  •  Устойчивость к срывам сроков. Даже если какой-то цикл растянется, следующие можно будет адаптировать под изменившиеся сроки и условия.
  •  Ориентация на людей и команду даёт большую вовлечённость в проект.

К недостаткам методологии можно отнести:

  •  Нет чёткого плана и структуры проекта.
  •  Сотрудники и заказчики со стороны бизнеса должны сотрудничать более тесно, постоянно требуются обсуждения и обратная связь.
  •  В процессе работы сложнее заменить команду, так как от всех требуется большая вовлечённость в задачу.
  •  Внедрить проектную методологию может быть сложно — потребуется отдельный сотрудник либо менеджер проекта, который хорошо в этом разбирается.

Agile это комплексная методология, в нее входит несколько методологий:

  • экстремальное программирование (Extreme Programming, XP);
  • бережливую разработку программного обеспечения (Lean);
  • фреймворк для управления проектами Scrum;
  • разработку, управляемую функциональностью (Feature-driven development, FDD);
  • разработку через тестирование (Test-driven development, TDD);
  • методологию «чистой комнаты» (Cleanroom Software Engineering);
  • итеративно-инкрементальный метод разработки (OpenUP);
  • методологию разработки Microsoft Solutions Framework (MSF);
  • метод разработки динамических систем (Dynamic Systems Development Method, DSDM);
  • метод управления разработкой Kanban.
  • Все перечисленные методологии соответствуют принципам Agile и различаются только отдельными инструментами и подходами к управлению.

Дополнения.

Интересный подход к сравнению методологий и их выбору приводится в статье А. Коуберна “Каждому проекту своя методология”.

Примечание. По мнению автора данного сайта в данной статье речь идет не о выборе методологии, а о выборе технологии проектирования информационной системы и создании группы проектировщиков.

Основные подходы к разработке программных продуктов с упором на разработку, представление и управление требованиями изложены в статье блога экспертов Вебурситета.

Заключение

Не существует уникальной, совершенной и готовой к применению модели(методологии) процесса создания информационных систем, которую можно было бы взять на вооружение раз и навсегда во всех организациях, для всех разрабатываемых проектов.

Выбор наиболее подходящей методологии проектирования информационных систем осуществляется в зависимости от размера проекта (числа людей, работу которых необходимо координировать), критичности объекта, для которого разрабатывается информационная система и основных приоритетов.

Смотрите также…

Внимание! Кто хочет своевременно узнавать о выходе новой статьи на сайте должен подписаться.

ПОДПИСКА НА РАССЫЛКУ

Статьи об онлайн курсах обучения

Дистанционное обучение
Обучение программированию
Проектирование информационных систем
 
Реклама. Информация о рекламодателе по ссылкам в статье.

brasm

Пенсионер с 33 - летним педагогическим стажем

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *