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

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

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

Наиболее полные определения представлены в Федеральных законах Российской Федерации и стандартах.

Информация -- это сведения (сообщения, данные) независимо от формы их представления.

Информационные технологии -- «процессы, методы поиска, сбора, хранения, обработки, предоставления, распространения информации и способы осуществления таких процессов и методов.

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

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

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

Жизненный цикл информационной системы -- это развитие рассматриваемой системы во времени, начиная от замысла и кончая списанием.

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

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

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

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

Модель данных -- это система организации данных и управления ими.

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

Средства моделирования -- это программы описания и моделирования систем.

Типовое проектное решение (ТПР) -- это многократно используемое проектное решение.

Нотации -- это определенные способы представления элементов информационной системы.

Реинжиниринг бизнес-процессов -- это фундаментальная реорганизация бизнес-процессов с целью повышения их эффективности.

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

Процессный подход -- представление любой системы в качестве совокупности процессов.

Функциональный подход -- предусматривает четкое закрепление за каждой структурной единицей набора функций.

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

История развития технологии проектирования

Начало зарождения индустрии ПО - середина 50-х годов XIX в. В 1970 г годовой оборот всех фирм-разработчиков ПО в США составлял около 3,7% всего оборота компьютерного бизнеса. Серьезный рост начался в 70-х годах XX в., начиная с принятого фирмой IBM в 1969 г. решения о развязывании цен (раздельном назначении цен на аппаратуру, ПО и услуги), и продолжился до конца декады и появления персонального компьютера. К 1979 г. годовой объем продаж фирм-разработчиков ПО в США составлял около $2 млрд. В 80-х годах рост составлял 20% в год и более.

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

Кризис программного обеспечения

В конце 60-х годов прошлого века в США было отмечено явление под названием «software crisis» (кризис ПО). Это выражалось в том, что большие проекты стали выполняться с отставанием от графика или с превышением сметы расходов, разработанный продукт не обладал требуемыми функциональными возможностями, производительность его была низка, качество получаемого программного обеспечения не устраивало потребителей.

Результаты исследований Standish Group (1995 г.)

Причины возможных неудач:

Проблема "смертельного марша" в разработке ПО

В последнее время ведущие зарубежные аналитики отмечают как одну из причин многих неудач тот факт, что множество проектов выполняется в экстремальных условиях. В англоязычной литературе с легкой руки Эдварда Йордона одного из ведущих мировых специалистов в области ПО, утвердилось название «death march», буквально -- «смертельный марш».

Под ним понимается такой проект, параметры которого отклоняются от нормальных значений, по крайней мере, на 50%. По отношению к проектам создания ПО это означает наличие одного или более из следующих ограничений:

Особенности разработки программного обеспечения

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

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

Проектирование vs Строительство в разработке ПО

Разработка ПО изначально является проектированием и не имеет признаков строительства или производства.

Аргументы:

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

Разработчики не строят ПО - они его проектируют. Конечный результат проектирования --- код на языке высокого уровня --- является чертежом ПО.

Вывод

Метод проб и ошибок завел достаточно далеко. Но рост сложности современных программных систем подводит нас к жесткому пределу. За пределами определенного уровня сложности создание качественных архитектур методом проб и ошибок становится невозможным.