Bài giảng Kiến trúc phần mềm: Tài liệu kiến trúc phần mềm - PGS.TS. Trần Minh Triết
lượt xem 4
download
Bài giảng Kiến trúc phần mềm - Tài liệu kiến trúc phần mềm cung cấp cho người học các kiến thức: Architecture documentation, documenting an architecture is good, component diagram, deployment diagram, component interfaces, component decomposition,... Mời các bạn cùng tham khảo.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Kiến trúc phần mềm: Tài liệu kiến trúc phần mềm - PGS.TS. Trần Minh Triết
- Trường Đại học Khoa Học Tự Nhiên Khoa Công Nghệ Thông Tin Bộ môn Công Nghệ Phần Mềm CTT526 - Kiến trúc phần mềm Tài liệu kiến trúc phần mềm PGS.TS. Trần Minh Triết tmtriet@fit.hcmus.edu.vn Version 1.0 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Nội dung của bài giảng sử dụng: Session 6: Documenting a Software Architecture trong bộ slide Software Architecture Essential của GS. Ian Gorton Software Engineering Institute Carnegie Mellon University 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Architecture Documentation Architecture documentation is a thorny issue Commonly there is no documentation covering the architecture. If it is, it’s out-of-date, inappropriate and basically not very useful. Also projects that have masses of architecture related information Sometimes invaluable, but often it’s out-of-date, inappropriate and not very useful! 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Documenting an Architecture is good! Others can understand/evaluate the design. We can understand the design after a period of time. Others in the project team and development organization can learn from the architecture. We can do analysis on the design, perhaps to assess its likely performance, or to generate standard metrics. 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- But it’s difficult … No universally accepted architecture documentation standard. An architecture can be complex, and documenting it in a comprehensible manner is time consuming and non-trivial. An architecture has many possible views. Documenting all the potentially useful ones is time consuming and expensive. An architecture design often evolves Keeping the architecture documents current is often forgotten, especially with time and schedule pressures in a project. 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Think carefully about what to document Project complexity A small project may only need a ‘marketecture’ Project longevity One-off stop gap software? Strategic, long-term, will evolve? Needs of stakeholders Small team, a whiteboard might be ok Large, dislocated team needs more Integrators? Testers? Programmers? Need to spend documentation dollars/euros wisely on high value products 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- UML 2.0 UML is a powerful way to document an architecture Provides a relatively formal, unambiguous description New features in UML 2.0 appropriate for architectures Good tools available, some free Can be used to depict various structural/behavioral architecture views 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Component Diagram id Component View OrderProcessing read writeQ «table» MailQueue NewOrders 1 1 1 readQ 1 1 1 validate writeQ 1 1 SendEmail CustomerSystem OrderQueue 1 send readQ 1 MailServer OrderSystem 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Class Diagram cd OrderProcessing OrderReader QueueWriter 1 1 1 1 1 1 Validate Store 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Sequence Diagram sd Interactions OrderReader Validate Store QueueWriter NewOrders CustomerSystem OrderQueue MailQueue readOrderData success:= validateOrder success:= newOrder success:= storeOrder success:= writeQueue success:= acknowledgeOrderSuccess success:= writeQueue 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Deployment Diagram 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Component Interfaces id Component View OrderProcessing JDBC QueueWrite «table» MailQueue NewOrders QueueRead QueueWrite SendEmail OrderQueue CustomerServices SMTP QueueRead MailServer CustomerSystem OrderSystem 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Component Decomposition id Component View cd Component View JDBC OrderProcessing QueueWrite «table» MailQueue OrderProcessing NewOrders getOrders writeConfirmation validateOrder writeOrder «delegate» or: OrderReader qw: QueueRead QueueWriter «delegate» getOrders QueueWrite SendEmail writeConfirmation OrderQueue val: Validate st: Store CustomerServices SMTP QueueRead «delegate» «delegate» MailServer validate validateOrder writeOrder CustomerSystem OrderSystem ProvidedInterface1 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Document Template Documentation is easier if there’s a template to use Reduces start-up time for projects by providing ready-made document structures familiarity gained with the document structure aids in the efficient capture of project design details. help with the training of new staff 14 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Template Headings Architecture Documentation Template Project Name: XXX 1 Project Context 2 Architecture Requirements 2.1 Overview of Key Objectives 2.2 Architecture Use Cases 2.3 Stakeholder Architectural Requirements 2.4 Constraints 2.5 Non-functional Requirements 2.6 Risks 3 Solution 3.1 Relevant Architectural Patterns 3.2 Architecture Overview 3.3 Structural Views 3.4 Behavioral Views 3.5 Implementation Issues 4 Architecture Analysis 4.1 Scenario analysis 4.2 Risks 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Summary Some documentation is nearly always a good idea Trick is to produce ‘just enough’ and no more requires upfront planning and thinking Commitment to keeps docs current UML 2.0 makes architecture documentation easier Some good UML 2.0 tools, try ‘em out. 16 CuuDuongThanCong.com https://fb.com/tailieudientucntt
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Kiến trúc phần mềm: Chương 2 - ĐH Bách khoa TP HCM
32 p | 99 | 9
-
Bài giảng Kiến trúc phần mềm: Chương 1 - ĐH Bách khoa TP HCM
29 p | 119 | 9
-
Bài giảng Kiến trúc phần mềm: Chương 4 - ĐH Bách khoa TP HCM
6 p | 149 | 7
-
Bài giảng Kiến trúc phần mềm: Chương 3 - ĐH Bách khoa TP HCM
30 p | 97 | 7
-
Bài giảng Kiến trúc phần mềm: Chương 4 - TS. Nguyễn Văn Hiệp
6 p | 130 | 7
-
Bài giảng Kiến trúc phần mềm: Mẫu thiết kế (1) - PGS.TS. Trần Minh Triết
29 p | 40 | 6
-
Bài giảng Kiến trúc phần mềm: Mẫu thiết kế (3) - PGS.TS. Trần Minh Triết
53 p | 38 | 5
-
Bài giảng Kiến trúc phần mềm: Quy trình kiến trúc phần mềm - PGS.TS. Trần Minh Triết
33 p | 28 | 5
-
Bài giảng Kiến trúc phần mềm: Mẫu thiết kế (2) - PGS.TS. Trần Minh Triết
27 p | 31 | 5
-
Bài giảng Kiến trúc phần mềm: Middleware - PGS.TS. Trần Minh Triết
46 p | 30 | 5
-
Bài giảng Kiến trúc phần mềm: Kiến trúc hướng dịch vụ - PGS.TS. Trần Minh Triết
17 p | 38 | 5
-
Bài giảng Kiến trúc phần mềm: Chương 3 - TS. Nguyễn Văn Hiệp
30 p | 87 | 5
-
Bài giảng Kiến trúc phần mềm: Chương 2 - TS. Nguyễn Văn Hiệp
32 p | 73 | 5
-
Bài giảng Kiến trúc phần mềm: Chương 1 - TS. Nguyễn Văn Hiệp
29 p | 72 | 4
-
Bài giảng Kiến trúc phần mềm: Các tiêu chí và yêu cầu về Kiến trúc phần mềm - PGS.TS. Trần Minh Triết
41 p | 20 | 3
-
Bài giảng Kiến trúc phần mềm - Quy trình kiến trúc phần mềm
33 p | 33 | 2
-
Bài giảng Kiến trúc phần mềm - Chương 3: Các mẫu kiến trúc phổ dụng
30 p | 29 | 1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn