Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

PrIS

.pdf
Скачиваний:
45
Добавлен:
07.12.2018
Размер:
7.24 Mб
Скачать

1

Міністерство освіти та науки України

В.В. Литвин, Н.Б. Шаховська

Проектування інформаційних систем

Навчальний посібник з курсу “Проектування інформаційних систем”

для студентів базового «Консолідована інформація»

Львів – 2010

2

У навчальному посібнику розглядаються структурний та об’єктноорієнтований підходи до логічного та фізичного проектування інформаційних систем. Детально описуються види діаграм, які реалізують ці підходи та мова уніфікованого моделювання UML. Розглянуто CASE-засоби, які призначені для побудови відповідних діаграм. Розглядається поняття життєвого циклу проекту, аналізуються методи визначення цілей проекту та вибирання альтернатив реалізації проекту.

Навчальний посібник призначений для студентів, що навчаються за напрямами підготовки “Комп’ютерні науки” та „Системний аналіз”, для магістрів спеціальностей, які базуються на цих напрямах підготовки, а також для магістрів спеціальності «Консолідована інформація».

Відповідальний за випуск:

д.т.н., проф. Пасічник В.В.

Рецензенти: д.т..н., професор Бунь Р.А.

д.ф.-м.н., професор Цегелик Г.Г.

д.т.н., доцент Романишин Ю.М.

3

Зміст

 

Вступне слово авторів.............................................................................

18

ПЕРЕЛІК УМОВНИХ СКОРОЧЕНЬ.....................................................

19

РОЗДІЛ 1. Складність розроблення інформаційних систем .................

20

1.1. Складність програмного забезпечення............................................

21

1.2. Структура складних систем.............................................................

25

1.2.1. Приклади складних систем .......................................................

25

1.2.2. П'ять ознак складної системи....................................................

27

1.2.3. Організована і неорганізована складність................................

29

1.3. Методи подолання складності.........................................................

32

1.3.1. Роль декомпозиції......................................................................

32

1.3.3. Роль абстракції...........................................................................

35

1.3.4. Роль ієрархії...............................................................................

36

1.4. Про проектування складних систем ................................................

39

1.4.1. Інженерна справа як наука і мистецтво....................................

39

1.4.2. Сенс проектування.....................................................................

40

Висновки .................................................................................................

43

Контрольні питання................................................................................

43

РОЗДІЛ 2. Інформаційні системи та їх характеристики........................

44

2.1. Базові означення...............................................................................

44

2.2. Методи проектування інформаційних систем ................................

48

2.3. Види інформаційних систем............................................................

51

2.4. Рівні моделей даних.........................................................................

55

Висновки .................................................................................................

62

Контрольні питання................................................................................

63

РОЗДІЛ 3. Розвиток методологій проектування інформаційних

 

систем......................................................................................................

63

3.1. Методологія процедурно-орієнтованого програмування...............

64

3.2. Методологія об'єктно-орієнтованого програмування.....................

67

3.3. Методологія об'єктно-орієнтованого аналізу і проектування ........

75

3.4. Методологія системного аналізу і системного моделювання........

78

Висновки .................................................................................................

81

Контрольні питання................................................................................

82

РОЗДІЛ 4. Історичний огляд розвитку структурної та об'єктно-

 

орієнтованої методологій проектування інформаційних систем..........

83

4.1. Передісторія. Математичні основи..................................................

83

4.1.1. Теорія множин...........................................................................

83

4

4.1.2. Теорія графів..............................................................................

87

4.1.3. Семантичні мережі....................................................................

91

4.2. Діаграми структурного системного аналізу....................................

94

4.3. Основні етапи розвитку UML..........................................................

94

Висновки ...............................................................................................

100

Контрольні питання..............................................................................

100

РОЗДІЛ 5. Структурний підхід.............................................................

102

5.1. Принципи структурного підходу до проектування.......................

102

5.2. Структурний аналіз........................................................................

103

5.3. Структурне проектування..............................................................

105

5.4. Методологія структурного аналізу................................................

107

5.5. Інструментальні засоби структурного аналізу та проектування ..

109

Висновки ...............................................................................................

110

Контрольні питання..............................................................................

110

РОЗДІЛ 6. Методологія функціонального моделювання SADT.........

111

6.1. Основні елементи...........................................................................

111

6.2. Типи зв’язків...................................................................................

113

6.3. Техніка побудови ...........................................................................

115

6.4. Діаграма бізнес – функцій..............................................................

116

6.4.1. Призначення діаграми бізнес-функцій...................................

116

6.4.2. Основні елементи ....................................................................

117

Висновки ...............................................................................................

118

Контрольні питання..............................................................................

118

РОЗДІЛ 7. Діаграми потоків даних......................................................

111

7.1. Призначення діаграм потоків даних та основні елементи............

119

7.1.1. Зовнішні сутності ....................................................................

120

7.1.2. Процеси....................................................................................

121

7.1.3. Накопичувачі даних.................................................................

123

7.1.4. Потоки даних...........................................................................

123

7.2. Методологія побудови DFD...........................................................

124

Висновки ...............................................................................................

128

Контрольні приклади............................................................................

128

РОЗДІЛ 8. Діаграми "сутність-зв'язок", атрибутів, категоризації.......

129

8.1. Діаграма «сутність-зв’язок»...........................................................

129

8.2. Діаграма атрибутів .........................................................................

132

8.3. Діаграма категоризації...................................................................

133

8.4. Обмеження діаграм сутність-зв’язок.............................................

135

8.5. Методологія IDEF1 ........................................................................

139

Висновки ...............................................................................................

143

5

Контрольні питання..............................................................................

143

РОЗДІЛ.9. Діаграми переходів станів..................................................

145

9.1. Основні елементи...........................................................................

145

9.2. Типи керуючих потоків..................................................................

146

9.3. Принципи побудови.......................................................................

148

Висновки ...............................................................................................

149

Контрольні питання..............................................................................

149

РОЗДІЛ. 10. Структурне проектування на етапі проектування

 

програмного забезпечення....................................................................

152

10.1. Структурні карти Константайна..................................................

152

10.2. Структурні карти Джексона.........................................................

154

Висновки ...............................................................................................

157

Контрольні питання..............................................................................

158

РОЗДІЛ 11. Засоби створення діаграм.................................................

145

11.1. Призначення CASE-технологій ...................................................

158

11.2. Інструментальний засіб BPwin ....................................................

161

11.2.1. IDEF0......................................................................................

162

11.2.2. DFD ........................................................................................

166

11.2.3. IDEF3......................................................................................

170

11.2.4. Інші діаграми BPWin.............................................................

172

11.2.5. Моделі AS IS і TO BE............................................................

176

11.3. ERwin............................................................................................

158

11.3.1. Основні властивості...............................................................

178

11.3.2. Стандарт IDEF1X...................................................................

182

11.4. Програмний засіб Visio ................................................................

189

Висновки ...............................................................................................

193

Контрольні питання..............................................................................

193

РОЗДІЛ 12. Приклади моделей структурного проектування..............

194

12.1. Системний аналіз області наукових досліджень.........................

194

12.1.1. Аналіз предметної області.....................................................

194

12.1.2. ER - діаграми системи аналізу наукових досліджень ..........

200

12.1.3. DF-діаграми системи аналізу наукових досліджень ............

203

12.2. Системний аналіз біржі праці......................................................

205

12.2.1. Дерево цілей...........................................................................

205

12.2.2. Опис об’єктів предметної області.........................................

207

12.2.3. Концептуальна модель..........................................................

210

РОЗДІЛ 13. Характеристики CASE-засобів.........................................

216

13.1. Silverrun+JAM...............................................................................

216

13.1.1. Silverrun..................................................................................

216

6

13.1.2. JAM ........................................................................................

218

13.2. Vantage Team Builder (Westmount I-CASE) + Uniface.................

221

13.2.1. Vantage Team Builder (Westmount I-CASE) ..........................

221

13.2.2. Uniface....................................................................................

223

13.3. Designer/2000 + Developer/2000 ...................................................

224

РОЗДІЛ 14. Об'єктна модель ................................................................

227

14.1. Еволюція об'єктної моделі...........................................................

227

14.1.1. Основні положення об'єктної моделі....................................

227

14.1.2. OOP, OOП і ООА...................................................................

228

14.2. Складові частини об'єктного підходу..........................................

232

14.2.1. Парадигми програмування....................................................

232

14.2.2. Абстрагування .......................................................................

233

14.2.3. Інкапсуляція...........................................................................

240

14.2.4. Модульність...........................................................................

245

14.2.5. Ієрархія...................................................................................

249

14.2.6. Типізація ................................................................................

254

14.2.7. Паралелізм .............................................................................

261

14.2.8. Збереженість ..........................................................................

263

14.3. Застосування об'єктної моделі.....................................................

264

14.3.1. Переваги об'єктної моделі.....................................................

264

14.3.2. Використання об'єктного підходу.........................................

266

14.3.3. Відкриті питання....................................................................

266

Висновки ...............................................................................................

267

Контрольні питання..............................................................................

267

РОЗДІЛ 15. Класи й об'єкти..................................................................

269

15.1. Природа об'єкта............................................................................

269

15.1.1. Що є й що не є об'єктом?.......................................................

269

15.1.2. Стан........................................................................................

271

15.1.3. Поведінка...............................................................................

