1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo bài tập lớn : Đảm bảo chất lượng phần mềm

40 4,2K 45

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 40
Dung lượng 336,93 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đảm bảo chất lượng phần mềm (Software Quality Assure) là một tập hợp các hành động cần thiết được lên kế hoạch một cách hệ thống để cung cấp đầy đủ niềm tin rằng quá trình phát triển phần mềm phù hợp để thành lập các yêu cầu chức năng kỹ thuật cũng như các yêu cầu quản lý theo lịch trình và hoạt động trong giới hạn ngân sách.

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO BÀI TẬP LỚN

Bộ môn: Đảm bảo chất lượng phần mềm.

Giảng viên hướng dẫn: Th.S Nguyễn Thái Cường

Nhóm thực hiện: Nhóm 8

Nhóm sinh viên thực hiện:

1 Lê Tuấn Anh

2 Đào Sỹ Nam Anh

3 Phạm Gia Khánh

Hà Nội, 12/2016

Trang 2

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Hà Nội, ngày … tháng … năm 2016

Trang 3

Thạc Sĩ: Nguyễn Thái Cường

LỜI CẢM ƠN

Bài tập lớn là môn học đánh khả năng làm việc theo nhóm của sinh viên, cũng như tạo cho sinh viên tạo cho sinh viên tính tự lập đánh dấu sự trưởng thành của một sinh viên, và khả năng làm việc dựa vào hướng dẫn của giáo viên, tạo điều kiện cho sinh viên nghiên cứu Khóa luận tốt nghiệp Kỹ sư sau này và là sự chuyển tiếp trong quá trình phấn đấu, học tập và rèn luyện của một sinh viên để trở thành một Kỹ sư Công nghệ thông tin Quá trình làm bài tập lớn, quá trình học tập, tích lũy và kiểm tra lại kiến thức đã học và đem những kiến thức đó áp dụng vào thực tế.

Nhóm em xin chân thành cảm ơn thầy NGUYỄN THÁI CƯỜNG Thầy đã trực tiếp hướng dẫn nhóm em làm Bài Tập Lớn này Trong quá trình thực hiện Bài Tập Lớn, thầy đã tận tình định hướng, hướng dẫn và giúp đỡ nhóm em giải quyết các khó khăn trong quá trình thực hiện bài tập lớn này

Lời cuối cùng, nhóm em xin chân thành cảm ơn thầy Chúc thầy và toàn thể gia đình sức khỏe và thành đạt.

Hà Nội, tháng 12 năm 2016

Trang 4

LỜI MỞ ĐẦU

Ngày nay, Công nghệ thông tin đã có những bước phát triển mạnh mẽ theo cảchiều rộng và chiều sâu Máy tính điện tử không còn là một thứ phương tiện quý hiếm màđang ngày càng trở thành một công cụ làm việc và giải trí thông dụng của con người,không chỉ ở công sở mà còn ngay cả trong gia đình

Đứng trước vai trò của thông tin hoạt động cạnh tranh gay gắt, các tổ chức và cácdoanh nghiệp đều tìm mọi biện pháp để xây dựng hoàn thiện hệ thống thông tin của mìnhnhằm tin học hóa các hoạt động tác nghiệp của đơn vị

Tự động hóa ngày càng có vai trò quan trọng trong nền kinh tế toàn cầu và trong kinhnghiệm hàng ngày Các kỹ sư đang cố gắng làm cho các thiết bị tự động hoá kết hợp vớicác công cụ toán học và tổ chức để tạo ra các hệ thống phức tạp cho một phạm vi đangnhanh chóng phát triển rộng lớn của các ứng dụng và hoạt động của con người Hiện naycác công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũngnhư các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet Thông qua cácsản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu củathương mại điện tử Với những thao tác đơn giản trên máy có nối mạng Internet bạn sẽ

có tận tay những gì mình cần mà không phải mất nhiều thời gian Bạn chỉ cần vào cáctrang dịch vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần Cácnhà dịch vụ sẽ mang đến tận nhà cho bạn

Để tiếp cận và góp phần trong quá trình xây dựng, phát triển và đảm bảo chất lượngcho phần mềm nhóm chúng em đã tìm hiểu và đưa ra được những đánh giá cho quá trìnhphân tích thiết kế tự động khi nghiên cứu tới các công cụ phần mềm hỗ trợ phân tích thiết

kế tự động

Với sự hướng dân tận tình của thầy Nguyễn Thái Cường chúng em đã hoàn thành bàitập lớn này Tuy đã cố gắng hết sức để tìm hiểu, phân tích, cài đặt và sử dụng nhưng chắcrằng cũng không thể tránh khỏi những thiếu sót Chúng em rất mong nhận được sự thông

Trang 5

MỤC LỤC

CHƯƠNG I: MỞ ĐẦU 2

I Tổng quan về đảm bảo chất lượng phần mềm 2

1 Chất lượng phần mềm và đảm bảo chất lượng phần mềm 2

2 Định nghĩa đảm bảo chất lượng phần mềm 2

II Tổng quan về đề tài 2

1 Tên đề tài 2

2 Lý do chọn đề tài 2

3 Mục đích của đề tài 2

CHƯƠNG II: QUY TRÌNH TỰ ĐỘNG HÓA 2

I Quy trình là gì? 2

II Tự động hóa là gì? 2

III Quy trình tự động hóa là gì? 2

CHƯƠNG III: CASE TOOL 2

I GIỚI THIỆU VỀ CASE 2

II Sự ra đời và phát triển 2

III Mục tiêu 2

1 Đôi nét về CASE Tool 2

2 Vai trò của các CASE Tool 2

3 Ưu điểm của CASE Tool 2

4 Các loại CASE Tool 2

5 Phân loại CASE Tool 2

6 Kỹ thuật đảo ngược và chuyển tiếp 2

IV CASE TOOL TRỰC QUAN VÀ RÕ NÉT 2

1 Phát triển hệ thống truyền thống và phát triển các hệ thống dựa trên Case .2 2 Môi trường CASE 2

3 CASE Tool nổi 2

4 CASE Tool hướng đối tượng 2

Trang 6

5 Tạo tài liệu và báo cáo bằng cách sử dụng các CASE Tool hướng đối tượng

2

CHƯƠNG III: GIỚI THIỆU MỘT CASE TOOL PHỔ BIẾN 2

I Rational Rose 2

II Microsoft Project 2

KẾT LUẬN 2

TÀI LIỆU THAM KHẢO 2

Trang 7

CHƯƠNG I: MỞ ĐẦU

I Tổng quan về đảm bảo chất lượng phần mềm

1 Chất lượng phần mềm và đảm bảo chất lượng phần mềm

a Định nghĩa chất lượng phần mềm

Có rất nhiều định nghĩa về chất lượng phần mềm được đưa ra bởi các tổ chức,

cá nhân khác nhau Trong phạm vi của bài viết này trình bày một số định nghĩa tiêu biểu

*Định nghĩa theo IEEE(1991):

*Phân tích hai quan điểm của IEEE:

 Theo quan điểm thứ nhất của IEEE: chúng ta sẽ bị phụ thuộc quá nhiều vào tài liệuđặc tả của yêu cầu, dẫn đến nếu việc xấc định yêu cầu bị sai, thiếu thì một phần mềm được làm đúng với đặc tả chưa chắc đã là một phần mềm có chất lượng

 Theo quan điểm thứ hai của IEEE: khách hàng đôi khi không có kiến thức về côngnghệ, họ có thể đưa ra những mong muốn hết sức vô lý và có thể thay đổi yêu cầu với phần mềm nhiều lần, thậm chí thay đổi ngay trong giai đoạn cuối Điều này gây nhiều khó khăn cho việc phát triển phần mềm

*Định nghĩa theo Pressman: Chất lượng phần mềm là sự phù hợp của các yêu

cầu cụ thể về hiệu năng và chức năng, các tiêu chuẩn phát triển phần mềm được ghi lại rõ ràng bằng tài liệu với các đặc tính ngầm định của tất cả các phần mềm được phát triển chuyên nghiệp

Trang 8

Định nghĩa của Pressman đề xuất ba yêu cầu với chất lượng phần mềm phải được đáp ứng khi phát triển phần mềm:

o Các yêu cầu chức năng rõ ràng là nhân tố chính quyết định chất lượng đầu

ra của phần mềm

o Các tiêu chuẩn chất lượng phần mềm sẽ được nói đến trong hợp đồng

o Các đặc tính ngầm định cần được đáp ứng trong quá trình phát triển cho dù không được nói đến rõ ràng trong hợp đồng

2 Định nghĩa đảm bảo chất lượng phần mềm

Định nghĩa theo Daniel Galin: Đảm bảo chất lượng phần mềm (Software Quality

Assure) là một tập hợp các hành động cần thiết được lên kế hoạch một cách hệ thống

để cung cấp đầy đủ niềm tin rằng quá trình phát triển phần mềm phù hợp để thành lập các yêu cầu chức năng kỹ thuật cũng như các yêu cầu quản lý theo lịch trình và hoạt động trong giới hạn ngân sách

