Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вт апр 23, 2024 22:16

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Спиральная модель жизненного цикла разработки ПО
СообщениеДобавлено: Чт янв 15, 2009 01:07 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Спиральная модель жизненного цикла разработки ПО

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

• Определение целей, альтернативных вариантов и ограничений. Выполняется определение целей, таких как рабочая характеристика, выполняемые функции, возможность внесения изменений, решающих факторов достижения успеха и аппаратного/программного интерфейса. Определяются альтернативные способы реализации этой части продукта (конструирование, повторное использование, покупка, субдоговор и т.п.); определяются ограничения, налагаемые на применение альтернативных вариантов (затраты, график выполнения, интерфейс, ограничения, относящиеся к среде и др.). Создается документация, подтверждающая риски, связанные с недостатком опыта в данной сфере, применением новой технологии, жесткими графиками, плохо организованными процессами и т.д.
• Оценка альтернативных вариантов, идентификация и разрешение рисков. Выполняется оценка альтернативных вариантов, относящихся к целям и ограничениям; выполняется определение и разрешение рисков (менеджмент рисков, методика экономически выгодного выбора источников разрешения, оценка остальных связанных с риском ситуаций, когда деньги могут быть потеряны из-за продолжения разработки системы (решения о прекращении/продолжении работ над проектом и т.п.);
• Разработка продукта следующего уровня. Типичные действия, выполняемые в этом квадранте, могут включать в себя создание проекта, критический анализ проекта, разработку кода, проверку кода, тестирование и компоновку продукта. Первая создаваемая версия продукта основывается на том, что попадает в поле зрения заказчика. Затем начинается фаза планирования: программа возвращается в исходное состояние с целью учета реакции клиента. Каждая последующая версия более точно воплощает требования заказчика. Степень вносимых изменений от одной версии программы к следующей уменьшается с каждой новой версией, что в конечном счете приводит к получению функциональной системы;
• Планирование следующей фазы. Типичные действия в этом квадранте могут включать в себя разработку плана проекта, разработку плана менеджмента конфигурации, разработку плана тестирования и разработку плана установки программного продукта.
Для каждой итерации следует определить цели, альтернативные варианты и ограничения; установить и разрешить риски; дать оценку альтернативным вариантам; разработать результативные данные для этой итерации и подтвердить их правильность; спланировать следующую итерацию. Затем следует выбрать метод осуществления следующей итерации в случае, если требуется ее выполнять.
В квадрантах отсутствует заданное количество циклов. Их количество нужно выбрать по необходимости, а итерации можно адаптировать под определенный проект.
Следует отметить тот факт, что кодирование выполняется значительно позже, чем в других моделях. Смысл заключается в том, чтобы минимизировать риск посредством последовательных уточнений требований, выдвигаемых пользователем. В каждом «мини-проекте» (движении по спирали) рассматривается один или несколько главных факторов риска, начиная с фактора наивысшего риска. Типичные риски включают в себя неправильно истолкованные требования, архитектуру, потенциальные проблемы, связанные с эксплуатацией продукта, проблемы в базовой технологии и т.д. Первая версия и первоначальная пригодность для эксплуатации (Initial operational capability, IOC) – это первый шанс заказчика на тестирование системы, после чего следует другой набор действий по планированию, приводящих к началу следующей итерации. Важно также отметить, что эта модель не использует традиционных структурных методов – эти методы появляются в конце (т.е. во внешнем цикле) спирали. Версия, получаемая в результате проведения пользователями приемочных испытаний, сдается перед наступлением стадии конечной пригодности для эксплуатации (Final operational capability, FOC), т.е. точно так же, как это происходит в каскадной модели.
Поскольку спиральная модель была разработана с большей тщательностью, чем другие методики, в разработке по принципу спирали особое внимание уделено оценке альтернативных вариантов и оценке рисков. Критический анализ, осуществляемый в конце каждой фазы, обеспечивает переход к следующей фазе или в случае необходимости определяет потребность в повторном выполнении каждой фазы. Преимущества спиральной модели заключаются в том, что в ней особое внимание уделяется таким процедурам, как анализ рисков, а также в возможности адаптировать ее к различным принципам построения жизненного цикла. Если спиральная модель применяется при демонстрациях, определении базовой линии и менеджменте конфигурации, можно добиться непрерывного участия клиентов в процессе разработки и обеспечить упорядочение процесса выполнения.

Преимущества спиральной модели
При использовании спиральной модели при выполнении проекта, для которого она в достаточной мере подходит, проявляются следующие преимущества:
• Спиральная модель разрешает пользователям «увидеть» систему на ранних этапах, что обеспечивается посредством использования ускоренного прототипирования в жизненном цикле разработки ПО
• Обеспечивается определение непреодолимых рисков без особых дополнительных затрат
• Эта модель разрешает пользователям активно принимать участие при планировании, анализе рисков, разработке, а также при выполнении оценочных действий
• Она обеспечивает разбиение большого потенциального объема работы по разработке продукта на небольшие части, в которых сначала реализуются решающие функции с высокой степенью риска, позволяющие устранить необходимость продолжения работ над проектом (таким образом, в случае необходимости становится возможным прекратить работу над проектом и уменьшаются расходы);
• В модели предусмотрена возможность гибкого проектирования, поскольку в ней воплощены преимущества каскадной модели, и в то же время, разрешены итерации по всем фазам этой же модели;
• Реализованы преимущества инкрементной модели, а именно выпуск инкрементов, сокращение графика посредством перекрывания инкрементов, рассортированных по версиям, и неизменяемость ресурсов при постепенном росте системы;
• Здесь не ставится цель выполнить невозможное – довести конструкцию до совершенства
• Обратная связь по направлению от пользователей к разработчикам выполняется с высокой частотой и на ранних этапах модели, что обеспечивает создание нужного продукта высокого качества
• Происходит усовершенствование административного управления над процессом обеспечения качества, правильностью выполнения процесса разработки, затратами, соблюдением графика и кадровым обеспечением, что достигается путем выполнения обзора в конце каждой итерации
• Повышается продуктивность благодаря применению пригодных для повторного использования свойств
• Повышается вероятность предсказуемого поведения системы с помощью уточнения поставленных целей
• При использовании спиральной модели не нужно распределять заранее все необходимые для выполнения проекта финансовые ресурсы
• Можно выполнять частую оценку совокупных затрат, а уменьшение рисков связано с затратами

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

Изображение
Область применения спиральной модели
Менеджер проекта может быть уверен в целесообразности применения спиральной модели, если для этого существует хотя бы одна из следующего перечня причин:
• Когда создание прототипа представляет собой подходящий тип разработки продукта
• Когда важно сообщить, каким образом будет происходить увеличение затрат, и подсчитать затраты, связанные с выполнением действий из квадранта риска
• Когда организация обладает навыками, требуемыми для адаптации модели
• Для проектов, выполнение которых сопряжено со средней и высокой степенью риска
• Когда нет смысла браться за выполнение долгосрочного проекта из-за потенциальных изменений, которые могут произойти в экономических приоритетах, и когда такая неопределенность может вызвать ограничение во времени
• Когда речь идет о применении новой технологии, и когда необходимо протестировать базовые концепции
• Когда пользователи не уверены в своих потребностях
• Когда требования слишком сложные
• При разработке новой функции или новой серии продуктов
• Когда ожидаются существенные изменения, например, при изучении или исследовательской работе
• Когда важно сконцентрировать внимание на неизменяемых или известных частях, причем сбор информации об изменяющихся частях еще не закончен
• В случае больших проектов
• Для организаций, которые не могут себе позволить выделить заранее все необходимые для выполнения проекта денежные средства, и когда в процессе разработки отсутствует финансовая поддержка
• При выполнении затянувшихся проектов, которые могут вызывать раздражение у менеджеров и заказчиков
• Когда преимущества разработки невозможно точно определить, а достижение успеха не гарантировано
• С целью демонстрации качества и достижения целей за короткий период времени
• Когда в процесс вовлекаются новые технологии, такие как впервые применяемые объектно-ориентированные принципы
• При разработке систем, требующих большого объема вычислений, таких как системы, обеспечивающие принятие решений
• При выполнении бизнес-проектов, а также проектов в области аэрокосмической промышленности, обороны и инжиниринга, где использование спиральной модели уже получило популярность


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 18:21 
Не в сети

Зарегистрирован: Ср сен 13, 2006 10:06
Сообщения: 636
Откуда: Омск
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Достижение успеха проекта зависит только от понимания конечной (возможно перевалочной) цели. А все эти гипотезы и прочие рассуждения только вытягивают деньги и ресурсы с заказчика. Нет слово не могу или незнаю, есть слово лень которая лечится многими факторами.

_________________
Меня нет, не будет и не было.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 19:20 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Не факт. Маловато будет чистого адреналина. Таким образом можно сделать только проекты, целиком умещающиеся в голове, а это очень небольшие проекты по "серьезным" меркам. Надо сразу делать хорошо, а плохо оно само получится (с) не мое.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 19:51 
Не в сети

Зарегистрирован: Ср сен 13, 2006 10:06
Сообщения: 636
Откуда: Омск
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Ну видели мы два проекта майкрософт, один был в msx-2 и ура, другой до сих пор на наших... Перечисленная гепотеза наверное работает на большом количестве персонала.

_________________
Меня нет, не будет и не было.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 20:20 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Я ориентируюсь на большой и толстый учебник по управлению программными проектами. Очевидно, это не догма, но я не считаю себя менеджером-профи, а потому начинаю тупо выполнять упражнения для "маненьких менеджеров" :) Мы сначала ответили на вопросы, спиральная модель набрала наибольшее количество баллов. Теперь начинаем смотреть ее недостатки. Если способ их устранения окажется неприемлемым, берем другую модель. "На интуиции" я считаю себя неспособным делать большие проекты.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 21:20 
Не в сети

