Сопровождение и обслуживание программного обеспечения компьютерных систем — это работа по улучшению, оптимизации и устранению дефектов программного обеспечения после передачи его в эксплуатацию.
Введение
Сопровождение программного продукта является одной из стадий жизненного цикла информационных систем. Оно осуществляется при выполнении опытной эксплуатации созданного программного продукта и состоит в реализации необходимых доработок, повышении общего уровня полезности программы. При этом могут быть выявлены недостатки продукта, ошибки в программных кодах, для этого необходимо моделировать разные действия пользователя, аварийные ситуации, в ходе которых выполняется анализ поведения программы.
После того, как недостатки будут обнаружены, специалист, который занимается сопровождением этого продукта, может выполнить отладку программы и предоставить заказчику законченную рабочую версию. Под надежностью программы следует понимать уровень, при котором программный продукт способен удовлетворить все поставленные требования, и является пригодным к эксплуатации.
Сопровождение и обслуживание программного обеспечения компьютерных систем
Сопровождением программного обеспечения является процесс улучшения, оптимизации и устранения дефектов программного обеспечения после сдачи его в эксплуатацию. В ходе сопровождения в программу могут вноситься коррективы, для того чтобы ликвидировать выявленные в процессе эксплуатации дефекты и недостатки, а также, для того чтобы добавить новые функциональные возможности, повышающие удобство ее использования. Процессы сопровождения программных продуктов должны определяться стандартами IEEE 1219 (Standard for Software Maintenance) и ISO/IEC 14764 (Standard for Software Engineering - Software Maintenance).
Сопровождение программного обеспечения может быть определено как весь набор деятельности, который необходим, для того чтобы обеспечить эффективную поддержку программных систем. Данные процедуры осуществляются как до ввода системы в эксплуатацию, так и после этого. Предварительные работы заключаются в планировании деятельности, связанной с сопровождением системы, а также в организации перехода к ее полнофункциональному использованию.
Когда новая система, созданная для замены старой системы, предназначена для решения тех же поставленных задач, но с новым уровнем эффективности, новыми функциональными возможностями, то в таком случае важным обстоятельством является обеспечение плавного перехода от старой системы к новой, максимально естественного для пользователей. С этим процессом сопряжено не только планирование, к примеру, перераспределения информации, которая хранится в имеющихся базах данных, но и обучение пользователей.
Сопровождение должно обеспечить поддержку функционирования программного обеспечения в течение всего периода его эксплуатации. В процессе сопровождения должны фиксироваться и отслеживаться запросы на модификацию, оцениваться влияние предполагаемых коррективов, а также должен подвергаться модификации код и иные компоненты программного продукта, должно проводиться необходимое тестирование и, наконец, должна быть выпущена обновленная версия программного обеспечения. Помимо этого, должно проводиться обучение пользователей и обеспечиваться их ежедневная поддержка при работе с имеющимся вариантом программного продукта.
Специалист, который занимается сопровождением, должен получать информацию о программном обеспечении компьютерной системы непосредственно от разработчиков. Взаимодействие с разработчиками и привлечение на ранней стадии таких специалистов способно сократить усилия, требуемые для оптимального сопровождения программной системы. Процесс передачи знаний специалисту сопровождения, его обучение, должно начаться не позднее пуска в опытную эксплуатацию программного продукта. Специалист, который занимается сопровождением, должен обладать доступом к активам проекта (описанию его внутренней архитектуры), включая код, документацию. Обычно главная нагрузка на службу сопровождения должна приходиться на период от двух до шести первых недель, с момента передачи системы в эксплуатацию.
Специалистам технической поддержки производителя программного обеспечения необходимо не просто обладать доступом ко всем ключевым активам проекта, в их обязанности должно входить исправлений ошибок. В отдельных случаях такие коррективы, до выпуска новой версии программного продукта, могут осуществляться с привлечением непосредственных разработчиков продукта. Причем, разработчики продукта должны получать информацию о выявленных ошибках и, в случае нахождения необходимых решений по ликвидации ошибок специалистами технической поддержки, такие решения должны передаваться разработчикам. Разработчики могут или включить такие изменения в новую версию программного продукта, если изменения успешно прошли все необходимые тесты, или могут найти более адекватное решение. В число обязанностей специалистов службы сопровождения, в общем случае, могут входить:
- Осуществление проверки пользовательского сценария, который приводит к сбою.
- Выполнение идентификации причин сбоя, то есть, осуществление локализации ошибки и причин ее возникновения.
- Предложение необходимых исправлений или, при невозможности формирования таковых на данном этапе либо в заданные сроки, предложение обходных путей решения проблемы для достижения требуемых целей.
- Фиксация всех работ и операций, размещение описания проблемы и ее решения в базе знаний службы сопровождения, а также передача всей информации разработчикам.
Сопровождение является необходимым фактором удовлетворения требований пользователей к программному продукту на протяжении всего периода его эксплуатации.