Смекни!
smekni.com

Понятие программного продукта (стр. 1 из 3)

ВВЕДЕНИЕ.

Существенной особенностью постиндустриальной эпохи стало появление рынка авторских прав на программные продукты. Стоит сразу жеотметить разницу понятий " программный продукт " (ПП) и "программа для ЭВМ",которая полностью определена.

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

В данной работе мы определим понятие «программного продукта», его сертификацию, а такжевопросы авторских прав.

1. Понятие программного продукта и его стандартизация.

Система качества представляет собой организационный стержень для компании, которая вынуждена тщательно продумывать и документальнооформлять, а затем контролировать каждый этап проектирования программного продукта и его результаты.Для этого нужен специально обученный персонал и особые методы управления качеством. Эти методы варьируются от компании к компании, но основные их положения едины для всех и определяютсястандартом. В конечном итоге система качества позволяет создать оптимальные условия для продуктивного труда специалистов, поскольку берет на себя всеформальные и рутинные, но абсолютно необходимые операции. Она позволяет перейти от кустарного уровня сотворения замечательных программ "на коленке" кнаучно организованному массовому производству программного продукта .

ISO 9000-3 - система качества для ПО Стандарт ISO 9000-3 включает в себя все положения общего стандарта ISO 9001, а такженеобходимые дополнения к ним, относящиеся к разработке, поставке и обслуживанию ПО. ISO 9001 устанавливает требования к системе качества поставщика и позволяетоценивать его возможности по проектированию и поставке продукции, соответствующей этим требованиям.

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

продукт - результат действий или процессов; программный продукт - набор компьютерных программ, процедур и,возможно, связанных с ними документов и данных;

элемент программного обеспечения (software item) – любая идентифицируемая часть программного продукта ; основание (baseline) - формально утвержденная версия элемента

конфигурации, зафиксированная в определенный момент времени в процессе жизненного цикла элемента конфигурации; разработка(development) - процесс жизненного цикла программного продукта , охватывающий анализ требований, проектирование, кодирование,

интеграцию, тестирование, установку и поддержку; модель жизненного цикла (life cycle model) - базовая модель, включающаяпроцессы, действия и задачи, вовлеченные в разработку, функционирование и сопровождение программного продукта и хватывающие весь жизненный цикл системы от определениятребований до завершения

использования; этап (phase) - определенный сегмент работы; регрессионное тестирование (regression testing) - тестирование,позволяющее убедиться в том, что изменения, внесенные с целью исправления обнаруженных ошибок, не породили новых; репликация (replication) -копирование программного продукта с одного носителя на другой. Важно отметить, что в большинствепунктов стандарта поставщик обязывается не только определять соответствующие действия, но и оформлять их документально, регистрировать результаты ипериодически анализировать, для того чтобы внести необходимые усовершенствования или полностью заменить.

Управление проектированием

Это самый обширный раздел стандарта, поскольку он затрагивает базовую составляющую общегопроцесса создания продукта , программного продукта в частности, решающим образом влияющую наего качество. Поставщик устанавливает и документирует методики управления и верификации проекта с целью обеспечения выполнения установленных требований.Этот раздел стандарта ISO 9000-3 дает руководящие указания по основным действиям в процессе разработки, таким как анализ требований к проекту,проектирование архитектуры системы, детальное проектирование и кодирование, а также планирование разработки.

Проект разработки программного продукта организуется в соответствии с определенноймоделью жизненного цикла. ISO 9000-3 не определяет, какой должна быть модель жизненного цикла, это зависит от специфики решаемой задачи. Стандарт дает лишьобщее определение модели жизненного цикла как множества процессов. Модель показывает, когда и как эти процессы подключаются к реализации проекта.

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

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

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

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

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

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

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

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

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

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

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

Степень формальности и строгости процессов анализа соответствуют сложности разрабатываемойсистемы и степени риска, связанного с ее использованием. Анализ проектирования затрагивает такие аспекты, как выполнимость проекта, удовлетворение требованиямзащиты и безопасности системы, выполнение правил программирования и возможность тестирования. На определенных стадиях проектирования проводится проверкасоответствия выходных данных входным требованиям. Такая верификация проекта может

включать анализ выходных данных, демонстрации, в том числе с помощью прототипов и моделирования, или тестирование. Толькопроверенные выходные проектные данные утверждаются для окончательного приема и последующего использования. Все обнаруженные в процессе проверки проблемныеситуации должны адекватно разрешаться.