273

15.1.4. Ідентичність...........................................................................

278

15.2. Відношення між об'єктами...........................................................

284

15.2.1. Типи відношень.....................................................................

284

15.2.2. Зв'язки ....................................................................................

284

15.2.3. Агрегація................................................................................

288

15.3. Природа класів .............................................................................

290

15.3.1. Що таке клас? ........................................................................

290

15.3.2. Інтерфейс і реалізація............................................................

290

15.3.3. Життєвий цикл класу.............................................................

292

15.4. Відношення між класами.............................................................

292

7

15.4.1. Типи відношень.....................................................................

 

292

15.4.2. Асоціація................................................................................

 

293

15.4.3. Успадкування.........................................................................

 

295

15.4.4. Агрегація................................................................................

 

309

15.4.5. Використання.........................................................................

 

310

15.4.6. Інсталювання (Параметризація)............................................

312

15.4.6. Метакласи ..............................................................................

 

314

15.5. Взаємозв'язок класів і об'єктів

.....................................................

316

15.5.1. Відношення між класами й об'єктами...................................

316

15.5.2. Роль класів і об'єктів в аналізі й проектуванні.....................

316

Висновки ...............................................................................................

 

317

Контрольні питання..............................................................................

 

317

РОЗДІЛ 16. Класифікація .....................................................................

 

319

16.1. Важливість правильної класифікації...........................................

319

16.1.1. Класифікація й об’єктно-орієнтовне проектування .............

319

16.1.2. Труднощі класифікації ..........................................................

 

320

16.2. Ідентифікація класів і об'єктів

.....................................................

323

16.2.1. Класичний і сучасний підходи..............................................

323

16.2.2. Об’єктно-орієнтований аналіз...............................................

326

16.3. Ключові абстракції й механізми..................................................

332

16.3.1. Ключові абстракції ................................................................

 

332

16.3.2. Ідентифікація механізмів.......................................................

 

333

Висновки ...............................................................................................

 

335

Контрольні питання..............................................................................

 

335

РОЗДІЛ 17. Основні компоненти мови UML.......................................

337

17.1. Призначення мови UML...............................................................

 

339

17.2. Загальна структура мови UML ....................................................

342

17.3. Пакети в мові UML.......................................................................

 

346

17.4. Основні пакети мета-моделі мови UML......................................

348

17.5. Специфіка опису мета-моделі мови UML...................................

358

17.6. Особливості зображення діаграм мови UML..............................

362

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

367

РОЗДІЛ 18. Діаграма варіантів використання (use case diagram) .......

337

18.1. Варіант використання...................................................................

 

369

18.2. Актори...........................................................................................

 

371

18.3. Інтерфейси....................................................................................

 

373

18.4. Примітки.......................................................................................

 

375

18.5. Відношення на діаграмі варіантів використання........................

376

8

18.5.1. Відношення асоціації.............................................................

 

377

13.5.2. Відношення розширення.......................................................

 

379

18.5.3. Відношення узагальнення

.....................................................

381

18.5.4. Відношення включення.........................................................

 

383

18.6. Приклад побудови діаграми варіантів використання.................

384

18.7. Рекомендації з розроблення діаграм варіантів використання....

389

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

392

РОЗДІЛ 19. Діаграма класів (class diagram).........................................

392

19.1. Клас...............................................................................................

 

394

19.1.1. Ім'я класу................................................................................

 

395

19.1.2. Атрибути класу......................................................................

 

396

19.1.3. Операція.................................................................................

 

400

19.2. Відношення між класами.............................................................

 

404

19.2.1. Відношення залежності.........................................................

 

404

19.2.2. Відношення асоціації.............................................................

 

406

19.2.3. Відношення агрегації.............................................................

 

409

19.2.4. Відношення композиції.........................................................

 

411

19.2.5. Відношення узагальнення

.....................................................

412

19.3. Інтерфейси....................................................................................

 

416

19.4. Об'єкти..........................................................................................

 

416

19.5. Шаблони або параметризовані класи ..........................................

417

19.6. Рекомендації з побудови діаграми класів....................................

419

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

420

РОЗДІЛ 20. Діаграма станів (statechart diagram)..................................

421

20.1. Автомати.......................................................................................

 

422

20.2. Стан...............................................................................................

 

425

20.2.1. Ім'я стану................................................................................

 

427

20.2.2. Список внутрішніх дій ..........................................................

 

427

20.2.3. Початковий стан....................................................................

 

428

20.2.4. Кінцевий стан.........................................................................

 

429

20.3. Перехід..........................................................................................

 

429

20.3.1. Подія.......................................................................................

 

430

20.3.2. Сторожова умова...................................................................

 

431

20.3.3.Вираз дії..................................................................................

 

433

15.4. Складений стан і підстан..............................................................

 

434

20.4.1. Послідовні підстани...............................................................

 

434

20.4.2. Паралельні підстани ..............................................................

 

436

9

15.5. Історичний стан............................................................................

 

437

20.6. Складні переходи .........................................................................

 

439

15.6.1. Переходи між паралельними станами ..................................

439

20.6.2. Переходи між складеними станами......................................

440

20.6.3. Синхронізуючі стани.............................................................

 

441

20.7. Рекомендації з побудови діаграм станів......................................

444

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

445

РОЗДІЛ 21. Діаграма діяльності (activity diagram)..............................

447

21.1. Стан дії..........................................................................................

 

448

21.2. Переходи.......................................................................................

 

449

21.3. Доріжки.........................................................................................

 

455

21.4. Об'єкти....................................

Ошибка! Закладка не определена.

21.4. Об'єкти..........................................................................................

 

457

21.5. Рекомендації до побудови діаграм діяльності ............................

460

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

462

Розділ 22. Діаграма послідовності (sequence diagram).........................

463

22.1. Об'єкти..........................................................................................

 

464

22.1.1. Лінія життя об'єкта ................................................................

 

465

22.1.2. Фокус керування....................................................................

 

465

22.2. Повідомлення...............................................................................

 

467

22.2.1. Розгалуження потоку керування...........................................

469

22.2.2. Стереотипи повідомлень.......................................................

 

470

22.2.3. Тимчасові обмеження на діаграмах послідовності ..............

472

22.2.4. Коментарі або примітки ........................................................

 

473

22.3. Приклад побудови діаграми послідовності.................................

473

22.4. Рекомендації з побудови діаграм послідовності.........................

475

Висновки.........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

477

РОЗДІЛ 23. Діаграма кооперації (collaboration diagram).....................

478

23.1. Кооперація....................................................................................

 

479

23.2. Об'єкти..........................................................................................

 

482

23.2.1. Мультиоб'єкт..........................................................................

 

484

23.2.2. Активний об'єкт.....................................................................

 

484

23.2.3. Складений об'єкт ...................................................................

 

486

23.3. Зв'язки...........................................................................................

 

487

23.3.1. Стереотипи зв'язків................................................................

 

487

23.4. Повідомлення...............................................................................

 

489

10

23.4.1. Формат запису повідомлень..................................................

490

23.5. Приклад побудови діаграми кооперації ......................................

493

23.6. Рекомендації з побудови діаграм кооперації ..............................

495

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

497

РОЗДІЛ 24. Діаграма компонентів (component diagram).....................

498

24.1. Компоненти..................................................................................

 

499

24.1.1. Ім'я компоненту.....................................................................

 

500

24.1.2. Види компонент.....................................................................

 

501

24.2. Інтерфейси....................................................................................

 

503

24.3. Залежності ....................................................................................

 

504

24.4. Рекомендації з побудови діаграми компонент............................

507

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

508

РОЗДІЛ 25. Діаграма розгортання (deployment diagram) ....................

510

25.1. Вузол.............................................................................................

 

511

25.2. З'єднання.......................................................................................

 

514

25.3. Рекомендації з побудови діаграми розгортання..........................

518

Висновки .........................................

Ошибка! Закладка не определена.

Контрольні питання..............................................................................

 

519

РОЗДІЛ 26. Особливості реалізації мови UML в CASE-

 

інструментарії Rational Rose...........

Ошибка! Закладка не определена.

26.1.Загальна характеристика CASE-засобу Rational RoseОшибка! Зак

26.2.Особливості робочого інтерфейсу Rational RoseОшибка! Закладк

26.1.1.Головне меню програми..Ошибка! Закладка не определена.

26.1.2.Стандартна панель інструментівОшибка! Закладка не опред

26.1.3. Вікно браузера .................Ошибка! Закладка не определена.

26.1.4. Спеціальна панель інструментівОшибка! Закладка не опреде

26.1.5. Вікно діаграми.................

Ошибка! Закладка не определена.

26.1.6. Вікно документації..........

Ошибка! Закладка не определена.

26.1.7. Вікно журналу..................

Ошибка! Закладка не определена.

26.3.Початок роботи над проектом у середовищі Rational RoseОшибка

26.4.Розроблення діаграми варіантів використання в середовищі

Rational Rose....................................

Ошибка! Закладка не определена.

26.5.Розроблення діаграми класів у середовищі Rational RoseОшибка!

26.6.Розроблення діаграми станів у середовищі Rational RoseОшибка!

26.7.Розроблення діаграми послідовності в середовищі Rational

Rose..................................................Ошибка! Закладка не определена.

26.8. Розроблення діаграми кооперації в середовищі Rational RoseОшиб