Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

VS2010 - Tính năng tiên tiến dành cho kiến trúc ứng dụng

Về tác giả
Bài viết này được cung cấp bởi MVP [Thân Bá Hùng]. Microsoft chân thành cảm ơn những MVP đã chia xẻ những kinh nghiệm chuyên môn của mình với những người sử dụng khác. Bài viết này sẽ được đăng trên website hoặc blog của MVP sau đây. Nếu bạn muốn xem các bài viết khác được chia xẻ bởi MVP, vui lòng nháy chuột vào đây.
Những triệu chứng
Trong quá trình phát triển ứng dụng, kiến trúc và thiết kế ứng dụng là công việc đầu tiên và quan trọng có tính quyết định đến hệ thống phần mềm của bạn, tuy nhiên công việc này thường được phát triển một cách độc lập, và kết quả mang lại là một đống tài liệu thiết kế. Từ đó các lập trình viên và trưởng dự án sẽ lập kế hoạch và thực hiện dự án. Tuy nhiên không phải lúc nào cũng đúng như với kết quả và bảo đảm tính toàn vẹn của kiến trúc ứng dụng.
Nguyên nhân
Việc gắn liền giữa thiết kế và lập trình là công việc vô cùng thiết yếu trong phát triển phần mềm, lập trình viên phải luôn bảo đảm ứng dụng của mình viết ra tuân thủ và được chứng nhận phù hợp với kiến trúc thiết kế, hơn nữa, nếu sai thiết kế phải được cảnh báo một cách nhanh chóng.

Việc tích hợp giữa thiết kế và phát triển là một yêu cầu thiết yếu, và trở nên đơn giản hơn khi sử dụng với Visual Studio 2010.
Giải pháp
Trong phần này, chúng tôi sẽ đưa ra cho các bạn một cái nhìn tổng quan về sơ đồ, tính năng và công cụ được cung cấp trong Visual Studio 2010 dành cho nhà kiến trúc hệ thống. Mặc dù không đi sâu vào chi tết các thành phần của UML những qua đó, chúng ta cũng sẽ nắm bắt được các khả năng mà Visual Studio 2010 mang lại cho các nhà kiến trúc ứng dụng.

Bộ công cụ Visual Studio 2010 cung cấp khả năng tự sinh mã nguồn từ sơ đồ lớp và sơ đồ tuần tự dành cho các dự án phát triển trên nền tảng .Net. Không những thế, một năng lực mới được nhấn mạnh trong VS 2010 chính là khả năng sinh ra sơ đồ dựa trên các mã nguồn có sẵn. Ngoài ra, một thách thức lớn đối với các nhà phát triển ứng dụng, đó chính là sự liên kết giữa mã nguồn và kiến trúc phải được đảm bảo, điều này được VS 2010 hỗ trợ với DGML (Directed Graphical Markup Language) và cơ chế truy vết kiến trúc ứng dụng.
Để biết thêm thông tin
Mô hình hóa yêu cầu phần mềm

Sơ đồ giao tác người dùng (Use Case Diagram)

Việc mô tả các giao tác của người dùng trong hệ thống được xác định dựa trên các tác nhân của hệ thống và các giao tác tương ứng, mối quan hệ giữa tác nhân và giao tác, tác nhân và tác nhân, giao tác và giao tác như quan hệ kế thừa, quan hệ phụ thuộc, quan hệ <<include>>, quan hệ <<extend>> và một số quan hệ khác. Ngoài ra, các module trong hệ thống phần mềm được xác định dựa trên nhóm các giao tác có cùng mục đích, mỗi nhóm các giao tác này xác định một module hay một gói (package) trong hệ thống.

Sơ đồ hoạt động (Activities Diagram)

Sơ đồ hoạt động thể hiện các qui trình nghiệp vụ trong tổ chức, doanh nghiệp, ví dụ như qui trình cho vay trong các ngân hàng. Việc sử dụng sơ đồ hoạt động mô tả luồng dữ liệu từ một thao tác đến một thao tác khác. Sơ đồ hoạt động được hỗ trợ trong Visual Studio 2010 thể hiện sự tương tác giữa các thao tác với nhau dựa trên việc gửi, nhận và chấp thuận của các thao tác. Các luồng dữ liệu Vào - Ra (Input/Output) được dùng để mô tả sự nhập và xuất của dữ liệu trong mỗi thao tác, sự kiện. Với nhiều kí tự để mô tả các sự kiện như bắt đầu, kết thúc, các cấu trúc lặp và nhiều thao tác xử lí khác đều được hỗ trợ trong Visual Studio 2010, việc thực hiện xây dựng một sơ đồ hoạt động được thực hiện hoàn toàn nhanh chóng và tiện lợi thông qua việc kéo thả các đối tượng từ thanh công cụ.

Mô hình hóa kiến trúc phần mềm

Công việc kiến trúc phần mềm ứng dụng là công việc xác định cấu trúc hoàn chỉnh của toàn hệ thống phần mềm, bao gồm việc xác định chức năng, các vấn đề kỹ thuật, dữ liệu và triển khai, khung nhìn chung về hệ thống, các thành phần luận lí của dữ liệu và mối quan hệ giữa các thành phần này. Qua đó sẽ xác định và kiến lập kiến trúc dự kiến cho phần mềm, xác lập thứ tự ưu tiên, mức độ quan trọng của các thành phần trong hệ thống, các lớp để xác định được các vấn đề về chức năng và phi chức năng của hệ thống. Visual Studio 2010 hỗ trợ UML Modeling Project ứng dụng trong suốt giai đoạn kiến trúc ứng dụng của vòng đời phát triển phần mềm.

Trong Visual Studio 2010, việc xây dựng các sơ đồ UML được thực hiện bằng một trong hai cách sau:

· Sử dụng UML Model Project (.modelproj)

· Sử dụng .Net Code Project.

Sơ đồ phân lớp ứng dụng (Layer Diagram)

Các chức năng của phần mềm ứng dụng được mô hình hóa thành các tầng luận lí thể hiện khung nhìn toàn cảnh về phần mềm như Presentation, Business, Data Access, Database/Persistence, mô tả mối quan hệ tương tác, phụ thuộc giữa các thành phần với nhau.

Trong khi, Visual Studio 2010 không hỗ trợ sơ đồ thể hiện chức năng, phạm vi kỹ thuật của phần mềm, mà thay vào đó thì sơ đồ phân tầng trong mô hình kiến trúc ứng dụng hỗ trợ mô tả kiến trúc các tầng trong hệ thống.


Mỗi tầng luận lí trong sơ đồ kiến trúc thể hiện một hệ thống con hay một thành phần của toàn hệ thống. Trong suốt quá trình phát triển ứng dụng, các thành phần cài đặt mã nguồn như UI, Business, Data Access tại Visual Studio Solution Explorer được ánh xạ từ từng tầng riêng biệt của sơ đồ phân tầng trong giai đoạn thiết kế kiến trúc ứng dụng.

Nếu mã nguồn của mỗi tầng kiến trúc không gắn kết, đảm bảo sự kết nối với các thành phần khác của sơ đồ phân tầng ứng dụng, vấn đề rắc rối này sẽ được kiểm soát với tùy chọn “Architecture Validation” bằng cách phải chuột lên sơ đồ phân tầng (Layer Diagram).

Dựa trên định hướng phát triển ứng dụng của kiến trúc phân tầng, hệ thống cần được phân chia thành một mức độ chi tiết hơn gồm có sơ đồ thành phần và sơ đồ lớp.

Sơ đồ thành phần (Component Diagram)

Sơ đồ thành phần thể hiện mối quan hệ giữa các thành phần khác nhau trong hệ thống. Sơ đồ thành phần được sử dụng trong các kiến trúc hướng thành phần để thể hiện mối quan hệ, phụ thuộc giữa các thành phần với nhau. Thành phần được thực thi bởi nhiều Interfaces, hoặc kế thừa từ một thành phần khác và phải phụ thuộc vào các thành phần này. Mỗi thành phần được mô tả chi tiết thông qua các lớp cụ thể mà sẽ được xác định trong quá trình.



Sơ đồ lớp (Class Diagram)

Sơ đồ lớp hỗ trợ việc xây dựng các lớp đối tượng, giao diện lớp và thể hiện mối quan hệ giữa các lớp, giao diện với nhau. Các mối quan hệ giữa các lớp đối tượng trong sơ đồ lớp có thể là mối quan hệ kế thừa (Inheritance), phụ thuộc (Depedency), liên kết (Association), kết nhập (Aggregation) hoặc hợp thành (Composition). Việc thiết lập thuộc tính và các phương thức của lớp được thực hiện hoàn toàn dễ dàng bằng cách phải chuột trên lớp và chọn thêm mới thuộc tính hay phương thức.


Sơ đồ tuần tự (Sequence Diagram)

Sơ đồ tuần tự mô tả luồng gọi xử lí giữa các đoạn thực thi của một giao tác hiện thực cụ thể. Chi tiết hơn, sơ đồ tuần tự thể hiện sự tương tác giữa các đối tượng trong một chuỗi truyền thông điệp và dòng thực thi của đối tượng (Lifeline). Lifeline đại diện cho thể hiện của đối tượng tại một thời điểm, và các thông điệp đại diện cho các phương thức được gọi giữa các đối tượng. Sơ đồ tuần tự cung cấp tùy chọn để xây dựng đối tượng lifeline, call flow và các cấu trúc lặp.



Đó là một số tính năng tiên tiến trong công cụ Architect giúp cho các nhà phân tích thiết kế ứng dụng có thể thiết kế nên chi tiết hệ thống, và quan trọng hơn là nó được tích hợp trong quá trình phát triển ứng dụng.
Tuyên bố Không chịu trách nhiệm Nội dung Giải pháp Cộng đồng
CÔNG TY MICROSOFT VÀ/HOẶC CÁC NHÀ CUNG CẤP CỦA HỌ KHÔNG BẢO ĐẢM VỀ TÍNH PHÙ HỢP, ĐỘ TIN CẬY HOẶC TÍNH CHÍNH XÁC CỦA THÔNG TIN VÀ HÌNH ẢNH LIÊN QUAN Ở ĐÂY. MỌI THÔNG TIN VÀ HÌNH ẢNH NHƯ VẬY ĐƯỢC CUNG CẤP “NHƯ NGUYÊN MẪU” MÀ KHÔNG CÓ BẤT KỲ BẢO ĐẢM NÀO. MICROSOFT VÀ/HOẶC CÁC NHÀ CUNG CẤP CỦA HỌ KHÔNG CHỊU TRÁCH NHIỆM ĐỐI VỚI MỌI BẢO ĐẢM VÀ ĐIỀU KIỆN VỀ THÔNG TIN VÀ HÌNH ẢNH LIÊN QUAN NÀY, BAO GỒM CẢ MỌI BẢO ĐẢM VÀ ĐIỀU KIỆN LIÊN QUAN VỀ TÍNH THƯƠNG MẠI, PHÙ HỢP CHO MỘT MỤC ĐÍCH ĐẶC BIỆT, NỖ LỰC CỦA CÔNG VIỆC, TƯ CÁCH VÀ CAM KẾT KHÔNG VI PHẠM. BẠN ĐỒNG Ý MỘT CÁCH CỤ THỂ LÀ KHÔNG CÓ TRƯỜNG HỢP NÀO MÀ MICROSOFT VÀ/HOẶC CÁC NHÀ CUNG CẤP CỦA HỌ BỊ RÀNG BUỘC VÀO BẤT KỲ THIỆT HẠI TRỰC TIẾP, GIÁN TIẾP, TRỪNG PHẠT, TÌNH CỜ, ĐẶC BIỆT, HỆ QUẢ HOẶC BẤT KỲ THIỆT HẠI DẠNG NÀO, BAO GỒM NHƯNG KHÔNG GIỚI HẠN THIỆT HẠI DO MẤT MÁT, DỮ LIỆU HOẶC LỢI ÍCH, XẢY RA HOẶC TRONG MỌI CÁCH LIÊN QUAN ĐẾN VIỆC SỬ DỤNG HOẶC KHÔNG THỂ SỬ DỤNG THÔNG TIN VÀ HÌNH ẢNH LIÊN QUAN CÓ Ở ĐÂY, DÙ LÀ DỰA VÀO HỢP ĐỒNG, LỖI GÂY THIỆT HẠI, SƠ SUẤT, NGHĨA VỤ PHÁP LÝ HOẶC BẤT KỲ CƠ SỞ NÀO KHÁC, NGAY CẢ NẾU MICROSOFT HOẶC BẤT KỲ NHÀ CUNG CẤP NÀO CỦA HỌ ĐÃ ĐƯỢC TƯ VẤN VỀ KHẢ NĂNG BỊ THIỆT HẠI.
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.
Thuộc tính

ID Bài viết: 2664385 - Xem lại Lần cuối: 01/30/2012 09:45:00 - Bản sửa đổi: 3.0

Microsoft Visual Studio 2010 Ultimate

  • kbprb kbtshoot kbstepbystep kbgraphxlink kbmvp KB2664385
Phản hồi