1. Разработка приложений итерациями.
2. Необязательно полное завершение работ на каждом этапе жизненного цикла.
3. Обязательное вовлечение пользователя в процесс разработки программной системы.
4. Применение CASE-средств, обеспечивающее целостность проекта.
5. Применение средств управления конфигурацией, упрощающее внесение изменений в проект.
6. Необходимость использования автоматических генераторов кода.
7. Использование прототипирования позволяет полнее выяснить и выполнить требования конечного пользователя.
8. Тестирование и развитие проекта осуществляется одновременно с разработкой.
9. Разработка ведется немногочисленной хорошо управляемой командой профессионалов.
10) Грамотное руководство разработкой программной системы, четкое планирование и контроль выполнения работ.
Методология RAD–это подход к разработке программного обеспечения в рамках спиральной модели жизненного цикла. Методология RAD получила широкое распространение в связи с тем, что актуальной является задача быстрой разработки приложений.
Процесс разработки программного обеспечения в соответствии с методологией RAD имеет следующие особенности:
1. команда разработчиков включает от двух до десяти человек;
2. планы работ тщательно прорабатываются и обычно составляют от двух до шести месяцев;
3. разработка представляет собой повторяющийся цикл, то есть разработчики, по мере того как программная система приобретает законченную форму, реализуют в ней требования, полученные от заказчика.
27. CASE–технологии проектирования ИС. Состав диаграмм и классы средств.
За последнее десятилетие сформировалось новое направление в программотехнике — CASE (Computer-AidedSoftware/SystemEngineering) — в дословном переводе — разработка программного обеспечения информационных систем при поддержке (с помощью) компьютера. В настоящее время не существует общепринятого определения CASE, термин CASE используется в весьма широком смысле. Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения, в настоящее время приобрело новый смысл, охватывающий процесс разработки сложных автоматизированных информационных систем в целом. Теперь под термином CASE-средства понимаются программные средства, поддерживающие процессы создания и сопровождения ИС, включая анализ и формулировку требований, проектирование прикладного программного обеспечения (ПО) (приложений) и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки ИС.
CASE-средства позволяют не только создавать "правильные" продукты, но и обеспечить "правильный" процесс их создания. Основная цель CASE состоит в том, чтобы отделить проектирование ИС от его кодирования и последующих этапов разработки, а также скрыть от разработчиков все детали среды разработки и функционирования ИС. При использовании CASE-технологий изменяются все этапы жизненного цикла программного обеспечения (подробнее об этом будет сказано ниже) информационной системы, при этом наибольшие изменения касаются этапов анализа и проектирования. Большинство существующих CASE-средств основано на методологиях структурного (в основном) или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектуры программных средств. Такие методологии обеспечивают строгое и наглядное описание проектируемой системы, которое начинается с ее общего обзора и затем детализируется, приобретая иерархическую структуру со все большим числом уровней. CASE-технологии успешно применяются для построения практически всех типов ИС, однако устойчивое положение они занимают в следующих областях:
· обеспечение разработки деловых и коммерческих ИС, широкое применение CASE-технологий обусловлены массовостью этой прикладной области, в которой CASE применяется не только для разработки ИС, но и для создания моделей систем, помогающих решать задачи стратегического планирования, управления финансами, определения политики фирм, обучения персонала и др. (это направление получило свое собственное название — бизнес-анализ);
· разработка системного и управляющих ИС. Активное применение CASE-технологий связано с большой сложностью данной проблематики и со стремлением повысить эффективность работ.
CASE — не революция в программотехнике, а результат естественного эволюционного развития всей отрасли средств, называемых ранее инструментальными или технологическими. С самого начала CASE-технологии развивались с целью преодоления ограничений при использовании структурных методологий проектирования 60—70-х гг. XX в. (сложности понимания, большой трудоемкости и стоимости использования, трудности внесения изменений в проектные спецификации и т. д.) за счет их автоматизации и интеграции поддерживающих средств. Таким образом, CASE-технологии не могут считаться самостоятельными методологиями, они только развивают структурные методологии и делают более эффективным их применение за счет автоматизации.
Помимо автоматизации структурных методологий и, как следствие, возможности применения современных методов системной и программной инженерии, CASE-средства обладают следующими основными достоинствами:
· улучшают качество создаваемых ИС за счет средств автоматического контроля (прежде всего контроля проекта);
· позволяют за короткое время создавать прототип будущей системы, что позволяет на ранних этапах оценить ожидаемый результат;
· ускоряют процесс проектирования и разработки;
· освобождают разработчика от рутинной работы, позволяя ему целиком сосредоточиться на творческой части разработки;
· поддерживают развитие и сопровождение разработки;
· поддерживают технологии повторного использования компонента разработки.
Появлению CASE-технологии и CASE-средств предшествовали исследования в области методологии программирования. Программирование обрело черты системного подхода с разработкой и внедрением языков высокого уровня, методов структурного и модульного программирования, языков проектирования и средств их поддержки, формальных и неформальных языков описаний системных требований и спецификаций и т. д. В 70—80-х гг. стала на практике применяться структурная методология, предоставляющая в распоряжение разработчиков строгие формализованные методы описания ИС и принимаемых технических решений. Она основана на наглядной графической технике: для описания различного рода моделей ИС используются схемы и диаграммы. Наглядность и строгость средств структурного анализа позволяла разработчикам и будущим пользователям системы с самого начала неформально участвовать в ее создании, обсуждать и закреплять понимание основных технических решений. Однако широкое применение этой методологии и следование ее рекомендациям при разработке контактных ИС встречалось достаточно редко, поскольку при неавтоматизированной (ручной) разработке это практически невозможно. Это и способствовало появлению программно-технических средств особого класса — CASE-средств, реализующих CASE-технологию создания и сопровождения ИС.
Необходимо понимать, что успешное применение CASE-средств невозможно без понимания базовой технологии, на которой эти средства основаны. Сами по себе программные CASE-средства являются средствами автоматизации процессов проектирования и сопровождения информационных систем. Без понимания методологии проектирования ИС невозможно применение CASE-средств.