Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технологии разработки ПО Уебное пособие Глухова Лилия Александровна, БГУИР 2010 (Книга).pdf
Скачиваний:
966
Добавлен:
15.06.2014
Размер:
1.83 Mб
Скачать

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ

1.Перечислите наиболее известные методы структурного анализа и проектирования.

2.Что означает термин CASE?

3.Определите понятие CASE-технологии.

4.Перечислите методологии семейства IDEF, назовите их назначение.

5.Назовите документы, регламентирующие синтаксис методологий IDEF0 и IDEFIX.

6.Определите назначение методологии SADT.

7.Перечислите достоинства методологии SADT.

8.Определите назначение методологии IDEF0.

9.Дайте формальное определение IDEF0-модели.

10.Определите понятия субъекта и объекта моделирования, границ, цели и точки зрения модели в IDEF0.

11.Объясните правила изображения функциональных блоков в IDEF0.

12.Назовите типы дуг в IDEF0-моделировании, поясните их назначение и правила изображения.

13.Что такое доминирование в IDEF0-моделировании?

14.Сколько блоков должна содержать диаграмма IDEF0?

15.Назовите типы взаимосвязей между блоками в методологии IDEF0.

16.Назовите правила изображения дуг в методологии IDEF0.

17.Что называется меткой в методологии IDEF0?

18.Определите назначение словаря данных в методологии IDEF0.

19.Опишите назначение полей в стандартном IDEF0-бланке.

20.Поясните назначение и правила образования С-номеров в методологии

IDEF0.

21.Что называется декомпозицией в методологии IDEF0?

22.Что такое родительский блок и родительская диаграмма в методологии

IDEF0?

23.Что называется контекстной диаграммой IDEF0-модели?

24.Опишите, чем отличается контекстная диаграмма от других диаграмм IDEF0-модели по назначению и синтаксису.

25.Поясните назначение и правила образования номера узла в методологии

IDEF0?

26.Назовите способы организации связей между диаграммами, используемые в методологии IDEF0?

27.Какие дуги называются внешними и граничными в методологии IDEF0?

28.Что обозначает схема кодирования ICOM в методологии IDEF0?

29.Поясните правила стыковки внешних дуг с граничными дугами.

30.Что называется «вхождением дуги в тоннель» в IDEF0?

31.Поясните правила изображения тоннельных дуг на IDEF0-диаграммах.

223

32.Нарисуйте IDEF0-модель для предметной области «Процесс разработки программных средств» (модель должна содержать не менее двух уровней иерархии).

33.Какая диаграмма называется диаграммой дерева узлов?

34.Поясните смысл метода декомпозиции ограниченного субъекта, используемого при IDEF0-моделировании.

35.Перечислите стратегии декомпозиции, используемые при IDEF0моделировании.

36.Опишите на уровне IDEF0-диаграммы основные этапы процесса моделирования в IDEF0.

37.Какие роли выделяются для участников проектов при IDEF0моделировании?

38.Какие вы знаете CASE-средства, поддерживающие IDEF0-моделирование?

39.Определите назначение методологии DFD.

40.Определите основные понятия DFD-модели.

41.Что отражает DFD-диаграмма?

42.Какие компоненты может содержать DFD-диаграмма?

43.Опишите назначение и правила изображения различных видов блоков на DFD-диаграммах.

44.Назовите типы дуг в DFD-моделировании, поясните их назначение и правила изображения.

45.Нарисуйте DFD-модель для предметной области «Процесс разработки программных средств» (модель должна содержать не менее двух уровней иерархии).

46.Назовите различия между контекстными диаграммами при IDEF0- и DFDмоделировании?

47.Какие вы знаете CASE-средства, поддерживающие DFD-моделирование?

48.Определите назначение методологии IDEF1X.

49.Перечислите компоненты IDEF1X-моделей.

50.Перечислите виды связей в IDEF1X-моделях.

51.Что называется сущностью в методологии IDEF1X?

52.Какие сущности называются независимыми и зависимыми?

53.Назовите основные категории сущностей.

54.Что называется атрибутом в методологии IDEF1X?

55.Что называется доменом в методологии IDEF1X?

56.Как классифицируются атрибуты в методологии IDEF1X?

57.Что называется первичным ключом в методологии IDEF1X?

58.Что называется привилегированным идентификатором в методологии

IDEF1X?

59.Что называется идентификационным номером экземпляра сущности в методологии IDEF1X?

60.Определите нормальные формы, обычно используемые при нормализации информационных моделей.

224

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

62.Перечислите и поясните способы представления сущностей с атрибутами при информационном моделировании.

