Научная статья на тему 'Инструментальные средства информационной поддержки жизненного цикла программного обеспечения'

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

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

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

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Куликова Елена Васильевна

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

Текст научной работы на тему «Инструментальные средства информационной поддержки жизненного цикла программного обеспечения»

УДК 004.4'22

ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА ИНФОРМАЦИОННОЙ ПОДДЕРЖКИ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНОГО

ОБЕСПЕЧЕНИЯ

Куликова Елена Васильевна, ст.преподаватель АНОО ВО «Сибирский институт бизнеса и информационных технологий», г.Омск, Россия (e-mail: sevpost_rab@mail.ru)

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

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

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

Технология разработки программного обеспечения - это совокупность процессов и методов создания программного продукта на всех этапах жизненного цикла [3].

В самом общем случае жизненный цикл программного обеспечения (ЖЦ ПО) - это его развитие во времени. Существуют различные степени детализации жизненного цикла. На рисунке в качестве примера показаны два из них (рис. 1).

1. Проектирование

X/

2. Проектирование приложений

1. Планирование разработки

О _

XX

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

=nJ

2. Определение требований

О

4. Разработка специальных средств администрирования

"NX"

Л

3. Проектирование -^-

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

4. Разработка приложений и реализация

О

5. Загрузка данных -^-

6. Тестирование

7. Эксплуатация и сопровождение

а) 1 вариант б) 2 вариант

Рисунок 1 - Разные степени детализации жизненного цикла

Автор придерживается второго варианта детализации жизненного цикла. Краткое описание этапов приведено в таблице 1.

Таблица 1 - Этапы жизненного цикла программного обеспечения

Этап Описание

1. Планирование разработки, проведение предпро-ектного обследования - определение трех основных компонентов: объема работ, ресурсов, стоимости проекта; - анализ и моделирование бизнес-процессов; - выбор инструментальных средств; - анализ систем-аналогов.

2. Определение требований - к информационному наполнению; - к оборудованию; - к программному обеспечению; - к организационно-методическому обеспечению; - к функциональности; - к интерфейсу и др.

3. Проектирование - концептуальное (инфологическое) проектирование; - физическое ее проектирование и др.; - создание прототипа работающего приложения.

4. Разработка приложений и реализация - проектирование транзакций; - проектирование пользовательского интерфейса, объектов для работы с приложением; - создание средств обеспечения целостности; - защита данных и др.

5. Загрузка данных - наполнение контентом

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

7. Эксплуатация и сопровождение - ввод в эксплуатацию; - наблюдение за созданной системой; - поддержка нормального функционирования; - создание дополнительных программных компонент; - модернизация и др.

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

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

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

исправление на текущем этапе.

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

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

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

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

Термин CASE (Computer Aided Software Engineering) используется в настоящее время в весьма широком смысле. Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения (ПО), сейчас приобрело новый смысл, охватывающий процесс разработки сложных информационных систем в целом.

CASE - набор инструментов и методов программной инженерии для проектирования программного обеспечения, который помогает обеспечить высокое качество программ, отсутствие ошибок и простоту в обслуживании программных продуктов [1].

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

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

Самые современные САББ-средства позволяют частично объединить этапы проектирования и технической реализации проекта.

Таблица 2

Этапы, фазы жизненного цикла Использование Примеры CASE- Компания - разра- средств ботчик

CASE-средства «верхнего уровня» (upper CASE tools)

1. Планирование разработки, проведение предпроект-ного обследования 2. Определение требований 3. Проектирование - анализ и документирование требований; - визуализация, создание различных схем и генерирование документации; - поддерживают использование традиционных языков диаграмм («сущность-связь», модель данных, иМЬ-диаграммы и). AllFusion process modeler (ранее BPwin) CA Technologies, США

AllFusion ERwin Data Modeler (ранее ERwin) CA Technologies, США

Design/IDEF MetaSoftware, США

Designer/2000 Oracle, США

Silverrun Silverrun Technologies Ltd

CASE. Аналитик Эйтекс, Россия

S-Designor Powersoft, США

DataBase Designer Ezyware Software, США

CASE-средства «низкого уровня» (lower CASE tools)

4. Разработка приложений и реализация. 6. Тестирование. Сосредотачиваются на тех реализациях, в которых из моделей может быть создан реальный программный продукт - генерирование структуры базы данных; - генерирование кода; - проведение тестирования; - управление версиями кода; - управление конфигурацией; - реверсивное проектирование. JAM JYACC, США

PowerBuilder SAP SE, Германия

Developer/2000 ORACLE, США

New Era Informix Software

SQL Windows Gupta Technologies

Rational Rose Rational Software

Object Team Cayenne

Интегрированное САББ-средство (или комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты:

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

- графические средства анализа и проектирования;

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

- средства конфигурационного управления;

- средства документирования;

- средства тестирования;

- средства управления проектом;

- средства реинжиниринга [2].

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

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

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

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

В процессе разработки применение CASE-средств позволит положительно влиять на:

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

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

- соблюдение стандартов, документирование.

Список литературы

1. Антонов, В.Ф. Методы и средства проектирования информационных систем: учебное пособие / В.Ф. Антонов, А. А. Москвитин. - Ставрополь: СКФУ, 2016. - 342 с.

2. Вичугова, А.А. Инструментальные средства информационных систем: учебное пособие / А.А. Вичугова. - Томск: Издательство Томского политехнического университета, 2015. - 136 с.

3. Назаров, С.В. Введение в программные системы и их разработку / С.В. Назаров, С.Н. Белоусова, И. А. Бессонова и др. - 2-е изд., испр. - М.: Национальный Открытый Университет «ИНТУИТ», 2016. - 650 с.

Elena Vasil'evna Kulikova, senior lecturer (e-mail: sevpost_rab@mail.ru)

Siberian Institute of business and Information technologies, Omsk, Russia TOOLS OF INFORMATION SUPPORT OF LIFE CYCLE SOFTWARE

Abstract. This paper discusses the different granularity of the life cycle of the software presents the content of the stages. The article focuses on the importance of using case-tools in the design phase and technical implementation of the project. Is a generalization of case-tools supporting the life cycle of the software at various stages.

Keywords: the life cycle of the software, the stages of the life cycle, design, case tools.

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