Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 487 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
487
Dung lượng
4,72 MB
Nội dung
Kiến trúc cho hệ thống dùng nhiều phần mềm Sách hướng dẫn người thực hành Anthony J Lattanze Người dịch: Ngô Trung Việt ARCHITECTING SOFTWARE INTENSIVE SYSTEMS A Practitioner’s Guide Anthony J Lattanze ISBN 978-1-4200-4569-7 Software Engineering System Engineering Software Architecture QA76.758.L3285 2009 005.1’2 dc22 2008039859 Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com the Auerbach Web site at http://www.auerbach-publications.com Xin kính tặng Thượng đế gia đình tơi Mục lục Lời nói đầu viii Lời cảm tạ xii Hướng dẫn độc giả xiv Phần I Chương Giới thiệu Vòng đời kiến trúc Chủ đề, mục đích tổ chức 14 Chương Kiến trúc định nghĩa 16 Lịch sử khái niệm hệ thống đại 18 Kiến trúc hệ thống 20 Kiến trúc nghiệp 22 Lịch sử tóm tắt phần mềm đại 25 Hướng tới kiến trúc Hệ thống dùng nhiều phần mềm 26 Cấp bậc thiết kế 28 Cấu trúc 31 Phần tử 31 Thuộc tính thấy bên ngồi phần tử 31 Quan hệ phần tử 31 Chương Dẫn lái kiến trúc 35 Dẫn lái kiến trúc định nghĩa 36 Những người có liên quan Error! Bookmark not defined Yêu cầu chức mức cao 38 Yêu cầu đặc tính chất lượng 43 Ràng buộc kĩ thuật 48 Ràng buộc doanh nghiệp 50 Tóm tắt 51 Chương Cấu trúc kiến trúc 52 Cấu trúc cảnh quan 53 Cảnh quan tĩnh 54 Cảnh quan động 55 Cảnh quan vật lí 55 Cấu trúc thuộc tính hệ thống 60 Tách rời 61 Gắn kết 62 Cố kết 62 Hợp tài nguyên 62 Rải tài nguyên 63 i Dư thừa 64 Cấu trúc, kiểu cách, hình mẫu 64 Dùng cấu trúc 67 Khuôn khổ thuyết phục cấu trúc 68 Cảnh quan 68 Phần tử quan hệ 70 Loại hình 70 Ngữ nghĩa 71 Hiệu đặc tính chất lượng 71 Hoàn cảnh sử dụng 71 Biến thiên cấu trúc 71 Ví dụ ứng dụng khn khổ 72 Chiến thuật 76 Tóm tắt 79 Chương Công việc Kiến trúc sư 81 Kiến trúc sư làm gì? 81 Kĩ nghệ yêu cầu 82 Tham gia vào tổ quản lí 82 Khi làm kiến trúc sư? 87 Hướng dẫn cho thiết kế kiến trúc 90 Ví dụ: SmartMarquee 94 Tóm tắt 119 Chương Làm tài liệu Thiết kế kiến trúc 121 Những người có liên quan tới tài liệu kiến trúc 122 Khi làm tài liệu kiến trúc 128 Cái cần viết 131 Công cụ làm tài liệu UML 135 Hướng dẫn chung viết kĩ thuật 143 Cấu trúc tài liệu 149 Tóm tắt 152 Phần II 153 Chương Phương pháp thiết kế lấy kiến trúc làm trọng tâm 154 Tổng quan ACDM 156 Các vai trò ACDM 160 Chương ACDM Giai đoạn 1: Khám phá dẫn lái kiến trúc 167 Mục đích 167 Tiền điều kiện 167 Hoạt động chung 167 Kĩ thuật, khuôn mẫu, hướng dẫn 167 Vật phẩm yếu 167 Hậu điều kiện 168 Mô tả giai đoạn 170 Bản thiết kế chính: Lập kế hoạch chiến lược thiết kế 171 Lập kế hoạch hội thảo khêu gợi dẫn lái kiến trúc 177 Tiến hành hội thảo khêu gợi dẫn lái kiến trúc 183 Giới thiệu tổng quan hội thảo 183 Tổng quan sản phẩm hay hệ thống 185 Nhận diện mô tả chức 185 ii Nhận diện yêu cầu đặc tính chất lượng 191 Nhận diện ràng buộc doanh nghiệp 194 Nhận diện ràng buộc kĩ thuật 195 Tóm tắt bước tiếp 196 Hợp liệu thô 196 Tạo cập nhật kế hoạch thiết kế chủ 198 Tạo lịch biểu 202 Tác động chi phí lịch biểu cố định lên lập kế hoạch ACDM 208 Tác động đặc tả có sẵn trước lên qui trình khêu gợi yêu cầu ACDM 209 Tóm tắt 210 Chương ACDM Giai đoạn 2: thiết lập phạm vi dự án 211 Chủ định 211 Tiền điều kiện 211 Hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 211 Vật phẩm 211 Hậu điều kiện 213 Mô tả giai đoạn 213 Lập kế hoạch giai đoạn 214 Phân tích 216 Hướng dẫn cho phát triển trường hợp sử dụng từ mô tả vận hành 216 Ví dụ trường hợp sử dụng 222 Làm tài liệu 242 Tóm tắt 246 Chương 10 ACDM Giai đoạn 3: Tạo ra/Cải tiến Kiến trúc 248 Chủ định 248 Tiền điều kiện 248 Các hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 248 Vật phẩm 251 Hậu điều kiện 251 Mô tả giai đoạn 251 Lập kế hoạch giai đoạn 252 Thiết kế kiến trúc chừng 255 Thiết lập hoàn cảnh 255 Phân rã lặp 257 Cải tiến kiến trúc chừng 259 Giao diện phần tử 260 Tính truy nguyên 261 Khi xong với thiết kế? 265 Cập nhật kế hoạch chủ 266 Tóm tắt 266 Chương 11 ACDM Giai đoạn 4: Đánh giá thiết kế kiến trúc 268 Chủ định 268 Tiền điều kiện 268 Các hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 268 Vật phẩm 268 Hậu điều kiện 269 Mô tả giai đoạn 270 So sánh phương pháp đánh giá 271 Lập kế hoạch giai đoạn 273 Tâm lí đánh giá thiết kế 276 iii Con không xấu! 276 Thờ 277 Tôi giỏi anh 277 Ta bỏ qua 278 Hang ’em High 278 Ta sửa 278 Chuyện thời gian 279 Tiến hành hội thảo đánh giá thiết kế kiến trúc 279 Người chủ trì 281 Người trình bày kiến trúc 281 Người ghi 281 Người giữ qui trình đánh giá 281 Người giữ thời gian 282 Người hỏi 282 Bước 1: Giới thiệu 283 Bước 2: Kiểm điểm hoàn cảnh doanh nghiệp ràng buộc doanh nghiệp 286 Bước 3: Kiểm điểm yêu cầu ràng buộc kĩ thuật 288 Bước 4: Trình bày tổng quan kiến trúc 289 Bước 5: Phân tích chức 290 Bước 6: Phân tích cấu trúc: Phân tích cấu trúc hệ thống dùng Kịch đặc tính chất lượng 296 Bước 7: Tóm tắt: Kiểm điểm vấn đề ghi lại 301 Lời khuyên cho người hỏi 301 Xem xét kĩ tính quán 302 Quá nhiều hay chi tiết 303 Hướng dẫn đặt câu hỏi phân tích chức 304 Hướng dẫn đặt câu hỏi phân tích cấu trúc 305 Lời khuyên cho người chủ trì 308 Vô tư 309 Lắng nghe 309 Bảo vệ người mong manh 311 Chú ý tới ám hiệu vô lời 311 Quản lí hành vi khơng hữu ích 312 Biết thân 313 Cập nhật kế hoạch chủ 314 Tóm tắt 314 Chương 12 ACDM Giai đoạn 5: Quyết định làm/không làm 316 Chủ định 316 Tiền điều kiện 316 Các hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 316 Vật phẩm 316 Hậu điều kiện 316 Mô tả giai đoạn 318 Lập kế hoạch giai đoạn 319 Cuộc họp phân tích vấn đề 320 định làm/không làm 323 Chúng ta chưa? 324 Cập nhật kế hoạch thiết kế chủ 326 Tóm tắt 327 Chương 13 ACDM Giai đoạn 6: Thực nghiệm 329 iv Chủ định 329 Tiền điều kiện 329 Các hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 329 Vật phẩm 329 Hậu điều kiện 329 Mô tả giai đoạn 329 Lập kế hoạch giai đoạn 332 Lập kế hoạch thực thi thực nghiệm 334 Khuôn mẫu làm thực nghiệm 336 Qui trình làm thực nghiệm 338 Chấp thuận thực nghiệm 339 Tiến hành thực nghiệm 339 Hậu thực nghiệm 342 Cập nhật kế hoạch chủ 345 Tóm tắt 345 Chương 14 ACDM Giai đoạn 7: Lập kế hoạch sản xuất 346 Chủ định 346 Tiền điều kiện 346 Các hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 346 Vật phẩm 346 Hậu điều kiện 346 Mô tả giai đoạn 348 Lập kế hoạch giai đoạn 350 Hội thảo làm quen kiến trúc 350 Hướng dẫn xem xét lập kế hoạch chung 351 Lịch biểu sản xuất 354 Ước lượng Delphi băng rộng cấp phần tử 357 Lập kế hoạch kiểm thử 360 Các phần tử khác kế hoạch sản xuất 362 Cập nhật kế hoạch thiết kế chủ 362 Tóm tắt 362 Chương 15 ACDM Giai đoạn 8: Sản xuất 364 Chủ định 364 Tiền điều kiện 364 Hoạt động chung Kĩ thuật, khuôn mẫu hướng dẫn 364 Vật phẩm 364 Hậu điều kiện 364 Mô tả giai đoạn 366 Lập kế hoạch giai đoạn 367 Nhất quán thiết kế 367 Tích hợp phần tử 368 Theo dõi nỗ lực sản xuất 369 Tóm tắt 371 Phần III 372 Chương 16 Dịch chuyển thực hành, qui trình phương pháp thiết kế 373 Chiến lược dịch chuyển chung 374 Tác nhân thay đổi 374 Chiến lược cho thay đổi 376 Bảo trợ 376 Tuyến sở 377 v Bản kế hoạch 378 Thực thi 381 Suy ngẫm 382 Ý tưởng thực hành cho dịch chuyển chấp nhận 383 Áp dụng hiểu biết thường cách tự 384 Giới thiệu khuôn mẫu 385 Tạo đường nghề nghiệp kĩ thuật 385 Thiết lập Tổ thiết kế kiến trúc 386 Thể chế hoá đánh giá kiến trúc 386 Rào chắn cho chấp nhận: Phản thực hành thông thường 388 Khơng tương xứng hồn cảnh doanh nghiệp 388 Bỏ 389 Lời nói đãi bơi 390 Phần mềm dễ 390 Uỷ quyền theo dí xuống 392 Bát ăn … Grrr! 393 Thiếu tài hội tụ 394 Tiếp thị gián đoạn kĩ nghệ 394 Đào tạo lập kế hoạch dịch chuyển 395 Tóm tắt 397 Chương 17 Xem xét thiết kế khác: thừa tự, thiết kế theo lựa chọn, bảo trì 398 Thiết kế với phần thừa tự 398 Pháp lí phần thừa tự 401 Phân tích tuân thủ 404 Các xem xét thiết kế khác 405 Thiết kế theo lựa chọn 407 Sai lầm thường gặp 413 Tư cách phần tử thương mại với ACDM 415 Bước1: Nhận diện phần tử sản phẩm ứng cử viên 416 Bước 2: Thiết lập tiêu chí so sánh 416 Bước 3: Tạo ma trận so sánh 418 Bước 4: Trắc nghiệm tính thuộc tính ứng cử viên 424 Chiến lược đề cập tới không tương hợp kiến trúc 426 Phần mềm Wrappers 427 Trung gian 427 Tăng qui mô ACMD 429 ACDM bảo trì 433 Tóm tắt 435 Chương 18 Dùng ACDM với khuôn khổ phát triển phần mềm 436 Thuật ngữ 437 Qui trình nặng so với nhẹ 439 ACDM khuôn khổ qui trình phát triển phần mềm 444 ACDM thác đổ 445 ACDM lập trình cực đoan (XP) 446 ACDM Scrum 450 ACDM Qui trình phần mềm tổ (TSP) 454 ACDM RUP 457 ACDM CMMI 462 Tóm tắt 464 Tài liệu tham khảo 467 vi Chỉ mục (tiếng Anh) Error! Bookmark not defined vii Hình 18.3 Cấu trúc TSP tổng quát Từng hoạt động TSP hướng dẫn kịch đoạn liệt kê tiền điều kiện, bước đặc biệt, hậu điều kiện, vật phẩm tạo TSP bao gồm khuôn mẫu đa dạng để hỗ trợ cho việc tạo tài liệu Từ Hình 18.3 điều hiển nhiên TSP nặng cân đáng kể so với qui trình tổ agile khác Một dự án dùng TSP bắt đầu với việc khai trương tổ Khai trương tổ TSP hội thảo bốn ngày bao gồm chín họp tách biệt thiết kế để tạo tổ cố kết phát triển hiểu biết chung dự án Kết then chốt việc khai trương tổ là: Thiết lập sản phẩm mục đích doanh nghiệp Phân cơng vai trò thành viên tổ xác định mục đích tổ Tạo chiến lược phát triển Xây dựng kế hoạch tổ, ước lượng kích cỡ sản phẩm, nhận diện nhiệm vụ, phân công công việc cho chu kì Xây dựng kế hoạch chất lượng Tạo kế hoạch công việc cá nhân Tiến hành đánh giá rủi ro Chuẩn bị tóm tắt tổng quan quản lí báo cáo khai trương Tiến hành kiểm điểm quản lí mục đích, kế hoạch chiến lược Một việc khai trương tổ hồn tất, tổ bắt đầu chu kì TSP khn khổ qui trình lớn, thảo luận đầy đủ hoạt động, kĩ thuật, tài liệu, vân vân xa phạm vi mục, chương Nói cho đủ, với qui định, hướng dẫn thiết kế kiến trúc hệ thống TSP, nhiều hướng dẫn thiết kế yếu TSP đề cập tới thiết kế dạng thiết kế mức cao thiết kế chi tiết, nhiều qui định lỗi thời không phản ánh thực hành thiết kế kiến trúc TSP cung cấp bốn khuôn mẫu thiết kế: khuôn mẫu kịch vận hành, khuôn mẫu đặc tả chức năng, khuôn mẫu đặc tả trạng thái, khuôn mẫu đặc tả logic Hướng dẫn cho dùng khuôn mẫu theo cách thực hành có chút ngây thơ TSP yếu dạng qui trình cho khêu gợi yêu cầu từ người có liên quan, TSP hội tụ vào yêu cầu chức TSP có hướng dẫn cách khêu gợi, phân tích, tổ chức, làm tài liệu yêu cầu đặc tính chất lượng Khơng có khái niệm dùng kịch đặc tính chất lượng hay kịch vận hành ACDM qui định TSP làm nhắc nhở chung yêu cầu phi chức tính kiểm thử được, tính dùng được, tính tái dụng, điều khơng đề cập theo cách hệ thống ACDM dùng với TSP để cải tiến lớn khu vực này, với qui trình xác định cho khêu gợi dẫn lái kiến trúc, thiết kế, làm tài liệu thiết kế TSP khn khổ qui trình hội tụ vào quản lí qui trình tổ, khơng vào thiết kế kiến trúc, làm ACDM TSP bổ sung tốt cho Bằng việc xem xét cấu trúc chung TSP vẽ Hình 18.4, thấy cách ACDM dùng để bổ sung cho khuôn khổ TSP qui trình thiết kế tốt Trong Hình 18.4 thấy dự án bắt đầu với việc khai trương tổ dự án TSP Tuy nhiên, chu kì TSP truyền thống cho yêu cầu thiết kế mức cao thay hoàn toàn ACDM giai đoạn tới Đặc tả dẫn lái kiến trúc vật phẩm thiết kế xác định ACDM thay cho chu kì qui định TSP Một thời kì khơng chắn qua the thiết kế kiến trúc 456 thiết lập, ACDM giai đoạn lập kế hoạch sản xuất dựa thiết kế giúp lập kế hoạch chu kì TSP Về chất, chu kì TSP dùng để tạo mã theo cách thác đổ hay tăng dần Các chu kì sản xuất TSP trở thành ACMD giai đoạn Khai trương tổ Chu kì Thực Chu kì kiểm thử hệ thống tích hợp ACDM Giai đoạn Khai trương chu kì Khai trương chu kì ACDM Giai đoạn Thiết kế chi tiết Kiểm thử tích hợp ACDM Giai đoạn Kiểm điểm Kiểm thử hệ thống ACDM Giai đoạn Giám định Hậu khám nghiệm Cải tiến ACDM Giai đoạn Viết mã ACDM Giai đoạn Kiểm điểm ACDM Giai đoạn Biên dịch Giám định Kiểm thử đơn vị Hậu khám nghiệm Hình 18.4 Tích hợp khn khổ ACDM TSP ACDM RUP Qui trình thống Rational - Rational Unified Process (RUP) khn khổ qui trình phát triển phần mềm lặp phát triển ban đầu công ti phần mềm Rational RUP bị IBM mua năm 2002 RUP suy dẫn từ mơ hình xốy ốc Boehm nhấn mạnh vào nhiều chủ đề cộng tác, lặp phương pháp agile Tuy nhiên, RUP 457 không coi phương pháp agile, mà kéo dài qui định cho hoạt động vật phẩm so sánh với khuôn khổ qui trình phần mềm tựa Scrum hay XP RUP có số lượng phi thường vai trò (tổng số có 20 vai trò) vật phẩm qui định Việc bàn luận đầy đủ khuôn khổ qui trình RUP khơng thể chủ đề sách dầy Với mục đích vắn tắt, chúng tơi tập trung vào triết lí tổ chức chung RUP, cách tiếp cận vòng đời tổng thể, qui định thiết kế RUP, cách ACDM dùng để bổ sung thiết kế kiến trúc việc dùng khn khổ qui trình phần mềm RUP Khn khổ RUP cấu trúc quanh chín mơn then chốt, khư vực qui trình cho mấu chốt cho qui trình phát triển phần mềm Mọi vai trò, kỉ luật, hoạt động vật phẩm xuất phát từ mơn qui trình này: Mơ hình hố doanh nghiệp: Các qui trình hội tụ vào mơ hình hố doanh nghiệp tổ chức khách hàng miền vấn đề chung Các yêu cầu: Qui trình cho khám phá yêu cầu, làm tài liệu trường hợp sử dụng, quản lí thay đổi yêu cầu Phân tích thiết kế: Các qui trình để thực phân tích thiết kế, lựa chọn giải pháp công nghệ phù hợp cho hệ thống hay sản phẩm để thoả mãn trường hợp sử dụng Thực hiện: Các qui trình đề cập tới biến đổi từ mơ hình thành thực kiểm thử thực Kiểm thử: Các qui trình tìm khiếm khuyết kiểm nghiệm hệ thống làm việc thiết kế, trắc nghiệm yêu cầu thoả mãn Triển khai: Các qui trình để chuyển giao triển khai hệ thống thời gian hỗ trợ người dùng cuối việc dùng hệ thống vận hành hay sản phẩm Quản lí dự án: Các qui trình để lập kế hoạch quản lí dự án, kể quản lí rui ro, quản lí nhân sự, phân cơng nhiệm vụ, theo dõi tiến độ, điều phối lặp bên bên ngoài, đảm bảo sản phẩm chất lượng chuyển giao thời gian Môi trường: Các qui trình để hỗ trợ nỗ lực phát triển việc đảm bảo qui trình, hướng dẫn, chuẩn cơng cụ sẵn có cho tổ cần Quản lí cấu hình thay đổi: Các qui trình để quản lí vật phẩm dự án, theo dõi phiên vật phẩm qua thời gian, kiểm sốt quản lí thay đổi với chúng Vòng đời RUP tổng thể dựa mơ hình xốy ốc Boehm (Boehm, 1986) Các hoạt động RUP tổ chức quanh sáu pha tổng quát, hướng nhiều theo thác đổ; nhiên, lặp xuất bên pha Các pha RUP bao gồm bắt đầu, khởi thảo, xây dựng, dịch chuyển, sản xuất, hưu Từng pha giải thích chi tiết Pha bắt đầu: Pha bắt đầu ánh xạ đại thể vào giai đoạn ACDM Các mục tiêu then chốt bao gồm xác định hoàn cảnh doanh nghiệp, khêu gợi yêu cầu khởi đầu, thiết lập hoàn cảnh hệ thống, xác định phạm vi Các mục tiêu gần đồng với mục tiêu ACDM giai đoạn 2, kĩ thuật ACDM đặc biệt xác định giai đoạn để thu thập, làm tài liệu, phân tích dẫn lái kiến trúc dùng để bổ sung cho RUP Các hoạt động RUP khác pha bắt đầu bao gồm lên lịch ước lượng công việc Lần nữa, khuôn mẫu kĩ thuật ACDM xác định giai đoạn cho lập kế hoạch công 458 việc làm tài liệu kế hoạch (kế hoạch thiết kế chủ) bổ sung cho qui định RUP Pha soạn thảo: Pha soạn thảo đại thể ánh xạ vào giai đoạn tới ACDM Mục đích then chốt RUP cho pha soạn thảo bao gồm thiết kế kiến trúc phát triển kế hoạch xây dựng RUP qui định nhận diện khử bỏ rủi ro ưu tiên cao dự án Điều ánh xạ đẹp vào thiết kế lặp (giai đoạn 3), đánh giá (giai đoạn 4), làm thực nghiệm (các giai đoạn 6) ACDM Chủ định ACMD cho thiết kế, đánh giá, làm thực nghiệm, cải tiến kiến trúc nhận diện đề cập tới rủi ro kĩ thuật trước sản xuất Kế hoạch xây dựng giai đoạn ACDM dựa thiết kế kiến trúc bổ sung cho qui định RUP để tạo kế hoạch dự án mức thơ cho tồn thể RUP Ước lượng Delphi băng rộng cấp phần tử dựa kiến trúc cung cấp ước lượng với độ trung thành cao nhìn sâu sớm vào phải cần tài nguyên để xây dựng phần tử tích hợp hệ thống Pha xây dựng: Pha xây dựng ánh xạ vào giai đoạn ACDM Mục đích pha xây dựng bao gồm tạo thiết kế chi tiết, phát triển phần tử, kiểm thử, tích hợp phần tử hệ thống Chắc chắn kế hoạch sản xuất tạo giai đoạn ACDM kĩ thuật theo dõi trình bày giai đoạn dùng để theo dõi xây dựng ACDM không qui định cách làm thiết kế chi tiết hay thực phát triển phần mềm thực tế, RUP cung cấp khuyến cáo chi tiết công cụ cho hai Lần nữa, điều việc dùng hay, bổ sung hai khuôn khổ RUP ACDM Pha dịch chuyển: Pha dịch chuyển khơng có ánh xạ vào ACDM Lần nữa, ACDM khn khổ qui trình thiết kế chủ ý cho phép tổ chức xác định cách tốt để dịch chuyển sản phẩm hay hệ thống vào môi trường sản xuất RUP mô tả pha dịch chuyển thành vấn đề tuyến sở sản phẩm cuối tạo triển khai, tài liệu đào tạo tài liệu khác hoàn thành chuyển cho khách hàng Người ta biện minh hoạt động ánh xạ vào hoạt động giai đoạn ACDM, ACDM không cho qui định cho hoạt động Pha sản xuất: Pha sản xuất pha cuối RUP Thuật ngữ sản xuất hoàn cảnh RUP tương ứng với khách hàng dùng hệ thống hay sản phẩm môi trường sản xuất Hội tụ pha sản xuất hỗ trợ cho khách hàng họ làm việc với hệ thống, giám sát hệ thống để đảm bảo vận hành đúng, đáp ứng cho yêu cầu thay đổi báo cáo lỗi, vân vân Pha sản xuất chấm dứt với việc phát triển kế hoạch cách hệ thống cho hoạt động Lần nữa, ACDM không đề cập đặc biệt tới hoạt động này, thiết kế kiến trúc đóng vai trò mấu chốt hoạt động quan trọng này, mô tả Chương 16 17 RUP xác định số vai trò Việc đơn giản đáp ứng cho vai trò yêu cầu thiết lập rõ ràng trách nhiệm họ mối tương quan dự án thực việc làm đáng nản chí RUP xác định vai trò dạng người thực nhiệm vụ cho, hoạt động, vật phẩm họ tạo Trong thực hành, xếp khác biệt vai trò xác định liệu tất chúng có cần khơng có thểlaf thách thức, thường cần có kinh nghiệm dùng RUP để làm cho Trên 20+ vai trò RUPsẽ khơng mơ tả chi tiết Tuy nhiên, vai trò ACDM nên ánh xạ đảm bảo bao quát đầy đủ trách nhiệm thiết kế RUP qui định số vật phẩm tạo phần khn khổ qui trình RUP mơ tả xấp xỉ 14 vật phẩm khác (tuỳ theo chúng cấu trúc nào) 459 Trong dự án nhỏ, 20 hay nhiều vật phẩm tạo ra, thường nhiều vật phẩm tạo qua việc dùng khn khổ qui trình RUP cơng cụ liên kết Mặc dầu RUP dường nặng cân đáng nản chí, khn khổ hỗ trợ số công cụ để giúp tạo vật phẩm Lần nữa, tất vật phẩm RUP không thảo luận chi tiết với mục đích để ngắn gọn Nói chung, tài liệu RUP rơi vào vài loại tổng quát, sau: Tài liệu quản lí chương trình Kế hoạch tổ chức Quản lí ích lợi Quản lí người có liên quan Quản lí vấn đề rủi ro Quản lí chất lượng Quản lí yêu cầu Tài liệu kĩ thuật Đây loại vật phẩm tài liệu RUP qui định khuôn khổ RUP Từng loại có tài liệu, phần lớn có nhiều tài liệu liên kết với chúng Trong có đa dạng vật phẩm yêu cầu ACDM, vật phẩm then chốt đặc tả dẫn lái kiến trúc, thiết kế kiến trúc, kế hoạch thiết kế chủ, lịch biểu sản xuất Các vật phẩm khác tạo ACDM vật phẩm làm việc để hỗ trợ cho việc tạo tài liệu then chốt Ánh xạ vật phẩm ACDM RUP không trực tiếp Bởi RUP yêu cầu nhiều vật phẩm thế, thêm vào danh sách đáng nản chí không cách tiếp cận tốt để làm hôn lễ cho hai khuôn khổ Tuy nhiên, kĩ thuật đa dạng xác định ACDM bổ sung cho phương pháp RUP để phát triển tập toàn diện vật phẩm RUP Đặc tả dẫn lái kiến trúc, đặc biệt kĩ thuật để làm tài liệu chức yêu cầu đặc tính chất lượng, ràng buộc kĩ thuật doanh nghiệp, đóng góp cho yêu cầu tài liệu RUP RUP ACDM hai qui định việc dùng trường hợp sử dụng để xác định yêu cầu chức năng, cách tiếp cận để phát triển chúng khác Tuy nhiên, RUP không cung cấp qui định tương tự cho xác định yêu cầu đặc tính chất lượng, điều chắn bổ sung cho tài liệu yêu cầu RUP Bản kế hoạch thiết kế chủ xác định ACDM khơng u cầu ACDM dùng hồn cảnh quản lí dự án RUP, kĩ thuật hướng dẫn cho tạo kế hoạch thiết kế chủ kế hoạch sản xuất đóng góp cho phát triển tài liệu lập kế hoạch RUP Quan trọng tài liệu thiết kế Vì RUP lên từ cộng đồng hướng đối tượng, phân tích thiết kế hướng đối tượng cách tiếp cận khuyến cáo cho thiết kế xây dựng hệ thống Tuy nhiên, chủ đề thường xuyên suốt sách chỗ thiết kế kiến trúc không thiết bị thiên lệch theo mô thức ngôn ngữ đặc thù mơ thức cố định phù hợp cho miền ứng dụng ACDM trung lập mô thức thiết kế cung cấp nhiều hướng dẫn cách thiết kế, làm tài liệu thiết kế Những kĩ thuật này, đôi với cách tiếp cận lặp tới việc tạo thiết kế, áp dụng bên hồn cảnh dự án RUP giúp tạo nhiều thiết kế kiến trúc vững chãi RUP khn khổ qui trình phát triển phần mềm tồn diện, phê bình then chốt chỗ nặng cân tất trừ dự án lớn sản phẩm hệ thống Có nhiều vai trò, hoạt động, vật phẩm mà làm phức tạo việc thể nghiệm 460 dùng RUP Nếu chọn lựa thực để tổ hợp ACDM vào khuôn khổ RUP, phải cẩn thận đừng làm phức tạp thêm việc thể nghiệm dùng RUP Một phương án cho khuôn khổ RUP nặng cân truyền thống Agile RUP (Ambler, 2002) Agile RUP, hay AUP, khuôn khổ đơn giản hơn, dễ hiểu, dễ thực hầu hết tổ chức; nhiên, trung thành với triết lí then chốt khn khổ RUP Nó mơ tả kĩ thuật XP, bao gồm thiết kế hướng kiểm thử, quản lí thay đổi mau lẹ, cải biên để cải tiến suất tăng tốc triển khai chức AUP hội tụ vào môn kiểm thử, triển khai, quản lí cấu hình, quản lí dự án, môi trường Từng môn AUP đề cập tới mối quan tâm qui trình RUP truyền thống Rõ ràng thiếu từ môn AUP môn yêu cầu, thiết kế, phân tích Điều AUP nhấn mạnh vào tương tác khơng thức khách hàng-người phát triển để xác định yêu cầu XP làm AUP hội tụ vào việc tạo chức năng, cho phép cấu trúc thiết kế theo cách khơng thức lên chúng XP Các kxi thuật làm việc để chuyển giao tính chức cho khách hàng nhanh Các triết lí khác vay mượn từ phương pháp agile bao gồm: Trao đổi: Thay có tổ, hoạt động phân hoạch cao, vai trò xác định nghiêm ngặt, mơ tả RUP, AUP nhấn mạnh người phát triển, người quản lí, khách hàng chỗ để tạo khả có trao đổi tần số cao AUP khơng qui định vai trò nghiêm ngặt RUP, tahy vào nhấn mạnh tổ linh hoạt người biết phần khác hệ thống Chun mơn hố bị tránh để ngăn cản vài người khỏi bị tải Quay vòng thành viên tổ giúp phổ biến tri thức giúp tổ suất linh hoạt phân cơng cơng việc Tính đơn giản: Khơng RUP, AUP nhấn mạnh vào qui trình đơn giản, tài liệu đơn giản, tổ tự dẫn đường Triết lí then chốt AUP suy dẫn từ XP chỗ kĩ sư đọc hay dùng tài liệu qui trình chi tiết, dùng tài liệu hiệu với hướng dẫn mức cao Mọi thứ từ qui trình tới tài liệu kĩ thuật mơ tả xác việc dùng nắm giấy thay hàng trăm trang Qui trình nhẹ cân, giá trị cao: AUP, XP, nhấn mạnh vào hoạt động giá trị cao mà tạo trực tiếp chức hay hỗ trợ sản xuất chức Các hoạt động không nảy sinh chức bị tránh xa Công cụ độc lập: AUP, không giống RUP, không qui định tập công cụ xác định Bất kì cơng cụ dùng với AUP, khuyến cáo chỗ công cụ phù hợp cho việc làm lựa chọn sử dụng Điều chỉnh cần: AUP mô tả bốn pha bắt đầu, soạn thảo, xây dựng dịch chuyển, tới với khuyến cáo kĩ thuật tảng dùng pha nên điều chỉnh cho phù hợp với tổ dự án Thay cách tiếp cận thác đổ RUP, AUP nhấn mạnh vào đưa nhỏ, nhanh xây dựng quanh lần lặp ngắn Như XP, AUP tổ cố gắng chuyển giao đưa ea chức cuối lần lặp ACDM dùng giai đoạn sớm để xác định dẫn lái kiến trúc thiết lập thiết kế Nhiều vật phẩm qui định ACDM bổ sung cho cách tiếp cận tài liệu nhẹ cân yêu cầu AUP Các giai đoạn tới ACDM ánh xạ vào pha bắt đầu soạn thảo gần trực tiếp Các giai đoạn ACDM giúp nâng cao lập kế hoạch sản xuất AUP theo dõi vật phẩm ACDM có lẽ khớp tự nhiên cho AUP khớp cho RUP -chắc chắn việc đan dệt hai khuôn khổ với đơn giản nhiều Tuy nhiên, 461 RUP lẫn AUP cách tiếp cận lặp cho thiết kế kiến trúc (thiết kế, đánh giá, thực nghiệm, refine) ACDM giúp ACDM CMMI Viện SEI tham gia nhiều năm vào phát triển dịch chuyển mơ hình lực để cải tiến thực hành kĩ nghệ phần mềm Các mơ hình dựa thực hành tốt cấu trúc để giúp tổ chức xây dựng hệ thống sản phẩm chất lượng cao theo cách dự đoán nhiều qua việc dùng qui trình phát triển có kỉ luật tồn vòng đời Mơ hình trưởng thành lực tích hợp (CMMI) chất việc cải tiến khuôn khổ qui trình mà tổ chức dùng để cải tiến cách họ xây dựng hệ thống dùng nhiều phần mềm Nó dùng để hướng dẫn cải tiến qui trình qua dự án, phận, hay tồn thể tổ chức CMMI giúp dạng thiết lập mục đích ưu tiên cải tiến qui trình Nó cung cấp hướng dẫn để tạo qui trình chất lượng, cung cấp điểm tham chiếu cho đánh giá tính hiệu qui trình có trưởng thành qui trình tổ chức CMMI dựa thực hành tốt từ nhiều kỉ luật phát triển qua đối tác cơng nghiệp, phủ, người có liên quan SEI CMMI qui định qui trình phát triển mà mơ tả chi tiết cách phát triển hệ thống, cung cấp hướng dẫn chung khu vực qui trình việc cung cấp mục đích thực hành cần để đáp ứng mục đích CMMI có mơ hình tách bạch cho kĩ nghệ hệ thống, kĩ nghệ phần mềm, sản phẩm tích hợp phát triển qui trình, nguồn nhà cung ấp Các mơ hình tham chiếu môn ngôn ngữ CMMI (Tổ sản phẩm CMMI, 2002) giải thích vắn tắt đoạn Bộ môn kĩ nghệ hệ thống bao quát việc phát triển hệ thống mà hay bao gồm phần mềm Chủ định môn kĩ nghệ hệ thống giúp kĩ sư biến đổi nhu cầu khách hàng, mong đợi, ràng buộc giải pháp sản phẩm hỗ trợ chúng suốt vòng đời Bộ mơn kĩ nghệ phần mềm bao quát việc phát triển hệ thống phần mềm Chủ định mơ hình kĩ nghệ phần mềm để giúp cho kĩ sư áp dụng cách tiếp cận có hệ thống, có kỉ luật, định lượng vào phát triển, vận hành bảo trì phần mềm Bộ mơn Phát triển sản phẩm qui trình tích hợp (IPPD) cung cấp cách tiếp cận hệ thống để đạt tới cộng tác thời gian người có liên quan tồn đời sản phẩm để thoả mãn tốt nhu cầu, mong đợi yêu cầu khách hàng Các qui trình hỗ trợ cho cách tiếp cận IPPD tích hợp với qui trình khác tổ chức Mơ hình IPPD thiết kế để tổ hợp với thực hành khác tổ chức dùng để tạo sản phẩm Bộ môn nguồn nhà cung cấp dùng để phối hợp nỗ lực nhà cung cấp dùng để xây dựng hệ thống sản phẩm Khi nỗ lực phát triển trở nên phức tạo hơn, dự án thường dùng nhà cung cấp để thực chức hay cung cấp phần tử cho hệ thống sản phẩm Trong trường hợp này, dự án lợi từ phân tích nâng cao giám sát hoạt động nhà cung cấp có liên quan tới thiết kế sản phẩm, phát triển, chuyển giao Mơ hình nguồn nhà cung cấp bao quát việc thu nhận sản phẩm từ nhà cung cấp hoàn cảnh Từng mơ hình tổ chức thực hành qui định thành khu vực qui trình có liên quan Các khu vực qui trình CMMI chia thành bốn loại: quản lí qui 462 trình, quản lí dự án, kĩ nghệ, hỗ trợ CMMI tổ chức thêm thành hay hai biểu diễn: biểu diễn liên tục hay biểu diễn theo giai đoạn Trong biểu diễn theo giai đoạn, lực qui trình đo dạng mức trưởng thành, có năm mức Bên mức trưởng thành có khu vực qui trình nhóm thực hành có liên quan Nếu tổ chức thực cách thoả đáng tất khu vực qui trình liên kết với mức trưởng thành, gọi đạt tới mức trưởng thành Từng mức xây dựng qui trình thiết lập mức trưởng thành trước Chẳng hạn, giả sử tổ chức đạt tới mức Khi cố gắng đạt tới mức 3, tổ chức phải tiếp tục thực thực hành mức thêm thực hành mức Trong biểu diễn liên tục, khu vực qui trình mơ hình theo giai đoạn mơ tả Tuy nhiên, tổ chức thực khu vực qui trình chọn Các tổ chức đánh giá theo việc thực tốt cho riêng khu vực qui trình chọn Biểu diễn truyền thống biểu diễn theo giai đoạn, liên tục biểu diễn phổ biến CMMI CMMI khuôn khổ cải tiến qui trình qui mơ lớn phù hợp cho tổ chức lớn quan phủ, nhà thầu họ, thực thể công ti lớn, máy hành quan liêu tương tự khác Các tổ chức lớn dùng CMMI thường có tổ cải tiến qui trình tổ khổng lồ để giám sát nỗ lực trì cải tiến qui trình tổ chức Các tổ tiến hành kiểm định qui trình CMMI để đánh giá tuân thủ với CMMI đo trưởng thành qui trình tổ chức Một phê bình chung CMMI chỗ kích cỡ lớn chất dẫn lái theo vật phẩm tốn kém, chậm chạp, nặng nề, bóp nghẹt phát kiến Chi phí cho việc tuân thủ theo CMMI lớn nhiều hầu hết tổ chức nhỏ vừa chịu Mặc dầu CMMI khn khổ lớn cho cải tiến qui trình, điều trớ trêu mơ tả điều tổ chức phải làm để cải tiến qui trình, khơng nói cách thực tế làm qui trình Hiển nhiên, có nhiều chi tiết CMMI bị bỏ đơn giản cách xử trí đầy đủ giản dị CMMI chủ đề sách Tuy nhiên, chi tiết khơng cần để giải thích cách ACDM dùng với khn khổ qui trình CMMI Thứ nhất, phải xem xét khu vực qui trình CMMI Những điều liệt kê Bảng 18.2 Bởi CMMI khu vực qui trình phải thực không qui định cách thực chúng, số khu vực qui trình thoả mãn ACMD Theo cách này, ACDM giúp tổ chức tuân thủ theo CMMI mà xác định qui trình từ đầu Từ quan điểm này, ACDM dùng tổ chức đích xác mơ tả Phần giúp cho tổ chức đáp ứng chuẩn CMMI cho vài yêu cầu qui trình Bảng 18.3 nêu khu vực qui trình mà tiềm thoả mãn việc dùng ACDM đích xác mơ tả Phần Tất nhiên có biến thiên việc bao phủ mà ACDM cung cấp khu vực qui trình CMMI cho, tuỳ theo cách tổ chức thể nghiệm cho ACDM Nếu tổ chức phải tuân thủ theo CMMI cách nghiêm ngặt để chứng minh mức độ trưởng thành đặc biệt, ACDM phục vụ điểm bắt đầu cho tổ chức việc xác định nhiều qui trình đặc biệt để đạt tới việc tuân thủ CMMI Khi làm thể nghiệm ACDM bên tổ chức dùng khuôn khổ CMMI, tổ chức phải ánh xạ cẩn thận giai đoạn hoạt động ACDM đặc biệt vào bên giai đoạn khu vực qui trình CMMI đặc biệt Điều làm dễ dàng cho kiểm định đánh giá dựa CMMI sau 463 Tóm tắt Có số khn khổ qui trình sẵn có cho tổ chức để cấu trúc tổ chức dự án Một số thảo luận đây, có nhiều khn khổ khác nhiều biến thể chúng Tất có điểm mạnh điểm yếu, nói chung chúng có xu hưởng có điểm yếu mơ tả cách thiết kế kiến trúc, làm tài liệu nó, cách dùng để giúp đỡ thiết kế chi tiết xây dựng ACDM qui trình thiết kế, hiểu theo cách thơng thường, tự nhiên bổ sung cho nhiều khn khổ qui trình yêu cầu vững chãi nhiều kĩ thuật qui trình cho thiết kế ví dụ dự định để phục vụ ví dụ cách ACDM tích hợp với khn khổ qui trình khác, theo cách mà ACDM khn khổ qui trình khác bổ sung cho Các tổ chức nên cẩn thận nghiên cứu các khn khổ qui trình ứng cử viên, ACDM, mục đích kinh doanh tổ chức, chọn lựa cẩn thận qui trình họ đan dệt chúng nhau, hội tụ vào tính đơn giản, vừa cân, theo nghĩa thơng thường 464 Bảng 18.2 Khu vực qui trình CMMi Khu vực qui trình Qui trình Mức trưởng thành Kĩ nghệ quản lí yêu cầu Kĩ nghệ Quản lí dự án Giám sát kiểm sốt dự án Quản lí dự án Quản lí dự án Lập kế hoạch dự án Quản lí dự án Quản lí dự án quản lí thoả thuận nhà cung cấp Quản lí dự án Hỗ trợ quản lí cấu hình Hỗ trợ Hỗ trợ đo phân tích Hỗ trợ Hỗ trợ đản bảo chất lượng qui trình sản Hỗ trợ phẩm Kĩ nghệ tích hợp sản phẩm Kĩ nghệ Kĩ nghệ phát triển yêu cầu Kĩ nghệ Kĩ nghệ giải pháp kĩ thuật Kĩ nghệ Kĩ nghệ Kiểm nghiệm Kĩ nghệ Kĩ nghệ trắc nghiệm Kĩ nghệ Quản lí qui trình xác định qui trình tổ chức Quản lí qui trình Quản lí qui trình hội tụ vào qui trình tổ chức Quản lí qui trình Quản lí qui trình đào tạo tổ chức Quản lí qui trình Quản lí dự án quản lí dự án tích hợp Quản lí dự án Quản lí dự án quản lí nhà cung cấp tích hợp Quản lí dự án Quản lí dự án lập tổ tích hợp Quản lí dự án Quản lí dự án quản lí rủi ro Quản lí dự án Hỗ trợ phân tích định giải pháp Hỗ trợ Hỗ trợ mơi trường tổ chức cho tích hợp Hỗ trợ Quản lí qui trình hiệu qui trình tổ chức Quản lí qui trình Quản lí dự án quản lí dự án định lượng Quản lí qui trình Quản lí phát kiến tổ chức qui trình triển khai Quản lí qui trình Phân tích nhân hỗ trợ giải pháp Hỗ trợ 465 Bảng 18.3 Khu vực qui trình CMMi đề cập ACDM Khu vực qui trình Qui trình Mức trưởng thành Kĩ nghệ quản lí yêu cầu Kĩ nghệ Quản lí dự án giám sát kiểm sốt dự án Quản lí dự án Quản lí dự án lập kế hoạch dự án Quản lí dự án Kĩ nghệ tích hợp sản phẩm Kĩ nghệ Kĩ nghệ phát triển yêu cầu Kĩ nghệ Kĩ nghệ giải pháp kĩ thuật Kĩ nghệ Kĩ nghệ kiểm nghiệm Kĩ nghệ Kĩ nghệ trắc nghiệm Kĩ nghệ Quản lí dự án quản lí rủi ro Quản lí dự án 466 Tài liệu tham khảo Ambler, S 2002 Agile modeling: Effective practices for extreme programming and the unified process New York: John Wiley & Sons Barbacci, M., Ellison, R., Lattanze, A., Stafford, J., Weinstock, C., and Wood, W 2003 Quality attribute workshops 3rd ed CMU/SEI-2003-TR-016, Carnegie Mellon University/Software Engineering Institute, Pittsburgh, PA Bass, L., Clements, P., and Kazman, R 2003 Principles practices of software architecture 2nd ed Boston: Addison-Wesley Beck, K 2000 Extreme programming explained: Embrace change Reading, MA: Addison-Wesley Boehm, B 1981 Software engineering economics Englewood Cliffs, NJ: Prentice Hall Boehm, B 1986 A spiral model of software development enhancement ACM SIGSOFT Software Engineering Notes 11:14–24 Boehm, B., and Victor, B 2001 Software defect reduction top 10 list Technical Report USC CSE 2001510, National Science Foundation/University of Southern California, Center for Empirically Based Software Engineeirng Bowman, T., Holt, R C., and Brewster, N V 1999 Linux as a case study: Its extracted software architecture In Proceedings of the 21st International Conference on Software Engineering, Los Angeles, May 16–22, 1999, pp 555–63 New York: ACM Press Brooks, F 1995 The mythical man-month: Essays on software engineering Reading, MA: Addison-Wesley 10 Broom, G., Casey, S., and Ritchey, J 1997 Toward a concept theory of organization-public relationships Journal of Public Relations Research 9:83–98 11 Broy, M., Denert, E., eds 2002 Software pioneers: Contributions to software engineering New York: Springer 12 Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., and Stal, M 1996 A system of patterns: Pattern-oriented software architecture New York: Wiley 13 Carney, D 1998 Quotations from Chairman David: A little red book of truths to enlighten and guide on the long march toward the COTS revolution Pittsburgh, PA: Software EngineeringInstitute, Carnegie Mellon University 14 Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., and Stafford, J 2003 Documenting software architecture: Views beyond Boston: Addison-Wesley 15 Clements, P., Kazman, R., and Klein, M 2001 Evaluating software architecture: Methods and case studies Boston: Addison-Wesley 467 16 Clements, P., and Shaw, M 2003 The golden age of software architecture: A comprehensive survey CMU/ SEI-2003-TR-016, CMU-ISRI-06-101, Carnegie Mellon University/Institute for Software Research, Pittsburgh, PA 17 CMMI Product Team 2002 CMMI for systems engineering, software engineering, integrated product and process development, and supplier sourcing (CMMISE/SW/IPPD/SS, V1.1): Improving processes for better products: Stage representation CMU/SEI-2002-TR-012, ESC-TR-2002-01, Carnegie Mellon University/Institute for Software Research, Pittsburgh, PA 18 Coleman, D., Lowther, B., and Oman, P 1995 The application of software maintainability models in industrial software systems Journal of Systems Software 29:3–16 19 Fagan, M E 1976 Design and code inspections to reduce errors in program development IBM Systems Journal 15:182–211 20 Fagan, M E 1996 Advances in software inspections IEEE Transactions on Software Engineering SE-12:744–51 21 Forsberg, K., Mooz, H., Cotterham, H 1996 Visualizing project management New York: John Wiley 22 Gamma, E., Helm, R., Johnson, R., and Vlissides, J 1995 Design patterns: Elements of reusable object-oriented software Boston: Addison-Wesley 23 Garlan, D., and Shaw, M 1996 Software Architecture: Perspectives on an emerging discipline Upper Saddle River, NJ: Prentice Hall 24 Goodyear, M., Ryan, H., Sargent, S., Taylor, S., Boudreau, T., Arvanitis, Y., Chang, R., Kaltenmark, J., Mullen, N., Dove, S., Davis, M., Clark, J., and Mindrum, C 2000 Enterprise system architecture Boca Raton, FL: CRC Press 25 Guo, G., Atlee, J., and Kazman, R 1999 A software architecture reconstruction method In Proceedings of the First Working IFIP Conference on Software Architecture (WICSA1), San Antonio, TX, February 22–24, 1999, pp 225–43 Norwell, MA: Kluwer Academic Publishers 26 Hamlin, A D F 1909 A text-book of the history of architecture New York: Longmans, Green, Co 27 Harris, D R., Reubenstein, H B., and Yeh, A S 1995 Reverse engineering to the architecture level, 186–95 In Proceedings of the 17th International Conference on Software Engineering (ICSE), Seattle, April 23–30, 1995 New York: ACM Press 28 Hindo, B 2007 At 3M, a struggle between efficiency and creativity: How CEO George Buckley is managing the yin and yang of discipline imagination BusinessWeek, June 11 29 Hughes, T P 1989 American genesis: A century of invention and technological enthusiasm Viking: New York 30 Humphrey, W 1995 A discipline of software engineering Reading, MA: AddisonWesley Professional 31 Humphrey, W 1989 Managing the software process development Reading, MA: Addison-Wesley 32 Humphrey, W 1999 Team software process Reading, MA: Addison-Wesley 468 33 INCOSE (International Committee on System Engineering) http://www.incose.org/ 34 Jackson, M A 1983 System development Englewood Cliffs, NJ: Prentice Hall 35 Jacobson, I., Christenson, M., Jonsson, P., and Overgaard, G 1992 Object-oriented software engineering: A use case driven approach Reading, MA: Addison-Wesley 36 Krutchen, P 1995 The 4+1 view model of software architecture IEEE Software 12:42–50 37 Krutchen, P 2004 The rational unified process: An introduction 3rd ed Reading, MA: Addison-Wesley Professional 38 Maier, M., Rechtin, E 2000 The art of systems architecting 2nd ed Boca Raton, FL: CRC Press 39 Marca, D., McGowan, C 1988 SADT: Structured analysis and design technique New York: McGraw-Hill 40 Martin, J 1984 An information systems manifesto Englewood Cliffs, NJ: Prentice Hall 41 Martin, J 1991 Rapid application development New York: Macmillan Publishing 42 McAndrews, D 2000 Tổ software process (TSP): An overview and preliminary results of using disciplined practices CMU/SEI-2000-TR-015, ESC-TR-2000-015, Carnegie Mellon University/Software Engineering Institute, Pittsburgh, PA 43 Meason, G L 1828 The landscape architecture of the great painters of Italy C Hullmandel’s Lithographic Establishment, London 44 Oxford English Dictionary 2004 Oxford: Oxford University Press 45 Parnas, D L 1972 On the criteria to be used in decomposing systems into modules Communications of the ACM 15:1053–58 46 Paulk, M., Weber, C., Curtis, B., Chrissis, M 1995 The capability maturity model: Guidelines for improving the software process Reading, MA: Addison-Wesley 47 Pressman, R 2005 Software Architecture: A practitioners approach 6th ed Singapore: McGraw-Hill 48 Rechtin, E 1991 Systems architecting: Creating building complex systems Englewood Cliffs, NJ: Prentice Hall 49 Sangwan, R., Bass, M., Mullick, N., and Paulish, D 2006 Global software development handbook New York: Auerbach Publishing 50 Schwaber, K., Beedle, M 2004 Agile project management with Scrum Redmond, WA: Microsoft Press 51 Schwaber, K 2007 The enterprise and Scrum Redmond, WA: Microsoft Press 52 Sowa, J F., and Zachman, J A 1992 Extending formalizing the framework for information systems architecture IBM Systems Journal 31(3) 53 Thome, B., ed 1993 Systems Architecture: Principle and practice of computer-based system engineering New York: John Wiley & Sons 54 U.S Government Accounting Office (GAO) 1999 Observations on FAA’s air traffic control modernization program Testimony before the Subcommittee on Aviation, Committee on Commerce, Science Transportation, U.S Senate, March 25 469 55 Vitruvius 1914 The ten books on architectures, trans M H Morgan Cambridge, MA: Harvard University Press 56 Yourdon, E 1989a Modern structured analysis Englewood Cliffs, NJ: Yourdon Press 57 Yourdon, E 1989b Structured walkthroughs 4th ed Englewood Cliffs, NJ: Yourdon Press 58 Zachman, J 1987 A framework for information systems architectute IBM Systems Journal 26(3) 470