3 Đặc trưng ảnh hưởng tới chất lượng phần mềm

 Tính đúng đắn: mức độ mà dự án hoàn thành các đặc tả của nó

 Tính hiệu quả: dùng tài nguyên trong thực hiện và lưu giữ

 Tính linh hoạt: dễ làm thay đổi được yêu cầu do thay đổi trong môi trường vận hành

 Tính toàn vẹn: bảo vệ dự án khỏi truy nhập không được phép

 Tính liên tác: nỗ lực được yêu cầu để tích hợp hệ thống vào hệ thống khác

 Tính bảo trì: nỗ lực được yêu cầu để định vị và sửa lỗi trong dự án trong môi trường vận hành của nó

 Tính khả chuyển: nỗ lực được yêu cầu để truyền dự án từ môi trường này sang môi trường khác

 Tính tin cậy: khả năng không hỏng

Trang 9

 Tính kiểm thử được: dễ dàng kiểm thử dự án để đảm bảo rằng nó không lỗi

và đáp ứng đặc tả

 Tính khả dụng: dễ dùng phần mềm

Tất nhiên, trong một thế giới hoàn hảo tất cả những tiêu chí này sẽ được đáp ứng, nhưng trong thực tế việc bù trừ là một phần của mọi dự án phát triển Thường phần mềm hiệu quả nhất lại không khả chuyển, vì tính khả chuyển sẽ yêu cầu mã phụ thêm, làm giảm tính hiệu quả Tính khả dụng là chủ quan và thay đổi tuỳ theo kinh nghiệm của người dùng Khi dùng các tiêu chí này để xác định mục tiêu đảm bảo của hệ thống phần mềm, mục đích và việc dùng hệ thống phải được tính tới Trong thế giới thực của phát triển phần mềm, tiêu chí về chất lượng được nhận diện và áp dụng cho mức độ khác biệt xem như kết quả của các quyết định bù trừ

II Tổng quan về đề tài

đã trở thành một lĩnh vực trọng điểm đối với hầu hết các nước phát triển trên thếgiới Ngoài ra với sự phát triển của nó còn kéo theo một số các ngành khác pháttriển theo chẳng hạn như: Y tế, giáo dục, kinh tế, nghiên cứu khoa học,… đời sốngcủa người dân cũng được cải thiện, sự đáp ứng nhu cầu ngày càng hoàn thiện hơn.Một hệ thống thông tin hóa sẽ giúp làm giảm thiểu rất nhiều các công việc lưu trữ

Trang 10

bằng tay, tiết kiệm thời gian, công đoạn đi lại, chi phí, nó rất có hiệu quả trongviệc quản lý Để sảm phẩm phần mềm có khả năng cạnh tranh thì chất lượng phầmmềm phải cao hơn, chi phí có thể cao cũng được, nhưng tiền nào của nấy và tùytừng nhu cầu của phần mềm khác nhau Phần mềm lớn thì cần đảm bảo chất lượngmột cách thủ công với chi phí và công sức, thời gian bỏ ra lớn.

Tuy nhiên, với phần mềm có quy mô nhỏ, việc phát triển và đảm bảo chấtlượng phần mềm làm theo cách thủ công thì chi phí quá đắt, những web giới thiệusản phẩm hay báo chí có khi không cần những chức năng cao như bảo mật… vậynên, để giảm chi phí cũng như thời gian, người ta đã phát triển công cụ phần mềm

hỗ trợ phát triển phần mềm Computer-Aided Software Engineering gọi tắt làCASE Tools

3 Mục đích của đề tài

Đề tài “CASE Tools for Software Development and Software Quality Assurance” nhằm tìm hiểu công cụ phát triển và đảm bảo chất lượng phần mềm.

Trang 11

CHƯƠNG II: QUY TRÌNH TỰ ĐỘNG HÓA

I Quy trình là gì?

Quy trình là một trình tự có tổ chức các hoạt động để hoàn thành cái gì đó Chẳnghạn: Dự án phần mềm Trong trường hợp này, dự án là việc áp dụng tài nguyên vào quytrình đó Tài nguyên là con người, công cụ và kĩ thuật mà bạn áp dụng khi tuân theo quytrình Thuật ngữ “con người” cũng chỉ ra kĩ năng và kinh nghiệm của thành viên tổ Trình

tự là trật tự theo đó mọi sự được hoàn thành Thuật ngữ “trật tự” nghĩa là bạn phải tuântheo nó "từng bước một" tương ứng theo quy tắc Chẳng hạn, bạn phải hiểu yêu cầu trướckhi bắt đầu thiết kế; chỉ khi thiết kế được hoàn thành thì bạn mới có thể bắt đầu viết mãv.v