Зарегистрирован: Ср сен 13, 2006 10:06
Сообщения: 636
Откуда: Омск
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Учебники точно врут (если конечно не сам написал)

_________________
Меня нет, не будет и не было.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 21:23 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
эту тему можно и в открытый раздел поместить, мне кажется.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 21:43 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Pretorian писал(а):
Учебники точно врут (если конечно не сам написал)

Главное - это понять, где именно и в чем они врут. А до того надо упражненьица поделать...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Чт янв 15, 2009 23:55 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
00111111111001011100111001111011 - вот это оптимально
01111000001101011100110001110010 - это Winglion
00111001101000100010011001110000 - это мое

Теперь надо смотреть, что отличается, и пытаться ответить на вопрос "насколько это страшно". Называется "адаптация модели жизненного цикла".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 16, 2009 16:04 
Не в сети
Аватара пользователя

Зарегистрирован: Вт мар 20, 2007 23:39
Сообщения: 1261
Благодарил (а): 3 раз.
Поблагодарили: 19 раз.
Очень интересная, а главное полезная информация. А другие модели будут?

_________________
Cтоимость сопровождения программного обеспечения пропорциональна квадрату творческих способностей программиста.
Роберт Д. Блисc


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пт янв 16, 2009 16:07 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Моделей у меня приведено шесть. Все такого же объема.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Вс янв 25, 2009 22:10 
Не в сети
Аватара пользователя

Зарегистрирован: Вт ноя 06, 2007 21:23
Сообщения: 227
Откуда: Екатеринбург
Благодарил (а): 4 раз.
Поблагодарили: 7 раз.
а книга Thinking Forth тоже ничего


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн янв 26, 2009 01:03 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
А она тут практически ни при чем.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн янв 26, 2009 18:18 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
Хищник писал(а):
А она тут практически ни при чем.

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

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: Пн янв 26, 2009 23:38 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
mOleg писал(а):
ну, вот, как же. Очень даже причем. Там есть целый раздел посвященный данной теме

Какой именно? Там есть несколько зарисовок из жизни программистов, которые годятся для энтузиастов. Как организовать работу коллектива, состоящего не только из программистов, там не описано.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20


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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB