Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Жизненный цикл и этапы разработки ПО.






Жизненным циклом ПО называют период от момента появления идеи создания некоторого ПО до момента его поддержки фирмой разработчика(фирмой обеспечивающей сопровождение).

Структура жизненного цикла ПО регламентирована международным стандартом ISO/iec12207 данный стандарт описывает структуру жизненного цикла и его процессы. Процесс жизненного цикла - представляет собой совокупность взомосвязанных действий некоторые входные данные в выходные.

Выделяют 3 основных группы процессов:

I Основные

1) Приобретение. Покупка программы

2) Поставка.

3) Разработка.

4) Эксплуатация.

5) Сопровождение.

Ii Вспомогательные

1)документирование

2)управление конфигурацией.

3)управление качеством.

4)верификация.

5)аттестация

6)совместная оценка

7)аудит

8)решение проблем

III организационные процессы.

1) управление процессом разработки.

2) Усовершенствование.

3) Создание инфраструктуры.

4) Обучение.

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

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

1)Подготовительную работу - выбор модели жизненного цикла, стандартов, методов и средств разработки; разработку плана работы.

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

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

4)Анализ требований ПО. определение функциональных возможностей ПО с учетом производительности функциональных компонентов, внешних интерфейсов, спецификаций надежностей и безопасностей, эргономических требований, требований исходных данных, установки, эксплуатации и сопровождению, документации.

5)проектирование архитектуры ПО. Определение структуры ПО, документирование его интерфейсов, разработку предварительной версий пользовательской документации, определение требований к тестовым программам и разработка плана интеграции.

6)детальное проектирование ПО - подробное описание элементов ПО и интерфейсов между ними; обновление пользовательской документации, разработка и документирование требований к тестам и создание плана тестирования; обновление плана интеграции.

7)кодирование и тестирование ПО - разработка и документирование каждого компонента, в том числе тестовых процедур; тестирование элементов; обновление пользовательской документации, внесение изменений в план интеграций.

8)интеграция ПО - сборка программных элементов в соответствии с планом интеграции; тестирование ПО на соответствие квалификационным требованиям.

9)квалификационное тестирование ПО - тестирование программы в присутствии заказчика на оборудовании разработчика для демонстрации соответствия требованиям и готовности к эксплуатации; отдельно проверяется готовность и полнота документации.

10)интеграция системы - сборка всех компонентов системы, включая ПО И оборудование.

11) квалификационное тестирование системы совместно с заказчиком на оборудовании разработчика и проверка соответствия заданным требованиям; проверка оформления и полноты документации.

12)установка ПО на оборудование заказчика, проверка его работоспособности.

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

 

В отечественной технологии разработки ПО данные действия условно сгруппированы в 4 группы, которые регламентируются соответствующими гостами. ГОСТ 19201 1977 года регламентирует разработку ПО, а ГОСТ 19102 1977 года регламентирует разработку элементов АСУ.

 

ГОСТ:

1)этап постановки задачи (для АСУ - стадия " техническое задание")

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

-функциональные - определяют функции которые должно выполнять разрабатываемое ПО.

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

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

2)этап анализа требований и разработки спецификаци(для АСУ " стадия, эскизный проект"). Спецификациями называют точно и промализованное описание функции и ограничений разрабатываемого ПО. Спецификации разрабатываются на основе требований различают функциональные и эксплуатационные спецификации. Спецификации позволяют сформулировать содержательную постановку задач. Выюрать математический аппарат формализации и построить и модель предметной области., определить ход задачи и выбрать методы их решений. Совокупность спецификаций представляет собой общую логическую модель разрабатываемого ПО. На этом же этапе формируют тесты для поика ошибок.

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

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

3)проектирование.

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

Процесс проектирования включает:

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

- декомпозиция элементов. И построение структурной иерархии.

- Проектирование компонентов.

Различают 2 аспекта проектирования.

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

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

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

4)реализация. Реализация представляет собой процесс поэтапного написания кода программы на выбранном языке программирования, его тестирование и отладка.

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

Сопровождение. Процесс создания и внедрения новых версий программ.

Причинами может быть:

• исправление ошибок обнаруженных в программе

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

• Изменение среды функционирования (появление новых ОС, процессоров и тд)

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.