Lịch biểu thực hiện một phiờn đỏnh giỏ ATAM điển hỡnh

Một phần của tài liệu Tích hợp ATAM-CBAM trong đánh giá kiến trúc phần mềm và áp dụng cho dự án VANCO-NETDIRECT tại công ty phần mềm FSOFT (Trang 56)

3. Cấu trỳc và nội dung của luận văn

2.4.11 Lịch biểu thực hiện một phiờn đỏnh giỏ ATAM điển hỡnh

Dưới đõy là một chương trỡnh làm việc mẫu của một phiờn đỏnh giỏ ATAM. Trong đú cỏc bước được ghi chỳ trong ngoặc đơn. Trờn thực tế, thời gian đỏnh giỏ ATAM cú thể nhiều hoặc ớt tựy thuộc vào kớch cỡ và độ phức tạp của dự ỏn.

2.5. Phương phỏp đỏnh giỏ kiến trỳc phần mềm CBAM (Cost-Benefit Analysis Method)

2.5.1. Bối cảnh hỡnh thành phƣơng phỏp CBAM

Phương phỏp ATAM được cho là rất phự hợp khi phõn tớch một kiến trỳc nào đú xem cú đỏp ứng được cỏc yờu cầu về chất lượng hay khụng. Tuy nhiờn, thực tế cỏc doanh nghiệp khụng chỉ đũi hỏi hệ thống phần mềm đỏp ứng được cỏc yờu cầu này mà cũn phải đỏp ứng được cỏc ràng buộc khỏc như chi phớ trong phạm vi cho phộp, thời gian đưa ra thị trường nhanh,… nhưng vẫn phải đảm bảo lợi ớch thu được là tối đa. Hay núi cỏch khỏc là phương phỏp ATAM phõn tớch cỏc khớa cạnh liờn quan đến khung nhỡn của người dựng và nhà phỏt triển nhưng chưa đi phõn tớch khớa cạnh liờn quan đến doanh nghiệp. Chớnh vỡ vậy mà người ta mong muốn phải cú một phương phỏp nào đú cú thể phõn tớch cả về khớa cạnh liờn quan đến doanh nghiệp; và CBAM ra đời là nhằm đỏp ứng yờu cầu này.

Hỡnh 13 - Cỏc khung nhỡn khỏc nhau về hệ thống

CBAM cú mối quan hệ rất chặt chẽ với ATAM. Kết quả đầu ra của ATAM (là cỏc quyết định kiến trỳc) sẽ là đầu vào của phiờn đỏnh giỏ CBAM; như hỡnh minh họa sau đõy:

2.5.2.Mục tiờu của CBAM

CBAM được xõy dựng với mục tiờu là chiếc cầu nối giữa tiến trỡnh phỏt triển và xõy dựng kiến trỳc phần mềm với vấn đề về kinh tế của một tổ chức. CBAM coi cỏc chi phớ (ngõn sỏch, tiền bạc) như là những thuộc tớnh chất lượng và cần phải được xem xột khi hệ thống phần mềm được lờn kế hoạch phỏt triển. Trong khi đú thỡ SAAM và ATAM chủ yếu xem xột cỏc quyết định thiết kế thiờn về cỏc thuộc tớnh chất lượng thuộc kiến trỳc như tớnh sửa đổi, hiệu năng, tớnh sẵn sàng, tớnh dễ sử dụng, v.v.. CBAM cho rằng, cỏc chi phớ, cỏc lợi ớch và rủi ro cũng quan trọng như cỏc thuộc tớnh chất lượng khỏc, do vậy cần phải được cõn nhắc khi ra cỏc quyết định kiến trỳc.

2.5.3. Cỏc yếu tố dẫn đến sự phỏt triển CBAM.

Việc phỏt triển CBAM xuất phỏt từ tập cỏc cõu hỏi kiểu như:

 Cỏc quyết định kiến trỳc được đo lường và so sỏnh như thế nào với cỏc thuộc tớnh chi phớ, lợi ớch và cỏc khớa cạnh liờn quan.

 Cỏc thuộc tớnh chất lượng được phõn tớch và cõn bằng như thế nào đối với

cỏc lợi ớch và chi phớ liờn quan.

 Mức độ khụng chắc chắn đi cựng với mỗi ước lượng chi phớ và lợi ớch được

mụ tả như thể nào

2.5.4. Yờu cầu và đầu vào của CBAM.

Vỡ CBAM được xõy dựng dựa trờn kết quả của ATAM, do vậy sẽ cần một số yờu cầu như:

 Trỡnh bày kiến trỳc cho mọi người tham gia để họ thớch nghi,

 Làm cho mọi người hiểu rừ cỏc khỏi niệm như điểm nhạy cảm, điểm cõn

bằng, scenario và gợi ra cỏc yờu cầu (requirements) khi cần thiết.

 Đầu vào của phiờn đỏnh giỏ CBAM gồm:

 Bản trỡnh bày cỏc mục tiờu của doanh nghiệp.

 Cỏc quyết định kiến trỳc và cỏc điểm cõn bằng cú thể cú từ phiờn đỏnh giỏ

ATAM.

 Mức độ mong đợi cỏc thuộc tớnh chất lượng và cỏc ràng buộc về mặt kinh

tế.

2.5.5. Cỏc bƣớc thực hiện phiờn đỏnh giỏ CBAM.

Phiờn đỏnh giỏ CBAM bao gồm 2 pha. Pha đầu được gọi là pha lựa chọn, pha tiếp theo gọi là pha kiểm tra chi tiết. Pha đầu chỉ cần thiết khi cú nhiều chiến lược kiến trỳc được đưa ra thảo luận và cần chọn ra một số để kiểm tra chi tiết thờm. Trỏi lại, tiến trỡnh đỏnh giỏ cú thể bắt đầu từ pha thứ hai. Một phiờn đỏnh giỏ CBAM bao gồm 9 bước như sau:

Step 5: Phỏt triển cỏc chiến lược kiến trỳc cho cỏc scenario và xỏc định mức độ đỏp ứng thuộc tớnh chất lượng mong muốn của mỗi chiến lược đú. Với mỗi một chiến lược thỡ chỳng cú thể tỏc động đến nhiều scenario, bởi vậy cần phải thực hiện tớnh toỏn đối với mỗi scenario bị ảnh hưởng.

Step 6: Xỏc định tiện ớch của cỏc mức đỏp ứng thuộc tớnh chất lượng được ―mong đợi‖ thụng qua phộp nội suy.

Step 7: Tớnh toỏn tổng lợi ớch nhận được từ một kiến trỳc. Thực hiện việc tớnh toỏn này đối với mỗi thuộc tớnh chất lượng liờn quan đó được liệt kờ ở bước 3. Tiếp theo trừ giỏ trị tiện ớch của mức hiện tại cho giỏ trị ở mức kỳ vọng và chuẩn húa hú thụng qua số votes được chọn trong bước 3.

N scenarios.

N/3

Step : Collate scenario:

Prioritize to choose top one-third

Step 2: Refine scenario: Determine quality attribute response levels

Step 3: Prioritize scenario:

Eliminate half of the scenario.

Step 4: Assing utility for the current and desired levels for each scenario.

Step 5: Develop architectural strategies

for scenario&determine QA response levels

Step 6: Determine the expected utility value of architectural strategy

Step 7: Calculate total benefit obtained from an architectural strategy

Step 8: Choose architectural strategies based on ROI subject to cost constrains

Step 9: Confirm results with intuition

N/3

N/6

Hỡnh #: Cỏc bước thực hiện đỏnh giỏ CBAM.

Step 1: Collate scenarios. Kiểm chứng lại cỏc scenario đó được lựa chọn trong phiờn đỏnh giỏ ATAM, sau đú cựng những người tham gia cú thể bổ sung thờm một số scenario mới. Gỏn độ ưu tiờn cho cỏc scenario này dựa trờn sự thỏa món về thuộc tớnh chất lượng của hệ thống. Số scenario được lựa chọn để phõn tớch tiếp thường là 1/3.

Step 2: Refine scenarios. Tinh chỉnh lại cỏc scenario được chọn ra ở bước 1. Lựa chọn mức độ đỏp ứng thuộc tớnh chất lượng trong trường hợp hiện hành, tốt nhất, tồi nhất và mong muốn đối với mỗi scenario.

Step 3: Prioritize scenarios. Cấp phỏt 100 phiếu cho mỗi người tham gia để họ phõn bổ (biểu quyết) cho số scenario này. Việc bỏ phiếu đều dựa vào giỏ trị đỏp ứng mong muốn của mỗi scenario. Sau đú tớnh tổng số phiếu và chọn ra 50 scenario cú số phiếu bầu chọn cao nhất để phõn tớch tiếp. Tiếp theo, gỏn trọng số 1.0 cho scenario cú tỉ lệ phiếu bầu cao nhất và cỏc scenario khỏc một giỏ trị tương đối so với scenario này.

Step 4: Assign utility. Chỉ ra tiện ớch ứng với mỗi mức đỏp ứng thuộc tớnh chất lượng (trong cỏc trường hợp: tồi nhất, hiện hành, mong muốn và tốt nhất) đối với mỗi scenario ở bước 3.

Step 8: Lựa chọn cỏc chiến lược kiến trỳc dựa trờn chỉ số ROI (Return On Investment). Cụ thể là xỏc định chi phớ và lịch trỡnh thực hiện của mỗi chiến lược. Tớnh toỏn giỏ trị ROI theo cụng thức: ROI = Lợi ớch/ Chi phớ. Sau đú đỏnh thứ hạng của mỗi chiếu lược theo như giỏ trị ROI tớnh được và chọn những mục cú ROI lớn nhất cho đến khi nào cạn kiệt nguồn lực thỡ thụi.

Step 9: Xỏc nhận cỏc kết quả bằng khả năng trực giỏc. Đối với cỏc chiến lược kiến trỳc được lựa chọn, cần xem chỳng cú khớp với cỏc mục tiờu kinh doanh của tổ chức đú hay khụng. Nếu khụng thỡ xem xột lại cỏc vấn đề cú thể chưa được đề cập đến trong khi đỏnh giỏ. Cũn nếu cú vấn đề gỡ quan trọng thỡ cú thể thực hiện lại một số bước.

2.5.6. Cỏc đối tƣợng tham gia trong CABM

Trong CBAM, cú 3 loại đối tượng tham gia phiờn đỏnh giỏ:

a. Những ngƣời tham gia ngoài (External stakeholders) khụng liờn quan trực tiếp đến quỏn trỡnh phỏt triển kiến trỳc. Vai trũ của họ là mụ tả mục tiờu của doanh nghiệp, đưa ra cỏc thuộc tớnh chất lượng của hệ thống và mức kỳ vọng muốn đạt được. họ cũng tham giỏ để đỏnh giỏ kết quả thực hiện CBAM. Những người tham gia ngoài cú thể kể đến là nhúm quản trị doanh nghiệp, quản trị dự ỏn…

b. Những ngƣời tham gia trong nội bộ (Internal stakeholders) là những người liờn quan trực tiếp đến quỏ trỡnh đề xuất ra cỏc chiến lược kiến trỳc phần mềm để giải quyết cỏc yờu cầu về chất lượng. Họ cú vai trũ phõn tớch, định nghĩa và trỡnh bày cỏc khỏi niệm kiến trỳc về ước lượng chi phớ, về sự khụng chắc chắn đi cựng với mỗi kiến trỳc được đề xuất. Những Internal stakeholders cú thể kể ra gồm: những nhà kiến trỳc, nhà phõn tớch hệ thống hay nhúm kiến trỳc.

c. NhúmCBAM : Khụng cú liờn quan trực tiếp tới cỏc chiến lược kiến trỳc của hệ thống nhưng là người tổ chức phiờn đỏnh giỏ CBAM. Vai trũ của họ là hỗ trợ những người tham gia hệ thống trỡnh bày cỏc mục tiờu doanh nghiệp chẳng hạn như sau khi trỡnh bày cỏc thuộc tớnh chất lượng quan trọng của hệ thống và cỏc scenario đi cựng thỡ việc lựa chọn sẽ dễ dàng và dễ tớnh toỏn hơn. Nhúm CBAM cũng hỗ trợ nhúm kiến trỳc trong việc xỏc định cỏc chiến lược kiến trỳc làm thỏa món cỏc scenario chất lượng và ước lượng cỏc chi phớ, lợi ớch và lịch trỡnh thời gian gắn liền với mỗi chiến lược. nhúm đỏnh giỏ CBAM bao gồm nhà đỏnh giỏ (là team leader hoặc người phỏt ngụn), cỏc chuyờn gia ứng dụng, cỏc chuyờn gia kiến trỳc bờn ngoài (người này là tựy chọn, mục đớch đưa vào là để cho khỏch quan) và một thư ký nếu cần thiết.

2.5.7. Ƣớc lƣợng chi phớ khi ỏp dụng CBAM.

Tựy thuộc vào mục tiờu và qui mụ dự ỏn mà nhúm đỏnh giỏ phải bỏ ra cụng sức hợp lý. Nhỡn vào cỏc mặt về tổ chức và cỏc bước thực hiện CBAM chỳng ta cú thể thấy rằng cụng sức bỏ ra nhiều nhất đú là tập trung lựa chọn cỏc chiến lược kiến trỳc và dự bỏo về chi phớ-lợi ớch-lịch trỡnh. Một phiờn đỏnh giỏ CBAM mất khoảng một đến hai ngày. Ngoài ra cũng cần phải thực hiện phiờn đỏnh giỏ

ATAM, do vậy tổng thời gian thực hiện phải mất ớt nhất 4 ngày.

2.5.8. Cụng cụ hỗ trợ CBAM.

Hiện nay, chưa cú ứng dụng phần mềm nào hỗ trợ mụ tả trực tiếp phiờn đỏnh giỏ. Chỉ cú dấu hiệu được đưa ra ở bước 4 của CBAM mà tại đú chi phớ và lợi ớch của cỏc chiến lược kiến trỳc được xỏc định thụng qua một số cụng thức về sự mong đợi và sự khụng chắc chắn.

2.5.9. Cỏc phƣơng phỏp thay thế CBAM.

Cho đến này, vẫn chưa cú một phương phỏp nào đưa yếu tố kinh tến vào đỏnh giỏ cỏc thuộc tớnh phần mềm và phõn tớch cõn bằng.

2.5.10. Mục tiờu và ƣu điểm của CBAM.

Cỏc điểm mạnh của CBAM và đầu ra của CBAM là:

 Phương phỏp này cung cấp cỏc giỏ trị làm cơ sở lý luận cho quỏ trỡnh ra quyết

định khi ỏp dụng một chiến lược kiến trỳc nào đú.

 Phương phỏp cung cấp một thước đo giỳp ta xỏc định được giỏ trị thu về khi

ỏp dụng một thay đổi cụ thể đối với hệ thống.

 Phương phỏp cũng giỳp cỏc tổ chức trong việc phõn tớch và tiền đỏnh giỏ sự

đầu tư nguồn lực theo cỏc hướng khỏc nhau khi chấp thuận cỏc chiến lược kiến trỳc mà ở đú tối đa húa lợi ớch thu được và tối thiểu húa rủi ro.

Vỡ CBAM được xõy dựng trờn phương phỏp đỏnh giỏ kiến trỳc tổng quỏt kiểu như SAAM và ATAM, do vậy phương phỏp này cũng thừa hưởng những ưu điểm của SAAM và ATAM về gúc độ hiệu quả.

2.6. So sỏnh một số đặc điểm của cỏc phương phỏp đỏnh giỏ kiến trỳc

Những nhà thiết kế phần mềm đó đề xuất rất nhiều phương phỏp nhằm đỏnh giỏ kiến trỳc phần mềm, đặc biệt là về cỏc thuộc tớnh chất lượng, chẳng hạn như tớnh bảo trỡ, hiệu năng, tớnh sẵn sàng, tớnh bảo mật v.v…. Mỗi phương phỏp đều cú những đặc điểm riờng. Bởi vậy việc so sỏnh cỏc phương phỏp này ở một số khớa cạnh khỏc nhau là cần thiết để khi ỏp dụng chỳng ta biết nờn sử dụng phương phỏp nào là tối ưu hay cú những vận dụng hợp lý giữa cỏc phương phỏp.

Phƣơng phỏp Chất lƣợng đƣợc đỏnh giỏ Độ đo và cụng cụ hỗ trợ Mụ tả qui

trỡnh Điểm mạnh Điểm yếu

Hệ thống cú thể ỏp dụng phƣơng

phỏp này

SAAM Tớnh sửa đổi

Phõn loại scenario (Trực tiếp và giỏn

tiếp) Suy ra được

Xỏc định được nơi cú độ phức tạp tiềm ẩn cao.

Mở đối với bất kỳ mụ tả kiến trỳc nào.

Khụng phải là độ đo chất lượng rừ ràng.

Khụng được hỗ trợ bởi cỏc kỹ thuật khi thực hiện cỏc bước

Tất cả

ATAM Tớnh sửa đổi

Điểm nhạy cảm, Điểm cõn bằng Được hỗ trợ bởi cụng cụ ATA

Tốt

Sinh ra scenario dựa theo yờu cầu. Cú thể ỏp dụng cho cỏc thuộc tớnh tĩnh và động

Cõy tiện ớch chất lượng.

Yờu cầu cỏc thụng tin về kỹ thuật

phải chi tiết. Tất cả

CBAM

Chi phớ, lợi ớch và kế

hoạch.

Thời gian và chi

phớ Suy ra được

Cung cấp thước đo đối với thay đổi cụ thể.

Làm rừ sự khụng chắc và ước lượng tương ứng

Việc xỏc định chi phớ và lợi ớch cú tể được thực hiện bởi những người tham gia.

Tất cả

ALMA Tớnh sửa đổi

Ước lượng ảnh hưởng,

Mụ hỡnh dự bỏo sửa đổi

Suy ra được Cú tiờu chớ để dừng việc tạo scenario.

Bị giới hạn ở một số trường hợp. Tập trung vào cỏc thuộc tớnh tĩnh.

Hệ thống thụng tin doanh nghiệp FAAM Tớnh liờn tỏc và mở rộng Cú nhiều biểu đồ và bảng biểu chuyờn biệt. Rất tốt

Chi tiết luồng tiến trỡnh

Trao nhiệm vụ rừ ràng cho cỏc nhúm tham gia đỏnh giỏ.

Chỉ được chứng minh một phần, trong một mụi trường cụ thể. Chỉ tập trung vào thuộc tớnh tĩnh.

System families

Chƣơng 3:

TÍCH HỢP ATAM-CBAM VÀ ĐỀ XUẤT QUI TRèNH ĐÁNH GIÁ.

Trong chương này, xin được phõn tớch thờm một số đặc điểm của hai phương phỏp đỏnh giỏ kiến trỳc phần mềm ATAM và CBAM, sau đú đề xuất ra một phương phỏp phõn tớch mới được tớch hợp từ hai phương phỏp này để cú thể ứng dụng vào việc phõn tớch kiến trỳc trong thực tiễn.

Lý do để tớch hợp hai phương phỏp ATAM&CBAM bởi như đó phõn tớch ở trờn, ATAM tỏ ra rất mạnh về phõn tớch cỏc thuộc tớnh chất lượng (Khớa cạnh kỹ thuật), trong khi đú CBAM lại là phương phỏp duy nhất (cho đến tại thời điểm hiện nay) đỏnh giỏ kiến trỳc phần mềm ở gúc độ kinh tế (Chi phớ và lợi ớch). Ngoài ra, nếu nhỡn vào Bảng 9 ở trờn thỡ cú thể thấy rằng ATAM và CBAM khi gộp lại sẽ bao trựm toàn bộ cỏc thuộc tớnh cần đỏnh giỏ mà cỏc phương phỏp khỏc cú thể ỏp dụng. Vỡ vậy, việc tớch hợp hai phương phỏp này trong phõn tớch kiến trỳc phần mềm để tỡm ra một phương phỏp tối ưu là điều cần thiết.

3.1. Hướng tiếp cận tớch hợp ATAM và CBAM

Như đó phõn tớch, ATAM cung cấp cho cỏc nhà kiến trỳc một phương phỏp phõn tớch cú cấu trỳc để giỳp họ hiểu rừ hơn về cỏc cõn bằng mà họ gặp phải khi tạo ra cỏc quyết định thiết kế, nhưng lại khụng đưa ra bất kỳ một cỏch thức nào để hiểu về cỏc cõn bằng về khớa cạnh kinh tế. Trong khi đú CBAM lại giỳp cỏc nhà kiến trỳc tớnh toỏn được giỏ trị thu được (ROI- return on investment) từ bất kỳ quyết định kiến trỳc nào được tạo ra đồng thời cũn cung cấp cỏc chỉ dẫn về mặt kinh tế và cỏc cõn bằng cú liờn quan. Trong luõn văn này, xin được tập trung vào việc cải tiến phiờn đỏnh giỏ ATAM để sử dụng kết hợp với phiờn đỏnh giỏ CBAM (cũng được cải tiến).

Ta cú thể thấy, phương phỏp CBAM cú thể bổ sung cho ATAM bằng cỏch cung cấp cỏc phương tiện để chỉ ra cỏc lợi ớch và chi phớ. Hai phương phỏp này khi kết

hợp sẽ tạo ra một mắt xớch liờn kết từ mục tiờu doanh nghiệp  thuộc tớnh chất

lượng  scenario  quyết định kiến trỳc (business goals to quality attributes to

scenarios to architectural decisions) [6].

Theo như biểu đồ mụ tả đầu vào, đầu ra của CBAM (hỡnh số 14), chỳng ta thấy

Một phần của tài liệu Tích hợp ATAM-CBAM trong đánh giá kiến trúc phần mềm và áp dụng cho dự án VANCO-NETDIRECT tại công ty phần mềm FSOFT (Trang 56)

Tải bản đầy đủ (PDF)

(80 trang)