Технологии разработки программных систем
Изучение основных понятий и положений методологии и технологии разработки ПО. Обзор общих принципов разработки программных систем. Разработка техники практических навыков использования инструментальных средств для разработки программных продуктов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | учебное пособие |
Язык | русский |
Дата добавления | 23.09.2017 |
Размер файла | 2,4 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
1.1. Цель работы
Целью данной работы является изучение особенностей рабочего интерфейса программы Rational Rose 2003 (RR).
1.2. Общие сведения
Интерфейс состоит из следующих основных элементов (рис.1.1): главное меню; стандартная панель инструментов; специальная панель инструментов; окно браузера проекта; рабочая область изображения диаграммы или окно диаграммы; окно документации; окно журнала.
Рис.1.1. Общий вид рабочего интерфейса RR
Главное меню имеет следующий вид (рис.1.2):
Рис.1.2. Внешний вид главного меню программы
Операции меню File (Файл) позволяют создавать модели UML, загружать и сохранять модель в файле, печатать диаграммы (табл.1.1).
Таблица 1.1
Название |
Назначение операции |
|
New |
Создаёт новую модель |
|
Open |
Загружает модель из внешнего файла с диска |
|
Save |
Сохраняет модель во внешнем файле на диске |
|
Save As |
Сохраняет модель под другим именем |
|
Save Log As |
Сохраняет содержание журнала во внешнем файле на диске |
|
AutoSave Log |
Сохраняет автоматически содержание журнала с именем error.log |
|
Clear Log |
Очищает содержание журнала |
|
Load Model Workspace |
Загружает рабочую область из внешнего файла на диске |
|
Save Model Workspace |
Сохраняет рабочую область модели во внешнем файле на диске |
|
Save Model Workspace As |
Сохраняет рабочую область модели под другим именем |
|
Units |
Загружает категорию элементов модели из файла на диске |
|
Import |
Импортирует информацию из внешних файлов |
|
Export Model |
Экспортирует информацию о модели во внешний файл |
|
Update |
Вставляет информацию обратного проектирования из внешнего файла с расширением «red» в разрабатываемую модель |
|
|
Распечатывает диаграммы и спецификации элементов модели |
|
Print Setup |
Вызывает окно макета страницы для настройки свойств печати |
|
Edit Path Map |
Вызывает окно задания путей доступа к файлам системы |
|
<Имена файлов> |
Секция с именами последних загруженных файлов |
|
Exit |
Прекращает работу и закрывает программу |
Операции меню Edit (Правка) позволяют выполнять действия по редактированию элементов модели и их свойств и выполнять поиск элементов (табл.1.2).
Таблица 1.2
Название |
Назначение операции |
|
Undo |
Отменяет выполнение последнего действия |
|
Redo |
Возвращает отменённое последнее действие |
|
Cut |
Вырезает выделенный элемент модели и помещает его в буфер обмена |
|
Copy |
Копирует выделенный элемент модели и помещает его в буфер обмена |
|
Paste |
Вставляет элемент модели из буфера обмена в активную диаграмму модели |
|
Delete |
Удаляет выделенные элементы из текущей диаграммы, но не из модели |
|
Select All |
Выделяет все элементы на текущей диаграмме модели |
|
Delete from Model |
Удаляет все выделенные элементы из модели |
|
Relocate |
Перемещает / отменяет перемещение классов, ассоциаций или компонентов из одного пакета в другой |
|
Find |
Вызывает диалоговое меню поиска элемента в модели по его имени |
|
Reassign |
Позволяет заменить выделенный элемент модели другим элементом модели |
|
Compartment |
Отображает доп. информацию об объектах, классах, актерах или пакетах |
|
Change Info |
Изменяет тип выделенного элемента текущей диаграммы на другой тип |
Операции меню View (Вид) позволяют отображать на экране различные элементы рабочего интерфейса и изменять представление диаграмм (табл.1.3).
Таблица 1.3
Название |
Назначение операции |
|
Toolbars |
Настройка интерфейса: Standard - стандартная панель инструментов, Toolbox - специальная панель инструментов диаграммы, Configure - окно настройки параметров модели на вкладке настройки панелей инструментов |
|
Status Bar |
Делает видимой/невидимой строку состояния |
|
Documentation |
Делает видимым/невидимым окно документации |
|
Browser |
Делает видимым/невидимым браузер проекта |
|
Log |
Делает видимым/невидимым окно журнала |
|
Editor |
Делает видимым/невидимым встроенный текстовый редактор |
|
Time Stamp |
Включает/выключает режим отображения времени в записях журнала |
|
Zoom to Selection |
Изменяет масштаб изображения выделенных элементов модели, так чтобы они разместились в выделении |
|
Zoom In |
Увеличивает масштаб изображения |
|
Zoom Out |
Уменьшает масштаб изображения |
|
Fit in Window |
Изменяет (уменьшает) масштаб изображения всех элементов текущей диаграммы, так чтобы все они разместились в одном окне |
|
Undo Fit in Window |
Отменяет изменение масштаба изображения элементов в одном окне |
|
Page Breaks |
Разбивает текущую диаграмму на страницы для последующей печати |
|
Refresh |
Перерисовывает текущую диаграмму |
|
As Booch |
Изображает элементы модели в соответствии с нотацией Booch |
|
As OMT |
Изображает элементы модели в соответствии с нотацией OMT |
|
As Unified |
Изображает элементы модели в соответствии с нотацией UML |
Операции меню Format (Формат) позволяют выполнять действия по изменению внешнего вида элементов модели на диаграммах (табл.1.4).
Таблица 1.4
Название |
Назначение операции |
|
Font Size |
Изменяет масштаб используемого шрифта |
|
Font |
Вызывает диалоговое окно выбора шрифта |
|
Line Color |
Вызывает диалоговое окно выбора цвета линий |
|
Fill Color |
Вызывает диалоговое окно выбора цвета для графических элементов |
|
Use Fill Color |
Включает/выключает режим отображения цвета |
|
Automatic Resize |
Включает/выключает режим автоматического изменения размеров графических элементов для отображения текстовой информации о свойствах |
|
Stereotype |
Выбирает способ изображения стереотипов: None - не показывается; Label - в форме текста; Decoration - в форме значка в правом верхнем углу элемента; Icon - элемент отображается в форме графического стереотипа |
|
Stereotype Label |
Включает/выключает режим текстовых стереотипов для взаимосвязей |
|
Show Visibility |
Включает/выключает режим кванторов видимости атрибутов и операций |
|
Show Compartment Stereotypes |
Включает/выключает режим текстовых стереотипов атрибутов и операций |
|
Show Operation Signature |
Включает/выключает режим отображения сигнатуры операций |
|
Show All Attributes |
Делает видимыми/невидимыми атрибуты выделенных классов |
|
Show All Operations |
Делает видимыми/невидимыми операции выделенных классов |
|
Suppress Attributes |
Делает видимой/невидимой секцию атрибутов. Скрывает секцию атрибутов даже в том случае, когда выбрана опция Show All Attributes |
|
Suppress Operations |
Делает видимой/невидимой секцию операций выделенных классов. |
|
Line Style |
Выбирает стиль линий: Rectilinear - вертикальные и горизонтальные отрезки; Oblique - наклонные отрезки; Toggle - промежуточный вариант |
|
Layout Diagram |
Автоматически размещает графические элементы с минимальным количеством пересечений и наложений линий |
|
Autosize All |
Автоматически изменяет размеры графических элементов так, чтобы текстовая информация помещалась внутри изображений |
|
Layout Selected Shapes |
Автоматически размещает выделенные графические элементы с минимальным количеством пересечений и наложений линий |
Операции меню Browse (Обзор) позволяют отображать рабочие окна с диаграммами и вызывать окна редактирования свойств элементов (табл.1.5).
Таблица 1.5
Название |
Назначение операции |
|
Use Case Diagram |
Вызывает окно выбора отображения диаграммы прецедентов или создания новой диаграммы |
|
Class Diagram |
Вызывает окно выбора отображения диаграммы классов или создания новой диаграммы |
|
Component Diagram |
Вызывает окно выбора отображения диаграммы компонентов или создания новой диаграммы |
|
Deployment Diagram |
Отображает диаграмму развёртывания модели |
|
Interaction Diagram |
Вызывает окно выбора отображения диаграммы взаимодействия или создания новой диаграммы |
|
State Machine Diagram |
Вызывает окно выбора отображения диаграммы переходов состояний или создания новой диаграммы |
|
Expand |
Отображает первую из диаграмм выделенного пакета модели |
|
Parent |
Отображает родителя выделенной диаграммы модели |
|
Specification |
Вызывает окно свойств выделенного элемента модели |
|
Top Level |
Отображает диаграмму самого верхнего уровня для диаграммы |
|
Referenced Item |
Отображает диаграмму классов с классом для объекта |
|
Previous Diagram |
Отображает предыдущую диаграмму модели |
|
Create Message Trace Diagram |
Создаёт диаграмму трассировки сообщений |
Операции меню Report (Отчёт) позволяют отображать информацию об элементах и вызывать окно выбора шаблона для отчёта о модели (табл.1.6).
Таблица 1.6
Название |
Назначение операции |
|
Show Usage |
Отображает информацию об использовании элемента на диаграммах |
|
Show Instances |
Отображает информацию об использовании объектов класса на диаграммах |
|
Show Access Violations |
Отображает информацию о ссылках классов одного пакета на классы другого пакета при отсутствии зависимости между этими пакетами |
|
SoDA Report |
Генерирует отчёт о модели с использованием IBM Rational SoDA |
|
Show Participants in UC |
Отображает информацию о классах, компонентах и операциях, которые участвуют в реализации прецедента на диаграммах |
Операции меню Query (Запрос) позволяют добавлять элементы на диаграмму и настраивать фильтр отображения отношений между элементами (табл.1.7).
Таблица 1.7
Название |
Назначение операции |
|
Add Classes |
Вызывает окно с предложением добавить на диаграмму классы, которые имеются на различных диаграммах модели |
|
Add Use Cases |
Вызывает окно с предложением добавить на диаграмму прецеденты, которые имеются на различных уровнях модели |
|
Expand Selected Elements |
Вызывает окно с предложением добавить на диаграмму элементы, которые связаны с выделенным элементом на других диаграммах |
|
Hide Selected Elements |
Вызывает окно с предложением удалить с текущей диаграммы элементы, которые связаны с выделенным элементом |
|
Filter Relationships |
Вызывает окно, позволяющее включить/выключить режим отображения различных отношений на текущей диаграмме |
Состав операций меню Tools (Инструменты) зависит от установленных конкретных расширений (табл.1.8).
Таблица 1.8
Название |
Назначение операции |
|
Create |
Создаёт новый элемент модели из предлагаемого списка, для последующего размещения его на диаграмме |
|
Check Model |
Проверяет модель на наличие ошибок, информация - в окне журнала |
|
Model Properties |
Настройка свойств языка реализации для выделенного элемента модели: Edit - правка набора свойств; View - просмотр набора свойств; Replace - замена набора свойств на новый из внешнего файла; Export - сохранение набора свойств во внешнем файле; Add - добавление к набору свойств нового набора из внешнего файла; Update - обновление набора свойств после его изменения |
|
Options |
Вызывает окно настройки параметров модели |
|
Open Script |
Вызывает окно для открытия внешнего файла, содержащего текст скрипта для его правки в окне встроенного редактора скриптов |
|
New Script |
Открывает окно встроенного редактора скриптов для создания, отладки, выполнения и сохранения нового скрипта во внешнем файле |
|
ANSI C++ |
Выполняет настройку свойств ЯП ANSI C++ как языка реализации отдельных элементов модели |
|
CORBA |
Выполняет настройку свойств и спецификацию модели для генерации объектов CORBA для реализации отдельных элементов модели |
|
Java/J2EE |
Выполняет настройку свойств ЯП Java/J2EE, выбранного в качестве языка реализации отдельных элементов модели |
|
Oracle8 |
Выполняет настройку свойств и спецификацию модели для генерации схем СУБД Oracle 8 для отдельных элементов модели |
|
Quality Architect |
Выполняет настройку свойств и тестирование модели с помощью средства IBM Rational Quality Architect |
|
Rational Requisite Pro |
Выполняет настройку свойств модели для установления связей со средством спецификации и управления требованиями IBM Rational Requisite Pro |
|
Model Integrator |
Открывает окно средства интеграции моделей IBM Rational Model Integrator |
|
Web Publisher |
Выполняет настройку свойств модели для её публикации в гипертекстовом формате |
|
TOPLink |
Вызывает мастер преобразования таблиц модели данных в классы ЯП Java, выбранного в качестве языка реализации отдельных элементов модели |
|
COM |
Выполняет настройку свойств и спецификацию модели для генерации объектов COM с целью реализации отдельных элементов модели |
|
Visual C++ |
Выполняет настройку свойств и спецификацию модели для генерации кода MS Visual C++ как языка реализации отдельных элементов модели |
|
Version Control |
Выполняет настройку свойств модели для установления со средством управления и контроля версий модели |
|
Visual Basic |
Выполняет настройку свойств и спецификацию модели для генерации кода Visual Basic как языка реализации отдельных элементов модели |
|
XML_DTD |
Выполняет настройку свойств и спецификацию модели для её публикации в формате расширяемого языка разметки XML |
|
Class Wizard |
Вызывает мастер создания нового класса и его размещения на диаграмме |
Стандартная панель инструментов располагается ниже строки главного меню (рис.1.3) и обеспечивает быстрый доступ к часто используемым командам.
Рис.1.3. Внешний вид стандартной панели инструментов
Браузер проекта организует представления модели в виде иерархической структуры, которая упрощает навигацию и позволяет отыскать любой элемент модели в проекте. Самая верхняя строка браузера проекта содержит имя проекта. Любой элемент, который разработчик добавляет в модель, сразу отображается в окне браузера. Браузер проекта позволяет также организовывать элементы модели в пакеты и перемещать элементы между различными представлениями модели.
Иерархическое представление структуры каждого проекта организовано в браузере в форме 4-х представлений:
- Use Case View - представление прецедентов: диаграммы прецедентов и их реализации в виде вариантов взаимодействия;
- Logical View - логическое представление: диаграммы классов, диаграммы состояний и диаграммы деятельности;
- Component View - представление компонентов: диаграммы компонентов;
- Deployment View - представление развёртывания: диаграмма развёртывания.
При создании нового проекта эта структура формируется автоматически.
Специальная панель инструментов располагается между окном браузера и окном диаграммы в средней части интерфейса. Её вид зависит от типа диаграммы, а также от нотации для изображения элементов диаграмм. В RR реализованы три нотации: UML, OMT и Booch. По умолчанию предлагается панель инструментов для построения диаграммы классов (рис.1.4).
Рис.1.4. Внешний вид специальной панели инструментов для диаграммы классов
Окно диаграммы является основной графической областью программы, в которой визуализируются различные представления модели проекта. При разработке нового проекта, если не был использован мастер проектов, окно диаграммы представляет собой чистую область. По мере разработки отдельных диаграмм в окне диаграммы будут располагаться графические элементы этих диаграмм.
Окно документации предназначено для документирования элементов модели. В него можно записывать различную текстовую информацию. Эта информация при генерации кода преобразуется в комментарии и никак не влияет на логику выполнения кода. Окно документации по умолчанию должно присутствовать на экране после загрузки программы (рис.1.5). При отсутствии окна его можно отобразить через пункт меню View > Documentation (Вид > Документация).
Рис.1.5. Внешний вид окна документации
Окно журнала (Log) предназначено для автоматической записи различной служебной информации. В журнале фиксируется время и характер выполняемых разработчиком действий, таких как обновление модели, настройка меню и панелей инструментов, сообщения об ошибках при генерации кода.
1.3. Порядок выполнения
1. Изучить назначение основных элементов и освоить интерфейс RR.
2. Изучить назначение и освоить операции меню File, View, Browse, и Tools.
1.4. Содержание отчёта
Результаты выполнения лабораторной работы необходимо представить в виде отчёта, который должен содержать краткое изложение изученных элементов и основных операций интерфейса RR.
1.5. Варианты заданий
В данной лабораторной работе варианты заданий не предусмотрены. Студенты выполняют общее для всех задание по изучению интерфейса RR.
1.6. Контрольные вопросы
1. Что представляет собой программа RR?
2. В чём особенности рабочего интерфейса программы RR?
3. Какие документы формируются при разработке проекта с помощью RR?
4. В чём назначение основных элементов рабочего интерфейса RR?
5. Какие пункты меню используются для настройки параметров модели?
6. В чём назначение браузера проекта? Перечислите его составляющие.
7. Для чего предназначены операции меню Browse (Обзор)?
8. В чём отличие специальной панели инструментов от стандартной?
9. Для чего используется окно документации?
2. Диаграмма прецедентов
2.1. Цель работы
Целью данной работы является использование диаграммы прецедентов при разработке программной системы в среде RR.
2.2. Общие сведения
Работа над моделью RR начинается с общего анализа проблемы и построения диаграммы прецедентов (use case diagram, тж. диаграмма вариантов использования), которая отражает функциональное назначение проектируемой системы. Каждый прецедент - это описание набора схожих сценариев поведения, которому следуют актёры (actors). Диаграмма прецедентов показывает совокупность прецедентов и актёров, а также отношения между ними. Актёр изображается фигурой человека или символом класса со стереотипом с кратким именем. Прецедент обозначается эллипсом и кратким именем.
Для вновь создаваемого проекта можно воспользоваться мастером типовых проектов. Мастер типовых проектов доступен из меню File > New (Файл > Новый) или при первоначальной загрузке RR. В случае разработки проекта, для которого не известна или не выбрана технология его реализации, следует отказаться от мастера, в результате чего появится интерфейс RR с чистым окном активной диаграммы классов.
Для разработки диаграммы прецедентов необходимо активизировать соответствующую диаграмму в окне диаграммы. Это можно сделать следующими способами: а) раскрыть представление прецедентов Use Case View в браузере проекта и дважды щелкнуть на значке Main (Главная); б) с помощью операции меню Browse > Use Case Diagram (Браузер > Диаграмма прецедентов).
При этом появляется новое окно с чистым рабочим листом диаграммы прецедентов и специальная панель инструментов, содержащая часть кнопок с изображением графических элементов для построения этой диаграммы (табл.2.1).
Добавить кнопки со значками других графических элементов, таких как бизнес-прецедент (business use case), бизнес-актёр (business actor), сотрудник (business worker), или удалить ненужные кнопки можно с помощью настройки специальной панели инструментов. Открыть окно настройки специальных панелей инструментов для диаграмм можно с помощью операции меню Tools > Options (Инструменты > Параметры), раскрыв вкладку Toolbars (Панели инструментов).
Таблица 2.1
Значок |
Подсказка |
Назначение кнопки |
|
Selection Tool |
Переключает в режим выделения элементов |
||
Text Box |
Добавляет на диаграмму текстовую область |
||
Note |
Добавляет на диаграмму примечание |
||
Anchor Note to Item |
Добавляет связь примечания с элементом диаграммы |
||
Package |
Добавляет на диаграмму пакет |
||
Use Case |
Добавляет на диаграмму прецедент |
||
Actor |
Добавляет на диаграмму актёра |
||
Unidirectional Association |
Добавляет на диаграмму направленную ассоциацию |
||
Dependency or Instantiates |
Добавляет на диаграмму отношение зависимости |
||
Generalization |
Добавляет на диаграмму отношение обобщения |
Для добавления актёра на диаграмму прецедентов нужно с помощью левой кнопки мыши нажать кнопку со значком актёра на специальной панели инструментов, отпустить левую кнопку мыши и щелкнуть левой кнопкой мыши на свободном месте рабочего листа диаграммы. На диаграмме появится изображение актёра. Чтобы изменить расположение изображения графического элемента модели, следует щелчком левой кнопки мыши выделить его, и, не отпуская левой кнопки, переместить в нужное место диаграммы.
Для любого графического элемента модели по щелчку правой кнопкой мыши на выбранном элементе вызывается контекстное меню данного элемента, среди операций которого имеется пункт Open Specification (Открыть спецификацию). В этом случае появляется окно со специальными вкладками, в поля ввода которых можно занести всю информацию по данному элементу (рис.2.1):
Рис.2.1. Диалоговое окно спецификации свойств актёра
Следует отметить, что открыть диалоговое окно спецификации свойств любого элемента модели можно также двойным щелчком левой кнопкой мыши на графическом изображении этого элемента. Хотя в RR актёр является классом, для него некорректно специфицировать атрибуты и операции, поскольку актёр является внешней по отношению к системе сущностью.
Рис.2.2. Диалоговое окно спецификации свойств
Для уточнения назначения актёра в модели следует изменить его стереотип и добавить текст документации в спецификации этого актёра (рис.2.2). Для изменения стереотипа нужно выбрать соответствующий стереотип во вложенном списке Stereotype (например, строку Business Actor). Для добавления текста документации в секцию Documentation следует ввести требуемый текст и нажать кнопку Apply (Применить) или OK.
Для уточнения свойств прецедента следует открыть окно спецификации его свойств. Изменение стереотипа осуществляется во вложенном списке Stereotype (например, Business Use Case), добавление текста документации выполняется в секции Documentation, далее следует нажать кнопку Apply (Применить) или OK.
Для добавления ассоциации между актёром и прецедентом на диаграмму нужно с помощью левой кнопки мыши нажать на специальной панели инструментов кнопку со значком направленной ассоциации, отпустить левую кнопку мыши, щелкнуть левой кнопкой мыши на изображении актёра на диаграмме и отпустить её на изображении прецедента. При необходимости можно сделать направленную ассоциацию ненаправленной, для чего следует воспользоваться диалоговым окном свойств ассоциации. Открыть это окно можно, например, двойным щелчком на изображении линии ассоциации, после чего убрать отметку выбора Navigable (Навигация) на вкладке Role A Detail (детальные свойства концевой точки A).
Для добавления на диаграмму отношения зависимости между двумя прецедентами необходимо с помощью левой кнопки мыши нажать кнопку со значком зависимости на специальной панели инструментов, отпустить левую кнопку мыши, щелкнуть левой кнопкой мыши на изображении первого прецедента и отпустить её на изображении второго прецедента. В результате на диаграмме появится изображение отношения зависимости, которое соединяет эти прецеденты.
С целью указания текстового стереотипа для добавленного отношения зависимости между двумя прецедентами необходимо с помощью окна спецификации свойств этого отношения выбрать нужный стереотип из предлагаемого списка (например, стереотип <<include>>). После задания для отношения зависимости стереотипа текст этого стереотипа в угловых скобках появится рядом с пунктирной линией зависимости, связывающей соответствующие прецеденты. Для лучшей визуализации диаграммы текстовую область стереотипа можно переместить в нужное место диаграммы. Выполнить это можно с помощью общего способа перемещения элементов модели. При работе с отношениями на диаграмме следует помнить о назначении отношений в нотации UML.
Формирование пакета прецедентов выполняется с помощью кнопки Package на специальной панели инструментов, включение (добавление) прецедентов в пакет осуществляется в браузере проекта методом перемещения.
В дальнейшем построенная диаграмма может быть изменена посредством добавления или удаления элементов. Для удаления любого графического элемента с диаграммы его следует выделить на диаграмме и нажать клавишу Delete на клавиатуре. При этом выделенный элемент будет удалён с активной диаграммы, но не из модели. Для удаления элемента из модели необходимо выделить удаляемый элемент на диаграмме и воспользоваться операцией главного меню Edit > Delete from Model (Правка > Удалить из модели). Для этой же цели служит комбинация клавиш быстрого доступа Ctrl+D.
Результаты работы необходимо сохранить в файле проекта через меню File > Save (Файл > Сохранить) или File > Save As (Файл > Сохранить как). При этом вся информация о проекте, включая диаграммы и спецификации элементов, будет сохранена в одном файле.
Типовой пример
В качестве примера рассматривается система управления банкоматом. В этом примере в модель входят элементы: а) актёры: `Клиент банка' и `Банк'; б) прецеденты: `Снятие наличных по кредитной карточке', `Проверка ПИН-кода', `Получение справки о состоянии счёта', `Блокирование кредитной карточки'.
Актёр `Клиент банка': стереотип - business actor; текст - `Любое физическое лицо, пользующееся услугами банкомата'. Актёр `Банк' - стереотип - service (банкомат использует некоторые услуги Банка в качестве сервиса). Прецедент `Снятие наличных по кредитной карточке': стереотип - business use case; текст - `Основной прецедент для разрабатываемой модели банкомата'. Прецедент `Получение справки о состоянии счёта': стереотип - business use case.
В модели добавлены следующие направленные ассоциации: от `Клиент банка' к `Снятие наличных по кредитной карточке' и к `Получение справки о состоянии счёта', от `Снятие наличных по кредитной карточке' и от `Получение справки о состоянии счёта' к `Банк'. Добавлены 3 отношения зависимости: 1) с <<include>>: к `Проверка ПИН-кода' от `Снятие наличных по кредитной карточке' и от `Получение справки о состоянии счёта'; 3) с <<extend>>: к `Проверка ПИН-кода' от `Блокирование кредитной карточки'. При этом отношение зависимости <<extend>> на диаграмме означает следующее. Прецедент `Блокирование кредитной карточки' будет выполняться только в том случае, если в результате проверки ПИН-кода будет установлено, что соответствующая кредитная карточка утрачена её владельцем или признана недействительной.
Вид диаграммы прецедентов для модели банкомата приведён на рис.2.3.
Рис.2.3. Окончательный вид диаграммы прецедентов для модели банкоматов
Характерной особенностью среды RR является возможность работы с символами кириллицы. При спецификации элементов модели с последующей генерацией кода следует записывать имена и свойства символами того языка, который поддерживается соответствующим ЯП.
2.3. Порядок выполнения
1. Изучить особенности построения диаграмм прецедентов с помощью RR. Рассмотреть типовой пример построения модели прецедентов банкомата.
2. Построить модель прецедентов программной системы с помощью RR в соответствии с индивидуальным заданием и со следующей последовательностью действий с учётом приведённых требований к модели прецедентов:
2.1. Определить состав и установить стереотипы актёров (на диаграмме прецедентов должно быть не менее 2 актёров).
2.2. Сформировать состав и последовательность, а также установить стереотипы прецедентов (на диаграмме должно быть не менее 4 прецедентов).
2.3. Обозначить на диаграммах отношения с определёнными стереотипами между исполнителями и прецедентами, а также между прецедентами.
2.4. Организовать пакет прецедентов.
2.5. Добавить к построенным диаграммам соответствующие примечания.
3. Оформить отчёт по результатам выполнения лабораторной работы.
2.4. Содержание отчёта
Результаты выполнения лабораторной работы необходимо представить в виде отчёта, который должен содержать следующие разделы:
1. Постановка задачи.
2. Описание ролей актёров и прецедентов построенной диаграммы.
3. Описание взаимодействия между компонентами проектируемой системы.
4. Окончательный вид диаграммы прецедентов проектируемой системы.
2.5. Варианты заданий
В качестве моделируемых систем предлагается рассматривать следующие:
1. Университет 2. Кафедра ВУЗа 3. Отдел кадров
4. Бухгалтерия 5. Библиотека 6. Поликлиника
7. Аптека 8. Строительная фирма 9. Коммунальное предприятие
10. Станция АЗС 11. Интернет-магазин 12. Интернет-салон
13. Автостоянка 14. Ресторан 15. Автосалон
2.6. Контрольные вопросы
1. Для чего используется диаграмма прецедентов?
2. Как создать новую диаграмму прецедентов в среде RR?
3. Как при помощи диаграммы прецедентов описать сценарий для системы?
4. Каким образом на диаграмму прецедентов можно добавить новый элемент?
5. Как в RR визуализируются актёры и прецеденты?
6. Как в RR можно выполнить настройку специальной панели инструментов?
7. Как изменить стереотип актёра на диаграмме прецедентов?
8. Как осуществляется формирование пакетов прецедентов в RR?
9. В чём отличие удаления элемента с диаграммы от его удаления из модели?
3. Диаграмма классов. Пакеты
3.1. Цель работы
Целью данной работы является использование диаграммы классов при разработке программной системы в среде RR.
3.2. Общие сведения
Диаграмма классов (class diagram) является основным логическим представлением модели и содержит детальную информацию о внутреннем устройстве ОО системы или об архитектуре системы. На диаграммах классов отображаются некоторые классы и пакеты системы. Обычно для описания системы создают несколько диаграмм классов. На одних показывают некоторое подмножество классов и отношения между классами подмножества. На других отображают то же подмножество, но вместе с атрибутами и операциями классов. Третьи соответствуют только пакетам классов и отношениям между ними.
По умолчанию в среде RR существует одна диаграмма классов, называемая главной (Main). На этой диаграмме показывают пакеты классов модели, внутри каждого пакета также имеется главная диаграмма, включающая в себя все классы этого пакета. Двойной щелчок мыши на пакете диаграммы классов в среде RR открывает главную диаграмму этого пакета.
Диаграмма классов - основная диаграмма для создания исходного кода приложения на любом ЯП, который поддерживается генератором кода RR.
Активизировать окно диаграммы классов можно несколькими способами:
- окно диаграммы классов появляется по умолчанию в рабочем окне диаграммы после создания нового проекта;
- щёлкнуть на кнопке с изображением диаграммы классов на стандартной панели инструментов;
- раскрыть логическое представление (Logical View) в браузере проекта и дважды щёлкнуть на значке Main (Главная);
- щёлкнуть правой кнопкой мыши на логическом представлении браузера, в открывшемся меню выбрать пункт New > Class Diagram (Создать > Диаграмма классов), ввести имя новой диаграммы и дважды щелкнуть на диаграмме в браузере для её открытия.
При этом появляется новое окно с чистым рабочим листом диаграммы классов и специальная панель инструментов, содержащая кнопки с изображением графических элементов для разработки диаграммы классов (табл.3.1).
Для открытия существующей диаграммы классы необходимо найти эту диаграмму в логическом представлении браузера и дважды щелкнуть по ней или в меню модели выбрать пункт Browse > Class Diagram (Обзор > Диаграмма классов), затем в списке Package (Пакет) выбрать пакет, содержащий требуемую диаграмму, в списке Class Diagram указать нужную диаграмму и нажать OK.
Таблица 3.1
Значок |
Подсказка |
Назначение кнопки |
|
Selection Tool |
Переключает в режим выделения элементов на диаграмме |
||
Text Box |
Добавляет на диаграмму текстовую область |
||
Note |
Добавляет на диаграмму примечание |
||
Anchor Note to Item |
Добавляет связь примечания с элементом диаграммы |
||
Class |
Добавляет на диаграмму класс |
||
Interface |
Добавляет на диаграмму интерфейс |
||
Unidirectional Association |
Добавляет на диаграмму однонаправленную ассоциацию |
||
Association Class |
Добавляет на диаграмму двунаправленную ассоциацию |
||
Package |
Добавляет на диаграмму пакет |
||
Dependency or Instantiates |
Добавляет на диаграмму отношение зависимости |
||
Generalization |
Добавляет на диаграмму отношение обобщения |
||
Realize |
Добавляет на диаграмму отношение реализации |
После создания диаграммы классов нужно добавить новые классы в модель. Доступны классы нескольких типов: регулярные, параметризованные, классы-наполнители, утилиты классов, утилиты параметризованных классов, утилиты классов-наполнителей и метаклассы.
Для добавления класса на диаграмму классов нужно с помощью левой кнопки мыши нажать кнопку со значком класса на специальной панели инструментов, отпустить левую кнопку мыши и щёлкнуть левой кнопкой мыши на свободном месте рабочего листа диаграммы. Либо воспользоваться меню Tools > Create > Class. На диаграмме появится изображение класса.
Существует несколько путей, чтобы поместить уже созданный класс на диаграмму классов: а) перетащить нужный класс мышкой из окна Browser; б) воспользоваться меню Query > Add Classes (Запрос > Добавить классы) и в окне выбрать необходимые классы для включения в диаграмму.
При необходимости добавления параметризированного класса (parameterized class) нужно выполнить следующие действия: 1) нажать кнопку Parameterized class на панели инструментов (при её наличии) и щелкнуть мышью на диаграмме; 2) добавить новый класс одним из описанных выше методов, в окне спецификации класса в поле Type (Тип) указать Parameterized class и нажать OK; 3) в меню модели выбрать пункт Tools > Create > Parameterized class (Инструменты > Создать > Параметризированный класс) и щёлкнуть мышью на диаграмме.
Аналогичными способами можно создать класс-наполнитель (instantiated class), утилиту класса (class utility), утилиту параметризированного класса (parameterized class utility), утилиту класса-наполнителя (instantiated class utility), метакласс (metaclass).
Для удаления класса из диаграммы выделите его на диаграмме и нажмите клавишу Delete (при этом класс останется на других диаграммах и в браузере). Для удаления класса из модели выделите его на диаграмме, в меню модели выберите пункт Edit > Delete from model (Правка > Удалить из модели).
После добавления класса в диаграмму становится доступно контекстное меню класса. Его содержание может меняться при ассоциации класса с разными ЯП. Назначение отдельных пунктов меню для неассоциированного класса:
- Open Specifications - открытие окна заполнения спецификаций;
- Sub Diagrams - создание к текущему классу диаграммы переходов состояний или переход на поддиаграммы класса;
- New Attribute - добавление нового атрибута класса;
- New Operation - добавление новой операции для класса;
- Select in Browser - выделение класса в окне Browser;
- Relocate - перемещение класса в новый пакет / на новое местоположение;
- Options - вызов подменю настройки значка класса;
- Format - вызов подменю настройки шрифта, цвета, заливки диаграммы.
RR предоставляет ряд возможностей по детализации классов: каждому классу можно дать имя, определить его стереотип, указать видимость, задать другие параметры. Свойства класса значительно влияют на генерацию кода класса.
Большинство определяемых для класса параметров доступно в окне спецификации класса. Для его открытия щёлкните правой кнопкой мыши на классе в браузере или на диаграмме классов, в открывшемся меню выберите пункт Open Specifications (Открыть спецификации) (табл.3.2).
Таблица 3.2
Вкладка |
Описание |
|
General Главная |
Задаёт главные свойства класса. Здесь можно задать документацию к классу. Поля вкладки: Name - имя класса;. Type - тип класса; Stereotype - стереотип класса; Export Control - доступ к классу, когда он в пакете. Виды доступа: Public (общедоступный / открытый, знак «+») - элемент виден вне пакета; Protected (защищенный, «#») - элемент доступен только для вложенных классов, классов с типом friends и внутри класса; Private (закрытый, «-») - закрытый элемент класса; Implementation (реализация, «~») - элемент виден только в пакете. |
|
Detail Детализация |
Указывает дополнительные установки класса. Поля вкладки: Multiplicity (кратность) - задаёт ожидаемое число объектов, которые будут созданы на основе этого класса. Обычно его задают для связанных классов. Space (пространство) - размер оперативной памяти для создания объекта этого класса. Может быть задано числом или формулой, значение должно учитывать накладные расходы на создание объекта плюс размер всех входящих объектов. Persistence (устойчивость) - время жизни объекта класса. Если установлен флажок persistent, то объект должен быть доступен в течение всей работы программы или доступен других потоков или процессов. Не действует для утилит классов, параметризированных утилит класса и реализаций утилит классов. Concurrency (параллелизм) - поведение элемента в многопотоковой среде. Данная установка может принимать следующие варианты: sequential (последовательный; по умолчанию) - класс для работы только с одним потоком; guarded (охраняемый) - класс для работы с несколькими потоками: является арбитром потоков; active (активный) - класс отдельного потока; synchronous (синхронный) - класс для работы нескольких потоков с их синхронизацией. Abstract adornment (абстрактное украшение) - абстрактный класс. Название абстрактного класса представляется курсивом. Formal Arguments (формальные аргументы) - только для параметризированных классов и утилит классов. |
|
Components Компоненты |
Отражает компоненты, с которыми ассоциирован класс. Она похожа на Realized в спецификациях компонента. Здесь возможна установка связи текущего класса и компонента, а в Realized - установка связи текущего компонента и класса. На вкладке помечены красным маркером компоненты, которые включены в текущую модель и могут быть показаны остальные компоненты модели. Из этой вкладки по двойному нажатию мыши на компоненте можно получить доступ к её спецификациям. Замечание: Для быстрого импорта библиотеки MFC необходимо выполнить Menu > Tools > Visual C++ > Quick Import MFC 6.0. |
|
Attributes Атрибуты |
Управляет атрибутами класса. Здесь представлен список атрибутов класса, который можно редактировать при помощи контекстного меню. По двойному нажатию мыши на атрибуте предоставляется доступ к окну спецификаций атрибутов. Show inherited позволяет скрыть / показать доступные атрибуты родителей. Вкладка General: название атрибута (Name), его тип (Type) и стереотип (Stereotype), начальное значение (Initial value) и видимость (Export Control). Вкладка Detail: тип хранения атрибута в классе: By Value (по значению) - значения атрибута хранятся пределах адресного пространства, выделенного для объекта этого класса; By Reference (по ссылке) - значение атрибута хранится вне адресного пространства, выделенного для объекта этого класса, но у объектов класса имеется указатель на этот атрибут; Unspecified (не определён) - метод локализации этого атрибута не определён. В этом случае при генерации кода для этого атрибута по умолчанию выбирается значение By value. Также можно указать, что атрибут является Static (статическим) или Derived (производным). |
|
Operations Операции |
Управляет операциями класса. Здесь представлен список операций класса, который можно редактировать при помощи контекстного меню. По двойному нажатию мыши на операции предоставляется доступ к окну спецификаций операции. Вкладка General аналогична вкладке General атрибутов. Вкладка Detail: дополнительные свойства операции. Поля этой вкладки: Arguments (аргументы) - список аргументов для операции с их типами и значениями по умолчанию. Protocol (протокол) - список установок, предоставляемых клиенту для вызова. Qualification (квалификация) - детали реализации операции, связанные с конкретным ЯП. Exceptions (исключения) - список исключений, которые могут быть вызваны операцией; необходимо ввести имена классов, обрабатывающих исключительные состояния. Size (размер) - размер памяти, требуемый для выполнения операции. Time (время) - время выполнения операции. Concurrency (параллелизм) - тип выполнения операции для многопотоковой программы: sequential (последовательная) - операция может быть выполнена только при наличии одного потока управления; guarded (охраняемая) - при наличии нескольких потоков управления выполнение операции класса гарантируется только тогда, когда обеспечено взаимодействие объектов друг с другом в различных потоках; synchronous (синхронная) - выполнение операции класса гарантируется при наличии нескольких потоков управления, операция будет выполняться в отдельном потоке управления. Можно устанавливать параллелизм для класса в спецификациях класса. Вкладки Preconditions, Postconditions, Semantics позволяют задать дополнительные описания процессов подготовки и завершения операции, а также описание алгоритма операции. Кроме текстового описания здесь же можно задать имя диаграммы взаимодействия, которая описывает указанные действия. |
|
Relations Связи |
Управляет связями класса. Здесь представлен список связей класса, который можно редактировать при помощи контекстного меню. Для добавления связи лучше воспользоваться инструментом из панели инструментов, а для удаления - контекстным меню на элементе. После удаления связей с диаграммы полностью удалить их можно только посредством вкладки Relations. |
Стереотип - это механизм, позволяющий категоризировать классы. Часто используются классы со стереотипами: boundary (пограничные классы - расположены на границе системы с внешней средой; это формы, отчёты, интерфейсы с аппаратурой и др.), entity (классы-сущности - содержат информацию, хранимую обычно постоянно), control (классы управления - отвечают за координацию действий других классов) и т.д. К стереотипам, которые доступны в среде RR, относятся: actor (актёр), boundary (граница), business actor (бизнес-актёр), business entity (бизнес-сущность), business worker (работник), control (управление), entity (сущность, объект), interface (интерфейс).
В RR имеется возможность добавить собственные стереотипы. Примерами таких стереотипов являются: для классов для хранения данных - стереотип <<Storage>>; для классов для показа данных - стереотип <<View>>; для классов-форм - стереотип <<Form>> (Форма). Для добавления стереотипов нужно ввести новый стереотип в поле Stereotype в окне спецификации класса. Он будет появляться в раскрывающемся списке, но только для текущей модели.
Для добавления стереотипа ко всем моделям необходимо завершить работу с RR, в файле DefaultStereotypes.ini перейти в раздел [Stereotyped Items] и добавить строку для нового стереотипа: Далее нужно добавить в файл DefaultStereotypes.ini раздел для этого стереотипа, где указать, для чего будет он использоваться (для классов, сценариев и т.д.) и ввести его имя. Например, для формы получаем:
[Stereotyped Items]
...
Class: Form
...
[Class: Form]
Item=Class
Stereotype=Form
RR позволяет альтернативно представлять стереотипы в форме специальных графических изображений (как в браузере проекта) или в форме небольших значков в верхней секции прямоугольника класса на диаграмме, а также вообще отказаться от изображения стереотипов.
Для вывода имени стереотипа на диаграмму потребуется щелкнуть правой кнопкой мыши на классе, выбрать в открывшемся меню пункт Options > Stereotype Display > Label (Параметры > Показ стереотипа > Метка). Над именем этого класса появится имя стереотипа, заключённое в двойные угловые скобки (<< >>). Стереотип может быть показан / скрыт при помощи контекстного меню класса Options > Stereotype Display > Icon (Параметры > Показ стереотипа > Значок). На рис.3.1 показаны примеры вариантов визуализации стереотипов.
Из всех графических элементов класс обладает максимальным набором свойств, главными из которых являются его атрибуты и операции (табл.3.2).
Рис.3.1. Варианты визуализации стереотипов: None, Label, Decoration, Icon
Добавить атрибут к классу можно следующим образом: а) с помощью операции контекстного меню New Attribute (Новый атрибут) для класса, выделенного на диаграмме; в этом случае активизируется курсор ввода текста в области графического изображения класса на диаграмме; б) с помощью операции контекстного меню New > Attribute (Новый > Атрибут) для класса, выделенного в браузере; в этом случае активизируется курсор ввода текста в области иерархического представления класса в браузере проекта под именем соответствующего класса.
Для редактирования свойств атрибутов предназначено окно спецификации атрибута Class Attribute Specification (рис.3.2), которое открывается двойным щелчком мыши на имени выбранного атрибута в окне спецификации свойств класса. Для удаления атрибута класса щелкните правой кнопкой мыши на атрибуте в браузере и в открывшемся меню выберите пункт Delete (Удалить).
Рис.3.2. Диалоговое окно спецификации свойств атрибута
Добавить операцию к классу можно следующим образом: а) с помощью операции контекстного меню New Operation (Новая операция) для класса, выделенного на диаграмме; б) с помощью операции контекстного меню New > Operation (Новая > Операция) для класса, выделенного в браузере.
Каждая из операций классов имеет собственное окно спецификации свойств Operation Specification, которое открывается по двойному щелчку мыши на имени выбранной операции в окне спецификации свойств класса или на имени операции в браузере. Удалить операцию можно из диаграммы классов или из браузера. При удалении из диаграммы операция автоматически удаляется из модели.
С целью установки и спецификации отношений между классами необходимо добавить на диаграмму связи между классами. Существует 4 типа связей между классами: ассоциации (Association), зависимости (Dependency), агрегации (Aggregations) и обобщения (Generalization). Для этого на специальной панели инструментов необходимо нажать кнопку требуемого типа связи. Далее на диаграмме классов надо выделить первый элемент связи, и, не отпуская нажатую левую кнопку мыши, переместить её указатель ко второму элементу отношения. При отсутствии кнопок на панели инструментов можно воспользоваться меню Tools > Create > Aggregation / Dependency / Association / Inherits.
Доступ к окну спецификации свойств связи можно получить после выделения линии связи на диаграмме классов или в браузере проекта и двойного щелчка на ней левой кнопки мыши.
Классы можно вкладывать друг в друга. Во вложенные (nested) классы можно вкладывать другие классы, организуя столько уровней вложения, сколько необходимо. Для создания вложенного класса потребуется: 1) открыть окно спецификации родительского класса; 2) перейти на вкладку Nested (Вложенные); 3) щелкнуть правой кнопкой мыши на белом поле этой вкладки; 4) в открывшемся меню выбрать пункт Insert (Вставить); 5) ввести имя вложенного класса.
Если нужно показать вложенный класс на диаграмме классов необходимо: 1) открыть диаграмму классов; 2) выбрать в меню модели пункт Query > Add Classes (Запрос > Добавить классы); 3) перетащить вложенный класс из списка Classes (Классы) в список Selected Classes (Выбранные классы); 4) Щелкнуть на OK. Вложенный класс появится на диаграмме с именем родительского класса, заключённым в скобках.
Пакеты классов в среде RR создаются в логическом представлении браузера.
Для добавления на диаграмму классов существующего пакета нужно перетащить пакет на диаграмму из браузера. Поместить на диаграмму классов новый пакет можно следующим образом: нажать на кнопку Package (Пакет) панели инструментов, щелкнуть мышью внутри диаграммы классов и ввести его имя. Для добавления пакета в браузер: а) щелкните правой кнопкой мыши на логическом представлении браузера; если вы создаёте пакет внутри существующего пакета, щёлкните правой кнопкой мыши на нём в браузере; б) выберите пункт меню модели New > Package (Создать > Пакет) и введите имя пакета. Если нужно поместить в пакет элемент, перетащите его в этот пакет в браузере.
Необходимо отметить, что диаграмму робастности (устойчивости) проектируемой системы можно создать в среде RR на основе диаграммы классов, используя возможность изменения отображения стереотипа класса (для диаграммы робастности - в виде значка).
Типовой пример
При построении диаграммы классов для модели банкомата были добавлены и детализированы следующие классы и ассоциации.
1. Класс `Транзакция банкомата' с <<entity>>: текст - `Используется для сохранения информации о выполненных банкоматом транзакциях'; multiplicity = n (у класса может быть любое конечное число объектов); persistent (информация об объектах класса должна быть сохранена в системе); sequential.
Для этого класса добавлены следующие атрибуты:
1) Атрибут `идентификатор карточки': тип - integer; видимость - public; initial value - пустой; текст - `Устройство чтения карточки считывает значение этого атрибута с кредитной карточки клиента'.
2) Атрибут `значение ПИН-кода карточки': тип - integer; видимость - public; текст - `Устройство чтения карточки считывает значение этого атрибута с кредитной карточки клиента'.
3) Атрибут `введённый ПИН-код': тип - integer; видимость - public; текст - `Значение этого атрибута вводится клиентом с клавиатуры банкомата'.
4) Атрибут `введённая сумма наличных': тип - currency; видимость - public; текст - `Значение этого атрибута вводится клиентом с клавиатуры банкомата'.
Операциями класса `Транзакция банкомата' являются следующие:
1) Операция `создать новую транзакцию': видимость - public; параллелизм - sequential; текст - `Вызывается после того, как кредитная карточка вставлена в устройство чтения карточки'.
2) Операция `проверить правильность ПИН-кода()': видимость - public; тип возвращаемого результата - boolean; текст - `Вызывается после того, как клиент ввёл значение ПИН-кода с клавиатуры банкомата'.
3) Операция `завершить транзакцию()': видимость - public; текст - `Вызывается после завершения всех действий банкомата по обслуживанию клиента'.
2. Класс `Контроллер банкомата' с <<control>>: текст - `Реализует логику функционирования банкомата'. Атрибутов и операций у этого класса нет.
3. Класс `Устройство чтения карточки' с <<boundary>>; текст - `Устанавливается на банкомате'.
Для данного класса добавлены следующие операции:
1) Операция `прочитать идентификатор карточки()': видимость - public; тип - integer; текст - `Вызывается после того, как кредитная карточка вставлена в устройство чтения карточки'.
2) Операция `прочитать ПИН-код()': видимость - public; тип - integer; текст - `Вызывается после того, как кредитная карточка вставлена в устройство чтения карточки'.
3) Операция `вернуть кредитную карточку()': видимость - public; текст - `Вызывается после завершения транзакции'.
4) Операция `блокировать кредитную карточку()': видимость - public; текст - `Вызывается после того, как установлен факт утраты кредитной карточки владельцем'.
4. Класс `IКонтроллер банка' с <<interface>> (банкомат пользуется услугами банка при обработке своих транзакций). Первая буква в имени класса -английское `I' - служит в UML для указания интерфейса.
К операциям этого класса относятся:
1) Операция `проверить идентификатор карточки (идентификатор карточки: integer)': видимость - public; тип - boolean; аргумент - идентификатор карточки (integer). Для ввода аргументов необходимо перейти на вкладку Detail окна спецификации свойств операции и использовать контекстное меню.
2) Операция `открыть счёт клиента (идентификатор карточки: integer)': видимость - public; аргумент - идентификатор карточки (integer).
3) Операция `проверить баланс клиента (идентификатор карточки: integer, введённая сумма наличных: currency)': видимость - public; тип - boolean; аргумент 1 - идентификатор карточки (integer), аргумент 2 - введённая сумма наличных (currency).
4) Операция `уменьшить счёт клиента (идентификатор карточки: integer, введённая сумма наличных: currency)': видимость - public; тип - boolean; аргумент 1 - идентификатор карточки (integer), аргумент 2 - введённая сумма наличных (currency).
5. Абстрактный класс `Контроллер', предназначенный для спецификации системных атрибутов и операций, необходимых при исполнении программы.
6. Класс `Экран банкомата' с <<boundary>> и 2 операциями: `показать меню опций()': видимость - public; `показать меню снятия суммы()': видимость - public.
Подобные документы
Основная идея методологии и принципы RAD-разработки информационных систем, ее главные преимущества. Причины популярности, особенности применения технологии. Формулировка основных принципов разработки. Среды разработки, использующие принципы RAD.
презентация [866,8 K], добавлен 02.04.2013Понятие CASE-средств как программных средств, которые поддерживают процессы создания и сопровождения информационных систем (ИС). Особенности IDEF-технологии разработки ИС. Описание нотации IDEF0. Разработка функциональных моделей бизнес-процесса.
презентация [399,8 K], добавлен 07.04.2013Особенности документирования программных средств, стадии разработки продуктов. Классификация обеспечивающего пакета документов. Сущность и основные недостатки Единой системы программной документации. Классификация стандартов, Гост 19.102-77 ЕСПД.
презентация [64,8 K], добавлен 22.03.2014Этапы технологического процесса разработки программных продуктов, их жизненный цикл. Общая характеристика языков программирования. Виды ошибок и принципы тестирования программ. Установление прав собственности на продукт посредством лицензий и контрактов.
презентация [1,9 M], добавлен 01.05.2011Анализ и сравнение существующих систем тьюторской поддержки. Методологии разработки программного обеспечения. Разработка web-ориентированной системы тьюторской поддержки самостоятельной работы студента. Выбор архитектуры программных средств разработки.
курсовая работа [1,1 M], добавлен 05.01.2013Эволюция систем автоматизированного проектирования от простых средств двухмерного рисования и разработки чертежей до программных продуктов, включающих поддержку цикла разработки и производства изделия. Требования к пользовательскому интерфейсу САПР.
курсовая работа [274,5 K], добавлен 19.12.2014Исследование существующих методов тестирования устройств телемеханики. Процесс разработки программы, анализ недостатков и достоинств создаваемой системы. Технологии разработки программных модулей и интерфейса пользователя, построение сетевого графика.
дипломная работа [2,3 M], добавлен 26.01.2013Стадии разработки программного средства. Средства, методологии и методы его разработки. Оценка надежности и качества проекта. Обоснование необходимости разработки программы. Тестирование как процесс выполнения тестовой программы с намерением найти ошибки.
презентация [57,0 K], добавлен 27.12.2013Характеристика этапов разработки программных средств. Спецификация, алгоритм, кодирование, отладка и тестирование. Создание справочной системы и установочного диска. Назначение программы, язык программирования. Технические требования к программе.
курсовая работа [1006,4 K], добавлен 19.12.2013Анализ деятельности подразделения разработки программных продуктов, использующих Web-технологии, в компании ИООО "ЭПАМ Системз". Разработка систем с использованием Web-технологий с помощью программного продукта Oracle Database и технологий Spring, Struts.
отчет по практике [1,0 M], добавлен 14.04.2014