Лекция 1. Общие требования к проектированию ИС и технологий
***Первый учебный вопрос. Понятие методологии.***
*Методология* — система наиболее общих принципов, положений и методов, составляющий основу для проектирования информационных систем и технологий.
Методология проектирования информационных систем описывает процесс создания и сопровождения систем в виде жизненного цикла ИС, представляя его как некоторую последовательность стадий и выполняемых на этих стадиях процессов. Для каждого этапа определяются состав и последовательность выполняемых работ, получаемые результаты, методы и средства, роли и ответственность участников и т.д. Такое формальное описание ЖЦ ИС позволяет спланировать и организовать процесс коллективной разработки и обеспечить управление этим процессом.
Цель создания методологии построения информационных систем заключается в регламентации процесса проектирования ИС и обеспечении управления этим процессом с тем, чтобы гарантировать выполнение требований, как к самой ИС, так и к характеристикам процесса разработки.
***Второй учебный вопрос. Общие требования к методологии проектирования.***
Технология проектирования, разработки и сопровождения ИС должна удовлетворять следующим общим требованиям:
• технология должна поддерживать полный ЖЦ ПО;
• технология должна обеспечивать гарантированное достижение целей разработки ИС с заданным качеством и в установленное время;
• технология должна обеспечивать возможность выполнения крупных проектов в виде подсистем (т.е. возможность декомпозиции проекта на составные части, разрабатываемые группами исполнителей ограниченной численности с последующей интеграцией составных частей);
• технология должна обеспечивать возможность ведения работ по проектированию отдельных подсистем небольшими группами (3-7 человек). Это обусловлено принципами управляемости коллектива и повышения производительности за счет минимизации числа внешних связей;
• технология должна обеспечивать минимальное время получения работоспособной ИС. Речь идет не о сроках готовности всей ИС, а о сроках реализации отдельных подсистем. Реализация ИС в целом в короткие сроки может потребовать привлечения большого числа разработчиков, при этом эффект может оказаться ниже, чем при реализации в более короткие сроки отдельных подсистем меньшим числом разработчиков. Практика показывает, что даже при наличии полностью завершенного проекта, внедрение идет последовательно по отдельным подсистемам;
• технология должна предусматривать возможность управления конфигурацией проекта, ведения версий проекта и его составляющих, возможность автоматического выпуска проектной документации и синхронизацию ее версий с версиями проекта;
• технология должна обеспечивать независимость выполняемых проектных решений от средств реализации ИС (систем управления базами данных (СУБД), операционных систем, языков и систем программирования);
• технология должна быть поддержана комплексом согласованных CASE-средств, обеспечивающих автоматизацию процессов, выполняемых на всех стадиях ЖЦ.
***Третий учебный вопрос. Задачи методологии проектирования информационных систем и технологий.***
Основные задачи, решение которых должна обеспечивать методология создания корпоративных информационных систем (с помощью соответствующего набора инструментальных средств):
• обеспечивать создание корпоративных ИС, отвечающих целям и задачам организации, а также предъявляемым требованиям по автоматизации деловых процессов заказчика;
• гарантировать создание системы с заданным качеством в заданные сроки и в рамках установленного бюджета проекта;
• поддерживать удобную дисциплину сопровождения, модификации и наращивания системы с целью обеспечения ее соответствия изменяющимся условиям работы предприятия;
• обеспечивать создание корпоративных информационных систем, отвечающих требованиям открытости, переносимости и масштабируемости;
• обеспечивать преемственность разработки – возможность использования в создаваемой системе разработанных ранее и при меняемых на предприятии средств информационных технологий (программного обеспечения, баз данных, средств вычислительной техники, телекоммуникаций).
Внедрение методологии должно приводить к снижению сложности процесса создания ИС за счет полного и точного описания этого процесса, а также применения современных методов и технологий создания ИС на всем жизненном цикле ИС – от замысла до реализации.
Создание, сопровождение и развитие современных сложных информационных систем базируется на методологии построения таких систем как открытых. Открытые информационные системы создаются в процессе информатизации всех основных сфер современного общества: органов государственного управления, финансово-кредитной сферы, информационного обслуживания предпринимательской деятельности, производственной сферы, науки, образования. Развитие и использование открытых информационных систем неразрывно связаны с применением стандартов на основе методологии функциональной стандартизации информационных технологий.
Методология построения информационных систем содержит следующие компоненты:
• набор моделей (типов моделей) для описания требований к ИС, проектных и программных решений. Каждая модель обычно содержит как определение конструкций (нотацию), так и правила их использования (синтаксис);
• метод применения набора моделей для построения ИС. Метод обычно использует фиксированный набор моделей и определяет последовательность их построения для описания различных аспектов создаваемой системы;
• процесс организации проектных работ, который включает различные технологии.
***Четвертый учебный вопрос. Средства спецификации.***
*Спецификация* — документ, определяющий в полной, точной, проверяемой форме требования, дизайн, поведение или другие свойства системы либо компонента, и, зачастую, процедуры, для определения, выполняются ли эти требования.
Существуют различные типы спецификаций, например спецификация требований к ПО, спецификация архитектуры системы, спецификация программного модуля и т.п.
Ученым В.Н. Агафоновым были сформулированы три основных свойства спецификации:
1. Точность, однозначность.
2. Понятность, ясность, читабельность.
3. Полнота описания задачи. Ничего существенного не должно быть упущено.
*Средства спецификации* — это любые средства получения и построения таких описаний.
Спецификация системы служит основным связующим звеном между целями, требованиями и реализацией, является информационной средой взаимодействия заказчика и исполнителя.
Поскольку в подавляющем большинстве случаев заказчик не является программистом, у него возникают затруднения при четком и однозначном формулировании целей и требований, особенно с применением формального аппарата. Нередко заказчик сам не знает, что в конечном счете требует он от программы, и исполнителю в этом случае приходится додумывать за заказчика и предлагать ему свою интерпретацию целей и требований, которая путем многократных обсуждений и уточнений доводится до необходимого уровня конкретизации. В этой связи необходимо иметь в составе спецификации неформальные (или полуформальные, формализованные) изобразительные средства, которые позволяют, с одной стороны, служить тем языком, который понимают и заказчик и исполнитель, а, с другой стороны, быть средством, обеспечивающим плавный переход от неформальных требований к формализму их реализации - программным кодам.
В сочетании с «интеллектуальным контролем» такие спецификации позволят оценивать правильность проекта ПО до его реализации.
На практике выбор средств спецификаций зависит от многих факторов. Во-первых, от применяемого метода проектирования и базовых абстракций. Во-вторых, от размеров проекта. В-третьих, от квалификации разработчиков и их предпочтений. Следовательно, выбор средств спецификации в каждом конкретном случае свой.
*Основные средства спецификации:*
• тексты на естественном языке с элементами формализма;
• таблицы решений;
• HIPO-диаграммы;
• блок-схемы.