목차
<B><FONT color ... #0000
3판 추천사 ... ⅵ
이전판 추천사 ... ⅷ
저자 소개 ... xiv
3판 서문 ... xvi
2판 서문 ... xx
1판 서문 ... xxiv
감사의 글 ... xxvi
옮긴이의 말 ... xxvi
옮긴이 소개 ... xxx
1 실시간 임베디드 시스템 세계의 개요 ... 1
   1.1 실시간 시스템의 특징 ... 2
   1.2 시간, 성능, QoS ... 7
      1.2.1 동작과 동시성 모델링 ... 8
      1.2.2 자원 모델링 ... 14
      1.2.3 시간 모델링 ... 15
      1.2.4 스케줄 가능성 모델링 ... 17
      1.2.5 성능 모델링 ... 27
   1.3 시스템 공학과 소프트웨어 공학 ... 27
   1.4 아키텍처란 ... 28
   1.5 ROPES 프로세스 ... 30
      1.5.1 MDD(Model-Driven Development) ... 33
      1.5.2 ROPES 나선 ... 34
   1.6 MDA와 플랫폼 독립적 모델 ... 41
   1.7 모델 기반 프로젝트 스케줄하기 ... 44
      1.7.1 스케줄의 이유 ... 45
      1.7.2 예측 ... 46
      1.7.3 BERT와 ERNIE ... 47
      1.7.4 스케줄 ... 49
   1.8 모델 조직 원칙 ... 53
      1.8.1 모델 조직의 이유 ... 53
      1.8.2 특정 모델 조직 패턴들 ... 58
   1.9 모델 기반 프로젝트 작업 ... 64
   1.10 앞으로 ... 72
   1.11 연습문제 ... 73
   1.12 참고 자료 ... 74
2 UML 2.0과 함께 하는 객체 지향 - 구조 측면 ... 77
   2.1 UML을 이용한 객체 지향 ... 78
   2.2 작은 것들: 객체, 클래스, 인터페이스 ... 80
      2.2.1 객체 ... 80
      2.2.2 클래스 ... 83
      2.2.3 표기법 ... 87
      2.2.4 인터페이스 ... 89
      2.2.5 메시징 ... 92
   2.3 관계 ... 95
      2.3.1 연관 ... 95
      2.3.2 집합 연관 ... 98
      2.3.3 복합 연관 ... 100
      2.3.4 일반화 ... 103
      2.3.5 의존 ... 106
      2.3.6 구조 다이어그램 ... 109
      2.3.7 객체를 코드에 대응시키기 ... 111
   2.4 큰 것들: 패키지, 컴포넌트, 서브시스템 ... 114
      2.4.1 모델의 조직화: 패키지 ... 115
      2.4.2 구조화 클래스: 복합체, 부속, 포트, 커넥터 ... 117
      2.4.3 컴포넌트 ... 122
      2.4.4 서브시스템 ... 124
      2.4.5 배치: 노드 ... 127
      2.4.6 노드냐 클래스냐 ... 128
      2.4.7 아키텍처 계층 구조 ... 130
   2.5 고급: 고급 모델 작성자를 위한 구조 요소의 UML 메타 모델 ... 130
   2.6 추가적인 표기법과 의미 ... 134
   2.7 앞으로 ... 136
   2.8 연습문제 ... 137
   2.9 참고 자료 ... 138
3 UML 2.0과 함께 하는 객체 지향 - 동적 측면 ... 139
   3.1 행동과 UML ... 140
   3.2 행동의 유형 ... 141
      3.2.1 단순 행동 ... 141
      3.2.2 상태 행동 ... 142
      3.2.3 연속 행동 ... 143
   3.3 행동의 기본 단위: 동작과 활동 ... 145
   3.4 행동과 단일 객체 ... 148
      3.4.1 스테이트차트의 기본 요소 ... 149
      3.4.2 동시 상태 ... 157
      3.4.3 의사 상태 ... 159
      3.4.4 상속 상태 모델 ... 169
      3.4.5 부적격 스테이트차트 ... 171
      3.4.6 심장 박동 조절기 예제 ... 173
      3.4.7 프로토콜 상태 기계 ... 183
      3.4.8 활동 다이어그램 ... 185
   3.5 상호작용 ... 190
      3.5.1 시퀀스 다이어그램 ... 190
      3.5.2 타이밍 다이어그램 ... 206
   3.6 요약 ... 212
   3.7 연습문제 ... 212
   3.8 참고 자료 ... 214
4 스케줄 가능성과 성능, 시간을 위한 UML 프로파일 ... 215
   4.1 UML 프로파일 ... 216
      4.1.1 스테레오타입 ... 217
      4.1.2 꼬리표 값 ... 219
      4.1.3 프로파일 ... 222
   4.2 'RT UML' 프로파일 ... 222
      4.2.1 일반 자원 모델 서브프로파일 ... 228
      4.2.2 시간 모델링 서브프로파일 ... 233
      4.2.3 동시성 모델링 서브프로파일 ... 240
      4.2.4 스케줄 가능성 모델링 서브프로파일 ... 242
      4.2.5 성능 모델링 서브프로파일 ... 256
      4.2.6 실시간 CORBA 서브프로파일 ... 268
   4.3 앞으로 ... 273
   4.4 연습문제 ... 274
   4.5 참고 자료 ... 276
