Bản chất của các sản phẩm phần mềm là như vậy mà hầu như tất cả mọi thứ đã được phát triển
và từng bước lặp đi lặp lại. Sau khi tất cả, kỹ sư phần mềm cũng là con người, và do đó đề
Luật Miller (Phần 2.5). Đó là, nó là không thể xem xét tất cả mọi thứ cùng một lúc,
vì vậy chỉ cần bảy hay nên khối (đơn vị thông tin) được xử lý ban đầu. Sau đó, khi các tập tiếp theo
của khối được coi là, thêm kiến thức về các sản phẩm phần mềm là đã đạt được mục tiêu, và các
sơ đồ UML là ed modifi trong ánh sáng của thông tin bổ sung này. Quá trình này tiếp tục
theo cách này cho đến khi cuối cùng các kỹ sư phần mềm là ed satisfi rằng tất cả các mô hình cho một định
ow workfl là chính xác. Nói cách khác, ban đầu các sơ đồ UML tốt nhất có thể được rút ra trong
ánh sáng của tri thức có sẵn ở đầu của ow workfl. Sau đó, như thêm kiến thức
về các hệ thống thực tế được mô hình đã đạt được, các sơ đồ được thực hiện chính xác hơn
(lặp lại) và mở rộng (incrementation). Theo đó, không có vấn đề như thế nào có kinh nghiệm và tay nghề cao
là một kỹ sư phần mềm có thể được, anh ta hoặc cô liên tục lặp và tăng cho đến khi satisfi ed rằng các
sơ đồ UML là đại diện chính xác của sản phẩm phần mềm được phát triển.
Lý tưởng nhất, vào cuối của cuốn sách này, người đọc sẽ có những kỹ năng kỹ thuật phần mềm
cần thiết cho việc xây dựng, các sản phẩm phần mềm lớn và phức tạp mà các Process ed Unifi đã được phát triển. Thật không may, có ba lý do tại sao điều này là không khả thi.
1. Chỉ vì nó không thể trở thành một chuyên gia về tính toán hay một ngoại ngữ trong một
khóa học duy nhất, đạt profi tính hiệu trong quá trình ed Unifi đòi hỏi nghiên cứu sâu rộng và,
quan trọng hơn, thực hành bất tận trong hướng đối tượng công nghệ phần mềm.
2. Quá trình ed Unifi đã được tạo ra chủ yếu để sử dụng trong việc phát triển lớn, các sản phẩm phần mềm phức tạp. Để có thể xử lý nhiều vấn đề phức tạp của sản phẩm phần mềm như vậy, các
Process ed Unifi là thân lớn. Nó sẽ là khó để trang trải mọi khía cạnh của ed Unifi
trình trong sách giáo khoa của các kích thước này.
3. Để dạy các Process ed Unifi, nó là cần thiết để trình bày một nghiên cứu trường hợp để minh họa các
tính năng của Process ed Unifi. Để minh họa cho các tính năng mà áp dụng cho phần mềm lớn
các sản phẩm, một nghiên cứu trường hợp như vậy sẽ phải lớn. Ví dụ, chỉ cần các cation specifi
thường có thể mất hơn 1000 trang.
Đối với ba lý do, cuốn sách này trình bày nhất, nhưng không phải tất cả, của Process ed Unifi.
Các fi vecore workfl OWS của Unified Process (yêu cầu workfl ow, phân tích
workfl ow, thiết kế workfl ow, thực hiện workfl ow, và thử nghiệm workfl ow) và thách thức của họ đang thảo luận.
3.3 Yêu cầu Workfl ow
phát triển phần mềm là đắt. Quá trình phát triển thường bắt đầu khi các
khách hàng tiếp cận một tổ chức phát triển đối với một sản phẩm phần mềm, với
các ý kiến của khách hàng, hoặc là cần thiết để các tability profi của doanh nghiệp của mình hoặc
bằng cách nào đó có thể được ed justifi kinh tế. Mục đích của therequirements workfl ow là dành cho
các tổ chức phát triển để xác định nhu cầu của khách hàng. Nhiệm vụ đầu tiên kinh của nhóm phát triển là để có được một sự hiểu biết cơ bản của miền theapplication (domain cho
ngắn), có nghĩa là, môi trường c specifi trong đó các sản phẩm phần mềm mục tiêu là để hoạt động.
Các tên miền có thể là ngân hàng, sản xuất ô tô, hoặc vật lý hạt nhân.
sch76183_ch03_074-106.indd 78 04/06/10 06:35
Chương 3 Quá trình phần mềm 79
Ở bất kỳ giai đoạn của quá trình, nếu khách hàng ngừng tin tưởng rằng phần mềm sẽ được chi phí
hiệu quả, phát triển sẽ chấm dứt ngay lập tức. Trong suốt chương này giả định
được đưa ra rằng khách hàng cảm thấy rằng chi phí là ed justifi. Do đó, một khía cạnh quan trọng của phần mềm
phát triển là trường hợp thebusiness, một tài liệu chứng minh các chi phí-hiệu quả của
các sản phẩm mục tiêu. (Trong thực tế, "chi phí" không phải lúc nào cũng hoàn toàn tài chính fi. Ví dụ, quân sự
phần mềm thường được xây dựng vì những lý do chiến lược hay chiến thuật. Ở đây, chi phí của phần mềm là
khả năng thiệt hại có thể được đau khổ trong sự vắng mặt của các vũ khí đang được phát triển.)
Tại một cuộc họp ban đầu giữa khách hàng và các nhà phát triển, khách hàng vạch ra các sản phẩm như
anh hay cô quan niệm đó. Từ quan điểm của các nhà phát triển, mô tả của khách hàng
về các sản phẩm mong muốn có thể được mơ hồ, bất hợp lý, mâu thuẫn, hoặc chỉ đơn giản là không thể
đạt được. Nhiệm vụ của các nhà phát triển ở giai đoạn này là để xác định chính xác những gì khách hàng
với nhu cầu và fi nd ra từ các khách hàng những gì hạn chế tồn tại.
• Một hạn chế lớn là hầu như luôn luôn thedeadline. Ví dụ, khách hàng có thể quy định
rằng các sản phẩm thành phẩm phải được hoàn thành trong vòng 14 tháng. Trong hầu hết các ứng dụng
tên miền, nó bây giờ là phổ biến cho một sản phẩm phần mềm mục tiêu là nhiệm vụ quan trọng. Đó
là, khách hàng cần sản phẩm phần mềm cho các hoạt động cốt lõi của tổ chức của mình, và
bất kỳ sự chậm trễ trong việc cung cấp các sản phẩm mục tiêu là bất lợi cho tổ chức.
• Một loạt các hạn chế khác thường, có mặt, asreliability đó (ví dụ, các
sản phẩm phải được hoạt động 99 phần trăm thời gian, hoặc thời gian trung bình giữa các sự cố
phải có ít nhất 4 tháng). Một khó khăn thường gặp là kích thước của phụ tải thực thi
hình ảnh (ví dụ, nó có thể chạy trên máy tính cá nhân của khách hàng hoặc trên các phần cứng
bên trong các vệ tinh).
• Thecost là hầu như luôn là một hạn chế quan trọng. Tuy nhiên, khách hàng hiếm khi nói với
các nhà phát triển bao nhiêu tiền có sẵn để xây dựng các sản phẩm. Thay vào đó, một phổ biến
thực tế là, một khi các cation specifi đã được nalized fi, các khách hàng yêu cầu các nhà phát triển
để đặt tên cho giá của họ để hoàn thành dự án. Khách hàng theo thủ tục đấu thầu này trong
hy vọng rằng số lượng thầu của nhà phát triển là thấp hơn so với số tiền khách hàng đã
lập ngân sách cho dự án.
Các điều tra sơ bộ về nhu cầu của khách hàng đôi khi là thăm dò calledconcept. Trong các cuộc họp tiếp theo giữa các thành viên của nhóm phát triển và khách hàng
nhóm, các chức năng của các sản phẩm được đề xuất là tiếp Refi ned và phân tích
tính khả thi về kỹ thuật và tài chính cation justifi.
Cho đến nay, tất cả mọi thứ có vẻ là đơn giản. Thật không may, các yêu cầu
workfl OW thường được thực hiện không đầy đủ. Khi nally sản phẩm fi được giao cho
người sử dụng, có thể một hoặc hai sau khi các cation specifi đã được ký tắt vào của khách hàng năm, các
khách hàng có thể nói với các nhà phát triển, "Tôi biết rằng đây là những gì tôi yêu cầu, nhưng nó là không thực sự những gì
tôi muốn. "Những gì khách hàng yêu cầu và, do đó, những gì các nhà phát triển nghĩ rằng khách hàng
muốn, không phải là những gì khách hàng actuallyneeded. Có thể có một số lý do cho việc này
khó khăn. Đầu tiên, khách hàng có thể không thực sự hiểu những gì đang xảy ra ở riêng của mình
tổ chức. Ví dụ, nó không sử dụng yêu cầu các nhà phát triển phần mềm cho một hoạt động nhanh hơn
hệ thống nếu các nguyên nhân của sự thay đổi hoàn toàn chậm hiện nay là một cơ sở dữ liệu thiết kế xấu. Hoặc, nếu các
khách hàng hoạt động một chuỗi bảng unprofi của các cửa hàng bán lẻ, khách hàng có thể yêu cầu cho một hệ thống thông tin quản lý tài chính mà refl phản hạng mục như bán hàng, tiền lương, các khoản phải nộp,
và các khoản phải thu. Một sản phẩm như vậy sẽ không mấy tác dụng nếu các lý do thực sự cho những tổn thất
sch76183_ch03_074-106.indd 79 04/06/10 18:35
là co rút (vi trộm cắp của nhân viên và trộm cắp). Nếu đó là trường hợp, sau đó một điều khiển chứng khoán
hệ thống chứ không phải là một hệ thống thông tin quản lý tài chính là cần thiết.
Nhưng lý do chính tại sao các khách hàng thường xuyên yêu cầu cho các sản phẩm sai là phần mềm đó là phức tạp. Nếu nó là sùng bái diffi cho một phần mềm chuyên nghiệp để hình dung một phần của phần mềm
và chức năng của nó, vấn đề là còn tồi tệ hơn đối với một khách hàng người hầu như không biết chữ máy tính.
Như sẽ được trình bày trong Chương 11, Quá trình ed Unifi có thể giúp đỡ trong vấn đề này ; UML nhiều
sơ đồ của quá trình ed Unifi hỗ trợ khách hàng trong việc đạt được sự hiểu biết chi tiết cần thiết về những gì cần phải được phát triển.
3.4 Phân tích Workfl ow
Mục đích của theanalysis workfl ow là phân tích và tinh chỉnh các yêu cầu để đạt được
sự hiểu biết chi tiết về yêu cầu cần thiết cho việc phát triển một sản phẩm phần mềm
một cách chính xác và duy trì nó một cách dễ dàng. Tại fi đầu tiên nhìn thấy, tuy nhiên, không có nhu cầu cho một phân tích
ow workfl. Thay vào đó, một cách rõ ràng đơn giản để tham gia thảo luận sẽ được phát triển một phần mềm
sản phẩm bằng cách tiếp tục lặp đi lặp lại với thêm các yêu cầu workfl OW cho đến khi sự hiểu biết cần thiết về các sản phẩm phần mềm mục tiêu đã được thu được.
Điểm mấu chốt là đầu ra của các yêu cầu workfl ow phải được hoàn toàn thấu hiểu khách hàng. Nói cách khác, các hiện vật của các yêu cầu workfl ow phải được
thể hiện bằng ngôn ngữ của khách hàng, đó là, trong một tự nhiên (con người) ngôn ngữ như tiếng Anh,
tiếng Armenia, hoặc Zulu. Nhưng tất cả các ngôn ngữ tự nhiên, không có ngoại lệ, có phần không chính xác và
cho vay mình để hiểu lầm. Ví dụ, hãy xem xét các khoản sau đây:
Một kỷ lục một phần và một kỷ lục thực vật được đọc từ các cơ sở dữ liệu. Nếu nó có chứa các chữ A trực
tiếp bằng chữ Q, sau đó tính toán các chi phí vận chuyển một phần cho nhà máy đó.
Tại fi tiên cảnh, yêu cầu này có vẻ hoàn toàn rõ ràng. Nhưng với những gì doesit (thứ hai
từ trong câu thứ hai) tham khảo: kỷ lục một phần, hồ sơ nhà máy, hay các cơ sở dữ liệu
sự mơ hồ của loại hình này không thể xảy ra nếu các yêu cầu được bày tỏ (nói) trong một ký hiệu toán học. Tuy nhiên, nếu một ký hiệu toán học được sử dụng cho các yêu cầu, sau đó
khách hàng có thể không hiểu được nhiều yêu cầu. Kết quả là, cũng có thể là
sự hiểu lầm giữa khách hàng và các nhà phát triển về các yêu cầu, và do đó, các sản phẩm phần mềm được phát triển để đáp ứng những yêu cầu có thể không được những gì các
nhu cầu của khách hàng.
Giải pháp là phải có hai OWS workfl riêng biệt. Các yêu cầu workfl ow được diễn đạt
đang được dịch, vui lòng đợi..