Научная статья на тему 'МЕТОДОЛОГИЯ RUP КАК ЭФФЕКТИВНОЕ СРЕДСТВО РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ'

МЕТОДОЛОГИЯ RUP КАК ЭФФЕКТИВНОЕ СРЕДСТВО РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
294
32
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / МЕТОДОЛОГИЯ / ЖИЗНЕННЫЙ ЦИКЛ / ИНФОРМАЦИОННАЯ СИСТЕМА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Никифорова Анна Андреевна

Сегодня, с развитием экономики основной задачей большинства предприятий является повышение конкурентоспособности с помощью внедрения актуальных для их деятельности программных обеспечений, информационных систем. У заказчика есть выбор между тем или иным продуктом, между выбором модели ЖЦ этого продукта, а также методологии его разработки и разработки поддерживающего программного обеспечения (ПО). И если разработчик может предложить нам модель ЖЦ продукта, средства, поддерживающие данный продукт, программное обеспечение, то выбрать методологию, на которой будет строится ПО, необходимое для аппаратно-технической поддержки данного продукта и его разработки на каждом из этапов жизненного цикла, достаточно сложно. Таким образом, изучение методологий разработки программного обеспечения продукта занимает особую роль, поскольку является обходимым условием в современных тенденциях развития рынка, поддержания гибкого функционирования предприятий и его продуктов.Today, with the development of the economy, the main task of most enterprises is to increase competitiveness through the introduction of software and information systems relevant to their activities. The customer has a choice between one or another product, between the choice of the LC model of this product, as well as the methodology of its development and the development of supporting software (software). And if a developer can offer us a model of a product's LC, tools that support this product, software, then it is quite difficult to choose the methodology on which the software necessary for hardware and technical support of this product and its development at each stage of the life cycle will be built. Thus, the study of product software development methodologies plays a special role, since it is a necessary condition in modern market development trends, maintaining the flexible functioning of enterprises and its products.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Никифорова Анна Андреевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «МЕТОДОЛОГИЯ RUP КАК ЭФФЕКТИВНОЕ СРЕДСТВО РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ»

УДК 004.9

Информационные технологии

Никифорова Анна Андреевна, студентка 4 курса экономического факультета ФГБОУ ВО МГУ им. Н. П. Огарёва, г. Саранск, Россия

МЕТОДОЛОГИЯ RUP КАК ЭФФЕКТИВНОЕ СРЕДСТВО РАЗРАБОТКИ

ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

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

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

Annotation: Today, with the development of the economy, the main task of most enterprises is to increase competitiveness through the introduction of software and information systems relevant to their activities. The customer has a choice between one or another product, between the choice of the LC model of this product,

as well as the methodology of its development and the development of supporting software (software). And if a developer can offer us a model of a product's LC, tools that support this product, software, then it is quite difficult to choose the methodology on which the software necessary for hardware and technical support of this product and its development at each stage of the life cycle will be built.

Thus, the study of product software development methodologies plays a special role, since it is a necessary condition in modern market development trends, maintaining the flexible functioning of enterprises and its products.

Keywords: software, methodology, life cycle, information system.

На сегодняшний день существует большое количество интерпретаций понятия методологии RUP. Унифицированный процесс RUP представляет собой единый процесс распределения ответственности, описания этапов выполнения задач разработки программного обеспечения. С другой стороны, Rational Unified Process «является одним из корпоративных стандартов в области создания программного обеспечения. Данная технология была разработана компанией Rational Software, входящей в настоящее время в состав IBM» [3, с. 23].

Несмотря на то, что под RUP понимается как методология или стандарт, основная цель от использования Rational Unified Process (RUP) видится в реализации высококачественного проекта, направленного на удовлетворение потребностей и запросов пользователей.

Унифицированный процесс RUP представляет собой следующую совокупность характеристик:

- работа над процессом. То есть, команда разработчиков RUP работает не только над разработкой ПО, но и с заказчикам, постоянно сравнивая разработанный проект на каждом этапе с интересами клиента;

- автоматизации командой работы. То есть все участники разработки имеют доступ к БД, инструкциям по её применению. Это помогает быстрее справиться с критическими проблемами. Благодаря этому команда легко

находит общий язык в процессе работы над проектом;

- методология RUP реализуется в итерационном или инкрементном подходе создания и разработки программного обеспечения;

- RUP является конфигурируемым подходом. То есть, легко адаптируется к внешним обстоятельствам и может быть изменен;

Таким образом, продукт Rational Unified Process способствует обеспечиванию достаточно строгого и формализованного подхода к распределению задач между разработчиками на каждом этапе создания программного обеспечения.

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

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

Как уже было отмечено в качестве языка моделирования в общей базе знаний используется Unified Modeling Language (UML), являющийся международным стандартом. Методология разработки программного обеспечения состоит из 4 итерационных этапов жизненного цикла, сопровождающимися 9-ю процессами разработки.

Основными фазами разработки ПО согласно методологии Rational Unified

Process являются:

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

