Содержание
Жизненный цикл ПО. Каскадная модель (Waterfall)
Для разработки качественного программного обеспечения необходимо хорошо понимать основные принципы жизненного цикла ПО, требования заказчика к создаваемому продукту, а также учитывать его финансовые возможности.. Существует несколько моделей жизненного цикла (каскадная модель, спиральная модель, быстрое прототипирование и т.д.). Выбор определенной модели жизненного цикла зависит, в основном, от содержания и целей проекта, а также от размера его финансирования.
Как правило, мы отдаем предпочтение спиральной модели, которая включает в себя гибкие методологии разработки Agile. Тем не менее, иногда мы используем каскадную модель (которая также носит название «Водопад») и ее производные для выполнения небольших или несложных проектов. В данной статье мы дадим описание каскадной модели, которая является классическим типом жизненного цикла программного обеспечения.
Согласно этой модели, проект реализуется пошагово, в соответствии с точной последовательностью действий: сбор и изучение требований, проектирование программного обеспечения и его разработка, тестирование и техническая поддержка. Каскадная модель достаточно гибкая, и некоторые этапы могут частично совпадать.
Давайте поочередно рассмотрим все этапы жизненного цикла:
1. Анализ требований
На этом этапе важно задокументировать все требования к будущему программному обеспечению. Необходимо посвятить достаточно времени обсуждению деталей проекта со всеми заинтересованными сторонами. Все поступающие данные нужно проанализировать и систематизировать. Важно также учесть все технические ограничения, которые могут возникнуть на стороне заказчика. Итогом данного этапа должно стать создание подробной спецификации, отвечающей всем требованиям заказчика. Также следует обратить внимание и на другие факторы, которые могут затруднять процесс разработки. К ним относятся дедлайны, установленные заказчиком, а также бюджетные ограничения.
Обратите внимание: Чем больше информации о проекте вы соберете, тем меньше времени потратите на исправление ошибок, доработку проекта, пересмотры бюджета, обсуждения и решение других вопросов.
Видение проекта
Важной задачей является создание подробного документа видения (или образа) проекта, который включает краткое описание проекта, бизнес-цели, а также критерии успеха проекта, факторы бизнес-рисков и описание конечного пользователя продукта.
Готовый документ необходимо передать на утверждение заказчику, чтобы убедиться в том, что все поставленные требования были учтены, а также чтобы проинформировать его о любых рисках, которые могут возникнуть после релиза проекта.
Сбор требований
После того, как все основные вопросы решены, рекомендуется провести дополнительные обсуждения и интерактивные семинары со всеми заинтересованными сторонами. Это поможет выявить какие-либо неочевидные моменты, которые в дальнейшем могут стать причиной внесения изменений в интерфейс приложения или необходимости переписывания паттернов кода. Данный этап может также включать заполнение анкет, рассмотрение кейсов, мозговой штурм и т.д.
Многие проекты заходят в тупик из-за дополнительных требований, которые всплывают на стадии разработки. Поэтому очень важно понимать начальные бизнес-цели и главную идею будущего приложения.
2. Проектирование программного обеспечения
Следующим этапом жизненного цикла ПО является создание документа, описывающего масштабы и границы проекта. Данный документ включает в себя мокапы или скетчи интерфейса будущего приложения, а также подробную спецификацию требований программного обеспечения. Необходимо отметить, что в некоторых случаях документ видения (образа) проекта и документ о масштабах и границах проекта могут быть представлены как единый документ “Об образе и границах проекта”.
Масштабы и границы проекта
В документе, описывающем масштабы и границы проекта, должны быть перечислены основные функции создаваемого программного обеспечения. Они определяются на основании документа видения проекта, и безусловно, с учетом указанных временных рамок и установленного бюджета.
Кроме того, в данный документ входят мокапы или скетчи, созданные на основе документа видения проекта, а также собранных требований.
Вы можете нарисовать скетч пользовательского интерфейса от руки либо использовать для этого программы создания мокапов, и затем согласовать его с заказчиком. Ниже представлен список полезных программ для создания мокапов, которые мы используем на практике:
https://invisionapp.com/
https://webflow.com/
https://moqups.com/
В процессе обсуждения проекта, у заказчика может появляться все больше новых идей относительно его реализации. Поэтому рекомендуется дать ему время на обдумывание своего проекта и требований к нему, а затем повторно собраться и обсудить детали проекта, чтобы ничего не упустить из вида.
На этом этапе также поднимается вопрос о послепродажном обслуживании продукта. Вы должны уведомить заказчика о том, каким образом будет осуществляться техническая поддержка после завершения этапа тестирования и последующего релиза продукта.
Обратите внимание на то, что документ видения проекта и документ о масштабах и границах проекта должны быть созданы до подписания контракта.
Спецификация требований программного обеспечения
Спецификация требований программного обеспечения (SRS) описывает требования, которым должно отвечать создаваемое программное обеспечение. Она должна быть логичной, последовательной, доступной и полной. Требования могут выражаться в разных формах, например, в виде традиционных утверждений долженствования (н-р, “Система Staff Manager должна поддерживать следующие браузеры: Google Chrome, Apple Safari, Mozilla Firefox, Opera, IE 8+”) или в виде пользовательских историй (н-р, “поскольку я являюсь менеджером, мне необходим доступ к персональной информации всех сотрудников”).
Существует большое количество шаблонов спецификаций. Выбор определенного шаблона зависит от специфики проекта. В большинстве случаев, спецификация включает в себя описание продукта, классы пользователей, функциональные и нефункциональные требования к разрабатываемому программному обеспечению. Иногда в шаблон также входит прототип. Главное — сделать спецификацию понятной, лаконичной и полезной для разработчиков.
Для создания прототипа вам необходимо выяснить следующее:
- способ получения и обработки входящих данных для создания необходимых данных на выходе;
- форма, в которой должны быть представлены выходные данные.
Мокапы (или прототипы) передаются UI/UX-дизайнерам, которые превращают их в красочные шаблоны.
3. Разработка программного обеспечения
Необходимо отметить, что разработка программного обеспечения может также включать в себя создание интерактивного прототипа, который, в сущности, является основой будущего приложения. Такой прототип помогает определить архитектуру системы в целом. На данном этапе пишется мало кода: например, код кнопок и простых форм, чтобы дать заказчику общее представление о том, как будет работать конечный продукт. Поэтому мы включили создание прототипа в этап разработки программного обеспечения.
Как только интерактивный прототип и дизайн приложения готов и утвержден заказчиком, начинается разработка стандартов приложения (конвенции наименований, способа документирования кода, инструкций для конечного пользователя и т. д.). После этого можно смело переходить к следующему этапу жизненного цикла, а именно, к разработке программного обеспечения. Разработка ПО может быть разделена на небольшие части, или юниты, и каждый юнит разрабатывается и тестируется разработчиками для проверки его функциональности (модульное тестирование).
4. Тестирование программного обеспечения
После завершения этапа разработки продукт должен пройти тщательное тестирование, чтобы убедиться в том, что он соответствует поставленным требованиям. На этапе приемочного тестирования необходимо, чтобы заказчик попытался применить продукт локально точно таким же образом, как он собирается использовать его после релиза. Когда будут исправлены основные ошибки, программное обеспечение можно внедрять. Для исправления незначительных ошибок может использоваться простая система отслеживания, что позволит исправлять любые недоработки уже на этапе сопровождения ПО.
5. Техническая поддержка программного обеспечения
После того, как продукт был протестирован и развернут на сервере заказчика, начинается следующая фаза жизненного цикла разработки программного обеспечения, которая называется сопровождением или технической поддержкой ПО. В целом, сопровождение подразумевает под собой исправление мелких багов, которые обнаруживаются на этом этапе.
Тем не менее, вполне возможно, что вам придется вносить некоторые изменения в созданное программное обеспечение, несмотря на все усилия, приложенные вами на предыдущих этапах. Заказчик может решить внести изменения в функциональность разработанного продукта. Следовательно, вам придется собирать, описывать и обсуждать новые требования с заказчиком, чтобы внести в продукт необходимые изменения. В данном случае, вам предстоит работа с новым каскадным проектом, и все вышеописанные шаги придется повторять с начала.
Заключение
Мы рассмотрели ключевые этапы разработки, необходимы для создания качественного программного обеспечения. Для того, чтобы ваш проект был успешным, необходимо обсудить все требования к будущему приложению с непосредственным заказчиком, а также подробно задокументировать всю работу, которая должна быть проведена на каждом этапе разработки.
Каскадную модель в обязательном порядке используют при создании систем жизнеобеспечения, используемых в военном деле,космических разработках и медицине, например, при разработке программного обеспечения для контроля полетов, систем подушек безопасности и т. д. Она также может применяться при разработке небольших и несложных проектов. Однако, если на одном из начальных этапов будет допущена ошибка, существует вероятность того, что она будет обнаружена лишь на этапе разработке или тестирования. Поэтому рекомендуется применять данную модель только в том случае, если все требования предельно понятны и не будут меняться с течением времени.
Данная статья была подготовлена под руководством опытных бизнес-аналитиков компании ИксБи Софтваре.
бизнес-анализ, веб-разработка, Все статьи, Новости компании, разработка ПО
Поделиться в Facebook (0) Поделиться (0) Tweet Поделиться (0) Поделиться (0)
Пред. статьяСлед. статья
The following two tabs change content below.
- Об авторе
- Последние статьи
Маркетолог ИксБи Софтваре с большим опытом в области интернет-маркетинга. Увлекается юзабилити и стремится создавать полезный контент, отвечающий интересам ИТ-аудитории.
Модели жизненного цикла программного обеспечения / Хабр
Здравствуйте, уважаемые хабровчане! Думаю будет кому-то интересно вспомнить какие модели разработки, внедрения и использования программного обеспечения существовали ранее, какие модели в основном используются сейчас, зачем и что это собственно такое. В этом и будет заключаться моя небольшая тема.
Собственно, что же такое жизненный цикл программного обеспечения — ряд событий, происходящих с системой в процессе ее создания и дальнейшего использования. Говоря другими словами, это время от начального момента создания какого либо программного продукта, до конца его разработки и внедрения. Жизненный цикл программного обеспечения можно представить в виде моделей.
Модель жизненного цикла программного обеспечения — структура, содержащая процессы действия и задачи, которые осуществляются в ходе разработки, использования и сопровождения программного продукта.
Эти модели можно разделить на 3 основных группы:
- Инженерный подход
- С учетом специфики задачи
- Современные технологии быстрой разработки
Теперь рассмотрим непосредственно существующие модели (подклассы) и оценим их преимущества и недостатки.
Модель кодирования и устранения ошибок
Совершенно простая модель, характерная для студентов ВУЗов. Именно по этой модели большинство студентов разрабатывают, ну скажем лабораторные работы.
Данная модель имеет следующий алгоритм:
- Постановка задачи
- Выполнение
- Проверка результата
- При необходимости переход к первому пункту
Модель также ужасно устаревшая. Характерна для 1960-1970 гг., по-этому преимуществ перед следующими моделями в нашем обзоре практически не имеет, а недостатки на лицо. Относится к первой группе моделей.
Каскадная модель жизненного цикла программного обеспечения (водопад)
Алгоритм данного метода, который я привожу на схеме, имеет ряд преимуществ перед алгоритмом предыдущей модели, но также имеет и ряд весомых недостатков.
Преимущества:
- Последовательное выполнение этапов проекта в строгом фиксированном порядке
- Позволяет оценивать качество продукта на каждом этапе
Недостатки:
- Отсутствие обратных связей между этапами
- Не соответствует реальным условиям разработки программного продукта
Относится к первой группе моделей.
Каскадная модель с промежуточным контролем (водоворот)
Данная модель является почти эквивалентной по алгоритму предыдущей модели, однако при этом имеет обратные связи с каждым этапом жизненного цикла, при этом порождает очень весомый недостаток: 10-ти кратное увеличение затрат на разработку. Относится к первой группе моделей.
V модель (разработка через тестирование)
Данная модель имеет более приближенный к современным методам алгоритм, однако все еще имеет ряд недостатков. Является одной из основных практик экстремального программирования.
Модель на основе разработки прототипа
Данная модель основывается на разработки прототипов и прототипирования продукта.
Прототипирование используется на ранних стадиях жизненного цикла программного обеспечения:
- Прояснить не ясные требования (прототип UI)
- Выбрать одно из ряда концептуальных решений (реализация сцинариев)
- Проанализировать осуществимость проекта
Классификация протопипов:
- Горизонтальные и вертикальные
- Одноразовые и эволюционные
- бумажные и раскадровки
Горизонтальные прототипы — моделирует исключительно UI не затрагивая логику обработки и базу данных.
Вертикальные прототипы — проверка архитектурных решений.
Одноразовые прототипы — для быстрой разработки.
Эволюционные прототипы — первое приближение эволюционной системы.
Модель принадлежит второй группе.
Спиральная модель жизненного цикла программного обеспечения
Спиральная модель представляет собой процесс разработки программного обеспечения, сочетающий в себе как проектирование, так и постадийное прототипирование с целью сочетания преимуществ восходящей и нисходящей концепции.
Преимущества:
- Быстрое получение результата
- Повышение конкурентоспособности
- Изменяющиеся требования — не проблема
Недостатки:
- Отсутствие регламентации стадий
Третьей группе принадлежат такие модели какэкстремальное программирование (XP), SCRUM, инкриментальная модель (RUP), но о них я бы хотел рассказать в отдельном топике.
Большое спасибо за внимание!
Экологические компромиссы в каскадных жизненных циклах литий-ионных аккумуляторов
- title={Экологические компромиссы в каскадных жизненных циклах литий-ионных аккумуляторов},
автор = {Кирти Рича и Кэлли В. Бэббит и Ненад Г. Ненадич и Габриэль Г. Гаустад},
journal={Международный журнал оценки жизненного цикла},
год = {2015},
объем = {22},
страницы = {66-81}
}- Kirti Richa, Callie W. Babbitt, G. Gaustad
- Опубликовано в 2015 г.
- Engineering
- The International Journal of Life Cycle Assessment
Цель Целью данного исследования был анализ экологических компромиссов каскадного повторного использования литий-ионные аккумуляторы (LIB) для электромобилей (EV) в стационарных накопителях энергии в конце срока службы автомобилей. МетодыДве системы были совместно проанализированы для рассмотрения групп заинтересованных сторон, соответствующих как первому (EV), так и второму сроку службы (стационарные накопители энергии) ) приложений батареи. Критерием экологической целесообразности была определена свинцово-кислотная эквивалентная функциональность (PbA…
Взгляд на Springer
Оценка воздействия на окружающую среду второй жизни и переработки силовых батарей LiFePO4 в Китае.
- Yixuan Wang, Baojun Tang, Ye Feng
Engineering, Environmental Science
Journal of Environmental Management
- 2022
Каскадный жизненный цикл аккумуляторных батарей90
НазначениеЛитий-ионные (Li-ion) аккумуляторные батареи, извлеченные из вышедших из эксплуатации электромобилей (EV), представляют собой потенциальные технологические, экономические и экологические возможности для улучшения энергетических систем и…
Экологическая целесообразность вторичного использования литий-ионных аккумуляторов электромобилей в базовых станциях связи
- Jie Yang, Fu Gu, Jianfeng Guo
Инженерное дело
- 2020
Сравнительная оценка трех подходов к переработке жизненного цикла Автомобильный литий-ионный аккумулятор после каскадного использования
- Yanqiu Tao, F. You
Материаловедение, инженерное дело
- 2020
В связи с растущими опасениями по поводу воздействия на окружающую среду выведенных из эксплуатации литий-ионных аккумуляторов (LIB) и риска поставки критически важных материалов, вторая жизнь и переработка рассматриваются как многообещающие стратегии для…
Оценка жизненного цикла литий-железо-фосфатного (LFP) электромобиля Батарея в сценариях применения Second Life
- К. Иоакимидис, Альберто Мурильо-Марродан, А. Багери, Димитриос Томас, К. Н. Геникомсакис
Инженерное дело
Устойчивое развитие
- 2019
В этом документе представлено исследование по оценке жизненного цикла (LCA), в котором рассматривается ряд сценариев, дополняющих этап основного использования аккумуляторов для электромобилей (EV) вторичным применением в…
Критический обзор экономика замкнутого цикла для литий-ионных аккумуляторов и фотоэлектрических модулей – состояние, проблемы и возможности
- Г. Хит, Д. Равикумар, Брианна Хансен, Элейн Купец
Науки об окружающей среде
Journal of the Air & Waste Management Association
- 2022
РЕЗЮМЕ Недавний анализ показывает, что для достижения целей по нулевым выбросам и затратам на производство электроэнергии к 2050 году мощность фотоэлектрических (PV) в США может превысить 1 ТВт. наряду с…
Оценка стоимости и углеродного следа аккумуляторов для электромобилей второго срока службы в жилых и коммунальных приложениях.
- Дипти Камат, Сиддхарт Шукла, Р. Арсено, Хён Чул Ким, А. Анктил
Инженерия, наука об окружающей среде
Управление отходами
- 2020
Экономическая и экологическая целесообразность использования литий-ионных аккумуляторов Second Life в качестве накопителей энергии с быстрой зарядкой.
Конфигурация быстрой зарядки на основе электросети сравнивалась с конфигурациями на основе литий-ионных SLB с точки зрения экономической стоимости и воздействия на окружающую среду в течение жизненного цикла в пяти городах США, и было замечено, что конфигурация LCOE чувствительна к стоимости SLB, сроку службы, эффективность и ставка дисконтирования, в то время как на GWP и CED влияли срок службы SLB, эффективность и требуемые материалы корпуса.
Устойчивая технология переработки литий-ионных аккумуляторов и не только: проблемы и перспективы на будущее.
- Ersha Fan, Li Li, Feng Wu
Engineering
Химические обзоры
- 2020
Систематический обзор устойчивости перезаряжаемых аккумуляторов с особым акцентом на электромобили и стратегию утилизации аккумуляторов 4H предлагаются цели высокой эффективности, высокой экономической отдачи, высокой экологической выгоды и высокой безопасности.
Use-Phase Drives Жизненный цикл литий-ионных аккумуляторов Воздействие на окружающую среду при использовании для регулирования частоты.
- N. A. Ryan, Yashen Lin, Noah Mitchell-Ward, J. Mathieu, Jeremiah X. Johnson
Инженерное дело, наука об окружающей среде
Экологическая наука и технология
- 2018
- M. Zackrisson, Lars Avellán, Jessica Инженерное дело, наука об окружающей среде
- 2010
- L. Ellingsen, G. Majeau-Bettez, Bhawna Singh, A. Srivastava, L. O. Valøen, A. Strømman
Науки об окружающей среде, инженерия
- 2014
- Л. Ахмади, Артур Йип, М. Фаулер, С. Янг, Р. Фрейзер
Инженерия, наука об окружающей среде
- 2014
7 9 Изменения в воздействиях Эксплуатация энергосистемы перевешивает воздействие в начале и в конце срока службы в большинстве проанализированных сценариев, при этом на величину больше всего влияет структура электроэнергии и цена на топливо.
ПОКАЗАНЫ 1–10 ИЗ 98 ССЫЛОК
СОРТИРОВАТЬ ПОРелевантности Наиболее влиятельные документыНедавность
Оценка жизненного цикла литий-ионных аккумуляторов для подключаемых гибридных электромобилей – критические вопросы
Анализ осуществимости вторичного использования литий-ионных элементов, используемых в электроприводах, с использованием экологических показателей
Недавний рост рынка EV/PHEV отчасти связан с технологическим прогрессом аккумуляторных систем. Хранение и зарядка энергии являются критическими аспектами электромобиля; Li-Ion…
Оценка жизненного цикла автомобильного блока литий-ионных аккумуляторов
Электромобили не выбрасывают выхлопные газы, но производство их аккумуляторов наносит ущерб окружающей среде. Чтобы избежать смещения проблемы, перспектива жизненного цикла должна быть…
Экологическая осуществимость повторного использования аккумуляторов электромобилей
- Г. Мажо-Беттез, Трой Р. Хокинс, А. Стрёмман
Инженерное дело, наука об окружающей среде
Экология и технологии
- 2011
- B. Williams, T. Lipman
Engineering
- 2010
- Доминик А. Ноттер, М. Гаух, Х. Альтхаус
Науки об окружающей среде, инженерия
Науки и технологии об окружающей среде
- 2010
- Л. Ахмади, М. Фаулер, С. Янг, Р. Фрейзер, Бен Гаффни, С. Уокер
Инженерное дело, наука об окружающей среде
- 2014
- J. Neubauer, A. Pesaran
Engineering
- 2011
Экологический цикл 900 оценка литий-ионных и никель-металлгидридных аккумуляторов для подключаемых гибридных и аккумуляторных электромобилей.
Представлен общедоступный и подробный перечень трех аккумуляторов для подключаемых гибридных и полнофункциональных аккумуляторных электромобилей, которые могут быть легко адаптированы к любой трансмиссии, наряду с удобными экологическими оценки производительности.
Стратегия преодоления стоимостных барьеров гибридной аккумуляторной батареи в Калифорнии
Достижения в области технологий электроприводов, включая литий-ионные аккумуляторы, а также разработка мощных политических стимулов, таких как Калифорнийский закон о решениях проблемы глобального потепления, теперь способствуют более…
Оценка жизненного цикла литий-ионных аккумуляторов. ионный аккумулятор для городских электромобилей
В этом исследовании представлен подход к оценке жизненного цикла и воздействия на окружающую среду литий-ионных аккумуляторов для электромобилей, особенно аккумуляторов на основе железофосфатной технологии (LFP),…
Вклад литий-ионных аккумуляторов в воздействие электромобилей на окружающую среду.
Исследование показывает, что экологическая нагрузка на этапе мобильности преобладает независимо от того, используется ли ICEV, работающий на бензине, или европейский BEV, работающий на электричестве.
Энергоэффективность литий-ионных батарей, повторно используемых в стационарных источниках питания
Возможность батареи второго использования воздействовать на цены на электромобили и обслуживать UTI
Рыночный срыв, эффекты Cascading, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты, эффекты. и восстановление экономики: модель гипотезы жизненного цикла. — Страница 4 из 28
28 р.
Это
отчет
входит в состав сборника под названием:
Управление научно-технической информации Технические отчеты и
был предоставлен в Электронную библиотеку ЕНТ
Отделом государственных документов библиотек ЕНТ.
Посмотреть полное описание этого отчета.
Эти элементы управления являются экспериментальными и еще не оптимизированы для пользователей.
яркость
Сброс яркости
0
контраст
Сброс контрастности
0
насыщенность
Сброс насыщенности
0
заточить
«/>
Сброс резкости
0
экспозиция
Сброс экспозиции
0
оттенок
Сбросить оттенок
0
гамма
Сброс Гамы
0
Применение фильтров
Предыдущий элемент
Следующий элемент
Следующий текст был автоматически извлечен из изображения на этой странице с помощью программного обеспечения для оптического распознавания символов:
Благодарности
Доктор Ричард Дж. Прайор основал Аспен и инициировал наше текущее направление исследований экономической уверенности
. Я также благодарю Крейга Йоргенсена за усовершенствование программного обеспечения Aspen, благодаря которому
сделал возможным моделирование, обсуждаемое в этом отчете. Я также благодарен Джорджу Бакусу,
Дженнифер Нельсон и Марку Элену за полезные комментарии и предложения.4
Предстоящие страницы
Вот что будет дальше.
Показать все страницы в этом отчете.
Поиск внутри
Этот отчет можно найти. Примечание: Результаты могут различаться в зависимости от разборчивости текста в документе.
Поиск
Инструменты / Загрузки
Получите копию этой страницы или просмотрите извлеченный текст.
Preview все размеры или…
- Скачать Миниатюра
- Скачать Маленький
- Скачать Средний
- Скачать Большой
- JSON-изображение IIF
- Изображение IIIF
Просмотр извлеченного (OCR) текста
Цитирование и распространение
Основная информация для ссылки на эту веб-страницу.