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




НазваниеПроцесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт
страница1/8
Дата публикации07.07.2013
Размер0.87 Mb.
ТипПрограмма
zadocs.ru > Информатика > Программа
  1   2   3   4   5   6   7   8


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



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



  1. общий программный продукт – это автономные программные системы созданные корпорацией по производству ПО (коробочное ПО);

  2. программный продукт созданный на заказ – это программные системы созданные по заказу определённого потребителя.





2) «4П» в разработке ПО
Проект Продукт Персонал Процесс




Проект – временное предприятие, предназначенное для создания уникальных продуктов или услуг. Понятия «временные» и «уникальных» отличают проект от производства.

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

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

Персонал – широкое понятие, включающее всех людей, так или иначе имеющих отношение к проекту. Персонал делится на 2 группы:

  • заказчики (пользователи, владельцы системы, оплачивающие разработку и другие заинтересованные лица);

  • разработчики (аналитики, проектировщики, программисты и их руководство).


Причины провалов проектов по вине заказчика

  • заказчики не готовы выделить достаточных средств;

  • потребности заказчика не полностью поняты, зафиксированы;

  • требования заказчиков часто меняются;

  • ожидания заказчика нереалистичны;

  • заказчик не стремится к сотрудничеству с разработчиками.


Причины провалов проектов по вине разработчика
недостаточная квалификация;

недооценка социальных факторов и соответственно переоценка технологических факторов;

плохой менеджмент;

отсутствие определённого процесса создания ПО.

^ Процесс создания ПО – определение полного набора действий, необходимых для преобразований требований заказчика в продукт.
Функции процесса:

определить набор действий и определить порядок их выполнения;

определить какие артефакты должны создаваться и когда (план проекта);

указывается, чем должны заниматься отдельные разработчики или команды;

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

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



^ 3) Жизненный цикл ПО. Водопадная модель.

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

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

Жизненный цикл может быть представлен с различной степенью детализации. На укрупнённом уровне жизненный цикл включает в себя 3 этапа:

  • анализ (что сделать)

  • проектирование (как сделать)

  • реализация (воплощение)

Существуют различные модели жизненного цикла. Наиболее известная водопадная модель, которая была предложена Уинстоном Ройсом в 1970г.

^ Водопадная модель

Водопадная модель (каскадная) – реализует принцип однократного выполнения каждого вида деятельности в виде заранее ограниченных и однозначно упорядоченных во времени стадий этапов.

Каждый этап основывается на действиях предыдущего этапа. Процесс имеет пять этапов (шагов):



^ 4) Эволюционная модель
Эволюционная модель – предполагает построение системы в виде последовательности версий. В начале проекта определены не все требования, они уточняются в процессе разработки. Особенностью данной модели является то, что процессы документирования (специфицирования) разработки и тестирования выполняются параллельно при постоянном обмене информацией с заказчиком. Такая версия ещё называется прототипом или макетом.

Различают два подхода к реализации эволюционной модели:

  • эволюционное прототипирование (подход пробных разработок). В рамках этого подхода сначала разрабатываются те части системы, которые очевидны или хорошо специфицированы. Система дорабатывается путём добавления новых возможностей.

  • экспериментальное прототипирование. Здесь целью процесса является поэтапное уточнение требование заказчика, т.е. получение законченной спецификации. Прототип строится с той части требований заказчика, которые определены не чётко.

^ Достоинства модели:

  • обеспечивает определение полных требований ПО;

  • спецификация может разрабатываться постепенно, по мере того как заказчик осознаёт и формулирует требования.

Недостатки модели:

  • многие этапы процесса недокументированны, поэтому таким процессом сложно руководить;

  • система часто получается плохо структурированной;

  • постоянные изменения в требованиях приводят к ошибкам в структуре ПО;

  • заказчик и разработчики могут принять макет за продукт.


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



^ 5) Итеративно-инкрементная модель ( называют Запланированное усовершенствование продукта или Модель пошаговой разработки). Начинается с определения базового набора требований и реализует разработку в виде последовательности итераций.


Итерация - последовательность действий, приводящая к некоторой выполняемой программе, её называют «версия» или «билд», для которой заданы план и критерий оценки, каждая новая версия включает в себя усовершенствованные возможности по сравнению с предыдущей.

^ Данная модель основана в 1980г.

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

Функции с более высоким приоритетом реализуются первыми. На каждом шаге каждой итерации может использоваться разный подход. Если создаваемый компонент хорошо специфицирован, то можно использовать водопадную модель, если требования определены не чётко – эволюционную.

*************************************************************************

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

Процесс это механизм реализации жизненного цикла. Жизненный цикл может быть представлен с различной степенью детализации. На укрупнённом уровне жизненный цикл включает в себя 3 этапа: - анализ (что сделать) - проектирование (как сделать) - реализация - воплощение)

Существуют различные модели жизненного цикла. Наиболее известная водопадная модель, которая была предложена Уинстоном Ройсом в 1970г.



^ 6) Спиральная модель. Жизненный цикл и стандартизация.

Спиральная модель. Предложена в 1988г. Барри Боэмом. Спиральная модель представляет процесс разработки ПО в виде спирали, каждый виток которой соответствует одной итерации (стадии) процесса создания ПО. Самый внутренний виток соответствует стадии принятия решения.



На следующем витке определяются системные требования. Далее следует виток проектирования и т.д. Спиральная модель базируется на лучших свойствах водопадной и эволюционной модели + анализ риска.