- фаза проработки (Elaboration). Основная цель этой фазы - на базе основных требований разработать стабильную базовую архитектуру продукта, которая позволяет решать поставленные перед системой задачи и в дальнейшем используются как основа разработки системы;

- фаза построения (Construction). Здесь происходит детальное прояснение требований и разработка системы, на основе спроектированной ранее архитектуры;

- фаза передачи (Transition). Цель фазы - сделать систему доступной заказчику. Здесь происходит окончательное развертывание системы в ее рабочей среде.

Также, как было отмечено, данный унифицируемый процесс основан на девяти основных процессах, являющихся элементами итерации каждой из фазы ЖЦ ПО. Данные процессы подразделяются на 6 рабочих (основных) и 3 поддерживающих (вспомогательных). К основным процессам относят: моделирование БП (здесь формируется некая модель «As is». Определяются желаемых параметры системы и нужды пользователей); управление требованиями (здесь начинается анализ прецедентов (последовательностей действий, выполняемых системой для получения наблюдаемого результата) и построение «use cases» (пользовательских историй), то есть, формальное отображение требований пользователя на языке UML. Результатом являются документы уровня менеджмента); анализ и проектирование; реализация/кодирование; тестирование; внедрение.

К поддерживающим (вспомогательным) процессам разработки ПО согласно методологии RUP относят: управление конфигурацией и изменениями; управление проектом; управление средой.

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

Методология Rational Unified Process разработки, проектирования и поддержания программного обеспечения поддерживается многими продуктами. В связи с этим, на мой взгляд, применение данного стандарта будет актуально на большинстве предприятий, целью которых являются увеличить свою конкурентоспособность, поскольку у таких организаций не будет проблем не только с поддержкой и сопровождением программного обеспечения, разработанного посредством RUP, но и поиском соответствующих продуктов, которые в полной мере могут поддерживать её.

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

Говоря про методологию RUP мы имеем ввиду, что в её основе лежит итеративно-инкрементной модель жизненного цикла с элементами каскадной модели. По этой причине данная методология имеет следующие достоинства:

- на каждой стадии (итерации) формируется полный пакет документов;

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

- представляет собой гибкий каркас для выполнения большого разнообразия проектов;

- достаточно оперативна к измененным требованиям;

- наличие управляемого процесса разработки продукта;

- заключается в создании и обслуживание продуктов;

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

Проанализировав преимущества Rational Unified Process стоит сказать, что её достоинства тесно связаны с достоинствами инкрементной модели. Несмотря на это, RUP имеет и недостатки:

- для каждого проекта должен быть спроектирован предварительно его процесс;

- большое количество документации;

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

- тяжело обеспечить необходимыми ресурсами.

Также стоит отметить, большим плюсом данной методологии является то, что Продукт Rational Unified Process (RUP) разработан и поддерживается Rational Software. Это достаточно устойчивая компания-разработчик ПО, находящаяся под влиянием корпорации IBM. Однако, несмотря на данное преимущество это также и является недостатком. Если Rational Software прекратит свою деятельность, то использование методологии RUP будет не возможным, поскольку Rational Software в таких случаях оставляет за собой право изъятия доктрин и принципов для успешной разработки программного обеспечения.

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

В заключение стоит сказать, что Rational Unified Process - это унифицированный процесс разработки ПО, представляющий собой некий единый, стандартный процесс.

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

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

больших, затратных проектов, поскольку Rational Unified Process как стандарт описывает большое количество обязательных процессов.

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

Познакомившись с методологией RUP стоит отметить, что Rational Unified Process - методология, представляющая собой некий стандартизированный проект, описывающий почти все этапы реализации программного обеспечения, фиксируя всех ответственных лиц.

Разработка ПО с применением данной методологии основывается на итеративно-инкрементной модели с элементами каскадной модели.

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

«Внедрение нового процесса разработки программного обеспечения — непростая задача. Особенно, если этот процесс — RUP» [2, с. 3]. Поэтому деятельность RUP начинается с моделирования процессов «TO BE», поэтому разработка продукта и все процессы понятны и известны заказчику заранее.

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

Также необходимо отметить, что внедрение методологии RUP представляет собой изменение бизнес-процессов любого предприятия. Как следствие «изменения порождают события, которые могут стать источниками как благоприятных возможностей, так и проблем. Они требует принятия решений и новых действий, что опять-таки приводит к новым изменениям» [1, c. 48]. Как следствие, необходимо понимать, что использование методологии RUP может привести не только к положительным результатам, но и напротив, не сможет разработать такое ПО, которое однозначно удовлетворяло бы потребности клиента.

Библиографический список:

1. Адизес И. К. Управление жизненным циклом корпорации / И. К. Адизес. - М.: Манн, Иванов и Фарбер, 2014. - 500 с.

2. Бергстрём С. Rational Unified Process - путь к успеху: рук. по внедрению RUP / С. Бергстрем, Л. Роберг. - М.: Кудиц-Образ, 2004. - 256 с.

3. Иванов Д. Е. Жизненные стадии и циклы организации / Д. Е. Иванов. - М.: Парта, 2005. - 75 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.