63.Что называется связью в методологии IDEF1X?

64.Какая связь соединяет родительскую и дочернюю сущности?

65.Что называется родительской и дочерней сущностями?

66.К какой сущности направлена точка на конце соединительной связи?

67.Какая связь называется реверсной?

68.Какие связи называются условными и безусловными?

69.Назовите фундаментальные виды безусловных связей.

70.Чем определяется мощность связи?

71.Перечислите десять форм связей между сущностями.

72.Что называется дочерней мощностью связи?

73.Чему равно значение дочерней мощности связи по умолчанию?

74.Какие виды мощности соединительных связей определены в методологии

IDEF1X?

75.Как графически представляются различные виды дочерней мощности соединительных связей в IDEF1X?

76.Приведите примеры различных видов мощности соединительных связей между сущностями.

77.Поясните правила именования сущностей, атрибутов и связей в методоло-

гии IDEF1X.

78.Необходимо ли обеспечить в пределах IDEF1X-модели уникальность имен для сущностей? Для атрибутов? Для связей?

79.Как описывается связь между родительской и дочерней сущностями в прямом и обратном направлениях?

80.Какая связь называется связью, формализованной в данных?

81.Какая связь называется идентифицирующей связью и как она графически изображается?

82.Какая связь называется неидентифицирующей связью и как она графически изображается?

83.Приведите примеры идентифицирующих и неидентифицирующих связей между сущностями.

84.Каким связям (идентифицирующим или неидентифицирующим) следует отдавать предпочтение при разработке информационных моделей предметной области и почему?

85.Какие связи в IDEF1X определяют безусловность и условность связи со стороны родительской сущности и почему?

86.Приведите примеры безусловных и условных связей со стороны родительской сущности.

87.Какие связи в IDEF1X определяют безусловность и условность связи со стороны дочерней сущности и почему?

225

88.Приведите примеры безусловных и условных связей со стороны дочерней сущности.

89.Какие связи называются обязательными и необязательными и как они изображаются графически?

90.Приведите примеры обязательных и необязательных связей между сущностями.

91.Что называется родительской мощностью связи?

92.Какая связь называется неспецифической?

93.Приведите примеры неспецифических связей между сущностями .

94.Как формализуются неспецифические связи?

95.Какие связи называются рекурсивными?

96.Приведите примеры рекурсивных связей.

97.С помощью каких видов связей организуется иерархическая рекурсия?

98.С помощью каких видов связей можно организовать сетевую рекурсию?

99.Что называется именем роли и в каких случаях оно используется?

100.Какие связи называются связями категоризации и как они графически представляются?

101.Приведите примеры связей категоризации между сущностями.

102.Какая сущность называется сущностью-супертипом и сущностьюподтипом?

103.Что обозначает термин «группа категорий»?

104.Что называется полной и неполной группой категорий?

105.Что называется дискриминатором?

106.Что называется унаследованным идентификатором?

107.Перечислите рабочие продукты информационного моделирования.

108.Назовите концептуальные уровни представления диаграмм в IDEF1Xмоделировании.

109.Приведите пример представления диаграммы на различных концептуальных уровнях.

110.Для проектирования каких систем предназначен метод JSD, разработанный М. Джексоном?

111.Назовите принципы, являющиеся основой применения метода JSD.

112.Назовите стадии и шаги, из которых состоит метод JSD, и поясните их содержание.

113.Поясните назначение и перечислите компоненты диаграмм, используемых в методе JSD.

114.Перечислите особенности сущностей, выделяемых в методе JSD, и выполняемых ими действий.

115.Какой принцип положен в основу методологии Варнье–Орра?

116.Перечислите различия методологий Варнье–Орра и Джексона.

117.Назовите базовые конструкции диаграмм Варнье–Орра.

118.Приведите пример структуры данных, представленной с помощью диаграмм Варнье–Орра.

226

РАЗДЕЛ 6. МЕТОДОЛОГИЯ ОБЪЕКТНООРИЕНТИРОВАННОГО АНАЛИЗА И ПРОЕКТИРОВАНИЯ

СЛОЖНЫХ СИСТЕМ

6.1.Основы объектно-ориентированного анализа и проектирования

6.1.1.Математические основы объектноориентированного анализа и проектирования

В основе многих концепций моделирования сложных систем лежат понятия теории множеств, теории графов и семантических сетей [27]. Кратко рассмотрим основные из данных понятий.

Под множеством А понимается некоторая совокупность различимых объектов аi. Данные объекты называются элементами множества. Конечное множество обозначается следующим образом:

А = 1, а2, а3, …, аn},