5 실시간 시스템의 요구 사항 분석 ... 277
   5.1 요구 사항 ... 278
   5.2 유스케이스 ... 280
      5.2.1 행위자 ... 282
      5.2.2 유스케이스와 텍스트 ... 297
      5.2.3 유스케이스 관계 ... 299
      5.2.4 유스케이스 사용 ... 301
      5.2.5 유스케이스 찾아내기 ... 302
   5.3 유스케이스 상세화 ... 305
      5.3.1 유스케이스에 대한 시나리오 ... 307
      5.3.2 스테이트차트 ... 318
      5.3.3 활동 다이어그램 ... 324
      5.3.4 타이밍 다이어그램 ... 326
   5.4 앞으로 ... 328
   5.5 연습문제 ... 329
   5.6 참고 자료 ... 330
6 분석: 객체 도메인 분석 ... 331
   6.1 객체 발견 프로세스 ... 332
   6.2 객체 모델과 유스케이스 모델의 연결 ... 334
   6.3 객체를 찾아내는 핵심 전략 ... 339
      6.3.1 명사에 밑줄 긋기 전략 ... 341
      6.3.2 원인 객체 찾기 ... 344
      6.3.3 서비스(수동적 기여자) 찾기 ... 345
      6.3.4 메시지와 정보 흐름 찾기 ... 346
      6.3.5 실세계 항목 찾기 ... 346
      6.3.6 물리적 장치 찾기 ... 348
      6.3.7 핵심 개념 찾기 ... 349
      6.3.8 트랜잭션 찾기 ... 349
      6.3.9 지속적 정보 찾기 ... 351
      6.3.10 시각 요소 찾기 ... 352
      6.3.11 제어 요소 찾기 ... 355
      6.3.12 시나리오 적용 ... 356
   6.4 객체 연관 찾기 ... 358
   6.5 객체 속성 ... 362
   6.6 후보 클래스 발견 ... 364
   6.7 클래스 다이어그램 ... 365
      6.7.1 연관 클래스 ... 367
      6.7.2 일반화 관계 ... 370
   6.8 앞으로 ... 396
   6.9 연습문제 ... 396
   6.10 참고 자료 ... 398
7 분석: 객체 행동 정의 ... 399
   7.1 객체 행동 ... 400
      7.1.1 단순 행동 ... 400
      7.1.2 상태 행동 ... 402
      7.1.3 연속 행동 ... 403
   7.2 객체 상태 행동 정의 ... 404
      7.2.1 심장박동 조절기 예 ... 408
      7.2.2 계산기 예 ... 423
      7.2.3 이벤트 계층 구조 ... 441
   7.3 상호작용 ... 443
      7.3.1 시퀀스 다이어그램 ... 443
   7.4 오퍼레이션의 정의 ... 463
      7.4.1 오퍼레이션의 종류 ... 465
      7.4.2 오퍼레이션 정의 전략 ... 468
   7.5 앞으로 ... 471
   7.6 연습문제 ... 472
   7.7 참고 자료 ... 472
8 아키텍처 설계 ... 473
   8.1 설계의 의미 ... 474
   8.2 아키텍처 설계 ... 477
      8.2.1 논리적 아키텍처 ... 478
      8.2.2 물리적 아키텍처 ... 482
      8.2.3 서브시스템과 컴포넌트 뷰 ... 486
      8.2.4 동시성과 자원 뷰 ... 489
      8.2.5 분산 뷰 ... 493
      8.2.6 안전성과 신뢰성 뷰 ... 498
      8.2.7 배치 뷰 ... 500
      8.2.8 물리적 아키텍처 이슈 ... 501
      8.2.9 소프트웨어 아키텍처 이슈 ... 503
   8.3 소프트웨어가 하드웨어를 만나다: UML의 배치 아키텍처 ... 509
   8.4 동시성과 자원 설계 ... 513
      8.4.1 스레드 표현 ... 513
      8.4.2 시스템 태스크 다이어그램 ... 514
      8.4.3 동시 상태 다이어그램 ... 516
      8.4.4 스레드 정의 ... 518
      8.4.5 스레드 식별 ... 519
      8.4.6 객체를 스레드에 할당 ... 521
      8.4.7 스레드 랑데부 정의 ... 521
      8.4.8 자원 공유 ... 523
      8.4.9 우선순위 할당 ... 523
   8.5 앞으로 ... 524
   8.6 연습문제 ... 525
   8.7 참고 자료 ... 526