^ Каждый виток разбит на 4 сектора:

  1. определение целей и установление ограничений на процесс создания ПО;

  2. анализ определения риска. Для каждого определённого проектного риска проводится его детальный анализ и проводятся мероприятия для его устранения/уменьшения;

  3. разработка и тестирование. На основе оценки рисков выбирается модель процесса создания системы (эволюционная или водопадная);

  4. оценивание и планирование. Пересматривается проект и принимается решение, начинать ли следующий виток спирали.

Достоинства спиральной модели:

    • наиболее точно отображает разработку ПО;

    • позволяет учитывать риск на каждом витке (каждой стадии разработки);

    • включает системного подхода в иерархическую структуру разработки;

    • использует моделирование для уменьшения риска и совершенствования программного продукта.

Недостатки модели:

  • новизна (отсутствует достаточная статистика эффективности модели );

  • повышенное требование к заказчику;

  • сложность и тяжеловесность модели.







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

  • проектирование системы и ПО. Выработка решений удовлетворяющих всем требованиям и ограничениям. Разрабатывается общая архитектура системы и проект программных компонентов;

  • кодирование и тестирование модулей;

  • сборка и тестирование системы. Тестируется, удовлетворяет ли система своей спецификации;

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

^ Достоинства модели:

  • даёт план и временной график по всем этапам проекта;

  • упорядочивает процесс разработки ПО.

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

Недостатки модели:

  • негибкое разбиение процесса на отдельные фиксированные этапы;

  • результаты проекта доступны заказчику только в конце работы;

  • цикл основан на чёткой формулировке требований, на первой стадии;

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

Причины изменений требований:

  • меняется пользовательская среда (изменение бизнес-проектов), повышение образованности пользователей;

  • меняется задача;

  • меняются основные технологии;

  • появление нового программного или аппаратного обеспечения;

Всё это называется рисками программного проекта.

Риск – проектный фактор, который подвергает проект опасности.

Недостатки водопадной модели маскируют риски проекта, пока не будет слишком поздно на них реагировать. Водопадная модель применима для небольших проектов, имеющих небольшое количество нововведений.
ГОСТ водопадной модели ГОСТ 34.601-90


^ Причины провалов проектов по вине разработчика

недостаточная квалификация;

недооценка социальных факторов и соответственно переоценка технологических факторов;

плохой менеджмент;

отсутствие определённого процесса создания ПО.
^ Процесс создания ПО – определение полного набора действий, необходимых для преобразований требований заказчика в продукт.
Функции процесса:

  • определить набор действий и определить порядок их выполнения;

  • определить какие артефакты должны создаваться и когда (план проекта);

  • указывается, чем должны заниматься отдельные разработчики или команды;

  • предлагать критерии отслеживания хода проекта, измерение результатов и планирование будущих проектов.


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

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



Другая классификация по отношению к технике:


    1. (автономные системы) программный продукт, предназначенный для работы только на одном компьютере (текстовые процессоры, электронные таблицы);

    2. встроенные системы (системы управления различными бытовыми приборами);

    3. распределённые системы.

    4. Системы реального времени.


SOFTWARE ENGINEERING – Программная инженерия
Программная инженерия – это система инженерных принципов для эффективного создания ПО охватывающая все аспекты разработки ПО от начальной стадии системных требований до его использования.
^ Специфика программной инженерии заключается в том что ПО скорее разрабатывается, а не производится.
Технология разработки ПО – это система инженерных принципов для эффективного создания ПО, охватывающее все производственные процессы разр. ПО, от начальной стадии сист. требований, до его использования.
Ну крупненном уровне жизненный цикл ПО включает 4 этапа.

  1. анализ

  2. проектирование

  3. реализация

  4. тестирование




К спиральным моделям относятся шаблоны процессов:

  • ICONIX;

  • ^ RATIONAL UNIFIED PROCESS (RUP);

  • MICROSOFT SOLUTION FRAMEWORK.

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

  1   2   3   4   5   6   7   8

Добавить документ в свой блог или на сайт

Похожие:

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconПрограмма упорядоченная последовательность команд (инструкций) компьютера для решения задачи
Программа – упорядоченная последовательность команд (инструкций) компьютера для решения задачи

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconПрограмма это логически упорядоченная последовательность команд необходимая...
Алгоритм – это базовое понятие информатики. На понятии алгоритма построены все основные принципы программирования – составление программ...

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

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconЛабораторная работа №4 работа с надстройкой «поиск решения»
Для этого в Excel используется надстройка «Поиск решения», представляющая собой программный модуль, подключаемый к Excel и управляемый...

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconРабочая программа преддипломной практики специальность 2-40-01-01...
На преддипломной практике учащиеся должны обобщить знания и совершенствовать умения и навыки работы с современной техникой и программным...

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

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconОпределение конечных целей решения задачи
Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2-5

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

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconВопросы к коллоквиуму для студентов первого курса
Числовая последовательность. Виды последовательностей. Сходящаяся последовательность. Ограниченная сверху, снизу, ограниченная последовательность....

Процесс разработки по программа упорядоченная последовательность команд для решения некоторой задачи. Программный продукт iconПрограмма на языке Си это текстовый файл с расширением c
Алгоритмом называется точное и понятное предписаниe исполнителю совершить последовательность действий, направленных на решение поставленной...

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
zadocs.ru
Главная страница

Разработка сайта — Веб студия Адаманов