Практика управления разработкой программного обеспечения
Автор: Ващук И.Н., Заельская Н.А., Надточий Н.С.
Журнал: Теория и практика современной науки @modern-j
Рубрика: Математика, информатика и инженерия
Статья в выпуске: 10 (40), 2018 года.
Бесплатный доступ
В статье рассматриваются актуальные вопросы, связанные с разработкой информационных автоматизированных систем, особенностями жизненного цикла программного продукта.
Автоматизированная система, информационная система, жизненный цикл программного обеспечения
Короткий адрес: https://sciup.org/140272523
IDR: 140272523
Текст научной статьи Практика управления разработкой программного обеспечения
При разработке информационных автоматизированных систем на заказ, следует учитывать специфику бизнеса клиентов. Часто возникает потребность разработать программную надстройку к уже действующей информационной системе, которая модифицирует ее в интересах заказчика.
Такая услуга существенно дешевле разработки новой информационной системы.
Процесс производства ПО основан на созданном стандарте -SoftwareEngineeringProcess (SEP). Процесс SEP основывается на RationalUnifiedProcess и содержит 4 основных фазы - начальную, уточнения, конструирования, передачи и сопровождения. Такой подход позволяет Заказчику и команде разработчиков контролировать ход разработки на любом этапе выполнения проекта.
Цель начальной фазы - определить границы системы и собрать требования высокого уровня. Эксперты изучают бизнес-цели проекта, анализируют предметную область деятельности и требования Заказчика, создают техническую документацию. Разрабатываемые документы поступают к заказчику на утверждение.
На основании сформулированных задач разрабатывается предварительная архитектура системы, включающая предложения по выбору технологий и аппаратного обеспечения. Заказчику предлагается предварительный план проекта, а также оценка его стоимости. Команда разработчиков совместно с инженером SEP уточняет стандартный процесс разработки с целью сделать максимально эффективными этапы реализации проекта.
Цель фазы уточнения - создать архитектурную основу системы. Технические специалисты моделируют и тестируют несколько подходов, чтобы определить, какой из них наилучшим образом отвечает бизнес-целям Заказчика и требованиям к системе. По завершении этой фазы разрабатывается каркас системы, который затем будет детально наполняться вплоть до создания финального продукта. В фазе уточнения Заказчику предоставляется на утверждение один или несколько прототипов различного сорта (пользовательских или функциональных интерфейсов). В конце этой фазы план проекта содержит точные временные и стоимостные оценки создания системы в соответствии с требованиями и выбранной архитектурой.
Цель фазы конструирования - создание финального продукта (полнофункциональной информационной системы). Основываясь на выбранной архитектуре и технологиях, команда разработчиков (программистов, дизайнеров, тестеров и менеджеров проекта) пошагово (итерационно) конструирует продукт, что обеспечивает гибкость и простоту для внесения изменений и модификаций в процессе разработки.
Итерационный подход позволяет сторонам эффективнее планировать как технические, так и финансовые аспекты проекта. По мере утверждения Заказчиком плана итерации все требования, влияющие на бюджет и дату сдачи, откладываются и планируются к сдаче в последующих итерациях.
Цель фазы - внедрение продукта на предприятии Заказчика, обучение персонала, сопровождение и обновление установленной информационной системы. После того как система установлена на серверах Заказчика, специалисты проводят обучение пользователей системы.
Дополнительно персонал по поддержке системы со стороны Заказчика проходит обучение на предмет умения администрировать и поддерживать систему, разбираться в использованных технологиях и средствах разработки. Дальнейшая доработка системы при выпуске ее новых версий учитывает непосредственные запросы пользователей и выполняется на основе постоянного слежения за функционированием системы и ее приложений.
Современные компании достаточно часто сталкиваются с ситуацией, когда им приходится пользоваться набором программ, написанных 10-15 лет назад. Как правило, оказывается, что исходный код таких программ утерян, и внести в них какие-либо изменения, соответствующие современному состоянию бизнеса, невозможно. Возникает неудобная ситуация, когда компания вынуждена либо отказаться от привычных для персонала программ, либо подстраивать свои бизнес -процессы в соответствии с устаревшими информационными системами. Для решения этой проблемы применяется процедура портирования системы на современные технологии, т.е. объединение уже освоенной программы с новым продуктом, предоставляющим возможность расширить возможности программы и увеличить набор функций информационной системы.
Портирование систем имеет ряд положительных свойств, благодаря которым эта процедура пользуется все большей популярностью у современных заказчиков. Портирование систем позволяет:
-
- быстро и достаточно дешево расширить возможности Вашей информационной системы за счет приобретения новых модулей;
-
- интегрировать несколько систем, сделанных разными разработчиками, в единое информационное пространство ;
-
- избежать сложностей, связанных с необходимостью кардинальной реорганизации всей системы обработки информации после установки качественно новых программ;
-
- не требует переобучения персонала, т.к. сотрудники компании могут продолжать работать с привычной для себя программой, которая приобретает новые функции.
Под разработкой информационной системы «с нуля» понимается создание новой, уникальной системы, полностью соответствующей требованию заказчика.
Таким образом, очевидны преимущества разработки информационных систем «с нуля». Такой подход позволяет максимально полно учесть потребности клиента и создать систему, учитывающую специфику структуры клиентской компании, ее бизнес-процессов, взаимоотношений с заказчиками и управления персоналом. Заказчик получает полные права на распоряжение кодом программы и может в дальнейшем производить ее модификации независимо от первоначального разработчика. При разработке информационных систем применяется набор самых современных технологий, тогда как использование уже функционирующих систем неизбежно предполагает некоторое технологическое отставание.
Потребителем такой услуги может оказаться большая компания, имеющая сотни или даже тысячи компьютеров и заинтересованная в разработке собственной информационной системы, учитывающей всю специфику ее бизнеса. Кроме того, заказчиком такой услуги может быть фирма, бизнес которой настолько специфичен, что до настоящего времени никто не пытался создать системы его автоматизации.
Список литературы Практика управления разработкой программного обеспечения
- Маклаков, С.В. Создание информационных систем с AIIFusion Modeling Suite. - Москва: ДИАЛОГ-МИФИ, 2003 - 432 с.
- Методология функционального моделирования IDEF0. Руководящий документ. - Москва: ИПК Издательство стандартов, 2000. - 75 с.