Quy trình được đại diện bởi ba yếu tố: Hiệu quả: Mối quan hệ giữa việc dùng tàinguyên và kết quả được hoàn thành Thời gian chu kì: "Tốc độ" của quy trình, tức là, thờigian cần để hoàn thành một quy trình Và Chất lượng: Chất lượng của quy trình như đượcxác định bởi người dùng như đáp ứng yêu cầu, không có lỗi v.v Tổ hợp của ba yếu tốnày xác định ra năng lực của tổ hay tổ chức Cải tiến liên tục là việc thay đổi hay nângcấp từ năng lực mức thấp hơn lên năng lực mức cao hơn

Không có đào tạo đúng, người phát triển phần mềm sẽ làm bất kì cái gì họ muốnchỉ để làm cho công việc của họ được thực hiện Vì phát triển phần mềm là hoạt động

"làm việc theo tổ", không phải là hoạt động cá nhân, điều quan trọng là mọi thành viên tổđều tuân theo những qui tắc nào đó như tuân theo "Quy trình được xác định" cho dự án

đó Người quản lí dự án phải nhận diện "Quy trình được xác định" trong bản kế hoạch dự

án và giám sát các hoạt động để đảm bảo rằng các thành viên tổ tuân theo nó để có đượckết quả mong muốn như hiệu quả, chất lượng và tốc độ

Một trong những vấn đề chính trong đào tạo khoa học máy tính là sinh viên có xuhướng làm việc cô lập Điển hình, từng người được trao cho một vấn đề để giải quyết,một chương trình để viết mã, và từng người được cho điểm tương ứng theo thành tích cá

Trang 12

nhân Khi sinh viên đi làm, từng người sẽ tiếp tục làm bất kì cái gì có thể để làm cho việclàm của họ được thực hiện, giống như khi họ còn trong trường Không có hiểu biết vềlàm việc tổ bằng việc tuân theo qui trình, nhiều dự án sẽ không chuyển giao được phầnmềm cho khách hàng trong lịch biểu và có chất lượng Nhiều dự án thường chậm và cóchất lượng kém Chúng thất bại vì thiếu sự phối hợp và làm việc tổ điều cho phép cácthành viên tổ làm việc cùng nhau Chúng thất bại vì một số thành viên vội vàng viết mã

mà không thực sự hiểu các yêu cầu Chúng thất bại vì có quá nhiều thay đổi trong dự ánđiều thường tới trễ và không có qui trình giải quyết thay đổi Chúng thất bại vì ngườiquản lí dự án không biết cách lập kế hoạch, tổ chức hay ước lượng thời gian, lịch biểu và

nỗ lực được cần để hoàn thành dự án

Quy trình được xác định là bản lộ trình cho dự án Nó yêu cầu các thành viên tổ tuântheo "con đường" từng bước một Từng bước phải có vai trò và trách nhiệm được xácđịnh rõ ràng cho từng thành viên tổ Khi thay đổi xảy ra, bản lộ trình nhận diện rõ ràng ailàm cái gì để cho tổ có thể làm cho công việc của họ được thực hiện có hiệu quả, chấtlượng và đáp ứng lịch biểu dự án (tốc độ)

II Tự động hóa là gì?

Tự động hóa là việc sử dụng các hệ thống kiểm soát như máy tính để kiểm soát máymóc thiết bị công nghiệp và quy trình sản xuất, giảm bớt sự cần thiết phải can thiệp củacon người Trong phạm vi điều chỉnh của công nghiệp hóa, tự động hóa là một bước kếtiếp của cơ giới hoá Trong khi cơ giới hoá mang lại cho con người khả năng vận hànhmáy móc thiết bị để giúp cho các cơ cấu vật lý hoạt động theo yêu cầu công việc, thì tựđộng hóa lại làm giảm thiểu rất nhiều nhu cầu về sự giám sát cần thiết cũng như trí tuệcủa con người Các quy trình và hệ thống đều có thể được tự động hoá

Tự động hóa ngày càng có vai trò quan trọng trong nền kinh tế toàn cầu và trong kinhnghiệm hàng ngày Các kỹ sư đang cố gắng làm cho các thiết bị tự động hoá kết hợp vớicác công cụ toán học và tổ chức để tạo ra các hệ thống phức tạp cho một phạm vi đangnhanh chóng phát triển rộng lớn của các ứng dụng và hoạt động của con người

Trang 13

Nhiều vai trò của con người trong các quá trình sản xuất công nghiệp hiện nay vẫnnằm ngoài phạm vi điều chỉnh của tự động hóa Khả năng nhận dạng, nhận giọng và tạongôn ngữ vẫn nằm ngoài năng lực của cơ học hiện đại và các hệ thống máy tính Nhữngcông việc đòi hỏi phải có sự đánh giá chủ quan hoặc tổng hợp dữ liệu bằng cảm tính phứctạp, chẳng hạn như hình ảnh và âm thanh, cũng như các nhiệm vụ cao cấp như lập kếhoạch chiến lược hoặc trước mắt vẫn yêu cầu chuyên môn của con người Trong nhiềutrường hợp, việc sử dụng con người vẫn có hiệu quả hơn phương pháp tiếp cận cơ khí, cảnhững nơi thậm chí tự động hóa các tác vụ của công nghiệp có thể đã thực hiện được Các phần cứng máy tính đặc biệt, gọi tắt là các bộ điều khiển logic lập trình (PLC),thường được sử dụng để đồng bộ hóa tín hiệu đầu vào của các cảm biến và đầu ra để tớicác cơ cấu chấp hành Điều này dẫn đến sự kiểm soát chính xác những hoạt động, vốncho phép kiểm soát chặt chẽ hầu hết mọi quá trình sản xuất công nghiệp

Các giao diện người - máy (HMI) hoặc giao diện máy tính - người (CHI), trước đâyđược coi như là giao diện người - máy, thường được sử dụng để liên lạc với PLC và cácmáy vi tính, chẳng hạn như nhập và giám sát nhiệt độ hoặc áp lực để có thêm kiểm soát

tự động hoặc phản ứng khẩn cấp Dịch vụ nhân sự gồm những người theo dõi và kiểmsoát các giao diện thường được gọi tắt các kỹ sư tĩnh (có vẻ chưa đúng thuật ngữ này)

III Quy trình tự động hóa là gì?

Là thực hiện một quá trình, hoạt động, dự án với theo một quy trình với sự hỗ trợcủa thiết bị công nghệ và máy tính điện tử

Trang 14

CHƯƠNG III: CASE TOOL

I GIỚI THIỆU VỀ CASE

CASE (Computer Aided Software Engineering) là những phương pháp trợ giúpcho nhà phát triển phần mềm Mục tiêu của việc giới thiệu CASE là giảm thời gian, chiphí phát triển phần mềm và cho việc nâng cao chất lượng của các việc phát triển các hệthống CASE liên quan đến việc sử dụng các gói phần mềm được gọi là CASE Tool đểthực hiện và tự động hóa nhiều hoạt động của chu kỳ cuộc sống phát triển hệ thống

CASE là một sự thay đổi cách mạng đang xảy ra trong quá trình phát triển hệthống phần mềm truyền thống Quá trình SDLC (Software Development Life Cycle –Vòng đời phần mềm) bình thường thường được xem là không linh hoạt, tốn thời gian vàtốn kém Trước những hạn chế của quá trình SDLC, CASE đã nổi lên để giúp các tổ chứcphát triển hệ thống và phần mềm Các CASE Tool là hữu ích trong việc lập kế hoạch kinhdoanh, quản lý dự án, thiết kế giao diện người dùng, thiết kế cơ sở dữ liệu và lập trình Sửdụng các CASE Tool làm cho máy tính hỗ trợ phát triển phần mềm có thể Trong bốicảnh của ngày nay, nhanh chóng phân phối sản phẩm có thể được thử thách nhiệm vụ chocác nhà cung cấp phần mềm, CASE Tool như là cánh tay giúp việc để hỗ trợ tổ chứcquản lý quá trình phát triển phần mềm và tự động hoá các quy trình nhất định của cáchoạt động này Đáng chú ý là một số khả năng của CASE được tìm thấy trong hầu hết cáccông cụ phát triển phần mềm hiện đại Một số tự động thiết kế giao diện người dùng, mộtvài có thể tự động sinh code chương trình; CASE Tools hỗ trợ đặc biệt trong phân tích &thiết kế, bảo trì và quy hoạch hệ thống, cung cấp các hỗ trợ trong toàn bộ vòng đời pháttriển của phần mềm v.v… Thật khó để tưởng tượng cuộc sống của một lập trình viên màkhông cần các CASE Tool

Trang 15

Ngày nay, hầu hết các tổ chức phần mềm không cần bận tâm về việc dùng CASETool trong quá trình phát triển phần mềm của họ Cuối cùng, rào cản trong việc thúc đẩycác CASE Tool đã trở thành một tiêu chuẩn.

II Sự ra đời và phát triển

1 Lịch sử

Ngay từ những ngày đầu phát triển phần mềm, kỹ sư phần mềm đã tìm kiếm cáccông cụ có ích cho họ trong mô hình của hệ thống, sự hiểu biết của hệ thống là cách dễdàng trong nhiều cách khác với những người liên quan đến khoa học máy tính Từ 1968đến 1971 đã có rất nhiều cải tiến được thực hiện về vấn đề này như thiết kế cơ cấu từ trênxuống, lợi ích của mô đun, từng bước sàng lọc mã được thực hiện; đến năm 1975, chấtlượng, độ tin cậy của phần mềm là những vấn đề lớn và các thủ tục kiểm tra được ápdụng cho sự phụ thuộc phần mềm

CASE Tool chính thức giới thiệu vào năm 1980, khi tài liệu hướng dẫn, sơ đồ vàcác công cụ thiết kế được giới thiệu trong lĩnh vực này Trong cùng thập kỷ, tự độngkiểm tra phân tích thiết kế, tạo mã tự động và các tiện ích thiết kế liên kết được giớithiệu Tầm quan trọng của CASE Tool được coi là hệ thống quy mô lớn và CASE chínhthức được coi như như là một ngành công nghiệp Ngày nay có rất nhiều CASE Tool,thậm chí nhiều hơn số trường hợp cho cùng một vấn đề Giờ đây, công cụ này giúp cácnhà phát triển phân tích, thiết kế và tạo các tài liệu hướng dẫn của phần mềm Ngay cảcác CASE Tool có sẵn cho việc triển khai và bảo trì của phần mềm Các công cụ nhưErwin, Rational Rose có tạo ra có tầm quan trọng trong thị trường do chất lượng và độ tincậy của họ Trong vòng mười năm qua, các CASE Tool đã nổi lên như một công nghệtương tác và đã đạt được vị trí cao trong các lĩnh vực phát triển phần mềm Chúng vẫnđang trong quá trình cải tiến như các lĩnh vực khác của thế giới, bởi vì tất cả những gìcon người tạo ra trong thế giới này luôn luôn có chỗ cho cải tiến

Trang 16

2 Sự cần thiết của CASE

Các nhà phát triển phần mềm luôn luôn tìm kiếm các CASE Tool có thể giúp họtrong nhiều cách khác nhau trong các giai đoạn phát triển khác nhau của phần mềm, để

họ có thể hiểu được phần mềm và chuẩn bị một sản phẩm cuối cùng có hiệu quả thựchiện các yêu cầu của người dùng CASE Tool cung cấp những cách có thể đáp ứng yêucầu này của các nhà phát triển phần mềm Những công cụ này cung cấp các thiết lập trênmáy vi tính cho các nhà phát triển phần mềm để phân tích một vấn đề và sau đó thiết kế

mô hình hệ thống của nó

 Những ưu điểm của CASE Tool

 Chúng cung cấp sự nhận thức sâu sắc hơn về hệ thống

 Tạo điều kiện liên lạc giữa các thành viên trong nhóm

 Các công cụ có hiệu quả hơn cho các hệ thống và các dự án quy mô lớn

 CASE Tool cung cấp khả năng hiển thị của các quá trình và sự logic

 CASE Tool cải thiện chất lượng và năng suất của phần mềm

 CASE Tool giảm thời gian cho việc sửa lỗi và bảo trì

 CASE Tool cung cấp khả năng đọc rõ ràng và bảo trì của hệ thống

3 Vị trí của CASE Tool trong những năm 90.

Mục đích của CASE là để giảm chi phí và thời gian cần thiết cho sự phát triển hệthống và tập trung vào chất lượng của sản phẩm cuối cùng CASE đã không được sửdụng như nó đã tưng được hy vọng Hầu hết các công ty không muốn áp dụng các CASETool Quan sát cho thấy rằng CASE đang được sử dụng nhưng không phải ở nhiều công

ty “Những lý do để từ bỏ bao gồm chi phí, thiếu lợi nhuận đo lường được, và kỳ vọngkhông thực tế Các tổ chức sử dụng các CASE Tool và phát hiện ra rằng một số lượng lớncủa các hệ thống phát triển của họ không được sử dụng các CASE Tool Ông báo cáorằng 57% các tổ chức được khảo sát đã được sử dụng các CASE Tool, ít hơn 25 % cácnhà phát triển hệ thống sử dụng các công cụ” (Diane Lending 1998) Và trong những

Trang 17

Tool Trong một cuộc khảo sát của 67 công ty, nó đã được quan sát thấy rằng 69% cáccông ty chưa bao giờ được sử dụng các CASE Tool Và những người đang sử dụng cácCASE Tool thừa nhận rằng việc sử dụng các CASE Tool cải thiện các tiêu chuẩn tài liệu

và kết quả hệ thống dễ dàng hơn để kiểm tra và duy trì Tuy nhiên, những người sử dụngcác CASE Tool cũng thừa nhận rằng việc sử dụng các CASE Tool đòi hỏi nhiều thời gian

và nỗ lực và cũng cho biết thêm trong thời gian phát triển tổng thể

Dưới 30% những người sử dụng tiềm năng và các nhà phát triển sử dụng CASE vànhững người sử dụng nó, sử dụng các chức năng đơn giản và cơ bản của các CASE Tool.Điều này cho thấy rằng ngay cả sau khi nhận được rất nhiều phổ biến các CASE Toolkhông được chấp nhận và sử dụng rất nhiều trong ngành công nghiệp phát triển phầnmềm như chúng mong đợi hoặc là chúng nên được sử dụng Chỉ sau một năm giới thiệu

70 % các CASE Tool không bao giờ được sử dụng, 25% được sử dụng bởi một nhóm và5% của CASE Tool được sử dụng hoàn toàn [ Juhani Iivar, 1996]

4 Tại sao CASE Tool chưa phổ biến

 Chi phí

Rất nhiều công cụ tốn kém và hầu hết các công ty không sẵn sàng để thực hiện cácCASE Tool bởi thực tế là nó làm tăng chi phí tổng thể của dự án Và điều thứ hai nếu mộtcông ty không nhận được bất kỳ thêm lợi nhuận bằng cách sử dụng các CASE Tool, tạisao họ phải sử dụng các CASE Tool, cuối cùng lại mất thêm chi phí

 Thời gian giới hạn

Luôn luôn có một giới hạn thời gian cho tất cả các dự án phần mềm để phát triển.Hầu hết các công ty không chấp nhận CASE vì nó đòi hỏi rất nhiều thời gian để đào tạocác nhà phát triển và thực hiện tất cả các hoạt động Case và luôn có những thời hạn đểhoàn thành dự án Bạn đã quá đáp ứng thời hạn của công ty, nhưng nếu bạn sử dụng cácCASE Tool bạn không thể hoàn thành dự án đúng thời hạn, đó cũng là một yếu tố được

sử dụng ít hơn của CASE Tool

 Đào tạo

Trang 18

Đào tạo là một mối quan tâm lớn trong khi bất kỳ công ty sẽ sử dụng một công cụmới, đó là thủ tục khá tốn kém Họ có để đào tạo phát triển cho việc sử dụng hiệu quả củacông cụ đó cụ thể Hầu hết các công ty tránh sử dụng các CASE Tool vì thực tế này rằng

họ sẽ phải để đào tạo một số lượng lớn các nhân viên và gây tốn kém chi phí cũng nhưtốn thời gian

 Thiếu quan tâm

Hầu hết các nhà phát triển sử dụng các CASE Tool không hoàn toàn hài lòng từcác CASE Tool, đó là lý do tại sao họ là khá trung lập về tính hữu ích của CASE Tool.Các nhà phát triển không được hưởng đầy đủ bằng cách sử dụng các CASE Tool và nếumột số người trong số họ làm như vậy, họ chỉ sử dụng chức năng hạn chế của CASETool Nhiều nhà phát triển sử dụng các CASE Tool như là một yêu cầu của tổ chức duynhất Các nhà phát triển dường như không có động cơ để sử dụng các CASE Tool vàthiếu sự quan tâm là yếu tố lớn trong việc sử dụng ít hơn của CASE Tool

 Kỹ thuật hạn chế

Mọi CASE Tool theo một phương pháp cho các mô hình hệ thống Những người

sử dụng bất kỳ công cụ trường hợp cụ thể trong một thời gian dài hơn thời gian quen vớiphương pháp của công cụ đó và họ cố gắng để áp dụng các phương pháp tương tự đối vớicác dự án khác Hầu hết các công cụ phần cứng của họ và yêu cầu phần mềm Những yêucầu cần đáp ứng để sử dụng công cụ đó Đây là một trở ngại trong việc áp dụng CASETool cho những công ty không đáp ứng được yêu cầu phần cứng hoặc phần mềm để sửdụng các CASE Tool Công cụ không nên là tấm hình thức phụ thuộc hoặc phần mềmhoặc phần cứng

 Chuyển giao công nghệ