9 메커니즘 설계 ... 527
   9.1 메커니즘 설계란 ... 528
   9.2 메커니즘 설계 패턴 ... 530
   9.3 감시자 패턴 ... 533
      9.3.1 요약 ... 533
      9.3.2 문제 ... 533
      9.3.3 패턴 구조 ... 534
      9.3.4 협력 역할 ... 535
      9.3.5 결과 ... 536
      9.3.6 구현 방법 ... 536
      9.3.7 예제 모델 ... 537
   9.4 프록시 패턴 ... 539
      9.4.1 요약 ... 539
      9.4.2 문제 ... 539
      9.4.3 패턴 구조 ... 540
      9.4.4 협력 역할 ... 540
      9.4.5 결과 ... 543
      9.4.6 구현 방법 ... 543
      9.4.7 예제 모델 ... 544
   9.5 신뢰성 트랜잭션 패턴 ... 547
      9.5.1 요약 ... 548
      9.5.2 문제 ... 548
      9.5.3 패턴 구조 ... 548
      9.5.4 협력 역할 ... 551
      9.5.5 결과 ... 552
      9.5.6 구현 방법 ... 553
      9.5.7 예제 모델 ... 553
   9.6 스마트 포인터 패턴 ... 554
      9.6.1 요약 ... 555
      9.6.2 문제 ... 555
      9.6.3 패턴 구조 ... 556
      9.6.4 협력 역할 ... 557
      9.6.5 결과 ... 558
      9.6.6 구현 방법 ... 560
      9.6.7 관련 패턴 ... 560
      9.6.8 예제 모델 ... 560
   9.7 가드 호출 패턴 ... 562
      9.7.1 요약 ... 562
      9.7.2 문제 ... 562
      9.7.3 패턴 구조 ... 562
      9.7.4 협력 역할 ... 563
      9.7.5 결과 ... 564
      9.7.6 구현 방법 ... 564
      9.7.7 예제 모델 ... 565
   9.8 컨테이너 패턴 ... 567
      9.8.1 요약 ... 568
      9.8.2 문제 ... 568
      9.8.3 패턴 구조 ... 569
      9.8.4 협력 역할 ... 570
      9.8.5 결과 ... 570
      9.8.6 구현 방법 ... 570
      9.8.7 예제 모델 ... 570
   9.9 랑데부 패턴 ... 580
      9.9.1 요약 ... 581
      9.9.2 문제 ... 581
      9.9.3 패턴 구조 ... 581
      9.9.4 협력 역할 ... 582
      9.9.5 결과 ... 583
      9.9.6 구현 방법 ... 583
      9.9.7 관련 패턴 ... 584
      9.9.8 예제 모델 ... 584
   9.10 앞으로 ... 586
   9.11 연습문제 ... 586
   9.12 참고 자료 ... 587
10 상세 설계 ... 589
   10.1 상세 설계 ... 590
   10.2 데이터 구조 ... 591
   10.3 연관 ... 598
   10.4 오퍼레이션 ... 601
   10.5 가시성 ... 603
   10.6 알고리즘 ... 604
   10.7 예외 ... 611
   10.8 요약 ... 615
   10.9 연습문제 ... 616
   10.10 참고 자료 ... 616
11 특별 주제: C⁴ISR 아키텍처와 UML ... 617
   11.1 소개 ... 618
   11.2 C⁴1SR ... 618
   11.3 C⁴ISR의 필수 산출물 ... 625
      11.3.1 AV-1 개요와 요약 정보 ... 625
      11.3.2 AV-2 통합 사전 ... 625
      11.3.3 OV-1 상위 수준 운영 개념 그래픽 ... 629
      11.3.4 OV-2 운영 노드 연결 기술 ... 629
      11.3.5 OV-3 운영 정보 교환 매트릭스 ... 631
      11 3.6 SV-1 시스템 인터페이스 기술 ... 633
      11.3.7 TV-1 기술 아키텍처 프로파일 ... 634
   11.4 지원 산출물 ... 634
      11.4.1 OV-4 지취 관계 차트 ... 635
      11.4.2 OV-5 운영 활동 모델 ... 636
      11.4.3 OV-6a 운영 규칙 모델, SV-10a 시스템 규칙 모델 ... 638
      11.4.4 OV-6b 운영 상태 전이 기술, SV-10b 시스템 상태 전이 기술 ... 640
      11.4.5 OV-6c 운영 이벤트-추적 기술, SV- 10c 시스템 이벤트-추적 기술 ... 643
      11.4.6 OV-7 논리적 데이터 모델 ... 643
      11.4.7 SV-3 시스템-시스템 매트릭스 ... 643
      11.4.8 SV-4 시스템 기능 기술 ... 644
      11.4.9 SV-5 운영 활동-시스템 기능 추적 매트릭스 ... 645
      11.4.10 SV-6 시스템 데이터 교환 매트릭스 ... 646
      11.4.11 SV-7 시스템 성능 매개 변수 매트릭스 ... 647
      11.4.12 SV-8 시스템 발전 기술 ... 649
      11.4.13 SV-9 시스템 기술 예측 ... 649
      11.4.14 SV-11 물리적 스키마 ... 650
   11.5 요약 ... 651
   11.6 감사의 글 ... 652
   11.7 참고 자료 ... 652
부록 : 표기법 요약 ... 653
찾아보기 ... 675
닫기