Целесообразность сопровождения программного обеспечения в процессе эксплуатации
Главным условием полноценного функционирования программы учета компьютерного оборудования ИнЕУ является постоянное ее сопровождение. В связи с этим возникает необходимость правильной организации данного процесса.
Стандартом IEEE Standard for Software Maintenance (IEEE 1219) сопровождение программного обеспечения определяется как модификация программного продукта после передачи в эксплуатацию для устранения сбоев, улучшения показателей производительности и/или других характеристик (атрибутов) продукта или адаптации продукта для использования в модифицированном окружении. Учитывая специфику и многофункциональность программы учета компьютерного оборудования, сопровождение должно стать неотъемлемой частью ее эксплуатации.
Сегодня определяют четыре категории сопровождения:
- Корректирующее сопровождение (corrective maintenance): «реактивная» модификация программного продукта, выполняемая уже после передачи в эксплуатацию для устранения сбоев.
- Адаптирующее сопровождение (adaptive maintenance): модификация программного продукта на этапе эксплуатации, для обеспечения продолжения его использования с заданной эффективностью (с точки зрения удовлетворения потребностей пользователей) в изменившемся или находящемся в процессе изменения окружении.
- Совершенствующее сопровождение (perfective maintenance): модификация программного продукта на этапе эксплуатации для повышения характеристик производительности и удобства сопровождения.
- Профилактическое сопровождение (preventive maintenance): модификация программного продукта на этапе эксплуатации для идентификации и предотвращения скрытых дефектов до того, когда они приведут к реальным сбоям [1].
Специалисты по сопровождению (персонал сопровождения) могут получать знания о программном продукте непосредственно от разработчика. Взаимодействие с разработчиком и раннее его привлечение поможет уменьшить усилия, необходимые для адекватного сопровождения программной системы. Передача знаний персоналу сопровождения, его обучение должно начинаться не позднее начала опытной эксплуатации продукта. В противном случае усилия на одновременную поддержку прикладной системы и обучение соответствующих специалистов не только превысят реально допустимые нормы загрузки персонала (как группы или службы сопровождения и техподдержки, так и разработчика программы), но и снизят эффективность поддержки пользователей на критически важном этапе первоначального использования новой системы [2].
Премиум-сопровождение программ 1С
Из-за сложности системы учета компьютерного оборудования пик нагрузки на службу сопровождения придется на период введения программы в реальную эксплуатацию. К тому же разработчик не всегда может быть привлечен к обучению и поддержке персонала сопровождения по тем или иным причинам. Это создает дополнительные трудности для специалистов, обеспечивающих сопровождение. В то же время инженеры, занимающиеся технической поддержкой (несколько более узкий круг в команде сопровождения, включающей менеджеров, администраторов и других специалистов), должны иметь доступ к активам проекта (описанию его внутренней архитектуры), включая код, документацию и т.п. Именно таким образом начнет формироваться информационная инфраструктура службы технической поддержки и сопровождения.
Сопровождение IT проектов
Сопровождение необходимо для обеспечения того, чтобы программа учета компьютерного оборудования на протяжении всего периода эксплуатации удовлетворяла требованиям пользователей. Изменения программной системы могут быть обусловлены как действиями по корректировке ее поведения, так и действиями, не связанными с необходимостью корректировки (повышение производительности или расширение функциональности).
Работы по сопровождению должны проводиться для решения следующих задач:
- устранение сбоев;
- улучшение дизайна;
- реализация расширений функциональных возможностей;
- создание интерфейсов взаимодействия с другими (внешними) системами;
- адаптация (например, портирование) для возможности работы на другой аппаратной платформе (или обновленной платформе), применения новых системных возможностей, функционирования в среде обновленной телекоммуникационной инфраструктуры и т.п.
- миграция унаследованного (legacy) программного обеспечения;
- вывод программного обеспечения из эксплуатации.
Деятельность персонала сопровождения должна включать четыре ключевых аспекта:
- поддержка контроля (управляемости) программного обеспечения в течение всего цикла эксплуатации;
- поддержка модификаций программного обеспечения;
- совершенствование существующих функций;
- предотвращение падения производительности программной системы до неприемлемого уровня.
Работы по сопровождению потребляют если не большую, то значительную часть финансовых ресурсов жизненного цикла программы. Существуют как технические, так и другие (например, организационные) факторы, оказывающие влияние на стоимость сопровождения:
- тип приложения;
- новизна программного обеспечения;
- наличие и квалификация персонала по сопровождению;
- длительность использования программной системы;
- характеристики и специфика аппаратной части (а также телекоммуникационной инфраструктуры);
- качество дизайна (например, модульность или масштабируемость), кода, документации и соответствующих работ по тестированию системы.
Литература
- Вигерс Карл И. Разработка требований к программному обеспечению. — М.: Русская Редакция, – 576 с.
- Макконнелл С. Совершенный код. Практическое руководство по разработке программного обеспечения. — Спб.: Питер, 2005. – 896 с.
- Калбертсон Р., Браун К., Кобб Г. Быстрое тестирование. — М.: Вильямс, 2002. – 384 с.
- Дастин Э., Рэшка Дж., Пол Д. Автоматизированное тестирование программного обеспечения: внедрение, управление и эксплуатация / Пер. с англ. — М.: Лори, 2003. — 567 с.
Источник: articlekz.com
Сопровождение программного обеспечения
Сопровождение — это обычный процесс изменения системы после ее поставки заказчику. Эти изменения могут быть как элементарно простыми (исправление ошибок программирования), так и более серьезными, связанными с корректировкой отдельных недоработок либо приведением в соответствие с новыми требованиями. Сопровождение не связано со значительным изменением архитектуры системы. При сопровождении тактика простая: изменение существующих компонентов системы либо добавление новых.
Существует три вида сопровождения системы:
1. Сопровождение с целью исправления ошибок. Обычно ошибки в программировании достаточно легко устранимы, однако ошибки проектирования стоят дорого и требуют корректировки или перепрограммирования некоторых компонентов. Самые дорогие исправления связаны с ошибками в системных требованиях, так как здесь может понадобиться перепроектирование системы.
2. Сопровождение с целью адаптации ПО к специфическим условиям эксплуатации. Это может потребоваться при изменении определенных составляющих рабочего окружения системы, например аппаратных средств, операционной системы или программных средств поддержки. Чтобы адаптироваться к этим изменениям, система должна быть подвергнута определенным модификациям.
3. Сопровождение с целью изменения функциональных возможностей системы. В ответ на организационные или деловые изменения в организации могут измениться требования к программным средствам. В таких случаях применяется данный тип сопровождения. Наиболее существенные изменения при этом претерпевает именно программное обеспечение.
На практике однозначно четкое разграничение между различными видами сопровождения провести достаточно сложно. Ошибки в системе могут быть выявлены в том случае, если, например, система использовалась непредсказуемым способом. Поэтому наилучший способ исправления ошибок — расширение функциональных возможностей программы с тем, чтобы сделать работу с ней как можно проще. При адаптации программного обеспечения к новому рабочему окружению расширение функциональных возможностей системы будет способствовать улучшению ее работы. Также добавление определенных функций в программу может оказаться полезным, если в случае ошибок был изменен шаблон использования системы и побочным действием при расширении функциональных возможностей будет удаление ошибок.
Перечисленные типы сопровождения широко используются, хотя им подчас дают разные названия. Сопровождение с целью исправления ошибок обычно называют корректирующим. Название «адаптивное сопровождение» может относиться как к адаптации к новому рабочему окружению, так и к новым требованиям. Усовершенствование программного обеспечения может означать улучшение путем соответствия новым требованиям, а также усовершенствование структуры и производительности с сохранением функциональных возможностей.
Рис.1. Распределение типов сопровождения
Согласно исследованиям, 65% сопровождения связано с выполнением новых требований, 18% отводится на изменения системы с целью адаптации к новому окружению и 17% связано с исправлением ошибок (рис. 1.).
Из этого можно определить, что исправление ошибок не является самым распространенным видом сопровождения. Модернизация системы в соответствии с новым рабочим окружением либо в соответствии с новыми требованиями более эффективна. Поэтому сопровождение само по себе является естественным процессом продолжения разработки системы со своими процессами проектирования, реализации и тестирования. Таким образом, спиральная модель, показанная на рис. 2, лучше представляет процесс развития ПО, чем каскадная модель, где сопровождение рассматривается как отдельный процесс.
Рис.2. Спиральная модель развития ПО
Значительная часть бюджета большинства организаций уходит на сопровождение ПО, а не на само использование программных систем. В 1980-х годах было обнаружено, что во многих организациях по меньшей мере 50% всех средств, потраченных на программирование, идет на развитие уже существующих систем. При этом от 65 до 75% средств общего бюджета расходуется на сопровождение. Так как предприятия заменяют старые системы коммерческим ПО, например программами планирования ресурсов, эти цифры никак не будут уменьшаться. Поэтому можно утверждать, что изменение ПО все еще остается доминирующим в статье затрат организаций на программное обеспечение.
Соотношение между величинами средств на сопровождение и на разработку может быть разным в зависимости от предметной области, где эксплуатируется система. Для прикладных систем, работающих в деловой сфере, соотношение затрат на сопровождение в основном сравнимо со средствами, потраченными на разработку. Для встроенных систем реального времени затраты на сопровождение могут в четыре раза превышать стоимость самой разработки. Высокие требования в отношении производительности и надежности таких систем предполагают их жесткую структуру, которая труднее поддается модификации.
Можно получить значительную общую экономию средств, если заранее потратить финансы и усилия на создание системы, не требующей дорогостоящего сопровождения. Весьма затратно проводить изменения в системе после ее поставки заказчику, поскольку для этого требуется хорошо знать систему и провести анализ реализации этих изменений. Поэтому усилия, потраченные во время разработки программы на снижение стоимости такого анализа, автоматически снизят и затраты на сопровождение. Такие технологии разработки ПО, как формирование четких требований, объектно-ориентированное программирование и управление конфигурацией, способствуют снижению стоимости сопровождения.
На рис. 3 показано, как снижается стоимость сопровождения хорошо разработанных систем. Здесь при разработке системы 1 выделено дополнительно $25 000 для облегчения процесса сопровождения. В результате за время эксплуатации системы это помогло сэкономить около $100 000. Из сказанного следует, что увеличение средств на разработку системы пропорционально снизит затраты на ее сопровождение.
Рис.3. Расходы на разработку и сопровождение систем
Причиной высоких затрат на сопровождение является сложность модернизации системы после ее внедрения, поскольку расширить функциональные возможности намного легче в процессе создания системы. Ниже приведены ключевые факторы, которые определяют стоимость разработки и сопровождения и могут привести к подорожанию сопровождения.
1. Стабильность команды разработчиков. Вполне естественно, что после внедрения системы команда разработчиков распадается, специалисты будут работать над другими проектами. Новым членам команды или же отдельным специалистам, которые возьмут на себя дальнейшее сопровождение системы, будет трудно понять все ее особенности. Поэтому на понимание системы перед внесением в нее изменений уходит много времени и средств.
2. Ответственность согласно контракту. Контракт на сопровождение обычно заключается отдельно от договора на разработку программы. Более того, часто контракт на сопровождение может получить фирма, сама не занимающаяся разработкой. Вместе с фактором нестабильности команды это может стать причиной отсутствия в команде стимула создать легкоизменяемую, удобную в сопровождении систему. Если членам команды выгодно пойти кратчайшим путем с минимальными затратами усилий, то вряд ли они откажутся от этого даже с риском повышения последующих затрат на сопровождение.
3. Квалификация специалистов. Специалисты, занимающиеся сопровождением, часто не знакомы с предметной областью, где эксплуатируется система. Сопровождение не пользуется популярностью среди разработчиков. Это считается менее квалифицированной разработкой и часто поручается младшему персоналу. Более того, старые системы могут быть написаны на устаревших языках программирования, не знакомых молодым специалистам и требующих дополнительного изучения.
4. Возраст и структура программы. С возрастом структура программ нарушается вследствие частых изменений, поэтому их становится сложнее понимать и изменять. Кроме того, многие наследуемые системы были созданы без использования современных технологий. Они никогда не отличались хорошей качественной структурой; изменения, сделанные в них, были направлены скорее на повышение эффективности функционирования, чем на повышение удобства сопровождения. Документация на старые системы часто бывает неполной либо вообще отсутствует.
Первые три проблемы объясняются тем, что многие организации все еще делают различие между разработкой системы и ее сопровождением. Сопровождение считается делом второстепенным, поэтому нет никакого желания инвестировать средства для снижения затрат на будущее сопровождение. Руководству организаций необходимо помнить, что у систем редко бывает четко определенный срок функционирования, наоборот, они могут находиться в эксплуатации в той либо иной форме неограниченное время.
Дилемма заключается в следующем: или создавать системы и поддерживать их до тех пор, пока это возможно, и затем заменять их новыми, или разрабатывать постоянно эволюционирующие системы, которые могут изменяться в соответствии с новыми требованиями. Их можно создавать на основе наследуемых систем, улучшая структуру последних с помощью реинжениринга, либо путем изменения архитектуры этих систем.
Последняя проблема, а именно нарушение структуры, является самой простой из них. Технология реинжениринга поможет усовершенствовать структуру и повысить понимаемость системы. В подходящих случаях адаптировать систему к новым аппаратным средствам может и преобразование архитектуры. Профилактические меры при сопровождении будут полезны, если возникнет необходимость усовершенствовать систему и сделать ее более удобной для изменений.
Источник: studopedia.ru
Все о поддержке ПО от А до Я
Сопровождение программных продуктов и баз данных – процесс, который не определен законом, но он все равно встречается в официальной документации. За счет этого в мире сложилось общее понимание предстоящей операции. Сюда можно отнести обучение клиентов основам работы с программным обеспечением, а также консультирование, настройку и адаптацию контента в пользовательской среде, поддержку работоспособности, исправление неполадок и возникающих ошибок. При необходимости – обновление и модификацию.
Сопровождение контента не имеет четко обозначенных границ, поэтому соответствующее понятие является весьма широким. Определяется непосредственными сторонами-участниками. Далее техническая поддержка программных продуктов будет рассмотрена более подробно.
Определение понятия
Рассматриваемое понятие – процедура улучшения, устранения дефектов и оптимизации программных продуктов. Осуществляется после того, как софт передан на реализацию. Является одной из фаз жизненного цикла ПО. Она идет после передачи контента в эксплуатацию.
Наблюдение за работоспособностью программного средства в России имеет собственный стандарт. Есть международные принципы использования соответствующей операции. Эта документация помогает лучше понять, как реализовывать процесс.
О границах использования
Сопровождение программных продуктов – понятие, которое имеет несколько точек зрения относительно своей применимости:
- Сопровождение автоматизированных информационных систем ничем не отличается от аналогичной операции относительно другого софта.
- Сопровождение ПО не предусматривает техническую поддержку АИС. Связано это с небольшой разницей при реализации.
ГОСТ 34.601-90 рассматриваемое понятие предусматривает выполнение работ в соответствие с гарантийными обязательствами (по гарантии), а также послегарантийное обслуживание.
Некоторые полагают, что сопровождение и поддержка – одинаковые понятия. Такая точка зрения весьма распространена. Но есть и те, кто уверяют в обратном. Под поддержкой понимают обслуживание непосредственными сотрудниками той компании, которая использует контент в работе. Такие специалисты имеют меньшую квалификацию, нежели сопроводители.
Сопровождение – процесс, стандартизированный ISO/IEC 14764:99. Имеет более широкое понятие, чем поддержка. Сопровождением программных продуктов занимаются квалифицированные специалисты. Они лучше разбираются в ошибках и их исправлении, включая скрытые баги.
Структура
Сопровождение программного обеспечения – это характеристики продукта, которые позволяют свести к минимуму изменения:
- для устранения обнаруженных ошибок;
- при модификации в соответствии с потребительскими нуждами.
В структуре технической поддержки программного обеспечения выделяют несколько линий. Они помогают понять, чем будет заниматься соответствующий специалист.
Чтобы лучше разобраться в теме, необходимо рассмотреть наглядную структуру процесса. За основу взят внешний контент:
- Линия 0. Информационный центр или «горячая линия». Здесь ведется обработка телефонных клиентских звонков с последующей передачей обращений техническим специалистам.
- Линия 1. Работает инженер по сопровождению. Он консультирует клиентов. При необходимости – настраивает софт и устраняет ошибки. Специалист занимается наполнением базы знаний и составлением руководств (мануалов).
- Линия 2. Здесь в дело вступает инженер техподдержки. Он отвечает за функциональное сопровождение и проектную деятельность на этапе установки и активации контента непосредственно на устройствах клиента.
- Линия 3. Осуществляется сопровождение и проектная деятельность на оборудовании в момент запуск софта.
Работа инженера иногда сравнивается с информационными центрами. Функционал у соответствующих «специалистов» сильно отличается. Колл-центр собирает обращения, а сопроводитель – это ключевое звено технического обслуживания и доработки. Он будет решать проблемы, связанные с эксплуатацией программных продуктов и сервисов.
Виды
Техподдержка бывает разной. Она включает в себя базовый и расширенный типы. В первую категорию включены следующие операции:
- обучение азам работы с программами и приложениями;
- помощь в освоении имеющихся продуктов;
- обслуживание путем диспетчерской связи;
- настройка, адаптация, отладка экземпляров программ с учетом особенностей пользовательского окружения;
- поддержка работоспособности;
- профилактика сбоев, неполадок;
- устранение ошибок (включая критические);
- мониторинг за процессом работы софта.
Это – основа, на которую опирается весь процесс. Остальные особенности базового обслуживания будут обсуждаться с клиентом в соответствие с его потребностями.
Расширенный тип предусматривает:
- модификации эталонных сервисов и баз данных для развития и встраивания обновлений;
- совершенствование для отладки работоспособности итогового контента.
Остальные задачи обсуждаются индивидуально.
Этапы
Рассматриваемая операция обычно включает в себя несколько этапов:
- Подготовка к необходимым исследованиям и действиям.
- Анализ имеющихся проблем, возникающих неполадок, ошибок. Здесь же обсуждаются и оцениваются корректировки.
- Внесение изменений.
- Проверка и приемка контента.
В процессе проведенного комплекса работ имеющийся софт могут перенести на другие устройства заказчиков или снять с реализации. Выше – пример процесса на базе цикла Деминга.
Как быстро освоить направление
Поддержка программного обеспечения – процесс, который сможет освоить любой IT-специалист. Особенно, если он занимается системным администрированием и разработкой.
Чтобы быстрее освоить направление, в Москве и других регионах России рекомендуется закончить специализированные компьютерные курсы. В срок до 12 месяцев пользователя научит инновационным профессиям с нуля. В конце будет выдан сертификат, подтверждающий знания и умения в соответствующей области.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus!
Источник: otus.ru
Поддержка программного обеспечения
Мы завершаем нашу трилогию о принципах разработки, принятых в «Эдисоне», постом о том, как устроена поддержка разработанного ПО, включая внедрение (установку и обучение использованию) и сопровождение (правку выявленных багов и поддержку пользователей).
Надёжная поддержка — это важно
Объекты техподдержки
Профиль нашей деятельности включает как разработку собственных проектов для широкого пользователя, так и разработку софта на заказ.
Кроме техподдержки по произведенным нами продуктам (как тиражируемым, так и сделанным на заказ), мы осуществляем сопровождение сторонних решений, используемых нашими клиентами.
Тиражируемое ПО EDISON
На сегодня в нашем портфолио 4 продукта, доступных для всех желающих:
- «ЭлектроОфис» — система защищенного электронного документооборота и корпоративных и ведомственных порталов с возможностью быстрой доработки под индивидуальные потребности клиентов.
- SMS2SERVE — шлюз доставки SMS-сообщений через интернет.
- «Большой брат» (или, как мы его сокращенно зовем «ББ») — созданное в 2013 году с использованием технологий С#, .NET, Active Directory и SQL программное обеспечение для учета эффективности работы сотрудников, фиксирует время работы в целом и в каждой программе / на сайте, активность, снимает скриншоты. Для клиентов доступен видео FAQ и обучающий ролик в канале YouTube:
- Агрегатор информации о тендерах — программа собирает данные из Интернета по фильтрам, с соответствующим графиком и предоставляет их в настраиваемом виде на электронную почту. Разрабатывается с 2010 года, использует ASP.NET, C#, MS SQL.
Заказное программное обеспечение
- Автоматизация измерений и экспертные системы: разработка ПО рентгеновского микротомографа для компании «Элекард-Мед».
- Встроенное ПО: разработка кардиомонитора, подключаемого к персональному компьютеру. Устройство используется для регистрации сердечного ритма человека и передачи его через радиосвязь и USB интерфейс.
- Разработка веб-приложений и сайтов: разработка системы продажи электронных автобусных билетов через Интернет для «КУЗБАССПАССАЖИРАВТОТРАНС», награжден золотой медалью на «ТРАНССИБ-ЭКСПО».
Системы автоматизации на базе сторонних продуктов
Внедрение и сопровождение решений автоматизации на платформах Oracle, SAP, 1С, Microsoft, а также SpiderProject, ProjectMate, bugzilla, mantiss, jira и других, например:
- веб-приложение для обучения и тестирования сотрудников сети ресторанов (на SharePoint),
- подсистема учета посещений бассейна на базе 1С: Предприятие,
- подсистема формирования заказа на изготовление для типографии на базе 1С: Управление производственным предприятием,
- разработка корпоративного веб-приложения для управления временем Chronos Project Manager (ASP.NET с применением компонента jQuery UI).
Специалисты нашей компании отлично разбираются во всем интегрируемом программном обеспечении, а инженеры-программисты, работающие с 1С, имеют глубокие знания в бухгалтерском, управленческом учете и расчете заработной платы.
Как устроена поддержка программного обеспечения в EDISON
В соответствии со статьей № 470 ГК РФ производитель должен давать гарантию на свои программные продукты, а именно: исправлять свои ошибки либо менять продукт на другую версию. Проблема в том, что по закону для этого требуется экспертиза, подтверждающая наличие сбоя, доказывающая вину разработчика, исключающая пользовательское вмешательство в код ПО, гарантирующая корректное использование продукта клиентом и т.д. На время проведения экспертизы неисправности программного комплекса парализуется не только его работа, но и работа аппаратного обеспечения. И это очень неудобно для пользователей сервисов, которые должны работать постоянно.
Услуга техподдержки, в соответствии с которой специалисты EDISON исправляют все недостатки, в том числе инициированные пользователем и не включенные в изначальное ТЗ, призвана компенсировать эти недочёты.
Независимо от того, требуется ли поддержка по корпоративному сайту или системе автоматизации на базе Oracle, порядок ее оказания одинаков (меняется лишь срок в зависимости от сложности задачи).
Техническая поддержка пользователей ПО может включать большое количество опций в зависимости от желаний клиента, например:
- выделение горячей линии, консультации,
- обучение пользователей системы работы с ней,
- устранение любых проблем, возникающих в работе ПО,
- любая доработка под нужны клиента, в том числе расширение функционала.
За каждым клиентом мы закрепляем проект-менеджера, с которым ведется вся коммуникация. Для контроля за ходом работы и затраченным на выполнение задач временем клиенту предоставляются неограниченные по времени доступы к репозиторию, системе управления проектами и программе учета времени ББ, о которой мы писали выше.
Сайты могут управляться клиентами самостоятельно, используемые нами CMS: Bitrix, WordPress, Joomla, Drupal, Amiro, Frog, Kentico, AxCMS, Sitefinity. Поддержка веб-сайта включает в себя, в том числе, своевременное информирование о необходимости оплаты хостинга и домена.
Преимущества в поддержке программного обеспечения
- Моментальное реагирование, возможность круглосуточной поддержки. Распределенная структура EDISON с англоговорящими проект-менеджерами в Москве, Кемерово и Томске позволяет оперативно реагировать на обращения пользователей со всего света.
- Широкая компетенция команды. Платформы: Windows, Unix, ОС реального времени, мобильные. Языки/Технологии: С++, С, GCC, Qt, C#, .NET, COM, Delphi, Java, ASP.NET, PHP, Python, Ruby, AJAX, SQL, MS SQL, Oracle, MySQL, 3D, CAD, GUI, TCP/IP, HTML, XML, PKI и т.д. Знания программных продуктов, подтвержденные сертификатами вендоров: Apple, 1С-Битрикс, Лаборатории Касперского, Dr.Web, Amiro.CMS и дистрибьютора Axoft.
- Гибкая политика лицензирования по тиражируемым продуктам, при которой самостоятельное масштабирование и доработка ПО не облагается дополнительными затратами.
- Гарантия конфиденциальности информации.
Доработка программного обеспечения
IT-рынок — структура быстро растущая и динамичная (меняются стандарты, требования, технологии), и бизнес наших клиентов тоже не стоит на месте (появляются новые задачи), поэтому помимо поддержки программного обеспечения EDISON осуществляет доработки ПО, а именно:
- реинжиниринг,
- интернационализацию и локализацию,
- портирование и миграцию программного обеспечения.
Реинжиниринг программного обеспечения
В случае если разработчик продукта более не поддерживает установленное у клиента программное обеспечение, переход на новое проблематичен, и поддержка существующей системы обходится слишком дорого, при наличии технической возможности производится реинжиниринг — то есть создание перепроектированной версии старого ПО с учетом новых требований. Миграция происходит постепенно, что позволяет избежать рисков.
Интернационализация и локализация программного обеспечения
Хотя оба этих понятия относятся к «язычности» продукта, интернационализация подразумевает адаптацию под любой язык (конфигурация изменяемых при смене языка параметров, таких как вывод чисел, дат, денежных знаков), тогда как локализация — перевод языка интерфейса, файлов программы и справки на конкретный язык.
Портирование и миграция
К этим доработкам относятся работы по переносу, конвертации форматов БД, межплатформенной миграции, переводе ПО с одного языка программирования на другой и адаптации.
Один из примеров, демонстрирующих портирование и миграцию:
При доработке программного обеспечения мы действуем по тем же принципам, что и при его создании, что гарантирует высокое качество работы в нужный срок.
Есть замечания по нашей методологии или вы хотите поделиться своим опытом? Рады будем пообщаться в комментариях или на нашей странице в Фейсбуке.
- edisonsoftware
- разработка
- проектирование
- веб-разработка
- поддержка по
- Блог компании Edison
- Разработка веб-сайтов
- Проектирование и рефакторинг
Источник: habr.com
Сопровождение программ что это
Узбекское Агентство
Связи и Информатизации
Ташкентский Университет Информационных Технологий
Кафедра
«Программное обеспечение информационных технологий»
Преподаватель дисциплины
Выдержки из лекций
Сопровождение программного обеспечения
Программные средства являются одним из наиболее гибких видов промышленных изделий и эпизодически подвергаются изменениям в течение всего времени их использования.
Иногда достаточно при корректировке программного обеспечения внести только одну ошибку для того, чтобы резко снизилась его надежность или его корректность при некоторых исходных данных.
Для сохранения и повышения качества программного обеспечения необходимо регламентировать процесс модификации и поддерживать его соответствующим тестированием и контролем качества. В результате программное изделие со временем обычно улучшается как по функциональным возможностям, так и по качеству решения отдельных задач.
Работы, обеспечивающие контроль и повышение качества, а также развитие функциональных возможностей программ, составляют процесс сопровождения.
В процессе сопровождения в программное обеспечение вносятся следующие изменения, значительно различающиеся причинами и характеристиками;
— исправление ошибок — корректировка программ, выдающих неправильные результаты в условиях, ограниченных техническим заданием и документацией. Исправление ошибок требуют около 20% общих затрат на сопровождение.
— регламентированная документами адаптация программного обеспечения к условиям конкретного использования, с учетом характеристик внешней среды или конфигурации аппаратуры, на которой предстоит функционировать программам. Адаптация занимает около 20% общих затрат на сопровождение.
— модернизация — расширение функциональных возможностей или улучшение характеристик решения отдельных задач в соответствии с новым или дополнительным техническим заданием на программное изделие. Модернизация занимает до 60% общих затрат на сопровождение.
Затраты на сопровождение программного обеспечения
Первый вид изменений (исправление ошибок) является непредсказуемым и его трудно регламентировать.
Остальные виды корректировок носят упорядоченный характер и проводятся в соответствии с заранее подготавливаемыми планами и документами. Эти корректировки в наибольшей степени изменяют программные изделия и требуют наибольших затрат.
Поэтому изменения, обусловленные ошибками, в большинстве случаев целесообразно по возможности накапливать и реализовывать их, приурочивая к изменениям, регламентированным модернизациями.
Однако некоторые ошибки вызывают необходимость срочного исправления программ. В этих случаях допустимо некоторое отставание корректировки документации при более срочном и регистрируемом исправлении самих программ.
Сопровождение программ — это «ложка дегтя» для каждого програм миста, всегда помеха при начале разработки какого-либо нового проекта, заставляющая отвлекаться от его разработки и возвращаться к старым программам и старым проблемам.
Что делает сопровождение программного обеспечения крайне непривле кательным? Это плохо документированный код, недостаточно полное начальное проектирование и отсутствие внешней документации.
Если все этапы жизненного цикла разработки программного обеспечения выполнялись правильно, то сопровождение не будет вызывать серьезных проблем, а будет элементарной технической поддержкой и модификацией внедренного программного продукта.
Со временем, иногда через десятки лет, сопровождение программного обеспечения прекращается. Это может быть обусловлено: разработкой более совершенных программных средств; прекращением использования сопровождаемого программного продукта; нерентабельным возрастанием затрат на его сопровождение.
Отметим, однако, что программное изделие может долго применяться кем-либо и после прекращения его. сопровождения от лица разработчика, потому, что этот некто может плодотворно использовать программное изделие у себя самостоятельно, без помощи разработчика.
Для того чтобы со временем прийти к обоснованному решению о прекращении сопровождения программного обеспечения, необходимо периодически оценивать эффективность его эксплуатации, возможный ущерб от отмены сопровождения. В некоторых случаях решение о прекращении сопровождения принимается при противодействии со стороны отдельных пользователей.
Материал сайта является электронным пособием
по дисциплине «Технология Программирования»
в помощь студентам ТУИТ.
Источник: tehprog.ru