Một trong những thách thức chính trong việc áp dụng CASE là thay đổi côngnghệ CASE phụ thuộc vào quản lý, quy hoạch và kinh nghiệm đầu và nó không thể đượcđảm bảo ngay cả những người có kinh nghiệm trường hợp đó có thể dễ dàng được kết

Trang 19

 Môi trường

Môi trường là một yếu tố đóng vai trò quan trọng trong sự thất bại của các CASETool Là có bất kỳ thực hành tồn tại trong tổ chức để áp dụng công nghệ mới và hiệu quảtìm hiểu nó, phe đối lập luôn luôn là có công nghệ mới và công chúng không muốn thayđổi công nghệ hiện có, bởi vì họ phải tìm hiểu nó trước khi sử dụng nó Hành vi củangười dân đối với sự thay đổi trong tổ chức cũng rất quan trọng, nếu các nhà phát triển vànhững người khác có liên quan trong một tổ chức sẵn sàng để thực hiện và áp dụng côngnghệ mới, sau đó có ít vấn đề hơn

 Lựa chọn các CASE Tool

Đó cũng là một mối quan tâm lớn mà một tổ chức phải chọn trường hợp một công

cụ thích hợp mà bộ có tổ chức, nhưng không may thay hầu hết của các nhà phát triển thờigian không được tư vấn và quản lý sử dụng để chọn công cụ trường hợp đó là một trởngại lớn trong cách thâm nhập CASE Tool Trước khi lựa chọn bất kỳ công nghệ mới,những người sử dụng chúng phải được tư vấn bởi vì họ tốt hơn có thể lập luận rằng làmthế nào họ có thể sử dụng hiệu quả các CASE Tool Vì có nhiều công cụ cho cùng mộtvấn đề nên việc lựa chọn công cụ thị trường là một mối quan tâm lớn

III Mục tiêu

Phần này cung cấp kiến thức để:

• Biết các vai trò của các CASE Tool và sự sử dụng bởi các tổ chức ;

• Biết các thành phần của CASE Tools ;

• Giải thích các CASE Tool trực quan và biết về một số công cụ thương mại;

• Mô tả các CASE Tool tinh vi ;

• Mô tả các CASE Tools hướng đối tượng với tiện ích của chúng trong phát triểnphần mềm

Trang 20

1 Đôi nét về CASE Tool

CASE (Computer Aided Software Engineering) là việc sử dụng máy tính hỗ trợquá trình phát triển công nghệ phần mềm Sự hỗ trợ có thể là của bất kỳ loại như quản lý,

kỹ thuật hoặc hành chính trên bất kỳ một phần của quá trình phát triển phần mềm Tất cảcác phần mềm tham gia giúp đỡ trong quá trình phát triển công nghệ phần mềm có thểđược gọi là CASE Tool

Khi hoạt động phát triển phần mềm trở nên phức tạp và không thể quản lý được,

đã có một nhận thức về sự cần thiết cho các công cụ tự động để giúp các nhà phát triểnphần mềm để thực hiện nhiệm vụ này Ban đầu, đã được tập trung chủ yếu vào chươngtrình công cụ hỗ trợ như thiết kế của phiên dịch, biên dịch, lắp ráp, các bộ vi xử lý vĩ mô,

và các công cụ khác Khi máy tính trở nên mạnh mẽ hơn và các phần mềm chạy trênchúng đã phát triển lớn hơn và phức tạp hơn, các công cụ hỗ trợ đã bắt đầu mở rộng hơnnữa Một số khả năng của CASE Tool cũng được tìm thấy trong các phần mềm ứng dụngphát triển chung

Quy mô lớn sử dụng máy tính đã đòi hỏi phải sử dụng tối đa và hiệu quả và pháttriển phần mềm cho các hoạt động khác nhau của bất kỳ tổ chức nào Một nỗ lực pháttriển phần mềm có thể được xem như là một nỗ lực đáng kể để thiết kế các giải phápthích hợp, kiểm tra và thực hiện các giải pháp và cuối cùng là tài liệu các giải pháp.Trong quan điểm này, một loạt các công cụ hỗ trợ bắt đầu xuất hiện để giúp các nhómphát triển

2 Vai trò của các CASE Tool

CASE Tool đóng một vai trò quan trọng trong các hoạt động sau đây:

• Quản lý dự án

• Từ điển dữ liệu

• Sinh mã (sinh code)

• Thiết kế giao diện người dùng

Ngày đăng: 13/12/2016, 18:27

TỪ KHÓA LIÊN QUAN

w