các mục tiêu quá trình phần mềm
học tập sau khi nghiên cứu chương này, bạn sẽ có thể
• giải thích tại sao mô hình vòng đời hai chiều rất quan trọng.
• mô tả các fi đã ows workfl cốt lõi của quá trình thống nhất.
• liệt kê các hiện vật được thử nghiệm trong các công việc thử nghiệm.
• mô tả bốn giai đoạn của quá trình thống nhất.
• giải thích sự khác biệt giữa ows workfl và các giai đoạn của quá trình thống nhất
.
• đánh giá cao tầm quan trọng của quá trình cải tiến phần mềm.
• mô tả mô hình trưởng thành năng lực (CMM).
74 qui trình phần mềm là cách chúng tôi sản xuất phần mềm. nó kết hợp các phương pháp
(phần 1.11) với phần mềm cơ bản mô hình vòng đời của nó (chương 2) và kỹ thuật,
các công cụ chúng tôi sử dụng (phần 5.6 thông qua 5,12), và quan trọng nhất của tất cả, các cá nhân
xây dựng phần mềm.
Tổ chức khác nhau có các quy trình phần mềm khác nhau. Ví dụ, hãy xem xét các vấn đề của tài liệu
. một số tổ chức xem xét các phần mềm mà họ sản xuất được selfdocumenting; đó là, sản phẩm có thể được hiểu đơn giản bằng cách đọc mã nguồn.
Các tổ chức khác,Tuy nhiên, các tài liệu chuyên sâu. họ punctiliously lập
tiết kỹ thuật và kiểm tra xem chúng có phương pháp. sau đó họ thực hiện các hoạt động thiết kế cẩn thận, kiểm tra và kiểm tra lại thiết kế của họ trước khi mã hóa bắt đầu, và cung cấp cho giới thiệu rộng rãi
của mỗi hiện vật mã để các lập trình viên. trường hợp kiểm tra được kế hoạch trước, kết quả của mỗi
chạy thử đăng nhập,và các dữ liệu thử nghiệm là fi tỉ mỉ dẫn đi. khi sản phẩm
đã được chuyển giao và được cài đặt trên máy tính của khách hàng, bất kỳ đề nghị thay đổi phải được đề nghị bằng văn bản, với lý do chi tiết để thực hiện sự thay đổi. đề nghị thay đổi có thể được thực hiện chỉ với
ủy quyền bằng văn bản, và cation modifi không được tích hợp vào sản phẩm
cho đến khi tài liệu đã được cập nhật và thay đổi các tài liệu đã được phê duyệt.
3 chương trình phần mềm 75
cường độ của thử nghiệm là một biện pháp mà các tổ chức có thể được so sánh. một số tổ chức
dành một nửa ngân sách phần mềm của họ để kiểm thử phần mềm, trong khi những người khác
cảm thấy rằng chỉ có người dùng hoàn toàn có thể kiểm tra sản phẩm. do đó, một số công ty dành
thời gian tối thiểu và công sức để thử nghiệm sản phẩm nhưng chi tiêu một số lượng đáng kể thời gian
vấn đề fi xing báo cáo của người dùng.
Postdelivery bảo trì là một mối bận tâm lớn của nhiều tổ chức phần mềm.
Phần mềm đó là 10, 15, hoặc thậm chí 20 tuổi liên tục tăng cường để đáp ứng nhu cầu thay đổi
, ngoài ra, lỗi còn lại tiếp tục xuất hiện,ngay cả sau khi các phần mềm đã được duy trì thành công trong nhiều năm. gần như tất cả các tổ chức di chuyển phần mềm của họ mới
phần cứng mỗi 3 đến 5 năm, điều này cũng tạo thành bảo trì postdelivery.
Ngược lại, nhưng về cơ bản các tổ chức khác có liên quan với nghiên cứu, để lại
phát triển-hãy để một mình bảo trì cho người khác. này áp dụng đặc biệt là các trường đại học
ngành khoa học máy tính, nơi sinh viên tốt nghiệp xây dựng phần mềm để chứng minh rằng một thiết kế hoặc kỹ thuật đặc biệt là khả thi. khai thác thương mại của khái niệm xác nhận là trái với các tổ chức khác. (Xem chỉ trong trường hợp bạn muốn biết hộp 3.1 về
các sự khác biệt lớn trong cách tổ chức khác nhau phát triển phần mềm.)
Tuy nhiên, không phụ thuộc vào thủ tục chính xác,quá trình phát triển phần mềm được
cấu trúc xung quanh các quy trình công việc của năm con số 2.4: yêu cầu, phân tích (đặc điểm kỹ thuật), thiết kế, thực hiện và thử nghiệm. trong chương này, các quy trình công việc được mô tả
, cùng với những thách thức tiềm năng có thể phát sinh trong mỗi quy trình làm việc.
Giải pháp cho những thách thức liên quan đến việc sản xuất các phần mềm thường là không tầm thường,và phần còn lại của cuốn sách này là dành cho việc mô tả kỹ thuật phù hợp. trong
Phần đầu của chương này, chỉ có những thách thức được đánh dấu, nhưng người đọc được hướng dẫn
vào các phần có liên quan hoặc các chương cho các giải pháp. theo đó, phần này của chương
không chỉ là một cái nhìn tổng quan của quá trình phần mềm, nhưng một hướng dẫn để nhiều phần còn lại của cuốn sách
.chương kết thúc với sáng kiến quốc gia và quốc tế để nâng cao
trình phần mềm.
Bây giờ chúng tôi kiểm tra quá trình thống nhất.
Chỉ trong trường hợp bạn muốn biết hộp 3.1
tại sao quá trình phần mềm khác nhau rất quyết liệt từ các tổ chức để tổ chức? a
lý do chính là thiếu các kỹ năng công nghệ phần mềm. tất cả các chuyên gia phần mềm quá nhiều
đơn giản là không giữ cho đến ngày.họ tiếp tục phát triển phần mềm Ye Olde thời
cách, bởi vì họ biết không có cách nào khác.
Một lý do cho sự khác biệt trong quá trình phần mềm là nhiều nhà quản lý phần mềm
là người quản lý xuất sắc nhưng biết quý chút về phát triển phần mềm hoặc bảo trì. họ thiếu kiến thức kỹ thuật có thể dẫn đến các dự án trượt rất tệ sau
lịch trình mà không có điểm trong việc tiếp tục. này thường là lý do tại sao nhiều dự án phần mềm
không bao giờ hoàn thành.
Có một lý do cho sự khác biệt giữa các quá trình là triển vọng quản lý. cho
Ví dụ, một tổ chức có thể quyết định rằng nó là tốt hơn để cung cấp một sản phẩm trên thời gian, ngay cả khi nó không
được kiểm tra đầy đủ. cho các trường hợp giống hệt nhau, một tổ chức khác nhau có thể
kết luận rằng nguy cơ của việc cung cấp sản phẩm đó mà không cần kiểm tra toàn diện sẽ là lớn hơn nhiều so
dành thời gian để kiểm tra sản phẩm kỹ lưỡng và do đó cung cấp
nó muộn.
76part một khái niệm công nghệ phần mềm
3,1 quá trình thống nhất
như đã nêu ở phần đầu của chương này, phương pháp là một trong những thành phần của một phần mềm
quá trình.các đối tượng theo định hướng phương pháp chính hiện nay là quá trình thống nhất.
như được giải thích trong chỉ trong trường hợp bạn muốn biết hộp 3.2, Unifi ed "quá trình" thực sự là một phương pháp
, nhưng tên phương pháp thống nhất đã được đã được sử dụng như tên gọi của phiên bản
fi tiên của mô hình ngôn ngữ Unifi ed (UML). ba tiền thân của
quá trình Unifi ed (OMT, phương pháp Booch của,và objectory) không còn được hỗ trợ, và
các phương pháp hướng đối tượng khác đã có ít hoặc không có sau. kết quả là, các quá trình thống nhất
thường là sự lựa chọn chính ngày hôm nay để sản xuất phần mềm hướng đối tượng. may mắn thay, như sẽ được chứng minh trong phần b của cuốn sách này, quá trình Unifi ed là một phương pháp
hướng đối tượng xuất sắc trong hầu hết mọi cách.
quá trình thống nhất không phải là một loạt c specifi các bước, nếu theo sau, sẽ dẫn đến việc
xây dựng một sản phẩm phần mềm. trên thực tế, không có như vậy đơn "một kích thước phù hợp với tất cả các" phương pháp
có thể tồn tại vì nhiều loại sản phẩm phần mềm. ví dụ, có rất nhiều
lĩnh vực ứng dụng khác nhau, chẳng hạn như bảo hiểm, hàng không vũ trụ, và sản xuất.
Cũng,một phương pháp đổ xô một gói giường ra thị trường trước đối thủ cạnh tranh của nó là
khác nhau từ sử dụng để xây dựng một mạng lưới chuyển tiền điện tử bảo mật cao. trong
Ngoài ra, các kỹ năng của các chuyên gia phần mềm có thể rất khác nhau.
Thay vào đó, quá trình ed Unifi nên được xem như là một phương pháp thích nghi. nghĩa là, nó là
ed modifi cho các sản phẩm phần mềm c specifi được phát triển.chúng ta sẽ thấy trong phần b,
một số tính năng của quá trình Unifi ed là áp dụng cho những phần mềm nhỏ và thậm chí quy mô vừa
. Tuy nhiên, phần lớn quá trình Unifi ed được sử dụng cho các sản phẩm phần mềm của tất cả các kích cỡ.
Nhấn mạnh trong cuốn sách này là tập hợp con trên này phổ biến của quá trình thống nhất, nhưng các khía cạnh của quá trình
Unifi ed chỉ áp dụng cho phần mềm quy mô lớn cũng được thảo luận, để đảm bảo
rằng vấn đề cần được giải quyết khi sản phẩm phần mềm lớn được xây dựng là
đánh giá kỹ lưỡng.
3,2 lặp đi lặp lại và incrementation trong
mô hình hướng đối tượng
mô hình hướng đối tượng sử dụng mô hình trong suốt. một modelis một tập hợp các sơ đồ UML đại diện cho một hoặc nhiều khía cạnh của sản phẩm phần mềm được phát triển. (Uml
sơ đồ được giới thiệu trong chương 7.) Nhớ lại rằng UML là viết tắt của Unifi ed mô hình ngôn ngữ. có nghĩa là, uml là công cụ mà chúng ta sử dụng để đại diện cho (mô hình) sản phẩm phần mềm mục tiêu.
Một lý do chính cho việc sử dụng một đại diện đồ họa như uml được thể hiện tốt nhất bằng cách cũ
câu tục ngữ, một bức tranh trị giá một ngàn chữ. sơ đồ UML cho phép các chuyên gia phần mềm
để giao tiếp với nhau một cách nhanh chóng hơn và chính xác hơn nếu chỉ bằng lời nói
thiệu đã được sử dụng.
Mô hình hướng đối tượng là một phương pháp lặp đi lặp lại-và-gia tăng. mỗi công việc bao gồm một số bước, và để thực hiện mà workfl ow, các bước của quy trình làm việc được lặp đi lặp lại
thực hiện cho đến khi các thành viên của nhóm phát triển hài lòng rằng
họ có một mô hình uml chính xác của sản phẩm phần mềm mà họ muốn phát triển. có nghĩa là, ngay cả những chuyên gia
phần mềm giàu kinh nghiệm nhất lặp và lặp lại cho đến khi cuối cùng
hài lòng rằng các sơ đồ UML là chính xác. ngụ ý là kỹ sư phần mềm, không
chỉ trong trường hợp bạn muốn biết hộp 3.2
cho đến gần đây,các phương pháp phát triển phần mềm hướng đối tượng phổ biến nhất là mô hình đối tượng
kỹ thuật (OMT) [Rumbaugh et al., 1991] và phương pháp Grady Booch của
[Booch, 1994]. OMT được phát triển bởi Rumbaugh jim và nhóm của ông tại trung tâm nghiên cứu và phát triển điện chung trong schenectady, new york, trong khi Grady Booch
phát triển phương pháp của mình tại hợp lý, inc., trong Santa Clara, California.tất cả các phương pháp phát triển phần mềm hướng đối tượng cơ bản là tương đương, vì vậy sự khác biệt giữa
OMT và phương pháp Booch của nhỏ. tuy nhiên, có luôn luôn là một sự cạnh tranh thân thiện
giữa những người ủng hộ của hai phe.
đang được dịch, vui lòng đợi..