где n – количество элементов, входящих в множество, называемое мощностью множества.

Подмножеством является любая часть совокупности объектов, входящих в множество.

Отношение множеств (связь, соотношение множеств) обозначает любое подмножество кортежей, построенных из элементов исходных множеств. Под кортежем понимается набор упорядоченных элементов исходных множеств. Например, кортеж из трех элементов может обозначаться следующим образом:

1 , а2 , а3> .

Упорядоченность набора входящих в кортеж элементов обозначает, что каждый элемент кортежа имеет строго фиксированное место (например, первый элемент всегда идет первым, второй – вторым и т.д.). Отдельные элементы

227

кортежа могут принадлежать как одному, так и нескольким множествам. Последовательность элементов в кортежах фиксирована и определяется

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

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

Неориентированный граф G задается двумя множествами – множеством вершин V и множеством ребер Е:

G = (V, E);

V = {v1 , v2 , …, vn};

E = {e1 , e2 , …, em},

где n – количество вершин графа; m – количество ребер графа. Неориентированному графу ставится в соответствие бинарное отношение

РG, состоящее из таких кортежей <vi , vj>, для которых вершины vi и vj соединяются в графе G некоторым ребром ек.

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

Ориентированный граф задается двумя множествами – множеством вершин V и множеством дуг Е. Каждая дуга ек обозначается стрелкой и имеет свое начало в некоторой вершине vi и конец в вершине vj. Ориентированному графу ставится в соответствие бинарное отношение РG, состоящее из таких кортежей <vi , vj>, для которых вершины vi и vj соединяются в графе G некоторой дугой ек с началом в вершине vi и концом в вершине vj.

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

Частным случаем графа является дерево – граф, между любыми двумя вершинами которого существует маршрут, с неповторяющими ребрами (или дугами). Дерево может быть ориентированным и неориентированным.

Семантическая сеть – это некоторый граф Gs = (Vs, Es), в котором множество вершин Vs и множество ребер Es разделены на отдельные типы, характерные для конкретной предметной области. Вершины соответствуют сущностям предметной области и именуются соответствующими смысловыми именами. Типы ребер соответствуют видам связей между сущностями.

Для семантических сетей характерно наличие различных графических обозначений для представления отдельных типов вершин и ребер.

К различным видам семантических сетей относятся, например, структуры данных Джексона (см. рис. 4.37, 4.49, 4.50), информационная модель, представленная на рис. 5.47, и большинство других, рассмотренных в предыдущих разделах структур данных и моделей предметной области.

228

Резюме

В основе методологии объектно-ориентированного анализа и проектирования лежат понятия теории множеств, теории графов и семантических сетей.

6.1.2.Исторический обзор развития методологии объектно-ориентированного анализа и проектирования

В80-х гг. ХХ ст. появилось большое количество методологий и графических нотаций структурного анализа и проектирования. К ним относятся, например, методы JSP и JSD Джексона (см. подразд. 4.6 и п. 5.5.1), методологии семейства IDEF (см. подразд. 5.1), методология структурного анализа потоков данных DFD (см. подразд. 5.3) и ряд других. Многие из этих методологий реализованы в CASE-средствах.

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

Одновременно с развитием методологий структурного анализа и проектирования начали появляться отдельные языки объектно-ориентированного анализа и проектирования. Данные яыки ориентированы на объектную декомпозицию структуры предметной области или проектируемой системы.

На дальнейшее развитие объектно-ориентированных языков моделирования оказали непосредственное влияние многие идеи структурного анализа и проектирования. В этой связи особо следует выделить методологии IDEF0, IDEF1, DFD, базовые принципы которых положены в основу ряда объектноориентированных диаграмм моделирования. Данные методологии рассмотрены подробно в подразд. 5.2 – 5.4.

К середине 90-х гг. ХХ ст. наибольшую известность из методов объектноориентированного анализа и проектирования (ООАП) приобрели методы Гради Буча, Джеймса Румбаха и Айвара Джекобсона, ориентированные на поддержку различных этапов ООАП. Данные методы послужили основой Унифицирован-

ного языка моделирования UML (Unified Modeling Language).

Первое описание языка UML появилось в 1996 г. В 1998 г. компания

Rational Software Corporation разработала одно из первых CASE-средств

Rational Rose 98, в котором был реализован язык UML.

Внастоящее время существует большое количество CASE-средств, базирующихся на применении языка UML. В данном пособии рассмотрена линейка CASE-средств компании Telelogic, ориентированных на UML (см. подразд. 7.5).

Разработаны среды визуального программирования на основе UML (Visual C++, Java, Delphi, Power Builder, Ada и др.).

229