Công nghệ phần mềm

Tài liệu Công nghệ phần mềm: LỜI NÓI ĐẦU Nhập môn Công Nghệ Ph nầ Mềm là môn học nh mằ giúp cho sinh viên có kiến thức cơ bản nh tấ trong lĩnh vực công nghệ phần mềm. Qua môn học này sinh viên có cái nhìn khái quát về qui trình phát tri nể ph nầ mềm, hi uể bi tế và thực hi nệ các giai đoạn trong qui trình trên một ph nầ m mề cụ thể dựa trên những phương pháp, kỹ thuật trong quá trình thu th pậ yêu c u,ầ phân tích, thi tế kế và cài đ t,ặ vi tế sưu li uệ đã được minh họa cụ thể trong giáo trình. Mục tiêu giáo trình là sinh viên có thể hiểu được những yêu c uầ công vi cệ c nầ phải làm ở mỗi giai đoạn của qui trình, để có thể đảm trách công vi cệ ở một trong các giai đo n làmạ phần m m trongề những nhóm d án.ự 1 TÀI I UỆ THAM KH OẢ 1. Software Engineering By Nguy n Xuân Huy – Institue of Infoễ rmation Technology 2. Nhập môn công ngh pệ hần mềm Nguy n Ti n Huy – ĐH Khoa h c T Nhiênễ ế ọ ự 3. A Discipline for Software Engineering Watts S. Humphrey 4. Quá trình phát tri n ể ph n ầ m mề thống nh tấ...

pdf302 trang | Chia sẻ: Khủng Long | Lượt xem: 1401 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Công nghệ phần mềm, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
LỜI NÓI ĐẦU Nhập môn Công Nghệ Ph nầ Mềm là môn học nh mằ giúp cho sinh viên có kiến thức cơ bản nh tấ trong lĩnh vực công nghệ phần mềm. Qua môn học này sinh viên có cái nhìn khái quát về qui trình phát tri nể ph nầ mềm, hi uể bi tế và thực hi nệ các giai đoạn trong qui trình trên một ph nầ m mề cụ thể dựa trên những phương pháp, kỹ thuật trong quá trình thu th pậ yêu c u,ầ phân tích, thi tế kế và cài đ t,ặ vi tế sưu li uệ đã được minh họa cụ thể trong giáo trình. Mục tiêu giáo trình là sinh viên có thể hiểu được những yêu c uầ công vi cệ c nầ phải làm ở mỗi giai đoạn của qui trình, để có thể đảm trách công vi cệ ở một trong các giai đo n làmạ phần m m trongề những nhóm d án.ự 1 TÀI I UỆ THAM KH OẢ 1. Software Engineering By Nguy n Xuân Huy – Institue of Infoễ rmation Technology 2. Nhập môn công ngh pệ hần mềm Nguy n Ti n Huy – ĐH Khoa h c T Nhiênễ ế ọ ự 3. A Discipline for Software Engineering Watts S. Humphrey 4. Quá trình phát tri n ể ph n ầ m mề thống nh tấ Nguy n Tu n Huy biên dễ ấ ịch –Nhà xu t b n th ng kêấ ả ố 5. Analyzing Requriements and Defining Solution Architechtures Ian Lewis – Bruce Nielson 6. MCSD Analyzing Requirements Study Guide Tata McGraw-Hill Pusblishing Company Limited 7. Software Engineering Roger S.PressMan 8. Một s tài lố i u thamệ kh o t internet: Khoa CNTT ả ừ ĐH KHTN, ĐH BKHN, ĐH C n Tầ hơ, và một s bài báo khoa ố học. - A Summary of Principles for User-Interface Design by Talin - The Foundation for Verifiable Software Process Improvement - Lecture Notes: Software Engineering I by Joey Paquet 2 Chương 1: TỔNG QUAN V CÔNGỀ NGH Ệ PH N Ầ M MỀ 1. CÁC KHÁI NIỆM C BƠ ẢN 1.1. Phần mềm 1.1.1. Các khái ni mệ Chương trình máy tính là m tộ trình tự các chỉ thị để hướng d nẫ máy tính làm vi cệ nhằm hoàn thành m t công vộ i c nào đó do con ngệ ười yêu c u.ầ Ph nầ mềm là m tộ hệ thống các ch ngươ trình có thể th cự hi nệ trên máy tính nh m hằ ỗ trợ các nhà chuyên môn trong t ngừ lĩnh v cự chuyên ngành th cự hi nệ tốt nh tấ các thao tác nghiệp vụ c aủ mình. Nhiệm vụ chính y uế c aủ ph nầ mềm là cho phép các nhà chuyên môn th cự hiện các công vi cệ c aủ họ trên máy tính dễ dàng và nhanh chóng h nơ so với khi th cự hi nệ cùng công vi c đó trong tệ h gế i i ớ th c.ự Ho tạ đ ngộ c aủ m iọ ph nầ mềm là sự mô ph ngỏ lại các h atọ đ ngộ c aủ thế gi iớ th cự trong m tộ góc độ thu h pẹ nào đó trên máy tính. Quá trình sử d ngụ m tộ ph nầ m mề chính là quá trình người dùng th cự hi nệ các công vi cệ trên máy tính để hoàn t tấ m tộ công vi cệ tương đương trong th gế i i ớ th c.ự L pớ ph nầ m mề là hệ th ngố các ph nầ mềm trên cùng lĩnh v cự h atọ đ ngộ nào đó. Do cùng lĩnh v cự h atọ đ ngộ nên các ph nầ mềm này thường có c uấ trúc và ch cứ năng (công vi c ệ mà người dùng th cự hi nệ trên máy tính) tương tự nhau. Mục tiêu c aủ ngành công nghệ phần mềm là hướng đ nế không nh ngữ xây d ngự được các ph nầ mềm có ch tấ lượng mà còn cho phép xây d ngự dễ dàng m tộ ph nầ m mề m iớ từ các ph nầ m mề đã có s nẵ trong cùng kĩnh v cự (th mậ chí trong các lĩnh v c khác).ự STT L p ph n ớ ầ m mề Các ph n ầ mềm 1 H tỗ r giợ ải bài t pậ lượng giác, hình h c,ọ giải tích, s hố ọc, 2 Trò chơi cờ carô, cờ tướng, cờ vua, x p hình, ế 3 X p lế ịch biểu thi đ u,ấ th iờ khóa bi u,ể hội nghị, 4 Xét tuy nể nhân s , h c sinh l p 10ự ọ ớ 3 5 Bình ch nọ S n phả ẩm, c u th , ầ ủ 6 Qu n lý h c sinhả ọ M mầ non, trung h c,ọ trung tâm 7 Bán hàng thu c ố tây, v t ậ li u ệ xây d ng,ự máy tính 8 Qu n lý thuê baoả đi n, đi nệ ệ tho i, nạ ước, 9 Cho mượn sách, truy n, phiệ m, B ng 1.1ả : Các ph n ầ m m và ề l pớ ph n m m ầ ề tương ngứ 1.1.2. Phân loại Ph nầ mềm h th ng là nh ng ph nệ ố ữ ầ mềm đảm nh n công vậ iệc tích h p và đi uợ ề khi nể các thiết bị ph nầ c ngứ đ ngồ th iờ t oạ ra môi trường thu nậ lợi để các ph nầ m mề khác và người s d ngử ụ có thể thao tác trên đó như m tộ kh iố th ngố nh tấ mà không c nầ ph iả quan tâm đến những chi ti tế kỹ thu tậ ph cứ tạp bên dưới như cách th cứ trao đổi dữ li uệ gi aữ bộ nhớ chính và đĩa, cách hi nể th văn b n lên ị ả màn hình, ... Ph nầ mềm ngứ d ngụ là nh ngữ phần mềm được dùng để th cự hi nệ m tộ công vi cệ xác định nào đó. Ph nầ mềm ngứ d ngụ có thể chỉ gồm m tộ chương trình đơn gi nả như chương trình xem nh,ả ho cặ m tộ nhóm các chương trình cùng tương tác v iớ nhau để th cự hi nệ một công vịệc nào đó nh chư ương trình x lý b n tínử ả h, chương trình x lýử văn b n, ...ả 1.1.3. Ki n trúc pế hần mềm Sau khi đã có các khái niêm cơ b nả nh tấ về ph nầ mềm, ti pế sau đây chúng ta sẽ đi sâu vào tìm hi uể c uấ trúc chi ti tế các c uấ trúc chi ti tế các thành ph nầ bên trong ph nầ mềm. Phần mềm bao gồm 3 thành ph n:ầ a) Thành phần giao ti pế (giao di n)ệ Cho phép ti pế nh nậ các yêu c uầ về vi cệ mu nố th cự hi nệ và cung c pấ các dữ li uệ ngu n liên ồ quan đ n ế công việc đó ho c ặ t ừ các thiết b ị thu th p ậ d ữ li u ệ (cân, đo nhi t ệ đ , ộ t ế bào quang h c, )ọ Cho phép trình bày các k tế quả c aủ vi cệ th cự hiện các yêu cầu cho người dùng (k tế quả c aủ công vi cệ khi th cự hi nệ trên máy tính) hoặc đi uề khi nể h atọ đ ngộ các thi tế bị đi uề khiển (đóng m ở c a, b t ử ậ mở máy) 4 M tộ cách tổng quát thành ph nầ giao ti pế là hệ th ngố các hàm chuyên về vi cệ nhập/xuất dữ li uệ (hàm nh p/xu t)ậ ấ cùng v iớ hình th cứ trình bày và tổ ch cứ l uư trữ dữ li uệ t ngươ ng, ứ m cụ tiêu chính c aủ các hàm này là đ aư dữ li uệ từ thế gi iớ bên ngoài phần mềm vào bên trong ho c ngặ ược l i.ạ Trong ph mạ vi giáo trình này chỉ gi iớ h nạ xét đ nế giao ti pế v iớ người sử d ngụ phần mềm và khi đó có tên gọi c th ụ ể h n là thành pơ hần giao diện. b) Thành phần d lữ i uệ Cho phép lưu trữ l iạ (hàm ghi) các k tế quả đã xử lý (vi cệ mượn sách đã được ki mể tra h pợ l ,ệ bảng lương tháng đã được tính) trên bộ nhớ phụ v iớ tổ ch cứ l uư trữ được xác định trước (t p tin có c u trúc, t p tin nh phân, c sậ ấ ậ ị ơ ở d lữ i u).ệ Cho phép truy xu tấ lại (hàm đ c)ọ các dữ li uệ đã l uư trữ ph cụ vụ cho các hàm xử lý tương ng.ứ M tộ cách tổng quát thành ph nầ dữ li uệ là hệ thống các hàm chuyên về đ cọ ghi dữ li uệ (hàm đ c/ghi)ọ cùng v iớ mô hình tổ ch cứ dữ li uệ tương ng.ứ M cụ tiêu chính c aủ các hàm này là chuy n để ổi d lữ i uệ gi a b nh chính và b nh ph .ữ ộ ớ ộ ớ ụ c) Thành phần x lýử Ki mể tra tính h pợ lệ c aủ các dữ li uệ ngu nồ được cung c pấ từ người dùng theo các quy trình ràng bu cộ trong thế giới th cự (chỉ cho mượn t iố đa 3 quy nể sách, m iỗ l pớ học có tối đa 50 h c sinh, )ọ Ti nế hành xử lý cho ra k tế quả mong đ iợ theo quy định tính toán có s nẵ trong thế giới th cự (quy tắc tính ti nề ph tạ khi trả sách tr ,ễ quy t cắ tính tiền đi n,ệ quy t cắ trả góp khi mua nhà) ho cặ theo thuật gi iả t đ xuự ề ất (x pế th i khóa bi u tờ ể ự đ ng, nén nh)ộ ả Vi c ệ x ử lý d a ự trên dữ li u ệ ngu n ồ t ừ người s ử d ng ụ cung c p ấ (tính nghi mệ phương trình b cậ 2 d aự trên các hệ số đã nhập) ho cặ dữ li uệ l uư trữ đã có s nẵ (tính t nồ kho tháng dựa trên các phi uế nh pậ xu tấ đã l uư tr )ữ ho cặ cả hai (tính tiền ph tạ d aự trên ngày trả sách được nh pậ vào và thông tin về lo iạ sách đã được l uư tr )ữ tùy vào xử lý cụ th .ể Tương t ,ự vi cệ xử lý cho ra kết quả có thể dùng để xu tấ cho người dùng xem qua thành ph nầ giao diện (trình bày nghiệm, xu tấ ti nề ph t),ạ hay cùng có thể l uư trữ lại qua thành ph nầ dữ lịêu (sổ sách hiện đang được mượn c aủ m t đ c gi ) ho c c ộ ộ ả ặ ả hai (b ng lả ương, b ng t nả ồ kho) M tộ cách tổng quát, thành ph nầ xử lý là hệ thống các hàm chuyên về xử lý tính toán, bi nế đ iổ dữ li u.ệ Các hàm này sẽ dùng dữ li uệ ngu nồ từ các hàm trong thành ph nầ giao diện 5 (hàm nh p)ậ hay thành ph nầ dữ li uệ (hàm đ cọ dữ li u)ệ ki mể tra tính h pợ lệ (hàm ki mể tra) và sau đó ti nế hành xử lý (hàm xử lý) n uế c nầ thiết để cho ra k tế quả mà sẽ được trình bày cho người dùng xem qua các hàm trong thành ph nầ giao di nệ (hàm xu t)ấ hoặc l uư trữ l iạ qua các hàm trong thành ph n d lầ ữ i u (hàmệ ghi). STT Thành ph nầ Hàm Ý nghĩa Ghi chú 1 Thành ph nầ giao di nệ Hàm nh pậ Hàm xuất Nh p yêu cậ ầu, d lữ i uệ nguồn. Xu tấ k t qu đã xế ả ử lý C n xácầ định hình th cứ nh p/xuậ ất và t ch cổ ứ d lữ i uệ tương ngứ 2 Thành ph nầ x lýử Hàm kiểm tra Hàm xử lý Ki mể tra tính h p l c aợ ệ ủ d ữ li u.ệ X lý tínhử toán, phát sinh, bi n ế đổi trên d li uữ ệ S d ngử ụ hàm nh p,ậ hàm đ c.ọ S d ngử ụ hàm nh p,ậ hàm đ c,ọ hàm xu t,ấ hàm ghi 3 Thành ph nầ d lữ i uệ Hàm đ cọ Hàm ghi Đ c d lọ ữ i uệ t b nh phừ ộ ớ ụ vào b nhộ ớ chính. Ghi d lữ i uệ t b nhừ ộ ớ chính vào bộ nh phớ ụ C n xácầ định cáchh th c tứ ổ ch c l uứ ư tr d lữ ữ i uệ B ng 1.2ả : Danh sách các hàm cùng ý nghĩa tương ngứ 1.2. Chất lượng phần mềm 1.2.1. Tính đúng đắn Tính đúng đ nắ c aủ ph nầ mềm được thể hi nệ ở chổ s nả ph mẩ đó th cự hi nệ đ yầ đủ và chính xác các yêu c uầ của người dùng. Tính đúng đ nắ ở đây c nầ ph iả hiểu theo nghĩa r ngộ là 6 chương trình c n ầ ph i ả th c ự hi n ệ được trong c ả nh ng ữ trường h p ợ mà d ữ li u ệ đ uầ vào là không h p ợ l .ệ Ví d , ụ n u ế m t ộ trong s ố các ch c ứ năng c a ủ ph n ầ mềm là s p ắ x p ế m t ộ t p ậ tin có số lượng m u ẫ tin tùy ý theo m tộ c tộ tùy ý theo chi uề tăng hoặc gi mả thì nh ngữ trường h pợ sau là vi ph mạ tính đúng đ n c a chắ ủ ương trình:  Không th th c hi n để ự ệ ược (treo máy) khi t p tin ậ r ng (không có ỗ m u tin nào).ẫ  Không thể th cự hi nệ ho cặ th cự hi nệ nh ngư cho k tế quả sai khi các m u ẫ tin có h nơ 100 c t ho c có quá nhộ ặ iều m u tin.ẫ  Không thể th cự hi nệ ho cặ cho k tế quả sai khi các cột có chi uề dài l nớ h nơ 125 bytes.  Không th s p x p theo chi u ể ắ ế ề tăng d n.ầ Tính đúng đ n c a ắ ủ m t s n ph mộ ả ẩ phần mềm được xác minh qua các căn c sau đây:ứ  Tính đúng đ n c a thuắ ủ ật toán.  Tính tương đương c aủ chương trình v iớ thuật toán. Thu tậ toán có thể đúng nh ng chư ương trình l pậ ra không tương đương v i thuớ ật toán nên khi th cự hi nệ sẽ cho kết qu sai.ả  Tính đúng đ nắ c aủ chương trình có thể được chứng minh tr cự ti pế trong văn b n c a chả ủ ương trình.  Tính đúng đ nắ cũng có thể được khẳng định d nầ qua vi cệ kiểm th ,ử vi cệ áp dụng chương trình trong m t ộ kho ng ả th i ờ gian dài trên di n ệ r ng ộ và v i ớ t nầ su t ấ sử d ng cao.ụ 1.2.2. Tính ti nế hóa Cho phép người dùng có thể khai báo các thay đ iổ về qui định v iớ ph nầ mềm tùy theo các thay đổi trong thế gi iớ th cự liên quan (thay qui định về số sách mượn t iố đa, công th c tính tứ i n phề ạt, công th c tính tứ i n đề iện) S n ph mả ẩ có th ể m r ng, tăng cở ộ ường v ề m t ch c năng ặ ứ m tộ cách d dàng.ễ 1.2.3. Tính hi uệ quả Tính hi u qệ u c a ả ủ m t s n ph mộ ả ẩ phần mềm được xác định qua các tiêu chu n sau:ẩ  Hi u qu kinh t ho c ý nghệ ả ế ặ ĩa, giá tr thu đị ược do áp d ng s nụ ả ph mẩ đó.  T cố độ xử lý c aủ ph nầ mềm (v) tính b ngằ tỉ lệ gi aữ kh iố lượng đ iố t ngượ c nầ ph i ả x lý (ử m) và t ng thổ ời gian (t) c n thầ i t đ x lý các đ i tế ể ử ố ượng đó. 7  S d ng t i u tài nguyên c a ử ụ ố ư ủ máy tính (CPU, bộ nh )ớ 1.2.4. Tính ti nệ dụng S n ph mả ẩ ph i tính đ nả ế nh ng y u t tâmữ ế ố lý sau đây c a ngủ ười dùng:  D h c, có giao dễ ọ i nệ tr c quan ự t nhiên.ự  D thao tácễ , 1.2.5. Tính tương thích Trao đ iổ dữ li uệ v iớ các ph nầ mềm khác có liên quan (nh nậ danh m cụ sách từ t pậ tin Excel, g i báo cáo t ngử ổ k t nămế h c đ n ph n ọ ế ầ m mề WinFax, )  Giao ti p nế ội bộ  Giao ti p bên ngoàiế 1.2.6. Tính tái s dử ụng S nả phẩm ph nầ mềm có thể áp d ngụ cho nhi uề lĩnh v cự theo nhi uề chế độ làm vi c khác nhau.ệ  Các ph n ầ m mề cùng l pớ  Các ph n ầ m mề khác l pớ 1.3. Công nghệ phần mềm 1.3.1. S ra đ iự ờ Vào nh ngữ năm 1950 khi máy tính ra đ iờ chính th cứ (không chỉ được dùng trong các phòng thí nghi mệ mà b tắ đ uầ ngứ d ngụ trong h atọ đ ngộ xã h i)ộ các phần mềm đ uầ tiên cũng được ra đ iờ v iớ số lượng còn r tấ ít iỏ và chủ y uế ph cụ vụ cho lĩnh v cự tính toán (đ cặ biệt trong qu c phòng).ố Đến nh ngữ năm 1960, trãi qua 10 năm phát tri n s lể ố ượng các ph nầ mềm đã tăng lên rất nhi uề và được ngứ d ngụ r ngộ rãi trong nhi uề lĩnh v c.ự Vào th iờ đi mể này phát sinh m tộ v nấ đề mà các chuyên gia g iọ là “cu cộ kh ngủ ho ngả ph nầ mềm”. Cu cộ kh ngủ ho ngả ph nầ mềm th hi n 2 ể ệ y u t chínế ố h: - S ố lượng các ph n ầ mềm tăng v t ọ (do s ự phát tri n ể c a ủ ph n ầ c ng: ứ tăng khả năng, giá thành h )ạ - Có quá nhiều khuy t điế ểm trong các ph n ầ mềm được dùng trong xã hội o Th c hi n không đúng yêu c u (tính toán sai, không n đự ệ ầ ổ ịnh) o Th i gian bờ ảo trì, nâng c p quá lâu, ấ t n chi phí cao, hi u quố ệ ả th p.ấ 8 o Khó s dử ụng o Th c hi n chự ệ ậm o Khó chuy n đ i d lể ổ ữ i uệ gi a các ph n ữ ầ mềm o .. Để gi iả quy tế v nấ đề trên m tộ h iộ nghị đã được tri uệ t pậ đề bàn về cách gi iả quyết. Hội nghị đã ti nế hành xem xét, phân tích và xác định nguyên nhân gây ra cuộc kh ngủ hoảng phần mềm. K t ế lu n nh sau:ậ ư - Vi c tăng vệ ọt c a sủ ố lượng ph n ầ mềm là đi u hề ợp lý và đi u này s còn tề ẽ i p di n.ế ễ - Các khuy tế đi mể c aủ ph nầ mềm có ngu nồ g cố chính từ phương pháp, cách th cứ tiến hành xây d ng ph n ự ầ mềm: o Cảm tính: m i ngỗ ười theo m t phộ ương pháp riêng. o Thô s ,ơ đ nơ gi n:ả chỉ tập trung vào vi cệ l pậ trình mà ít quan tâm đ nế các công vi cệ c nầ làm khác trước khi l pậ trình (kh oả sát hi nệ tr ng,ạ phân tích yêu c u,ầ thiết k ).ế o Th công: công c h tủ ụ ỗ r chính khi xây ợ d ng ph n ự ầ mềm ch là trình biên ỉ dịch. V iớ các k t ế lu nậ như trên, h iộ nghị đã đề xu tấ khai sinh m tộ ngành khoa h cọ m i:ớ Công nghệ ph nầ mềm v iớ nhi mệ vụ chính là nghiên c uứ về các phương pháp ti nế hành xây dựng ph n ầ mềm. 1.3.2. Đ nhị nghĩa Công nghệ ph nầ mềm là m tộ lĩnh v cự nghiên c uứ c aủ tin h cọ nh mằ đề xu tấ các nguyên lý, phương pháp, công c ,ụ cách ti pế c nậ ph cụ vụ cho vi cệ thi tế k ,ế cài đ tặ các s nả ph mẩ phần mềm đ t đạ ược đ y đ các yêu c u vầ ủ ầ ề ch t lấ ượng ph n ầ mềm. Do quá trình ti nế hóa c aủ ngành công nghệ ph nầ mềm nên khái ni mệ về nó cũng thay đ iổ theo thời gian. H nơ n aữ do đây là m tộ lĩnh v cự m iớ nên các khái niệm v nẫ còn phụ thu cộ r t nhi u vào quan đi m ch quan cẩ ề ể ủ ủa t ng ngừ ười khác nhau. C th nh sau:ụ ể ư - Bauer[1969]: vi cệ thi tế l pậ và sử dụng các nguyên lý công nghệ đúng đ nắ để thu được ph nầ mềm m tộ cách kinh tế v aừ tin c yậ v aừ làm vi cệ hi uệ quả trên các máy th c.ự - Ghezzi[1991]: là m tộ lĩnh v cự c aủ khoa h cọ máy tính liên quan đ nế vi cệ xây dựng các ph n ầ m mề v a l n v a ph c t p b i ừ ớ ừ ứ ạ ở m t hay ộ m t s nhóm k s .ộ ố ỹ ư - IEEE[1993]: 9 1. Vi c ệ áp d ng ụ phương pháp ti p ế c n ậ có h ệ th ng, ố bài b n ả và đư c ợ lượng hóa trong phát triển, v n hành và b o tậ ả rì ph n ầ mềm. 2. Nghiên c u các phứ ương pháp ti pế cận được dùng trong (1). - Sommervile[1995]: là lĩnh v c ự liên quan đ n ế lý thuy t, ế phương pháp và công cụ dùng cho phát tri n ph n ể ầ mềm. - Kawamura[1995]: là lĩnh v cự h cọ v nấ về các kỹ thu t,ậ phương pháp lu nậ công ngh h c ệ ọ (lý lu n ậ và k ỹ thu t ậ được hi n ệ th c ự hóa trên các nguyên lý, nguyên t c ắ xác định) trong toàn bộ quy trình phát tri nể ph nầ mềm nhằm nâng cao cả chất và lượng c a s n xuủ ả ất ph n ầ mềm. - Pressman[1995]: là bộ môn tích hợp cả qui trình, các ph ngươ pháp, các công cụ để phát tri n pể h n ầ mềm máy tính. Có thể định nghĩa tóm t tắ về công nghệ ph nầ m mề như sau: Công nghệ ph nầ mềm là m t ộ nghành khoa h c ọ nghiên c u ứ v ề việc xây d ng ự các ph n ầ mềm có chất l ng ượ trong kho ng th i gian và chi phí ả ờ h p lý.ợ M c tiêu nghiên c u đụ ứ ược chia thành 2 ph n rõ nét:ầ 1. Xây d ng ph n ự ầ mềm có ch t lấ ượng. 2. Xây d ng ph n ự ầ mềm trong th i gian và chi phí ờ h p lý.ợ 1.3.3. Đối t ngượ nghiên c uứ Hướng đ nế vi cệ xây dựng các ph nầ mềm có ch tấ lượng như đã nêu, ngành công ngh ph n ệ ầ mềm đ a ư ra 3 đ i ố tượng nghiên c u ứ chính: Qui trình công ngh ,ệ Phương pháp phát tri n, Công c và ể ụ môi trường phát tri n ph n ể ầ m m.ề - Qui trình công nghệ ph nầ mềm: Hệ th ngố các giai đo nạ mà quá trình phát tri nể ph nầ mềm ph iả trải qua. V iớ m iỗ giai đo nạ c nầ xác định rõ m cụ tiêu, kết quả nh nậ từ giai đo nạ trước đó cũng chính là k t qế u chuy n giao cho giai ả ể đo n k t tiạ ế ếp. - Phương pháp phát tri nể ph nầ mềm: Hệ th ngố các hướng d nẫ cho phép t ngừ bước thực hi n ệ m t giai đo n nào ộ ạ đó trong qui trình công ngh ph n ệ ầ mềm. - Công cụ và môi trường phát tri nể ph nầ mềm: Hệ th ngố các ph nầ mềm trợ giúp chính trong lĩnh v cự xây d ngự ph nầ mềm. Các ph nầ m mề này sẽ hỗ trợ các chuyên viên tin h c trong ọ các bước xây d ng ự ph n ầ m m ề theo m t ộ phương pháp nào đó v i ớ m t ộ qui trình được ch n tọ rước. 10 2. QUI TRÌNH CÔNG NGH Ệ PH N Ầ MỀM Nh đã nói đ xây d ng đư ể ự ược ph n ầ mềm có ch t lấ ượng quá trình phát tri n ph i trãiể ả qua r tấ nhi uề giai đo n.ạ M iỗ giai đo nạ có m cụ tiêu và k tế quả chuy nể giao xác định. Trình tự thực hi n các ệ giai đo n này chính là chu ạ kỳ s ng cố ủa m t ph n ộ ầ mềm. Nói cách khác, chu kỳ s ngố c aủ m tộ ph nầ mềm là kho ngả th iờ gian mà trong đó một s nả ph mẩ ph nầ mềm được phát triển, sử d ngụ và mở r ngộ cho đ nế khi s nả ph mẩ ph nầ mềm đó không còn được s d ng n a.ử ụ ữ Chu kỳ sống c aủ ph nầ mềm được phân chia được phân chia thành các pha chính như: xác định, phát tri n,ể kiểm th ,ử b oả trì (v nậ hành). Ph mạ vi và thứ tự các pha khác nhau tùy theo t ng mô hình c từ ụ h .ể 2.1. Các b cướ c bơ ản trong xây dựng phần m mề 2.1.1. Xác định Đây là bước hình thành bài toán hoặc đề tài. Ở bước này thiết kế trưởng ho cặ phân tích viên hệ th ngố ph iả biết được vai trò c aủ ph nầ m mề c nầ phát tri nể trong hệ th ng,ố đồng thời ph i ả ước l ng công vượ iệc, l p ậ lịch bi u và phân công công vể i c.ệ Bên c nhạ đó chúng ta ph iả bi tế người đ tặ hàng mu nố gì. Các yêu c uầ c nầ ph iả được thu th pậ đ yầ đủ và được phân tích theo chi uề ngang (r ng)ộ và chi uề d cọ (sâu). Công cụ sử dụng chủ y uế ở giai đo nạ này là các lược đ ,ồ sơ đồ ph nả ánh rõ các thành ph nầ c aủ hệ th ngố và m i liên quan gi a chúng v i nhau.ố ữ ớ 2.1.2. Phát tri nể D aự vào các n iộ dung đã xác định được, nhóm phát tri nể ph nầ mềm dùng ngôn ngữ đặc t hình th cả ứ (d a trên các ki n trúc toán h c) ho c phi hình th c (t a ngôn ng t nhự ế ọ ặ ứ ự ữ ự iên) ho c ặ k t h p c ế ợ ả hai đ ể mô t nh ng y u t sau đây cả ữ ế ố ủa chương trình:  Giá trị nh p, giá trậ ị xuất.  Các phép bi n đế ổi  Các yêu c uầ c n đ t đ c ầ ạ ượ ở m i đi mỗ ể c a chủ ương trình. Ph nầ đ cặ tả chỉ quan tâm chủ y uế đ nế giá trị vào, ra chứ không quan tâm đ nế c uấ trúc và n i dung các thao tác c n th c hiộ ầ ự ện. 11 Sau bước thi tế kế là bước tri nể khai các đ cặ tả chương trình thành m tộ s nả ph mẩ phần mềm d aự trên m tộ ngôn ngữ l pậ trình cụ th .ể Trong giai đo nạ này các l pậ trình viên sẽ ti n hành cài đế ặt các thao tác c n thầ i t đế ể th c hi n đự ệ úng các yêu c u đã đầ ược đ cặ t .ả Công vi c ệ cu i ố cùng của giai đo n ạ phát tri n ể là chúng ta c n ầ ph i ả chứng minh tính đúng đ nắ của chương trình sau khi đã ti nế hành cài đặt. Tuy nhiên thông thường ở bước này chúng ta coi các chương trình như nh ngữ h pộ đen. V nấ đề đ tặ ra là xây d ngự m tộ cách có ch đíchủ các t pậ dữ li uệ nh pậ khác nhau để giao cho chương trình th cự hi nệ r iồ d aự vào k tế qu thu đả ược để đánh giá chương trình. Công vi c ệ nh trênư được g i là ọ ki mể th chử ương trình. Công vi c kệ i mể th nhử ằm vào các m c tiêu sau:ụ  Ki mể tra để phát hi nệ l iỗ c aủ chương trình. L uư ý r ngằ kiểm thử không đ mả b o tuy tả ệ đ iố tính đúng đ nắ c aủ chương trình do b nả ch tấ quy n pạ không hoàn toàn c a cách làm.ủ  Ki mể tra tính n đổ ịnh, hi u qu cũngệ ả nh kh năng t i đa cư ả ố ủa chương trình. Tùy theo m cụ đích mà người ta thi tế kế các tập dữ li uệ thử sao cho có thể phủ h tế các trường h pợ c n quan tâm.ầ 2.1.3. Bảo trì (Vận hành) Công vi cệ qu nả lý vi cệ tri nể khai và sử d ngụ ph nầ mềm cũng là m tộ v nấ đề c nầ đư c ợ quan tâm trong qui trình phát tri nể ph nầ mềm. Trong quá trình xây d ngự ph nầ mềm, toàn b cácộ k tế qu ph nả ầ tích, thi tế k ,ế cài đặt và hồ sơ liên quan c n ph iầ ả được lưu trữ và quản lý c n ẩ th nậ nh mằ đ mả b oả cho công vi cệ được ti nế hành m tộ cách hi uệ quả nh tấ và phục vụ cho công vi c bệ ảo trì ph n ầ m mề v sau.ề Như v yậ công vi cệ quản lý không chỉ d ngừ lại trong quá trình xây d ngự ph nầ mềm mà trái lại còn ph i đả ược tiến hành liên t c trong suụ ốt quá trình s ng c a nó.ố ủ 2.2. Một s môố hình tri nể khai xây d ng phự ần m mề Có nhi uề mô hình c nậ khác nhau để tri nể khai các bước cơ b nả trong quá trình phát tri nể ph nầ mềm. M iỗ mô hình s ẽ chia vòng đ iờ của ph nầ mềm theo m tộ cách khác nhau nh mằ đảm b oả qui trình phát tri nể ph nầ mềm sẽ d nẫ đ nế thành công. Trong ph nầ ti pế theo c aủ giáo trình chúng ta sẽ tìm hi uể qua các mô hình phát triển ph nầ mềm tiêu bi uể nh tấ đang được áp d ng.ụ 12 2.2.1. Mô hình thác nước: Mô hình thác nước là m t ộ trong nh ng ữ mô hình đ u ầ tiên và ph ổ bi n ế được áp d ng trongụ quá trình phát triển ph nầ mềm. Mô hình này chia quá trình phát tri nể ph nầ mềm thành nh ngữ giai đo nạ tu nầ tự n iố ti pế nhau. M iỗ giai đo nạ sẽ có m tộ m cụ đích nh tấ định. K tế qu cuả ả giai đoạn trước sẽ là thông tin đ uầ vào cho giai đo nạ tiếp theo sau. Tùy theo qui mô của ph n ầ mềm c n phát tri n ầ ể mà mô hình thác nước s có nh ngẽ ữ bi n th khác nhau nế ể h sau:ư  Qui trình 2 giai đo n:ạ Là qui trình đ nơ gi nả nhất. Theo qui trình này vi cệ phát triển ph n ầ mềm ch trãi qua 2 giai đoỉ ạn: o Xác định yêu c u:ầ Được ti nế hành ngay khi có nhu c uầ về vi cệ xây d ngự ph n ầ mềm. - M c tiêu: ụ Xác định chính xác các yêu c u đ tầ ặ ra cho ph n ầ mềm s xây d ng.ẽ ự - K t qu nhế ả ận: Thông tin v ho t đ ng c a th ề ạ ộ ủ ế gi i ớ th c.ự - K tế quả chuy nể giao: Danh sách các yêu c uầ (công vi cệ sẽ th cự hi nệ trên máy tính) cùng v iớ các thông tin miêu tả chi tiết về các yêu c uầ (cách th cứ th c hi n trong tự ệ h gi iế ớ th c).ự o L p trình (cài đ t): ậ ặ Đư c ti n hành ngay sau khi k t thúc vợ ế ế iệc xác định yêu c u.ầ - M c tiêu: ụ T o l p ph nạ ậ ầ mềm mong mu n theo yêu c u.ố ầ - K t qu nhế ả ận: Danh sách các yêu cầu cùng các thông tin có liên quan. - K tế quả chuy nể giao: Chương trình ngu nồ c aủ ph nầ mềm v iớ c uấ trúc cơ s d ở ữ li u ệ t ng ươ ng ứ (n u ế c n ầ thiết) và chương trình th c ự hi nệ được trên máy tính (chương trình nguồn đã được biên dịch)  Qui trình 3 giai đo n:ạ Là qui trình c iả ti nế c aủ qui trình 2 giai đo nạ bằng cách bổ sung thêm m t gộ iai đo n trung gian ạ m i gi a xác đớ ữ ịnh yêu c u và ầ l p trình (có s a đậ ử ổi) o Xác định yêu c u: ầ được ti n ế hành ngay khi có nhu c u ầ v ề vi c ệ xây dựng ph n ầ mềm. - M c tiêu: ụ Xác định chính xác các yêu c u đ tầ ặ ra cho ph n ầ mềm s xây d ng.ẽ ự - K t qu nhế ả ận: Thông tin v ho t đ ng c a th ề ạ ộ ủ ế gi i ớ th c.ự - K tế quả chuy nể giao: Danh sách các yêu c uầ (công vi cệ sẽ th cự hi nệ trên máy tính) cùng v iớ các thông tin miêu tả chi tiết về các yêu c uầ (cách th cứ th c hi n trong tự ệ h gi iế ớ th c)ự o Thi t kế ế: Được ti n hành ngay sau khi ế k t thúc vế i c xác đệ ịnh yêu c u.ầ 13 - M cụ tiêu: Mô tả các thành ph nầ c aủ ph nầ mềm (mô hình c aủ ph nầ mềm) trước khi ti n hành cài đế ặt. - K t qu nhế ả ận: Danh sách các yêu cầu và thông tin liên quan. - K t qu chế ả uy n giao:ể  Mô t ả thành ph n ầ giao di n: ệ các hàm nh p/xu t, ậ ấ c u ấ trúc dữ li u nh p/xu t.ệ ậ ấ  Mô t thànhả ph n x lý: các hàmầ ử ki m tra x lý.ể ử  Mô tả thành ph nầ dữ li u:ệ các hàm đ c/ọ ghi, tổ ch cứ l uư trữ trên bộ nh ph .ớ ụ o L p trình (cài đ t): ậ ặ Đư c ti n hành ngay sau khi k t thúc vợ ế ế iệc thiết k .ế - M c tiêu: ụ T o l p ph nạ ậ ầ mềm theo yêu c u.ầ - K t qu nhế ả ận: Mô hình ph n ầ mềm - K tế quả chuy nể giao: Chương trình ngu nồ c aủ ph nầ mềm v iớ c uấ trúc cơ s d ở ữ li u ệ t ng ươ ng ứ (n u ế c n ầ thiết) và chương trình th c ự hi nệ được trên máy tính (chương trình nguồn đã được biên dịch)  Qui trình 4 giai đo n:ạ Là qui trình c iả ti nế c aủ qui trình phía trước b ngằ cách bổ sung thêm m t gộ iai đo n ạ m i gi a xác đớ ữ ịnh yêu c u và thiầ ết k (có ế s a đử ổi) o Xác định yêu c u:ầ Được ti nế hành ngay khi có nhu c uầ về vi cệ xây d ngự ph n ầ mềm. - M c tiêu: ụ Xác định chính xác các yêu c u đ tầ ặ ra cho ph n ầ mềm s xây d ng.ẽ ự - K t qu nhế ả ận: Thông tin v ho t đ ng c a th ề ạ ộ ủ ế gi i ớ th c.ự - K tế quả chuy nể giao: Danh sách các yêu c uầ (công vi cệ sẽ th cự hi nệ trên máy tính) cùng v iớ các thông tin miêu tả chi tiết về các yêu c uầ (cách th cứ th c hi n trong tự ệ h gi iế ớ th c)ự o Phân tích: được ti n hành ngay sau khi ế k tế thúc vi c xác ệ định yêu c u.ầ - M c ụ tiêu: Mô t ả l i ạ th ế gi i ớ th c ự thông qua các mô hình (mô hình thế gi i ớ th c) tự rước khi thi t kế ế. - K t qu nhế ả ận: Danh sách các yêu cầu cùng các thông tin có liên quan. - K t qu chế ả uy n giao:ể  Mô hình xử lý (hệ th ngố các công vi cệ trong thế gi iớ th cự cùng với quan h giệ ữa chúng)  Mô hình dữ li uệ (hệ thống các lo iạ thông tin được sử d ngụ trong thế gi iớ th c cự ùng v i quan h gi a chớ ệ ữ úng) 14  Các mô hình khác (không gian, thời gian, con người) n u ế c n thầ iết. o Thi t kế ế: Được ti n hành ngay sau khi ế k t thúc vế i c phân tích.ệ - M cụ tiêu: Mô tả các thành ph nầ c aủ ph nầ mềm (mô hình c aủ ph nầ mềm) trước khi ti n hành cài đế ặt. - K t qu nhế ả ận: Mô hình th gi iế ớ th c.ự - K t qu chế ả uy n giao:ể  Mô t ả thành ph n ầ giao di n: ệ các hàm nh p/xu t, ậ ấ c u ấ trúc dữ li u nh p/xu t.ệ ậ ấ  Mô t thànhả ph n x lý: các hàmầ ử ki m tra x lý.ể ử  Mô tả thành ph nầ dữ liệu: các hàm đ c/ghi,ọ tổ ch cứ l uư trữ trên bộ nhớ ph .ụ o L p trình (cài đ t): ậ ặ Đư c ti n hành ngay sau khi k t thúc vợ ế ế iệc thiết k .ế - M c tiêu: ụ T o l p ph nạ ậ ầ mềm theo yêu c uầ - K t qu nhế ả ận: Mô hình ph n ầ mềm - K tế quả chuy nể giao: Chương trình ngu nồ c aủ ph nầ mềm v iớ c uấ trúc cơ s d ở ữ li u ệ t ng ươ ng ứ (n u ế c n ầ thiết) và chương trình th c ự hi nệ được trên máy tính (chương trình nguồn đã được biên dịch)  Qui trình 5 giai đo n:ạ Là qui trình c iả ti nế c aủ qui trình phía trước b ngằ cách bổ sung thêm m tộ giai đo nạ m iớ sau giai đo nạ l pậ trình nh mằ tăng cường độ tin c yậ c aủ phần mềm. o Xác định yêu c u:ầ Được ti nế hành ngay khi có nhu c uầ về vi cệ xây d ngự ph n ầ mềm. - M c tiêu: ụ Xác định chính xác các yêu c u đ tầ ặ ra cho ph n ầ mềm s xây d ng.ẽ ự - K t qu nhế ả ận: Thông tin v ho t đ ng c a th ề ạ ộ ủ ế gi i ớ th c.ự - K tế quả chuy nể giao: Danh sách các yêu c uầ (công vi cệ sẽ th cự hi nệ trên máy tính) cùng v iớ các thông tin miêu tả chi tiết về các yêu c uầ (cách th cứ th c hi n trong tự ệ h gi iế ớ th c)ự o Phân tích: được ti n hành ngay sau khi ế k tế thúc vi c xác ệ định yêu c u.ầ - M c ụ tiêu: Mô t ả l i ạ th ế gi i ớ th c ự thông qua các mô hình (mô hình thế gi i ớ th c) tự rước khi thi t kế ế. - K t qu nhế ả ận: Danh sách các yêu cầu cùng các thông tin có liên quan. - K t qu chế ả uy n giao:ể 15  Mô hình xử lý (hệ th ngố các công vi cệ trong thế gi iớ th cự cùng với quan h giệ ữa chúng)  Mô hình dữ li uệ (hệ thống các loại thông tin được sử d ngụ trong thế gi iớ th c cự ùng v i quan h gi a chớ ệ ữ úng)  Các mô hình khác (không gian, thời gian, con người) n u ế c n thầ iết. o Thi t kế ế: Được ti n hành ngay sau khi ế k t thúc vế i c phân tích.ệ - M cụ tiêu: Mô tả các thành ph nầ c aủ ph nầ mềm (mô hình c aủ ph nầ mềm) trước khi ti n hành cài đế ặt. - K t qu nhế ả ận: Mô hình th gi iế ớ th c.ự - K t qu chế ả uy n giao:ể  Mô t ả thành ph n ầ giao di n: ệ các hàm nh p/xu t, ậ ấ c u ấ trúc dữ li u nh p/xu t.ệ ậ ấ  Mô t thànhả ph n x lý: các hàmầ ử ki m tra x lý.ể ử  Mô tả thành ph nầ dữ li u:ệ các hàm đ c/ọ ghi, tổ ch cứ l uư trữ trên bộ nh ph .ớ ụ o L p trình (cài đ t): ậ ặ Đư c ti n hành ngay sau khi k t thúc vợ ế ế iệc thiết k .ế - M c tiêu: ụ T o l p ph nạ ậ ầ mềm theo yêu c u.ầ - K t qu nhế ả ận: Mô hình ph n ầ mềm. - K tế quả chuy nể giao: Chương trình ngu nồ c aủ ph nầ mềm v iớ c uấ trúc cơ s d ở ữ li u ệ t ng ươ ng ứ (n u ế c n ầ thiết) và chương trình th c ự hi nệ được trên máy tính (chương trình nguồn đã được biên dịch). o Ki mể th :ử Được ti nế hành ngay sau khi đã có k tế quả (từng ph n)ầ của việc lập trình. - M c tiêu: ụ Tăng đ tin ộ c y c a ph nậ ủ ầ mềm. - K t qu nhế ả ận:  Danh sách yêu c u.ầ  Mô hình phần mềm.  Ph nầ mềm. - K t qu chế ả uy n giao: Pể h n ầ mềm v i đ tin ớ ộ c yậ cao (đã tìm và s a l i).ử ỗ o B oả trì: Công vi cệ c aủ giai đo nạ bao g mồ vi cệ cài đ tặ và v nậ hành ph nầ mềm trong th cự tế. - M c tiêu: ụ đ mả b o ph nả ầ mềm v n hành ậ tốt - K t qu nhế ả ận: ph n ầ mềm đã hoàn thàng 16 - K tế quả chuy nể giao: các ph nả ánh c aủ khách hàng trong quá trình sử dụng ph n ầ mềm. Nh n xét:ậ Mô hình thác nước giúp chúng ta có thể dễ dàng phân chia quá trình xây d ngự ph n ầ mềm thành nh ngữ giai đo nạ hoàn toàn đ cộ l pậ nhau. Tuy nhiên, các dự án l nớ hi mế khi tuân theo dòng ch yả tu nầ tự c aủ mô hình vì thường ph iả l pặ l iạ các bước để nâng cao ch tấ lượng. H n n a, khách hàng hơ ữ iếm khi tuyên b h t các ố ế yêu c u trong giai đo nầ ạ phân tích. Mô hình này cũng có m tộ h nạ chế là chúng ta r tấ khó th cự hi nệ các thay đ iổ m tộ khi đã th cự hi nệ xong m tộ gi iạ đo nạ nào đó. Đi uề này làm cho vi cệ xây d ngự ph nầ mềm r tấ khó thay đ iổ các yêu c uầ theo ý mu nố c aủ khách hàng. Do đó, phương pháp này chỉ thích h pợ cho nh ng trữ ường h p ợ mà chúng ta đã hi u r t rõ các yêu c u c a khách hàng.ể ấ ầ ủ Chú ý: Mô hình thác nước có thể được c iả tiến b ngằ cách cho phép quay lui khi phát hi n lệ ỗi trong giai đo nạ phía trước. 2.2.2. Mô hình bản mẫu phần m mề Tương tự như mô hình thác nước v iớ bổ sung vào các giai đo nạ th cự hi nệ ph nầ mềm m uẫ ngay khi xác định yêu c uầ nhằm m cụ tiêu phát hi nệ nhanh các sai sót về yêu c u.ầ Các giai đo nạ trong mô hình b nả m u ẫ ph nầ mềm có thể ti nế hành l pặ đi l pặ lại chứ không nhất thiết ph i tả heo trình t ự nh t đấ ịnh. Ngay sau khi giai đo nạ xác định yêu c u,ầ nhà phát tri nể ph n ầ mềm đ aư ra ngay m tộ bản thiết kế sơ bộ và ti nế hành cài đ tặ b nả m uẫ đ uầ tiên và chuy nể cho ng iườ sử d ng.ụ B nả m u nàyẫ chỉ nhằm để miêu tả cách th cứ ph nầ mềm ho tạ đ ngộ cũng như cách người sử d ngụ tương tác với h tệ h ng.ố Người sử d ngụ sau khi xem xét sẽ ph nả h iồ thông tin c nầ thiết lại cho nhà phát tri n. N uể ế ngưới sử d ngụ đ ngồ ý v iớ b nả m uẫ đã đ aư thì người phát tri nể sẽ ti nế hành cài đ tặ thực 17 s .ự Ngược l iạ cả hai phải quay l iạ giai đo nạ xác định yêu cầu. Công vi cệ này được l pặ l iạ liên t c cho đ n khi ngụ ế ười sử d ng đ ng ý v i các ụ ồ ớ bản m u do nhà phát tri nẫ ể đ a ra.ư Như v yậ đây là m tộ hướng ti pế c nậ t tố khi các yêu c uầ ch aư rõ ràng và khó đánh giá được tính hi uệ quả c aủ các thuật toán. Tuy nhiên, mô hình này cũng có nhược điểm là tính c u trúc không cao do đó khách hàng d ấ ễ m t tin tấ ưởng. 2.2.3. Mô hình xoắn ốc Mô hình này chính là sự k tế h pợ c aủ mô hình b nả m u ẫ thi tế kế và mô hình thác nước được l pặ lại nhi uề l n.ầ Ở l nầ l pặ ti pế theo hệ thống sẽ được tìm hi uể và xây d ngự hoàn thiện h n l nơ ở ầ lặp trước đó. Ở m iỗ l nầ l pặ các yêu c uầ c aủ người sử d ngụ sẽ được hi uể ngày càng rõ ràng h nơ và các b nả mẫu ph nầ mềm cũng ngày m tộ hoàn thi nệ h n.ơ Ngoài ra ở cu iố m iỗ l nầ l pặ sẽ có thêm công đo n phân tích ạ m c đứ ộ r i ro đ quy tủ ể ế định xem có nên đi ti pế theo hướng này nữa hay không. 18 Mô hình này phù h pv iợ ớ các hệ thống ph nầ mềm l nớ do có khả năng ki mể soát r iủ ro ở t ngừ bước ti nế hóa. Tuy nhiên v nẫ ch aư được sử d ngụ r ngộ rãi như mô hình thác nước hoặc b n ả m u doẫ đòi h i năng l c qu n lý, ỏ ự ả năng l c phân tích r i ro cao.ự ủ 3. CÁC PHƯƠNG PHÁP XÂY DỰNG PHẦN MỀM 3.1. Tổng quan 3.1.1. Khái niệm Để ti nế hành xây d ngự m tộ ph nầ mềm, chúng ta có thể áp d ngụ nhi uề phương pháp khác nhau. M iỗ phương pháp có nh ngữ uư và khuy tế đi mể riêng và phù h pợ v iớ t ngừ lo i ạ ph n ầ mềm c th .ụ ể M iỗ phương pháp sẽ có nh ngữ hướng d nẫ cụ thể các công vi cệ c nầ ph iả th cự hi nệ trong t ng giai đừ o n trong quy trình xây ạ d ng ph nự ầ mềm. Bên c nhạ đó m iỗ phương pháp cũng sẽ quy định nh ngữ cách th cứ khác nhau để trình bày các k tế quả thu được trong quá trình xây dựng ph nầ mềm. Nh ngữ quy định này có tính ch tấ như là ngôn ngữ th ngố nh tấ để các thành viên tham gia xây d ngự ph nầ mềm có thể trao đ i thông tin trong vi c xây ổ ệ d ng ph nự ầ mềm. 3.1.2. Phân loại Các phương pháp xây d ngự ph nầ m mề được chia làm 02 nhóm khác nhau d aự vào tính ch t c a côấ ủ ng vi c c nệ ầ th c hi n.ự ệ  Phương pháp xây d ng:ự • Phương pháp hướng ch c năngứ 19 • Phương pháp hướng dữ li uệ • Phương pháp hướng đ i tố ượng  Phương pháp t ch c qổ ứ u n lýả • Xây d ng phự ương án • T ch c nhân sổ ứ ự • Ước lượng r i ro, chi phíủ • L p và theo dõi ậ k ho chế ạ tri n khai.ể Trong ph nầ ti pế theo của giáo trình này, chúng ta chỉ quan tâm đ nế các phương pháp xây d ng.ự Về phương pháp tổ ch cứ qu nả lý chúng ta có thể tham kh oả trong giáo trình “Quản lý d án xây d ng các hự ự ệ th ng thông tin”.ố 3.2. Các phương pháp xây dựng phần m mề 3.2.1. Cách ti p cế ận a) T trên xu ngừ ố Đây là cách gi i quy t ả ế v n đ theo hấ ề ướng phân tích. Khi ti n hành xây ế d ng ph nự ầ mềm theo cách này, chúng ta b tắ đ uầ v iớ nh ngữ thành ph nầ chính c aủ hệ th ng.ố Sau đó, các thành ph nầ này sẽ được phân tích thành các thành ph nầ chi tiết và cụ thể h n.ơ Quá trình phân tích này sẽ k tế thúc khi các k tế quả thu được có mức độ ph cứ đ pạ đúng v iớ ý mu nố c aủ nhà xây d ng ph n ự ầ mềm. b) T d i lênừ ướ Ngược l iạ v iớ phương pháp từ trên xu ng,ố phương pháp từ dưới lên là cách gi iả quyết v n đ theo hấ ề ướng t ngổ h p. V i phợ ớ ương pháp này, chúng ta ti n hành xây d ngế ự nh ng thành ph nữ ầ chi tiết, cụ thể mà mà chúng ta dự tính là sẽ có trong hệ th ng.ố Sau đó, các nhà phát tri nể ph nầ mềm sẽ ti nế hành k tế h pợ các thành ph nầ chi ti tế này lại v iớ nhau để t oạ nên các thành ph n chính ầ mà h th ng c n ph i có.ệ ố ầ ả 20 3.2.2. Cách ti n hànhế a) Ph ng pháp h ng ch c năngươ ướ ứ V iớ phương pháp này công vi cệ xây d ngự ph nầ mềm được th cự hi nệ d aự trên các ch c năngứ mà hệ th ngố c nầ th cự hi n.ệ Hay nói cách khác chúng ta chú tr ngọ đ nế thành ph nầ xử lý c a h th ng:ủ ệ ố • Các thao tác tính toán • Các thao tác phát sinh • Các thao tác bi n đ i.ế ổ Phương pháp chung để gi iả quyết v nấ đề là áp d ngụ nguyên lý “chia để trị”. Khi ti n hànhế xây dựng ph nầ mềm theo phương pháp này, chúng ta sẽ chia các công vi cệ lớn mà h ệ th ngố c nầ th cự hi nệ hành các công vi cệ nhỏ h nơ đ cộ l pậ nhau. Vi cệ phân chia các công vi c đệ ược ti nế hành cho đ nế khi các công vi cệ thu được đủ nhỏ để chúng ta có thể ti nế hành xây d ng hoàn chự ỉnh. Hình dưới: Minh h a cách tọ i pế c n theo hậ ướng ch c nứ ăng. Phương pháp hướng ch cứ năng chú tr ngọ đ nế cách để gi iả quy tế v nấ đề nh ngư không có khả năng che d uấ các thông tin tr ngạ thái của hệ th ng.ố Đi uề này dẫn đ nế vi cệ các ch c năngứ trong hệ th ngố không tương thích với nhau trong việc th cự hi nệ thay đ iổ các thông tin trong hệ thống. Chính vì v yậ mà cách ti pế c nậ này chỉ thích h pợ khi trong hệ thống có r tấ ít thông tin cần ph iả qu nả lý và chia sẻ gi aữ các ch cứ năng v iớ nhau. Để mô hình hóa cách xử lý thông tin trong hệ thống dùng lược đ dòng d lồ ữ i u (Data Flow Diagraệ ms). DFD là m tộ công cụ đ nơ gi nả và h uữ ích để miêu tả cách th cứ ho tạ đ ngộ c aủ hệ th ng. DFD s d ng các ký hố ử ụ iệu sau để mô t h thả ệ ống: • Ô vuông có góc tròn được dùng để bi u di n các cể ễ h c năngứ c a h th ng.ủ ệ ố 21 • Ô vuông dùng đ bi uể ể di n thành pễ h n d lầ ữ i u trong h th ng.ệ ệ ố • Hình tròn dùng đ bi uể ể di n các thàễ nh ph n bên ngoài có giao tầ i p vế ới hệ th ng.ố • D uấ mũi tên dùng đ biể ểu di n hễ ướng di chuy nể c a d lủ ữ iệu. • Các t khóa “and” và “or” dùng đ liên k t các dòng ừ ể ế d lữ i u khi c n thi t.ệ ầ ế b) Ph ng pháp h ng ươ ướ d lữ i uệ Ngược l iạ v iớ phương pháp hướng ch cứ năng, phương pháp hướng dữ li uệ chú trọng nhi u đ n thành ph n d lề ế ầ ữ i u ệ c n phầ ải x lý trong h th ng:ử ệ ố • T ch c d lổ ứ ữ i uệ • Kh i lố ượng l u trư ữ • T c đố ộ truy xuất • Khi ti nế hành thiết kế theo phương pháp hướng dữ li uệ chúng ta b tắ đ uầ v iớ việc thi tế kế các c uấ trúc dữ li uệ c nầ thiết có trong bài toán, sau đó m iớ ti nế hành thi tế kết các thao tác đ v n hành trên các c u trúc d li uể ậ ấ ữ ệ đã thiết k .ế 22 Phương pháp này đ c ặ bi t ệ ch ỉ thích h p ợ trong các lo i ạ phần mềm ch ỉ có ch cứ năng chính là l uư trữ và thao tác trên các lo iạ dữ liệu. H nạ chế c aủ nó là không quan tâm đ nế các ch cứ năng mà hệ th ngố c nầ ph iả đáp ng.ứ Đi uề này d nẫ đến vi cệ có khả năng hệ th ngố sau khi thi t k khôngế ế có đ y đ các chầ ủ ức năng c n thi t.ầ ế K tế quả thu được sau khi thi tế kế theo phương pháp hướng dữ li uệ là mô hình th cự th k tể ế h pợ (Entity Relationship Diagram). M tộ mô hình th cự thể k tế h pợ đi nể hình gồm có 2 thành ph n ầ c b n: các tơ ả h c th và các ự ể m i k t h p.ố ế ợ • M tộ th cự thể là m tộ đ iố tượng trong thế gi iớ thực mà hệ thống có quan h ,ệ hoặc tương tác qua lại. Các th cự thể đ cượ bi uể di nễ trong sơ đồ b ngằ các hình vuông cùng v i tên và có th cóớ ể thêm các thu c tính cộ ủa th c th .ự ể • M iố k tế h pợ bi uể di nễ sự k tế h pợ gi aữ hai hay nhi uề th cự th .ể M iỗ m iố k tế h p gợ ồm có ba thành ph n ầ c b n:ơ ả  M iố kết h pợ gi aữ các th cự thể được bi uể di nễ băng m tộ đường thẳng nối gi a hai thữ ực th .ể  Tên c aủ môi liên h dùngệ đ ể miêu t ý nghả ĩa c aủ m i liên hố ệ.  B nả số ở hai đ uầ c aủ m iố k tế h pợ dùng để xác định con số t iố đa và tối thi u các tể h c th liên ự ể quan đ n ế m iố k t h p.ế ợ c) Ph ng pháp h ng ươ ướ đ i t ngố ượ Phương pháp thi tế kế hướng đ iố tượng là sự k tế h pợ c aủ phương pháp hướng dữ li uệ và phương pháp hướng ch cứ năng. Phương pháp này chú trọng đ nế cả thành ph nầ dữ li uệ và ch c năng ứ c a h th ng.ủ ệ ố Theo phương pháp hư nớ g đ iố tượng thì m tộ hệ th ngố ph nầ mềm là m tộ t pậ h pợ các đ i ố tượng có khả năng tương tác với nhau. Các đ iố tượng chính là các sự v tậ và hi nệ tượng v tậ lý cũng như tr uừ tượng mà chúng ta có trong thế gi iớ th c.ự M iỗ đ iố tượng có dữ li uệ riêng được che d uấ v iớ thế gi iớ bên ngoài và các thao tác mà đ iố tượng có thể th cự hi nệ trên các thành ph n d lầ ữ i uệ c a đ i t ng.ủ ố ượ 23 Các đ iố tượng liên lạc, trao đổi thông tin v iớ nhau b ngằ cách g iử các thông đi pệ cho nhau. Các thông đi pệ mà m iỗ đ iố t ngượ có thể xử lý được g iọ là giao di nệ c aủ đối tượng. Khi đó m iọ thao tác liên quan đ nế các đối tượng được ph iả th cự hi nệ thông qua giao di nệ c aủ đối tượng. Đi uề này giúp chúng ta đ mả b oả r ngằ các thông tin bên trong các đ iố tượng đ cưọ b oả v ệ m t cách ch c ch n.ộ ắ ắ Chúng ta có thể sử d ngụ nhi uề hệ th ngố ký hi uệ khác nhau để mô tả các đ iố tượng c aủ hệ th ngố cũng như m iố liên hệ gi aữ chúng. M tộ trong số các hệ th ngố ký hi uệ phổ bi nế hi n nay là hệ ệ th nng ký hiố ệu UML. 4. CÔNG CỤ VÀ MÔI TRƯỜNG PHÁT TRIỂN PHẦN MỀM 4.1. M ở đầu 4.1.1. Khái niệm Các công cụ và môi trường phát tri nể ph nầ mềm là các ph nầ mềm hỗ trợ chính người phát tri nể trong quá trình xây d ngự ph nầ mềm. Các ph nầ m mề này có tên g iọ chung là CASE (Computer Aided Software Engineering) tools. Trong quá trình phát tri nể ph nầ m mề theo các quy trình trên, các CASE tools có thể hỗ tr c thợ ụ ể cho m t giai đo n nào đó hay cũng có th h tộ ạ ể ỗ r ợ m t s giai độ ố o n, trong trạ ường hợp này tên g iọ chung thường là môi trường phát tri nể ph nầ mềm-SDE (Software Development Environment). Vi c h tệ ỗ rợ c a các CASE tools trủ ong m t giaiộ đo n bao g m 2 hình th c chính:ạ ồ ứ - Cho phép l u tr , c p nư ữ ậ h t trên k t ậ ế qu chuy n giao v i ả ể ớ m t phộ ương pháp nào đó. - Cho phép phát sinh ra kết qu chuy n giao cho giaoả ể đo n k ti p.ạ ế ế 4.2. Phần m mề h tr thỗ ợ ực hi n các giai ệ đoạn 4.2.1. Phần m mề h tr phân tíchỗ ợ - Công vi c ệ h tỗ r chínhợ o So n th o các ạ ả mô hình th gi iế ớ th cự o Ánh x vào mô hình logicạ - Các ph n ầ mềm: WinA&D, Analyst Pro, 4.2.2. Phần m mề h tr thỗ ợ i t ế kế - Công vi c ệ h tỗ r chínhợ o So n th o các ạ ả mô hình logic 24 o Ánh x vào mô hình v tạ ậ lý - Các ph n ầ mềm: QuickUML, Power Designer, Oracle Designer 4.2.3. Phần m mề h tr lỗ ợ ập trình - Công vi c ệ h tỗ r chínhợ o Qu n lý các phiên b n (D lả ả ữ i u, chệ ương trình ngu n, giao dồ i n)ệ o Biên dịch - Các ph n ầ mềm: Visual Studio, Visual Basic, Visual C++ 4.2.4. Phần m mề h tr ỗ ợ ki m chể ứng - Công vi c ệ h tỗ r chínhợ o Phát sinh t đ ng các bự ộ ộ d lữ i u th nghiệ ử ệm o Phát hi nệ lỗi - Các ph n ầ mềm: WinRuner 4.3. Phần m mề h tr t ỗ ợ ổ ch c, qứ uản lý vi c tri n khaiệ ễ 4.3.1. Xây dựng phương án - Công vi c ệ h tỗ r chínhợ o T o l p phạ ậ ương án o D đoán ự r i roủ o Tính chi phí - Các ph n ầ mềm: MS Project, Visio 4.3.2. Lập k hoế ạch - Công vi c ệ h tỗ r chínhợ o Xác định các công vi cệ o Phân công o L p lậ ịch biểu o Theo dõi th c hi nự ệ - Các ph n ầ mềm: MS Project, Visio 25 Chương 2: PHÂN TÍCH VÀ ĐẶC TẢ YÊU CẦU 1. Tổng quan Phân tích yêu c uầ là khâu kỹ thu tậ đ uầ tiên g mồ nhi uề bước nh :ỏ nghiên c uứ khả thi, phân tích mô hình hóa, đ cặ tả th mẩ định yêu cầu. Gia đo nạ này được tiến hành ph iố h pợ gi a bênữ phát tri nể và khách hàng và nó có vai trò đ cặ bi tệ quan tr ngọ trong ti nế trình phát triển ph n ầ mềm. Đây là bước hình thành bài toán hoặc đề tài. Ở bước này trưởng nhóm thi tế kế và người phân tích hệ th ngố ph iả bi tế được người đ tặ hàng mu nố gì. Các yêu c uầ ph iả được thu th p đ yậ ầ đủ và được phân tích theo chi uề ngang (r ng)ộ và d cọ (sâu). Công cụ sử d ngụ chủ y uế giai ở đo n ạ này là các lược đ , ồ s ơ đ ồ ph n ả ánh rõ các đ i ố tượng c a ủ h ệ th ng: ố l u ư đồ (Flowchart), sơ đồ dòng dữ li uệ (Data Flow diagram DFD), m ngạ th cự th -quanể hệ (Entity- Relationship Network), sơ đồ c uấ trúc phân c pấ (Structural hierarchical schemes), mạng ng nghữ ĩa (Semantic Network) 1.1 Quá trình phân tích 1.1.1 Phân tích phạm vi d ánự Người phân tích hệ th ngố dùng thu tậ ngữ phạm vi để chỉ trách nhi mệ dự án ph iả thực thi. Ngược l i, ph mạ ạ vi d án là nhi mự ệ v l n và pụ ớ h c t p ứ ạ được th c hiự ện b i chở ương trình. Để xác định ph m viạ dự án, b ngằ xác định quá trình nghi pệ vụ ngứ d ngụ sẽ đ iố đầu. Đó là nh ng ữ ph m ạ vi v n ấ đ ề c a ủ ng ứ d ng. ụ Nói chung, có hai ph n ầ đ i ố với b t ấ kỳ giải pháp nghi pệ v :ụ ph nầ tri nể khai ngứ d ngụ và ph nầ th cự hi nệ b iở con người hay chương trình. Định ra ranh gi iớ ng d ng t c là xác ứ ụ ứ định qui trình trách nhiệm. M t khi đãộ định nghĩa trách nhi mệ c a d án:ủ ự • Chia trách nhi m thànhệ nh ngữ nhi m vệ ụ con để đ aư ra ý tưởng cho chính mình về bao nhiêu mô đun chương trình khác nhau yêu cầu? • Xác định bao nhiêu vùng địa lý liên quan (chi nhánh văn phòng). • Ước lượng s ngố ười dùng ng d ng và th i ứ ụ ờ gian ng d ng đứ ụ ược duy trì. • Tính chính xác. • Cu i cùng, hi u khách hàng ố ể mong đ i d án đợ ự ược tri n khai.ể T iạ th iờ điểm này, chúng ta có ý tưởng ph mạ vi dự án. Cân nh cắ độ l nớ dự án đ iố với th iờ gian và ràng bu cộ ngân sách. N uế dự án quá l nớ về thời gian và tiền b cạ cho chi trả thì 26 bàn b cạ v nấ đề v iớ khách hàng để đ aư ra quy tế định thương lượng cho thõa đáng. Chúng ta ph iả ch nọ l aự ho cặ nhiều th iờ gian h n,ơ ho cặ nhi uề ti nề hơn ho cặ cả hai. Ho cặ chúng ta ph i ả gi mả phạm vi dự án xu ng.ố Phân tích tất cả nh ngữ tình hu ngố ở giai đo nạ đ uầ c aủ dự án s làmẽ cho d án thành công nhi u hự ề ơn. 1.1.2 Phân tích m rở ộng yêu cầu nghi p ệ vụ a. Xác định yêu c u nghầ i p vệ ụ M iỗ dự án sẽ có m tộ hay nhi uề yêu c uầ nghi pệ v .ụ M iỗ yêu c uầ nghi pệ vụ là m tộ mô tả tác nhi mệ cụ thể trong nghi pệ vụ c aủ khách hàng. Ví d .ụ l uư v tế quá trình đ uầ t .ư M tộ tác v nhụ ư ki mể soát đ uầ tư cần chia nhỏ thành nh ngữ ph nầ ch cắ ch nắ cho đ nế khi m iỗ ph nầ đủ đ mô t công vi c cể ả ệ hính xác ph nầ . Khi m cứ độ c aủ thành ph nầ chia nhỏ dưới mức t iố thi u,ể xác định lại trình tự thành M iỗ tác vụ được g iọ là yêu c uầ nghiệp vụ hay quy t cắ nghi pệ v .ụ Quy t cắ doanh nghiệp được vi tế theo ngôn ngữ được hi uể b iở nh ngữ người không chuyên máy tính sao cho người dùng có thể ki mể tra lu t ậ m t cách cộ hính xác b. Xác định yêu c u ch t lầ ấ ượng khách hàng M iỗ dự án ph nầ mềm có thể yêu c uầ nhanh, b oả m t,ậ phụ thu c,ộ dễ dùng, hay bug- free. Trong thế gi iớ th c,ự th iờ gian và ràng bu cộ tài chính làm cho không thể t oạ ra nh ngữ chương trình dự án hoàn chỉnh. Thay vào đó, đi uề quan trọng để quy tế định dựa trên m cứ độ chấp nh n c a cậ ủ h t lấ ượng thõa mãn khách hàng. Ví d :ụ khi khách hàng quy tế định ngứ d ngụ ph iả s nẵ sàng 23 giờ trong ngày, bỏ qua th iờ gian vận hành không giảm. Chất lượng khác bao g mồ số người dùng truy c pậ hiện hành, th iờ gian tối đa ph iả chờ để hoàn thành công vi cệ trong ngứ d ngụ (sự ph nả h i),ồ độ b oả mật ng d ng, hay h n n a.ứ ụ ơ ữ c.Phân tích h t ng c ạ ầ ơ s hi n hànhở ệ Ph nầ quan tr ngọ trong thi tế kế gi iả pháp là phân tích kỹ thu tậ thay th .ế Đi nể hình, giải pháp ph nầ mềm được đ aư vào h nơ là thay thế hệ th ngố hiện hành. Dự án c nầ làm vi cệ trên ph nầ c ngứ và ph nầ mềm mà người dùng hi nệ có. Bi tế được hệ đi uề hành đang được cài trên máy c a ủ người dùng, lo i ạ m ng ạ đang s ử d ng, ụ và n u ế người dùng đang ch y ạ ph n ầ mềm không tương thích v iớ chương trình m iớ h n.ơ Nên bỏ th iờ gian tìm hi uể máy chủ hi nệ hành, h đi u hành, ph n ệ ề ầ mềm đang ch y.ạ 27 Khi đ aư giải pháp, nhớ r ngằ cơ sở hạ t ngầ hi nệ hành đ m b oả ả gi iả pháp c aủ chúng ta có th tể ương thích. d. Phân tích nh hả ưởng k thu tỹ ậ N uế c nầ mở r ngộ ch cứ năng cho hệ th ngố hi nệ hành, chúng ta mong ước thay đổi h ệ th ngố cũ cả vi cệ c iả thi nệ hệ thống cũ và tích h pợ dễ dàng h nơ hệ thống m i.ớ Ví d ,ụ chức năng c aủ chương trình kế toán l uư trữ dữ li uệ nhỏ như CSDL hướng đ nế t pậ tin Access. Đ ể t o ạ d ữ li u ệ truy xuất hi u ệ qu ả h n ơ và thõa mãn yêu c u ầ c a ủ giải pháp m i, ớ chúng ta mới chuy nể toàn bộ dữ li uệ sang hệ quản trị csdl SQL Server. Vi cệ suy nghĩ trước sẽ ti tế kiệm th iờ gian sau đó: trãi qua thời gian tìm hi uể sự khác bi tệ về giao tác, bảo m t,ậ và nh ngữ chức năng khác gi a k thu tữ ỹ ậ cũ và giải pháp m i.ớ Chúng ta nên tìm hi u th t c chuy nể ủ ụ ể đ i d lổ ữ i u ệ t k thu t ừ ỹ ậ cũ sang k tỹ hu t ậ m i.ớ Đảm b oả được phép th cự nghi m nh ngệ ữ thủ t cụ này, và có kế ho chạ b oả l uư trong trường h pợ thực hi nệ v nấ đề này bị lỗi. Đảm b oả ch cắ ch nắ nh ngữ tác đ ngộ chuy nể đổi trên m iọ thành phần c a h th ng, không củ ệ ố h ph n t g nỉ ầ ử ầ nh t thay đấ ổi. 1.1.3.Phân tích yêu cầu bảo mật Khi hệ thống l uư tr ,ữ truy xu tấ dữ li uệ cá nhân như thông tin nhân s ,ự thẻ tín dụng, doanh số bán hay thông tin riêng tư, chúng ta c nầ có bi nệ pháp đ mả bảo an toàn nh ngữ d ữ li u này.ệ a. Xác định vai trò Toàn b ng d ng không chộ ứ ụ ỉ có 1 mức đ b oộ ả mật. Người dùng cu i chố ỉ c n quy nầ ề truy xu tấ gi iớ hạn vào hệ th ng.ố Qu nả trị hệ th ng,ố người thao tác viên c pậ nhật, và người dùng có quy nề truy c pậ cao h nơ ở m iọ c pấ đ .ộ B oả m tậ d aự trên vai trò là kỹ thu tậ dùng để c pấ quyền m cứ độ b oả m tậ khác nhau tương ứng quy nề h nạ và độ chuyên nghi pệ c aủ m iỗ người dùng trong hệ thống. L uư ý: Nhận bi tế nh ngữ l pớ chính c aủ nh ngữ người dùng c nầ truy c pậ đ nế ngứ dụng c aủ chúng ta. Gán tên vai trò cho mỗi l pớ người dùng. Cu iố cùng, gán m cứ độ t iố thi uể có th truyể xuất đến m iỗ vai trò. M iỗ l pớ người dùng nên có đủ quy nề truy xu tấ đ nế công vi cệ c a ủ h , và không nhi u họ ề ơn. b. Xác định môi trường b o m t ả ậ ứng d ngụ Đ b oộ ả m t không bậ ị giới h n ngạ ười dùng h th ng. Chệ ố ỉ người dùng đăng nh p vàoậ ứng d ng,ụ ngứ d nngụ ph iả “login” để kiểm soát tài nguyên chia sẻ như t pậ tin, dịch vụ hệ th ng,ố 28 cơ sở dữ liệu. M cứ độ ki mể soát c aủ ngứ d ngụ được g iọ là ngữ c nhả b oả m t.ậ Chúng ta cần ph iả làm vi cệ v iớ nhi uề người dùng khác như qu nả trị m ng,ạ c pấ quyền truy xu tấ phù h p ng d ng đ chia s tàiợ ứ ụ ể ẻ nguyên. c. Xác định nh hả ưởng b o m tả ậ N uế công ty có s nẵ cơ chế b oả m tậ thay vào đó hệ th ngố c aủ chúng ta nên đi uề chỉnh cho phù h pợ v iớ cơ chế đã có. N uế chúng ta đang th cự thi hệ th ngố b oả m tậ m iớ hay m tộ h ệ th ngố khác, c n ph i phân tích tác đầ ả ộng c a h tủ ệ h ng trên hố ệ th ng hi n tố ệ ại: • H th ng ệ ố m i có làmớ hỏng ch c năng c a ph nứ ủ ầ mềm hi n tệ ại? • H th ng đòi h i phệ ố ỏ ải hỗ trợ thêm m t ph n ngộ ầ ười dùng – đăng nh p ậ mở r ngộ ? • Hệ th ngố sẽ khóa m tộ vài người dùng trên những t pậ tin hay nh ngữ tài nguyên mà họ được quy n truy c pề ậ trước đây d. K ho ch v n hànhế ạ ậ Khi tổ ch cứ phát tri nể và thay đ i,ổ người dùng m iớ được thêm vào, người cũ được c p nh tậ ậ và bỏ đi. Nh ngữ thao tác này đòi h iỏ thay đ iổ CSDL bảo m t,ậ đó là n iơ thông tin ngư i ờ dùng và quy n h n truy c p c a h ề ạ ậ ủ ọ được l u. Nh ng thông tin này đư ữ ược l u trư ữ hi n th i.ệ ờ N uế người dùng có vị trí địa lý khác nhau, ở văn phòng khác nhau, chúng ta c nầ lên k ho chế ạ tái tạo cơ sở dữ li uệ b oả m t.ậ Sự tái t oạ là sự thay đ iổ hệ th ngố dữ li uệ tại nơi này sao chép đ nế nơi khác sao cho t tấ cả thông tin b oả m tậ được l uư giữ m iỗ n i.ơ Thu nậ lợi vi cệ tạo b nả sao là người dùng có thể đăng nh pậ dùng thông tin đ cượ l uư ở vị trí g nầ h nơ so v iớ vị trí địa lý. N uế m ngạ WAN bị ng ngừ ho tạ đ ng,ộ ví d ụ người dùng v nẫ có thể đăng nh p.ậ Vi c ệ t o b n sao c n đạ ả ầ ược lên k ho ch và v n hành.ế ạ ậ L uư ý: Chúng ta lên kế ho chạ cho đi uề ki nệ khẩn c pấ – phải làm gì n uế csdl b oả m tậ bị ng tắ hay nếu vi cệ t oạ b nả sao bị hỏng. Đ iố v iớ hệ th ngố bảo m tậ bị hỏng, chúng ta cũng nên có cả hai kế ho chạ kh nẩ c pấ và thủ t cụ tự đ ngộ chú ý đ nế nh ngữ v nấ đề chung như mạng bị h ng.ỏ d. K ho ch kiế ạ ểm soát và đăng nhập M tộ hệ th ngố b oả m tậ t tố không là cơ chế thụ đ ng.ộ Thay vào đó, ch aứ ch cứ năng trợ giúp ki mể soát ho tạ động c aủ hệ thống cho v nấ đề b oả m t.ậ V nấ đề chung c aủ ch cứ năng này là nh tậ ký. Toàn bộ thao tác c aủ hệ th ngố có thể được ghi nh nậ h uầ như toàn bộ sự ki nệ liên quan đ nế b oả m tậ hệ th ng.ố Có thể ghi nh nậ m iỗ khi đăng nh p,ậ truy xu tấ đ nế m iọ tài nguyên nh ngư đi uề này hi mế khi hi uệ qủa; thường chúng ta sẽ ghi nh nậ m tộ số t pậ thông tin này nh vi c c gư ệ ố ắng đăng nh p ậ l i.ỗ 29 L uư ý: Nh tậ ký hệ thống tự nó thì không có ý nghĩa; chúng ta ph iả kế ho chạ ki mể soát thường xuyên b iở ta có thể phát hi nệ nh ngữ nghi ngờ nh ngữ m uẫ nh tậ ký ho tạ đ ng.ộ Ngư i ờ ki mể soát được hu nấ luy nệ nên phân tích nhật ký trên cơ sở thường xuyên, đ aư ra nh ngữ đ nghề ị n uế có b t ấ kỳ đi u nghi ng .ề ờ e. Xác định m c đ yêu c u b o m tứ ộ ầ ả ậ B oả m tậ cũng gi ngố như nh ngữ ph nầ khác trong thi tế kế ngứ d ng,ụ là sự cân nh cắ gi a hi uữ ệ quả và chi phí. N uế hệ th ngố không l uư nh ngữ dữ li uệ có tính nh yạ c mả cao. Cách tốt nh t đ tri n khai h th ng đó là “gấ ể ể ệ ố i s xác thữ ự ực c a ngủ ười dùng” đòi h i l uỏ ư tr . ữ N u chúngế ta l uư trữ thông tin c nầ cho b oả m t,ậ chi phí cho b oả m tậ thông tin đ cặ bi tệ ph iả được kiểm ch ng.ứ Không có hệ th ngố nào b oả m tậ 100%. Chúng ta ph iả xác định m cứ độ r iủ ro b oả mật có th ể ch pấ nh nậ được. Độ r iủ ro bảo m tậ di n ễ tả tỉ lệ ph n ầ trăm tương x ngứ khả năng mà b o ả m tậ hệ th ngố không bao giờ đ tạ đến. Đi uề đó có thể nh ngư phí t nổ để xây d ngự hệ th ngố b o ả m tậ 99%. Chúng ta hay khách hàng ph iả xác định m cứ độ r iủ ro có thể ch p ấ nh nậ được dựa trên d li uữ ệ nh y c mạ ả của h th ng.ệ ố f. Rà soát b o m t hả ậ i nệ tại Chúng ta nên trung thành ý tưởng c aủ yêu c uầ b oả m tậ c aủ ứng d ng.ụ Ở th iờ đi mể phân tích chính sách b oả m tậ hi nệ tại của công ty để xác định bảo m tậ có đ tạ đ nế nh ngữ nhu c u c aầ ủ hệ th ngố hay không. N uế không, th oả lu nậ v nấ đề v iớ người gách vác hệ th ngố b oả m tậ công ty đ tìmở ể ra gi i pháp ả mang l i l iạ ợ ích đ trể i n khai ể m r ngở ộ b o ả mật. 1.1.4.Phân tích yêu cầu tốc độ T cố độ c aủ ngứ d ngụ có thể đòi h iỏ khó. Đ iố v iớ người dùng, ngứ dụng sẽ h uầ như ch y quá cạ h mậ nh ng ch y nhanh ng d ng thư ạ ứ ụ iết k tế ốt có th ể mang l i giá trạ ị L uư ý: việc ch yạ nhanh m tộ ngứ d ngụ thiết kế kém thì d ,ễ nhi uề ngứ dụng có thể chạy ch mậ b iở thi tế kế thi uế sót, nh ngữ không b iở không tương thích gi aữ ph nầ ngứ và các y uế t bên ngoài.ố Chúng ta nên nh nậ th cứ yêu c uầ t cố độ ngứ dụng trước khi b tắ đ uầ qui trình thiết kế. Yêu c u t cầ ố đ d a theo các ộ ự m c sau:ụ M iỗ phút giao dịch: cung c pấ dịch vụ phụ thu cộ vào số lượng l nớ người dùng, ng ứ d ngụ phân tán dùng những giao tác. Số giao tác m iỗ phút (TPM) là độ đo t cố độ hệ th ngố cơ s d lở ữ i u.ệ 30 Băng thông: ngỨ d ngụ phân tán làm ngh nẽ vi cệ sử d ngụ m ng.ạ Sự phản h iồ c aủ ứng d ngụ xác đ nhị định băng thông mạng (độ r ngộ c aủ đường truy nề mạng). Băng thông thư ng ờ được đo b ngằ megabit m i giây.ỗ Khả năng ch aứ : Lượng l uư tr -ữ cả chính và phụ - s nẵ sàng đ iố v iớ ngứ d ngụ là v nấ đ l uề ư tâm quan tr ngọ cho t cố độ chung c aủ ngứ d ng.ụ RAM đòi h iỏ của ngứ d ngụ gây ra những khác biệt lớn cho t c đố ộ c a ng d ng.ủ ứ ụ Nút th tắ : Trong m iỗ hệ th ng,ố có ph nầ gi iớ h nạ t cố độ hệ thống nói chung. Ví dụ CPU t cố độ nhanh cũng không c iả thi nệ gì m yấ n uế ph iả chờ dữ li uệ từ m tộ ổ c ngứ quá chậm. Trong trường h pợ này, ổ c ngứ sẽ là nút th tắ c aủ toàn bộ hệ th ng.ố Không thể tăng tốc độ tr khiừ nút th cắ được nh nậ bi t,ế bởi vì chỉ có cải thi nệ nút th tắ làm nâng t cố độ phù hợp. Chúng ta có thể nh nậ bi tế nút th tắ b ngằ cách sử d ngụ công cụ báo cáo hệ th ngố như Màn hình đi u ề khi n t c để ố ộ trên Window NT (Windows NT Performance Monitor). Thu tậ ngữ t cố độ thường dùng đ ngồ nghĩa v iớ sự ph nả h iồ - số lượng th iờ gian chiếm giữ để ph nả h iồ lại hành đ ngộ c aủ người dùng. Có thể làm cho ngứ d ngụ xu tấ hi nệ ph nả hồi mà không c nầ tăng tốc đ .ộ Tuy nhiên, th iờ gian ph nả h iồ trung bình của ngứ d ngụ là đ cặ tính quan tr ng,ọ chúng ta ph iả kết h pợ ch tặ chẽ nh ngữ m cụ tiêu th iờ gian ph nả h iồ đối v iờ yêu cầu chung thiết k .ế Không th ể nói v ề t c ố đ ộ trong nh ng ữ ng ứ d ng ụ phân tán mà không phân biệt quan tr ng:ọ gi aữ nhu c uầ cao và trung bình. T iạ m tộ số th iờ đi mể - t iố hay cu iố tu nầ – có lẽ ứng d ngụ sẽ phục vụ v iớ số lượng nhỏ người dùng, thì t cố độ nó sẽ trên trung bình. Ở th iờ điểm khác, số l ngượ người dùng sẽ cao h nơ và t cố độ ngứ d ngụ đủ cho phép. M cụ tiêu tốc độ bao gồm cả m c tiêu ụ t c đ trung bình và cao.ố ộ 1.1.5 Phân tích yêu cầu vận hành Chúng ta có thể gi mả b tớ chi phí v nậ hành theo nhi uề cách.Cách t tố nh tấ để gi mả chi phí v nậ hành là đ mả b oả chương trình được kiểm thử và ch yạ debug trước khi đ aư vào tri n khai.ể Chi phí tri nể khai có thể được gi mả b tớ bởi phân ph iố tr cự tuy nế hay nh ngữ thủ t cụ t đ ngự ộ cài đặt, và qui trình v nậ hành có thể tự động b ngằ các qui trình tin h c.ọ M cứ vị trí và hu n luy n đ i ngũ là v n đ xem xét quan tấ ệ ộ ấ ề rọng: đ i ngũ nhânộ vi n càng đệ ược hu n luy n kấ ệ ỹ và sâu thì vấn đ càng nhanh chóng đề ược s a đử ổi. Trong trường h pợ ph nầ c ng,ứ ph nầ mềm là thành ph nầ được mua chứ không được phát tri n,ể chúng ta có thể nh nậ sự ch pấ thu nậ v nậ hành từ nhà xưởng hay người yủ thác c aủ s n ả phẩm. V nậ hành s nả ph mẩ trung gian tiết ki mệ cho chúng ta chi phí thuê mướn nhân viên 31 m i ớ hay hu n ấ luy n ệ l i ạ nh ng ữ nhân viên cũ đ ể duy trì m t ộ hay nhiều thành ph nầ c a ủ hệ th ng.ố Gi mả chi phí v nậ hành đòi h iỏ sự tự thõa mãn l iợ nhu nậ trong th iờ ng nắ đ iố v iớ những l iợ ích trong tương lai. Gi mả chi phí v nậ hành lâu dài thường đòi h iỏ đầu tư đón đ uầ trong t đ ng hóa ph n c ng và ph n ự ộ ầ ứ ầ mềm. 1.1.6 Phân tích kh ả năng m ở rộng yêu c uầ Qua th iờ gian, nh ngữ yêu c uầ gi iả pháp sẽ thay đ i.ổ Người dùng c nầ nh ngữ ch cứ năng m i,ớ các quy luật đặt ra sẽ bị s aử đ i,ổ và ph nầ c ngứ ph nầ mềm n nề m iớ thay đổi theo. ng d ng Ứ ụ thi tế kế tốt là có khả năng mở rộng được – nó có thể uy nể chuyển c iả thi nệ mà không ph iả vi tế l iạ hoàn toàn. Khả năng mở r ngộ của ứng d ngụ bị đ oả ngược so v iớ lượng công việc c n hoàn thành đầ ể thêm nh ng đ c tữ ặ r ngư m i.ớ Khả năng mở r ngộ có thể đ tạ được thông qua nh ngữ ý nghĩa khác nhau. M tộ cách đ t ạ nh ngữ khả năng h nạ đ nhị là l uư trữ thông tin quy lu tậ đặt ra trong cơ sở dữ li uệ h nơ là l p trìnhậ chúng trong đ iố tượng nghi pệ v .ụ Theo cách đó, n uế số quan trong hay thủ t cụ thay đổi, nó có thể thay đ iổ trong CSDL mà không thay đ iổ mã ngu n.ồ Cách khác là đ tặ mã ngu nồ vào trong đo nạ script được làm rõ h nơ biên dịch chương trình; đo nạ script có thể bị thay đ iổ một cách d dàng không đòi h i b t ễ ỏ ấ kỳ biên dịch hay cài đặt lại tập tin nhị phân L uư ý: cách t tố nhất để đ tạ được khả năng mở r ngộ là ng tắ ngứ d ngụ thành nh ngữ đối tượng thành ph n,ầ m iỗ thành ph nầ hoàn thành một nhi m vệ ụ riêng l .ẻ N uế nh ngữ yêu c uầ c a nh ngủ ữ nhiệm vụ đ cặ bi tệ thay đổi, đ iố tượng tương ngứ có thể bị thay đ iổ và biên d chị lại mà không gây nhả hưởng b tấ kỳ đ iố tượng khác. Nh ngữ đ iố tượng được thêm vào dễ dàng. Đối tượng nghiệp vụ có những thu nậ l iợ được làm hi uệ quả h nơ nh ngữ phương pháp khác trong khi v n đ mẫ ả b o t t khả ố ả năng m r ng.ở ộ 1.1.7. Phân tích nh ng ữ yêu cầu sẵn có Nh ngữ ngứ d ngụ phân tán được thiết kế để ch yạ m iỗ ngày. Nó c nầ thi tế cho sự thành công c aủ doanh nghi p.ệ Như v y,ậ chúng có m cứ độ s nẵ sàng cao nên tránh thường b oả trì, s a ch a, phát sinh không theo k hử ữ ế o ch.ạ Rõ ràng, đ iố v iớ nh ngữ ngứ d ngụ mang tính s nẵ sàng, nó không được gây ra l i.ỗ Không có ngứ d ngụ nào là không có lỗi, ngứ d ngụ ph iả được bảo l uư để chúng có thể ho tạ đ ng ộ th mậ chí khi bug x yả ra trong m tộ ph nầ c aủ chương trình. Thí d ,ụ n uế người dùng gây ra lỗi cho chương trình thì chỉ m tộ ph nầ chương trình ph cụ vụ cho người dùng đó bị h ng,ỏ không 32 nhả hưởng người dùng còn lại đang n iố kết. B t ấ kỳ thành ph nầ ngứ d ngụ nào h ngỏ hay không s n sàng thì nên kh i đẵ ở ộng l i ngay khi có th .ạ ể Vi cệ b oả trì có kế ho chạ cũng tác đ ngộ đ nế tính s nẵ sàng. M tộ máy chủ ch aứ ngứ dụng lý tưởng luôn có b nả sao l uư có thể kh iở đ ngộ khi máy chủ b oả trì. ngứ d ngụ có mức độ s n sàngẵ cao có cách luân phiên để k tế n iố m ngạ trong trường h pợ m ngạ WAN, LAN ng ngư hoạt đ ngộ L uư ý: Tính s nẵ sàng liên quan đ nế nghi pệ v .ụ Tính s nẵ sàng c aủ ngứ d ngụ càng cao, giá trị c aủ ứng d ngụ càng cao. Chúng ta phải xác định bao nhiêu giờ trong ngày ngứ d ngụ cần được thao tác; giờ nào là quan tr ngọ so v iớ các giờ trong ngày. Cân nh cắ giá trị của vi cệ tăng tính s nẵ sàng đ iố v iớ giá trị dự án c aủ th iờ gian down ngứ d ng.ụ Những hệ th ngố tr ngọ yếu, giá trị đ iố v iớ công ty ở b tấ kỳ th iờ đi mể down nào hoàn toàn đi uề chỉnh chi phí thi tế kế 100 % ng d ng s n sàng. ứ ụ ẵ Ứng d ng khác đ n gi n ụ ơ ả c n tr nên sầ ở ẵn sàng h u ầ h t ế m i lúc.ọ 1.1.8. Phân tích yêu tố con người Thi tế kế ngứ d ngụ được giám sát b iở nhi uề người l pậ trình là ph nầ quan tr ngọ c aủ yếu tố con người. Chúng ta nên xác định kinh nghiệm gì mà chúng ta mu nố người dùng có. Với b t c ng d ng nào khác, kinh nghấ ứ ứ ụ i mệ người dùng càng t t thì chi pố hí càng cao. B tắ đ uầ định nghĩa m cụ tiêu c aủ người dùng. Xác định người dùng với nh ngữ nhu c u đ cầ ặ biệt như thế nào. Chúng ta c nầ đi uề ti tế người dùng qua vi cệ đi uề ti tế nghe và nhìn, hay người dùng nói ti ngế nước ngoài. Phụ thu cộ vào vị trí đ aị lý c aủ người sử d ng.ụ Chúng ta c n ầ s aử đ iổ ứng d ngụ thích ngứ theo vị trí đ aị lý. C nầ đi uề chỉnh nhu c uầ lướt qua c aủ người dùng, người không c n ầ s n i k t cự ố ế h c ch n hay kh năng tắ ắ ả rả l iờ l i.ạ Xem xét mức độ chuyên nghi pệ gi aữ người dùng. V iớ chuyên viên h cọ nhanh h nơ với giao di nệ thi tế kế t tố và trợ giúp tr cự tuy nế Help online. Người dùng với kỹ năng kém h nơ đ tăngể t cố qua sử d ngụ wizard, trợ giúp online, hay chỉ d n.ẫ Hu nấ luy nệ khách hàng trong ng d ng cũng nên cân nh cứ ụ ắ ch n l a.ọ ự 1.1.9. Phân tích yêu cầu tích hợp N uế gi iả pháp giao ti pế v iớ ngứ dụng kế th a,ừ vi cệ truy xu tấ CSDL tồn t i,ạ hay việc chuy nể đ iổ dữ li uệ cũ sang khuôn d ngạ m i,ớ b nạ c nầ phải đ aư kế ho chạ tích h pợ ứng d ng v iụ ớ ph nầ m mề cũ. Đi uề này được làm thông qua k tế nối của hãng trung gian như trình điều khi nể thiết bị k tế n iố csdl (ODBC), nh ngư chúng ta cũng c nầ vi tế k tế n iố và nh ngữ ti nệ ích chuy n để ổi 33 Khi phát sinh nhu c uầ l nớ h n,ơ cơ sở dữ li uệ ph iả thi tế kế lại. Kỹ thu tậ dữ li uệ m iớ hay vậ lý đ aư nhu c uầ c iả thi nệ CSDL bên dưới ngứ d ng.ụ Những c iả ti nế ph iả được c nẩ th nậ bởi chúng phá v ở tất c ả mã ngu nồ CSDL hi n ệ t i.ạ Trước khi c iả ti nế khung dữ li u,ệ đ mả bảo nh ngữ ph nầ mã ngu nồ hi nệ tại có thể truy xu tấ đ nế CSDL. T tấ cả mã ngu nồ hi nệ t iạ ph i ả được soát lại, có th ể vi tế l i.ạ 1.1.10. Phân tích th c ti n nghiự ễ ệp v tụ ồn tại Ph n ầ định nghĩa trong qui t c ắ nghi p ệ v ụ liên quan đ n ế s ự hi u ể biết ngữ c nh ả trong nh ngữ qui t cắ thao tác. Hi uể được nh ngữ th cự tế nghi pệ vụ c aủ doanh nghi pệ có thể giúp chúng ta tránh được sai sót th mậ chí giúp tìm cách t tố h n,ơ hi uệ quả h nơ c aủ tự đ ngộ hóa tiến trình nghi pệ v .ụ Hi uể được v nấ đề h pợ lệ dưới m iỗ ti nế trình có thể ngăn b nạ gây ra l iỗ một cách ngây ngô d n đ n tranh ch p.ẫ ế ấ Hi uể được c uấ trúc tổ ch cứ và sơ đồ làm vi cệ nghi pệ vụ là quy tế định. Không hi uể rõ ràng s ơ đ ồ t ổ ch c, ứ không th ể đem l i ạ s ự ch p ấ thu n ậ phù h p ợ cho thi tế k ế ng ứ d ng ụ của chúng ta hay thông tin theo kíp trên thi tế kế hay nh ngữ vấn đề tri nể khai. Đồ hình tổ chức cũng giúp cho tìm kiếm thông tin người nẩ danh ph nả h iồ l iạ ch cứ năng c aủ ngứ d ngụ mà không dùng b t c a cấ ủ hính h .ọ Có được ngứ d ngụ từ giai đo nạ phát tri nể đ nế sản ph mẩ đòi h iỏ sự hi uể bi tế m ngạ và chính sách hạ tầng c aủ công ty. Biết được ai là người chịu trách nhi mệ b oả trì, b oả m t,ậ tính toàn v n,ẹ khả năng ph nả h iồ tương tác trên m ng.ạ H cọ nh ngữ ti nế trình và chính sách liên quan ch yạ trên ngứ d ngụ m i.ớ Tìm ra lo iạ ki mể soát ch tấ l ngượ và dịch vụ ki mể thử s nẵ sàng trong khi chúng ta ki mể thử trên chính ph nầ mềm, ta có thể tự đ ngộ tài nguyên hay dành cho bộ ph nậ ki mể tra ch tấ lượng tùy ý sử d ng.ụ Chúng ta có thể yêu c uầ phương pháp thiết kế đ c bi tặ ệ hay triển khai th cự t .ế Chúng at cũng đòi hỏi ch cắ ch nắ kế ho chạ đ cượ k tế ch tặ v iớ ngân sách Cu iố cùng, giữ nh ngữ nguyên t cắ c tố l i:ỏ H cọ nhu c uầ khách hàng, cố g ngắ th cự hi n chúng.ệ Đi uề này có thể trở nên khó khi khách hàng không bi tế nhu c uầ c aủ họ là gì, nh ngư đó là cách d nẫ đ n ng d ng thành công.ế ứ ụ 1.1.11.Phân tích yêu cầu kh ả năng quy mô N uế ngứ dụng thành công sẽ h pấ d nẫ người dùng h n.ơ Đặc bi t,ệ n uế ứng d ngụ chạy trên môi trường web như Internet thì sự thành công đ ngồ nghĩa v iớ tăng nhu c u.ầ ngỨ dụng ph i đả ược thi t k có quy ế ế mô- nó ph i h tr nâng c p cho phép ph c v nhi uả ỗ ợ ấ ụ ụ ề người h n.ơ 34 M tộ cách đơn gi nả để nâng cao ngứ d ngụ là mua CPU nhanh h n,ơ nhi uề RAM, k tế nối mạng t tố h n.ơ Tuy nhiên vi cệ tăng cường máy đ nơ ch yạ nhanh h n.ơ Thực sự nh ngữ ngứ d ngụ có thể nâng c pấ ph iả thêm vào nhi uề dịch vụ phía máy ch .ủ Đi uề này có nghĩa ngứ d ngụ có thể ch yạ trên nhi uề máy tính cùng m tộ lúc, sự phân ph iố vi cệ t iả xu ngố c aủ người dùng và xử lý thời gian qua nhi uề máy ch .ủ Điều này sẽ gia tăng đáng kể tính phức t p,ạ vì v yậ m tộ lần n aữ tính thu nậ ti nệ khả năng quy mô ph iả được cân nh cắ đ iố v iớ giá trị cung c p.ấ Tuy nhiên, ngứ d ngụ như Miscrosoft Transaction Server gi mả đáng kể chi phí phát tri nể ngứ d ngụ phân tán b i qở u nả lý v ề m t logic c a phân tán ặ ủ t đ ng.ự ộ 1.2 Xác định yêu c uầ M c tiêu cụ a vi c xác đủ ệ ị nh yêu c uầ : Xác định thật chính xác và đ y đ các yêu c u đầ ủ ầ ặt ra cho phần mềm s đẽ ược xây d ng.ự K t qu nh n đế ả ậ ư ợ c sau giai đo n xác đạ ị nh yêu c u:ầ 1. Danh sách các công việc s đẽ ược thực hi n trên máy tínhệ 2. Nh ng mô t chi ti t ữ ả ế v các công viề ệc này khi đư c th c ợ ự hi n trong tệ h ế gi i ớ thực. Qua đó bước đ u hình thành thông tin khái quát v các ho tầ ề ạ đ ng trong th gi iộ ế ớ th c.ự 1.2.1 Yêu cầu và mô t yả êu cầu  Yêu c uầ (hay yêu c uầ ph nầ mềm) là công vi cệ mu nố th cự hi nệ trên máy tính. Nh ng công vi c này ph i xu t phát t th cữ ệ ả ấ ừ ự t ch không thu n túy tin h cế ứ ầ ọ  Mô tả yêu c uầ là mô tả đ yầ đủ các thông tin liên quan đ nế công việc tương ng.ứ Các mô t ả này dùng làm cơ s ở để nghiệm thu và đánh giá ph nầ mềm khi được chuyển giao. Các yêu c uầ c aủ ph nầ m mề c nầ được mô tả thật rõ ràng, cụ th ,ể đ yầ đủ và chính xác các thông tin liên quan đ nế công việc tương ng.ứ Vi cệ mô t sả ơ sài, mơ hồ yêu c uầ ph nầ mềm sẽ d nẫ đ nế vi cệ hi uể nh mầ gi aữ chuyên viên tin h cọ (người th cự hi nệ ph nầ mềm) và khách hàng (người đ tặ hàng th cự hi nệ phần mềm). Nhi uề công sức và chi phí ph iả hao tốn do các hi u nh mể ầ nh th .ư ế Các lo i thạ ông tin chính c n đầ ược quan tâm khi xác định yêu c u ph n ầ ầ mềm:  Tên công vi c ng v i ệ ứ ớ t ng yêu c uừ ầ  Người ho c b ph n s th c hi n công vi cặ ộ ậ ẽ ự ệ ệ  Địa đi mể th c hi n công vi cự ệ ệ 35  Th i gian tờ h c hi n công vi cự ệ ệ  Cách th c tứ i n hành công vi c cùng v i các quyế ệ ớ định liên quan Sau đây, t ng lo i thông tin sừ ạ ẽ l n lầ ượt được xem xét chi tiết: a. Tên công vi c.ệ C n xác đầ ịnh c th , tránh dùng các tên chung cụ ể hung, m hơ ồ Ví d : xét ụ m t s tên công vi c saộ ố ệ u: Qu nả lý đ cộ gi :ả chung chung, mơ h ;ồ cụ thể như vi cệ đăng ký mượn sách, gia h nạ th đ c gi , tr ẻ ộ ả ả sách Qu nả lý sách: chung chung, mơ h ;ồ cụ thể như nh pậ sách vào kho, tra c uứ sách, cho mượn sách, nh n tr sách, thanh lý sách.ậ ả b. Ng i ườ th cự hi n.ệ C nầ xác định chính xác người ho cặ bộ ph nậ sẽ th cự hi nệ công vi cệ trên máy tính (còn g i là ngọ ười dùng ph n ầ mềm hay người dùng). Nh ngữ người dùng có vai trò và công vi cệ th cự hi nệ t ngươ tự như nhau sẽ được x p vàoế cùng m tộ lo iạ ng iườ dùng (thông thường m tộ lo iạ ng iườ dùng sẽ tương ngứ v iớ m tộ b ph nộ ậ trong th gi iế ớ th cự ). Cùng m tộ công vi cệ có thể có nhi uề lo iạ người dùng khác nhau th cự hiện và ngược lại, m t ộ lo i ngạ ười dùng có th th c hi n nhể ự ệ i u công về i c khác nhau.ệ c. Th i gian, đờ ịa điểm. C nầ xác định chính xác địa điểm, th iờ đi mể ti nế hành công vi c.ệ Các thông tin này sẽ có ý nghĩa nh t đấ ịnh trong m t s tộ ố rường h p đ c thù.ợ ặ d. Cách th c tứ i n hành và các quy đế ịnh liên quan. Đây là ph nầ chính y uế khi ti nế hành mô tả yêu c u.ầ Đ iố với lo iạ thông tin này c nầ đặc bi tệ quan tâm đ nế m t s y u t saộ ố ế ố u: i. Các quy định c n ki mầ ể tra khi th c hi n công vự ệ iệc ghi nh n thông tinậ Ví dụ : Quy định về vi cệ mượn sách khi cho đ cộ giả mượn sách: chỉ cho mượn sách đối v iớ nh ngữ đ cộ giả có thẻ đ cộ giả còn h n,ạ số sách đang mượn ch aư đ nế 2 và không có sách mượn quá h n.ạ 36 Ví dụ : Quy định tính hợp lệ c aủ phân số trong vi cệ ghi nh nậ đề bài c aủ giáo viên và bài gi i cả ủa h c sinh: phân ọ s ph i có ố ả m u s khác 0ẫ ố ii. Các quy định, công th cứ tính toán khi th c hi nự ệ công vi c tíệ nh toán Ví dụ : Quy định tính tiền ph tạ trả sách trễ khi th cự hi nệ vi cệ trả sách: m iỗ ngày trả tr ph tễ ạ 1500 đ ng/ngày.ồ Từ ngày trả trễ thứ 10 trở đi sẽ ph tạ 5000 đ ng/ngàyồ và thu hồi thẻ độc gi 2 tu n.ả ầ Ví dụ: Quy định ti n lề ương khi th c hi n công vự ệ i c tính lệ ương nhân viên cho 1 công ty * Lương c a nhân viên thu c b ph n văn phòng đủ ộ ộ ậ ược tính theo công thức: Ti n_Lề ương = (S _Ngày * M c_Lố ứ ương )/22 + Ti n_Thề ưởng + Ti n_Phề ạt m i ngày lỗ àm thêm thưởng 30.000 m i ngày nghỗ ỉ vi c pệ h tạ 50.000 * Lương c a nhân viên thu c b ph n s n xu t ủ ộ ộ ậ ả ấ được tính theo công th c: Ti n_Lứ ề ương = S _S n_Phố ả ẩm * Đơn_Giá Bi t r ng ế ằ m t s n ph mộ ả ẩ ph i tr i qua 3 công đo n s n xu t:ả ả ạ ả ấ công đo n 1: 200 đ ng/ạ ồ s nả phẩm công đo n 2: 400ạ đ ng/ồ s n phả ẩm công đo n 3:ạ 300 đ ng/ồ s n phả ẩm 1.2.2 Phân loại yêu cầu S đ cây ơ ồ phân lo i ạ yêu c uầ 37 YÊU CẦU (1) Yêu c uầ ch cứ năng (2) Yêu c uầ phi ch cứ năng (3) Yêu c uầ chức năng nghi pệ vụ (4) Yêu c uầ chức năng hệ thống (5) Liên quan đến người dùng (6) Liên quan đến chuyên viên tin học (7) L uư trữ (11) Môi trường (16) Tính ti nế hóa (20) Tái sử d ngụ (8) Tra cứu (12) Mô ph ngỏ (17) Tính ti nệ dụng (21) Tính b oả trì (9) Tính toán (13) Tự động (18) Tính hiệu quả (10) K tế xuất (14) Phân quyền (19) Tính tương thích (15) Sao lưu 38 Đ ặ c t chi ti t t ng lả ế ừ o i yêu c u:ạ ầ (1) Yêu c uầ chức năng là danh sách các công vi cệ sẽ được th cự hi nệ trên máy tính cùng v iớ các thông tin mô t tả ương ng.ứ (2) Yêu c uầ phi ch cứ năng là các yêu cầu liên quan đ nế ch tấ l ngượ ph nầ m m,ề là sự ràng bu c cách th c tộ ứ h c hi n các yêu c u chự ệ ầ ức năng. (3) Yêu c uầ ch cứ năng nghi pệ vụ là các ch cứ năng c aủ ph nầ m mề tương ứng v iớ công vi cệ có th t trong tậ h gi iế ớ th c.ự (4) Yêu c uầ ch cứ năng hệ th ngố là các ch cứ năng ph nầ mềm được phát sinh thêm khi th cự hiện công việc trên máy tính thay vì trong thế giới th cự ho cặ các ch cứ năng không tương ngứ với b t ấ kỳ công vi c nào trong tệ h giế ới th c.ự (7) Ch cứ năng l uư tr :ữ Tương ứng v iớ công việc ghi chép thông tin trên sổ sách (kèm theo các quy định khi ghi chép). Ví d :ụ - Ghi nh nậ vi c cho ệ mượn sách c aủ m t ộ th vi n theo quy đ như ệ ị mượn. - Ghi nh n bài giậ ải bài tập v phân sề ố theo quy đ nh v phân ị ề s ,cách bi nố ế đ i phân sổ ố tương đương, các phép tính trên phân s ,ố (8) Ch cứ năng tra c u:ứ Tương ngứ v iớ công việc tìm kiếm, theo dõi hoạt đ ngộ và xem thông tin v ề m t đ iộ ố tượng. Ví d :ụ - Tìm tài kho n và xemả tình hình gửi rút. - Tìm sách và xem tình tr ng sáchạ - Tìm hàng hóa và xem tình tr ngạ c aủ hàng hóa (số lượng t nồ kho, lượng nh p,ậ th iờ gian nh p,).ậ - Tìm bài gi ng lý thuyả ết v phề ương trình, b t pấ hương trình và xem n i dung ộ tương ng.ứ (9) Ch cứ năng tính toán: Tương ứng v iớ công vi cệ tính toán (theo quy định và công th cứ cho trước). Ví d :ụ 39 - Tính đi mể trung bình môn h c c a h c sinh theo quy đọ ủ ọ ịnh h s cho cácệ ố đ t ki mợ ể tra. - X p th hế ứ ạng cho các đ i bóng sau ộ m t lộ ượt thi đ u theo quy đấ ịnh c a ban t ch c ủ ổ ứ gi i.ả - Tính ti nề ph t tr sáchạ ả tr theo quyễ định ph t cạ ủa th vi n.ư ệ - Tìm nghi mệ c a phủ ương trình b c hai theo phậ ương pháp gi i phả ương trình b c hai.ậ (10) Ch c năng k t xuứ ế ất : Tương ng v i công vứ ớ i c ệ l p báo cáo (theo bậ iểu m u cho tẫ rước) Ví dụ : - L p b ng ậ ả x p h ng cácế ạ đ i bóng sau ộ m t lộ ượt đấu. - L p báo cáo tậ h ng kê ố v s lề ố ượt mượn sách theo t ng th loừ ể ại trong năm. - L p báo cáo tậ h ng kê ố v t l ề ỷ ệ x p lo i h c sinh theo t ng lế ạ ọ ừ ớp, t ng khừ ối. (11) Ch c năng ứ môi trường : Định c u hình thi tấ ế bị, ngày giờ, s ngố ười làm vi c, ệ Ví d :ụ S lố ượng người làm vi c, chệ ọn lo i ạ máy in, kh gi y, niên khóa hổ ấ i n hành, ệ (12) Ch c năng ứ mô phỏng: Mô phỏng ho t đ ng c a th ạ ộ ủ ế gi i ớ th cự Ví dụ : - Mô ph ng ỏ m t tai n n ộ ạ máy bay, xe ô tô, tr n đ ng ậ ộ đất (13) Ch c năng t đ ng: T đ ng thông báo, nh c nh ng iứ ự ộ ự ộ ắ ở ườ dùng. Ví dụ : - Nh c nh th th g i gi y báo đòi sách khi có ắ ở ủ ư ử ấ đ c gi ộ ả mượn quá h n.ạ - Báo đ ng khi khách hàng thi u n quá lâu hay ộ ế ợ s tố i n ề n quá l n.ợ ớ (14) Ch c năng phân quy n : Phân quứ ề y n s d ng gi a các lo i ngề ử ụ ữ ạ ười dùng. Ví d :ụ Phân quy n cho 3 lo i ngề ạ ười s d ng trong ph n ử ụ ầ mềm qu n lý thả ư vi n:ệ + Qu n trả ị h th ng:ệ ố có quy n s d ng t t ề ử ụ ấ c các ch c năng.ả ứ + Th th : ủ ư chỉ s d ng các ch c năng liên quanử ụ ứ đ n vi cế ệ cho mượn và trả sách. + Đ c gi : ộ ả chỉ s d ng ch c năng tra ử ụ ứ c u.ứ Trong ph nầ mềm qu nả lý bán hàng, vi cệ phân chia khả năng truy c pậ dữ li uệ nh pậ xuất cho t ngừ nhóm người sử d ngụ sẽ tránh vi cệ đi uề chỉnh số liệu không thu cộ ph mạ vi qu nả lý của người sử dụng như nhân viên thu ngân chỉ đ cượ phép l pậ và đi uề chỉnh các hóa đơn bán hàng trong ca làm vi cệ c aủ mình. Ca trưởng và bộ ph nậ qu nả lý qu yầ có thể tham kh oả lượng hàng 40 t nồ kho nh ngư không được phép đi uề chỉnh lượng hàng nhập, không được tham kh oả v nố hàng xu t, k t qấ ế u kinh doanh, ả (15) Ch c năng sao ứ l u : Sao l u, pư ư h c h i d lụ ồ ữ iệu. Ví d :ụ Sao l u thông tin v các h c sinh đã ra trư ề ọ ường và chỉ ph c h i lụ ồ ại khi c n thiầ ết (16) Tính tiến hóa: đây là các yêu cầu liên quan đ nế vi cệ cho phép người dùng thay đ iổ lại cách mô tả c aủ m tộ yêu c uầ ch cứ năng (các quy định, quy t cắ tính toán), m tộ bi uể m uẫ nào đó khi đang dùng ph nầ mềm đã được chuy nể giao. Đi uề này đòi h iỏ ph iả có dự ki nế về các thay đ i ổ trên thành ph n d lầ ữ i u và x lý.ệ ử Ví dụ : - Cho phép thay đ i quyổ định v s sách cho ề ố mượn t i đa, hay ố m c ph t khi tứ ạ r tả r .ễ - Cho phép thay đ i các biên trong ổ quy định v ề x p lo i hế ạ ọc sinh. (17) Tính ti nệ d ng:ụ là các yêu c uầ liên quan đến hình th cứ giao di nệ của ph nầ mềm, thể hi nệ ở s tự ự nhiên, d s d ng, d h c, đ yễ ử ụ ễ ọ ầ đ thôngủ tin,... Ví dụ : - Giao di nệ nh p hóa đậ ơn bán hàng d ng foạ rm, dòng nh p th hi n b ng ô sáng và báoậ ể ệ ằ lỗi khi s lố i uệ nh p làmậ s lố ượng t n kho âmồ (ph nầ mềm qu n lý hàng hóa).ả (18) Tính hi uệ quả : đây là yêu c uầ liên quan đ nế th iờ gian th cự hi nệ các ch cứ năng ph nầ mềm, dung lượng l uư tr ,ữ chi phí sử d ngụ tài nguyên hệ th ngố nh sư ử d ngụ tối uư các không gian, thao tác th c ự hiện nhanh ... Ví d :ụ Th i gian tra c u sách, tra c uờ ứ ứ đ c gi không quá 10 giây.ộ ả (19) Tính tương thích: là các yêu c uầ liên quan đ nế vi cệ chuy nể đ iổ dữ liệu gi aữ ph n ầ mềm đang xét và các ph n ầ mềm khác, s nh t quán gi a các ự ấ ữ màn hình trong h th ng.ệ ố Ví dụ : - Cho phép chuyển t t ấ c các báo cáo saả ng định d ng file Excelạ - Cho phép nh p thông tin sách ậ m i t t p tin Excel hay t tớ ừ ậ ừ hi t ế bị đ c mã v ch.ọ ạ - Cho phép th c hi n cự ệ h c năng b ng gi ng nói.ứ ằ ọ (20) Tính tái s d ng: (do chuyên viên tin h c đử ụ ọ ảm trách) 41 (21) Tính bảo trì: (do chuyên viên tin h c đ mọ ả trách) là các yêu c u cho phép thay đ i ầ ổ mà không làm nh hả ưởng đ n ph nế ầ mềm 1.2.3 Các b c xác đướ ịnh yêu c uầ Quá trình th c hi n xác đự ệ ị nh yêu c uầ : g mồ 2 bước chính nh sauư Bư ớ c 1 : Kh o sát hả i n tr ng, k t qệ ạ ế u nh n đả ậ ược là các báo cáo v hi nề ệ tr ng.ạ Bư ớ c 2 : Lập danh sách các yêu c u,ầ k tế quả nh nậ được là danh sách các yêu c uầ sẽ đư c tợ h c hi n trên ự ệ máy tính. Đ ố i t ng tham gia xác đượ ị nh yêu c uầ : g mồ 2 nhóm ngư i:ờ 42  Chuyên viên tin h cọ : nh ngữ người hi uể rõ về khả năng c aủ máy tính. Họ ph iả tìm hi uể th tậ chi tiết về công vi cệ c aủ nhà chuyên môn nh mằ tránh sự hi uể nh mầ cho nh ng bữ ước phân tích sau này.  Nhà chuyên môn: nh ngữ người hi uể rõ về công vi cệ c aủ mình. Họ c nầ lắng nghe ý ki nế c aủ các chuyên viên tin h cọ để đảm b oả các yêu c uầ c aủ họ là có thể th c hi n đự ệ ược v i chi pớ hí và th i ờ gian hợp lý. Hai nhóm người này c nầ ph iả ph iố h pợ th tậ chặt chẽ để có thể xác định đ yầ đủ và chính xác các yêu c u.ầ Sau đây, chúng ta s phân tích chi tẽ i t t ng bế ừ ước quy trình th c hi n.ự ệ 1.2.3.1 Kh o sát hả i n tệ r ngạ Các chuyên viên tin h cọ s tìmẽ hi u hi n tr ng ể ệ ạ v các công ề vi c c aệ ủ các nhà chuyên môn. a. Các hình th c th c ứ ự hi n ph bi n:ệ ổ ế  Quan sát : theo dõi các ho tạ đ ngộ đang di nễ ra thở ế giới th cự có liên quan, có thể tiến hành ghi âm, ghi hình đ iố v iớ nh ngữ tình hu ngố mang tính ph cứ t p,ạ quan tr ng,ọ c nầ s chính xác cao.ự Ví dụ: - Ghi hình quá trình giao dịch c a ủ m t nhân viên ngân hàng ộ v i khách hàng t i ớ ạ m t ngânộ hàng X. - Quan sát thao tác cho mượn sách c a ủ m t ộ th th t i ủ ư ạ m t ộ th vi n Yư ệ  Ph ngỏ v n tr c tiấ ự ế p : tổ ch cứ ph ngỏ v nấ b tắ đ uầ từ c pấ lãnh đ oạ d nầ xu ngố các vị trí công vi c.ệ Có thể sử d ngụ các bảng câu h iỏ có s nẵ các câu trả lời cho đ iố tượng đư c ợ ph ng v n ỏ ấ l a ch n, ự ọ  Thu th p ậ thông tin, tài liệ u : các công th cứ tính toán, quy định; các b ngả bi u,ể mẫu gi y t cóấ ờ ít nhi u liên quan.ề Ví dụ: - M u hóa ẫ đ n và các qơ uy định l p hóaậ đ n bán hàng ơ t i ạ m t c a hàng Y.ộ ử - Phi u ế mượn sách tại th vi n c a tư ệ ủ rường đ i hạ ọc Z. b.Quy trình th c hiự ện:  Tìm hi u t ng quan v th gi iể ổ ề ế ớ th c: bao gự ồm 43 - Quy mô ho t đ ng.ạ ộ - Các ho t ạ đ ngộ mà đ n vơ ị có tham gia.  Tìm hi u hi n tr ngể ệ ạ t cổ h c (c c uứ ơ ấ t ch c)ổ ứ Người ti nế hành kh oả sát hi nệ trạng c nầ hi uể rõ cơ c uấ tổ ch cứ các bộ ph nậ c aủ thế giới th c,ự đ cặ bi tệ là 2 y uế t :ố trách nhiệm và quy nề h n.ạ Sự hi uể rõ cơ c uấ tổ ch cứ giúp xác định bộ ph nậ nào sẽ sử d ngụ ph nầ mềm để có thể lên kế ho chạ ti pế t cụ kh oả sát chi tiết h n b ph nơ ộ ậ đó. C c u t cơ ấ ổ h c bao gứ ồm: - Đ i n i.ố ộ - Đ i ngoố ại. - Các ch c danh (Ví ứ d : nhân viên nh p li u,ụ ậ ệ thủ th , nhân viên bán hàng, ).ư S d ng các đ hình đử ụ ồ ể v l iẽ ạ c c uơ ấ t ch c.ổ ứ  Tìm hi u hi n tr ng nghể ệ ạ i p vệ ụ Thường di nễ ra t iạ các vị trí công vi c.ệ V iớ bộ ph nậ được ch nọ kh oả sát chi ti t,ế ngư i tờ h cự hi nệ kh oả sát c nầ lập danh sách các công việc mà bộ ph nậ này phụ trách, sau đó tìm hi u các thể ông tin chi tiết cho t ng công vi c (thông tin ừ ệ mô t yêu c u pả ầ h nầ mềm). Vi c tìmệ hi u d a trên các ý sau:ể ự - Thông tin đầu vào. - Quá trình xử lý. - Thông tin kết xu t.ấ Sau đó ti nế hành x pế lo iạ các nghiệp vụ vào 4 lo iạ sau nhằm tránh thiếu xót khi tìm hi u các thông tin:ể - Nghi p v ệ ụ l u tr .ư ữ - Nghi p v tệ ụ ra c u.ứ - Nghi p v tính toán.ệ ụ - Nghi p v ệ ụ t ng h p, thổ ợ ống kê 1.2.3.2 Lập danh sách các yêu cầu Để có được danh sách đ yầ đủ và chính xác các, quá trình lập danh sách các yêu c uầ c u ầ theo các bước sau:  Xác định yêu c u ch c ầ ứ năng nghi pệ vụ 44  Xác định yêu c u ch c ầ ứ năng h thệ ống  Xác định yêu c u phi cầ h c năngứ a. Xác định yêu c u ch c năng nghầ ứ i p v .ệ ụ Cách ti n hành: Nhà chuyên ế môn đề xu t và chuyên viên tin ấ h c s xemọ ẽ xét lại Bước ti n hành :ế 1. Xác định b ph n (ng i dùng) s ộ ậ ườ ẽ s d ng ph nử ụ ầ mềm 2. Xác định các công vi cệ mà người dùng sẽ th cự hi nệ trên ph nầ mềm theo t ngừ lo iạ công vi c saệ u: - L u trư ữ - Tra c uứ - Tính toán - K t xuế ất L nầ lượt l pậ b ngả yêu cầu ch cứ năng nghi pệ v , b ngụ ả quy đ nh/Côngị th cứ và các biểu m uẫ – được mô tả chi ti t – nế h sau:ư *M u 1ẫ : Bảng yêu c u ch c năng nghi p vầ ứ ệ ụ B ph n (ngộ ậ ười th c hiự ện): Mã s : ...ố stt Công vi cệ Loại công vi cệ Quy định/ Công th cứ liên quan Bi uể m u liênẫ quan Ghi chú 1 2 * M u 2ẫ : Bảng Quy định/ Công th c liên quanứ stt Mã số Tên Quy định/ Công th cứ Mô t cả hi tiết Ghi chú 1 QĐ 1 45 2 QĐ 2 Các bi u ể mẫu được mô t chi ti t ngay sau b ngả ế ả quy định/Công th cứ Ví d :ụ Xét ph n ầ mềm qu n lý th vả ư i nệ Bộ phận: Th th .ủ ư Mã số: TT stt Công vi cệ Lo i côngạ vi cệ Quy định/Công th c liên quanứ Bi uể m u liênẫ quan Ghi chú 1 Cho mượn sách L u trư ữ TT_QĐ 1 TT_BM 1 2 Nh n trậ ả sách L u trư ữ Chỉ nh n l i nh ng sách đã cho ậ ạ ữ mượn TT_BM 1 3 Tính ti nề phạt Tính toán M i ngày tỗ r tả r pễ h t ạ : - 1000 đ ng/ngày : t ngàyồ ừ th nh t đ n ngày th 5ứ ấ ế ứ - 3000 đ ng/ngày : t ngàyồ ừ th 6 tứ r ở đi. 4 Tính ti n ề đền Tính toán Ti n đ n cho sách bề ề ị m t d a trên ấ ự giá thị trường tại th i đi mờ ể hi n hành.ệ 5. Tra c u sáchứ Tra c uứ Vi c tìmệ sách d a trên các thông tin :ự tên sách, tên tác gi ,ả nhà xu t b n, nấ ả ăm xu t b nấ ả 6. G i gi y báoử ấ đòi sách K t xu tế ấ Sách mượn quá h n 3 ngày s tạ ẽ ự động g i gi y báo cho đ n khi sáchử ấ ế được tr ho c đã tính xong ti n ả ặ ề đ nề sách TT_BM 2 B ng yêu cả ầu ch c năng nghi p vứ ệ ụ stt Mã số Tên Quy định/ Mô t chi tả i tế Ghi chú 46 Công th cứ 1 QĐ 1 Quy định cho mượn sách Chỉ cho mượn sách khi : - Th đ c giẻ ộ ả còn h nạ - Đ c gi ch aộ ả ư mượn h t s sáchế ố quy định - Đ c gi không cóộ ả sách mượn quá h nạ - Sách hi n không cóệ người mượn Đ c gi ộ ả mượn sách s ph i g iẽ ả ử l i ạ thẻ đ c gi ộ ả t i ạ b ph nộ ậ b n đ c, nhạ ọ ận phi u ế mượn sách (TT_BM 1, tìm ki mế mã số sách mượn và đi n cácề sách c n ầ mượn vào phi u, xong g i choế ử th th .ủ ư B ng Quy đả ịnh/ Công th c liên quanứ TT_BM 1: PHI U MẾ Ư N Ợ SÁCH S th :ố ẻ S phi u ố ế mượn: H và tên:ọ Ngày mượn: [ ] Mượn về nhà [ ] Đ c t i ọ ạ chỗ STT Mã sách Tên sách Tác giả Mã loại 1 2 Ngày ... tháng ... năm ... 47 TT_BM 2: GI Y Ấ BÁO M N ƯỢ SÁCH QUÁ HẠN Thân g i: ử Địa chỉ: Chúng tôi xin thông báo r ng, anh (chằ ị) đã mượn c a th viủ ư ện chúng tôi nh ng quy n sách sau:ữ ể STT Mã sách Tên sách Ngày mư nợ Đến hôm nay đã quá h nạ 1 2 V y thông báo anh(cậ hị) vui lòng đem sách đ n tr . Và ế ả mang theo s ti n ố ề đ ng đ tồ ể r phíả sách trễ. Bộ phận: Độc giả. Mã số: ĐG STT Công vi cệ Lo i côngạ vi cệ Quy định/ Công th cứ liên quan Bi uể m u liênẫ quan Ghi chú 1 Tìm sách Tra c uứ Vi c ệ tìm sách dựa trên các thông tin: tên sách, tên tác gi , ả nhà xu t ấ b n,ả năm xuất b nả 2 Đăng ký mượn sách L u trư ữ Đ c gi ph i cóộ ả ả th đ c gi .ẻ ộ ả TT_BM 1 M i ọ đ c ộ giả có thẻ mượn sách đ u ề có th ể đăng ký mượn sách. Tuy nhiên, hệ th ngố sẽ thông báo khi thẻ 48 sách c a ủ đ cộ gi đãả h tế hạn sử d ng.ụ Bộ phận: Quản lý độc giả. Mã s :ố QLĐG STT Công vi cệ Loại vi cệ Quy định/ Công th c liênứ quan Bi uể m u liênẫ quan Ghi chú 1 Làm thẻ đ cộ giả mới L uư trữ Ch ỉ c p ấ th ẻ đ c ộ gi ả có đ ộ tu i ổ t ừ 18 tr ở lên và có ch ngứ minh th .ư L ệ phí làm th ẻ độc giả là 5000 đ ng/th .ồ ẻ M t ộ s ố ch ng ứ minh thư ch có ỉ th ể có duy nh tấ một th đ c giẻ ộ ả QLDGBM1 QLDGBM2 Đ c ộ gi ả có yêu c uầ làm thẻ mượn sách s đẽ ược nh nậ phi u ế đăng ký đ ể đi nề thông tin vào (QLDG_BM 1), sau đó bộ ph n qu n ậ ả lý đ c ộ gi ả ti nế hành cấp 2 Gia hạ n thẻ đ cộ giả L uư trữ Gia h nạ thẻ theo yêu cầu của đ cộ giả và th iờ gian quá h n khôngạ được quá 3 tháng. Sau th iờ gian 3 tháng, nh ngữ th h t h n s ẻ ế ạ ẽ bị h y.ủ 3 Huỷ th đ cẻ ộ giả L uư trữ H y b các th đ c giủ ỏ ẻ ộ ả đã quá h n đăng ký 3ạ tháng. 49 QLDG_BM 1: PHI U Ế ĐĂNG KÝ LÀM TH MẺ Ư N Ợ SÁCH H và tên: ọ Năm sinh: Địa chỉ th ng trú: ườ Ngh nghi p: ề ệ Ngày đăng ký: QLDG_BM 2: TH Ẻ Đ CỘ GIẢ H và tên: ọ Trường: L p: ớ Địa chỉ: Ngày ___ tháng ___ năm __ Bộ phận: Quản lý sách. Mã số: QLS STT Công vi cệ Lo iạ Quy định/ Công th c liên quanứ Bi uể m u liênẫ quan Ghi chú 1. Nh nậ sách m i vàoớ kho sách. L uư trữ QLSBM 1 Khi có sách m iớ nh pậ v ,ề bộ phận qu nả lý sách có trách nhi mệ rà xét xem s ố sách đó đã có hay ch a, n u ư ế ch a ư thì l p ậ thẻ qu n ả lý sách và định mã số sách m i. ớ N u ế có r iồ thì g iọ lại thẻ cũ để c pậ nh tậ b sung sổ ố l ng.ượ 2. Thanh lý sách cũ L uư trữ Các sách h ,ư không đ c đọ ược 3. L p báoậ cáo các sách c nầ Kết xuất QLS_BM 2 50 thanh lý 4. L p báoậ cáo sách mượn Kết xuất QLS_BM 3 QLS_BM 1: TH QUẺ ẢN LÝ SÁCH Tên sách: T p: ậ S trang: ố S lố ượng: Năm xu t b n: ấ ả Mã ngôn ng : ữ Ngôn ng : ữ Mã nhà xu tấ b n: ả Nhà xu t bấ ản: Mã phân loại: Phân lo i: ạ Mã tác gi : ___________________Tác gả i : ả Mã vị trí: Khu: ___ K : ___ệ Ngăn: ___ QLS_BM 2: DANH SÁCH CÁC SÁCH CẦN THANH LÝ stt Mã sách Tên sách Tác giả Năm s nả xu tấ Ngày nh p khoậ Tình tr ngạ 1 2 Ngày l p báo cáo:ậ Người l p:ậ 51 QLS_BM 3: BÁO CÁO THỐNG KÊ SÁCH MƯỢN T ngày ừ Đến ngày stt Mã sách Tên sách Tác giả S lố ượt mượn 1. 2. Ngày l p báo cáo:ậ Người l p:ậ b. Xác định yêu c u ch c năng h th ng và yêu c u ch t ầ ứ ệ ố ầ ấ lượng * Cách ti nế hành: Chuyên viên tin h c và nhà chuyên môn cùngọ đ xu t và cùng xemề ấ xét l i các yêu cạ ầu. * Bước ti nế hành: Bư ớ c 1 : Xem xét các yêu c uầ ch cứ năng hệ th ngố cơ b n,ả thông d ngụ (yêu c uầ phát sinh thêm do th cự hi nệ các công việc trên máy tính): phân quy n,ề sao l u,ư ph cụ hồi, định cấu hình h th ng, ệ ố Bư ớ c 2 : Xem xét các yêu c uầ ch cứ năng hệ th ngố chuyên bi tệ (yêu cầu về các công vi c ệ m i, chớ ỉ có thể ti n hành khi thế ực hi n trên ệ máy tính. Bư ớ c 3 : Xem xét các yêu c u v chầ ề ất lượng theo t ng lo i tiừ ạ êu chu n sau:ẩ - Ti n hóaế - Ti n dệ ụng - Hi u quệ ả - Tương thích Sau đó l p ậ b ng yêu c uả ầ tương ng theo ứ m u sau:ẫ STT N i dungộ Mô t chi tả i tế Ghi chú 1. 52 M u 3: B ng yêu c u cẫ ả ầ h c năng h th ng.ứ ệ ố STT N i dungộ Tiêu chu nẩ Mô tả chi ti tế Ghi chú 1. 2. M u 4: B ng yêu c u vẫ ả ầ ề ch t lấ ượng. Ví d :ụ Xét ph nầ mềm qu n lý th vi n (gả ư ệ i s ph nả ử ầ mềm được xây d ng nhự ằm ph cụ vụ cho 4 b ph n là: độ ậ ộc gi , th th , ban giámả ủ ư đ c và qu n tố ả r hị ệ th ng ). B ng yêu cố ả ầu ch c năng h th ng:ứ ệ ố stt Nội dung Mô t chi tả i tế Ghi chú 1 Phân quy nề sử d ngụ - Người qu n ả tr :ị được phép s d ng t t ử ụ ấ c các ch cả ứ năng - Đ c ộ gi : ả ch ỉ tra c uứ sách và đăng ký mượn sách - Ban giám đ c: cố h ỉ tra c u ứ sách và l p ậ các báo cáo th ng kêố - Th ủ th : ư t t ấ cả các ch c ứ năng, ngo i ạ tr ừ ch cứ năng phân quy n,ề sao l uư và ph cụ h iồ d ữ li uệ 53 B ng yêu cả ầu v ch tề ấ lượng h thệ ống: stt N i dungộ Tiêu chu nẩ Mô t chi tả i tế Ghi chú 1 Cho phép thay đ i quyổ định tính tiền phạt Ti n hóaế Người dùng ph n ầ mềm có th thay để ổi đ n giá phơ ạt và biên các mức ph t.ạ 2 Hình th c tra c u thứ ứ ật ti n d ng,ệ ụ t nhiên,ự tr c quan.ự D s d ng cho cễ ử ụ ả nh ng ngữ ười không chuyên tin h c.ọ Ti nệ d ngụ H tỗ r kh ợ ả năng tra c uứ g n đúng, tra cầ ứu theo nội dung,... 3 Cho phép nh p sách ậ mới t t p tin Excel có ừ ậ s n.ẵ Các màn hình có s nhự ất quán chung Tương thích Có th nh pể ậ tr c ti p danhự ế sách các sách m i có trớ ước trên t p tin Excel v iậ ớ cấu trúc h pợ lý. 4 T c đ th c hi nố ộ ự ệ việc cho mượn và tra c u sách nhanhứ Hi uệ quả T i đa 30 giây cho ố m iỗ phi uế mượn sách. H tỗ r tợ hi tế bị đ c ọ mã v ch.ạ T i đa 10 giây ph i cóố ả kết qu tra ả c u.ứ 1.2.4 Khảo sát một số phần mềm tiêu bi u minh ể họa cho giai đoạn xác đ nh yị êu cầu. A. Phần m m ề h trỗ ợ giải bài tập phân số. Bộ phận: Giáo viên. Mã số: GV ST T Công vi cệ Lo i côngạ vi cệ Quy định/Công th c liên quanứ Bi uể m u liênẫ quan Ghi chú 54 1 So n tómạ t t lýắ thuyết và ví d ụ minh h aọ L u trư ữ 2 So n đ bài t pạ ề ậ L u trư ữ GV_QĐ 2 GV_BM 2 3 So n đáp ánạ L u trư ữ GV_QĐ 3 GV_BM 3 4 Chấm điểm Tính toán GV_QĐ 4 stt Mã số Tên Quy định/ Công th cứ Mô t chiả ti tế Ghi chú 1. GV_QĐ2 Quy định so nạ đ bài ề t pậ • Đ bài đề ược gi i h nớ ạ ch là bỉ i uể thức các phép toán trên phân s v i tố ớ ối đa 4 phân s thành ph n.ố ầ • Có 3 m c ứ bài tập: 1. Chỉ gồm 2 phân s và 1 phép toán.ố 2. Chỉ gồm 3 phân s và 2 phép toán.ố 3. H n h p nhi u phân s ( ỗ ợ ề ố t i đa 4ố phân s ) v i nhiố ớ ều phép toán • Có 4 lo i pạ hép toán : + - * / 2. GV_QĐ 3 Quy định so nạ đáp án bài tập (cũng là quy định so nạ bài gi i cả ủa h c sinh)ọ M i bỗ ước gi i chả ỉ được phép rút g nọ bi uể th c b ng các tứ ằ h c hi n phép tính trên 2 phânự ệ s .ố Th t th c hi n phép tính theo quy t c đ uứ ự ự ệ ắ ộ ư tiên nh sauư : u tiên 1 : nhân chia cao h n công tƯ ơ r .ừ u tiên 2 : Ư bài toán u tiên bên pư hải 55 Riêng đ i ố v i bài ớ gi iả c a h c sinh cho phépủ ọ b qua các ỏ bước trung gian. 3. GV_QĐ 4 Quy định ch mấ điểm • Có đáp án cu i cùng đúngố  Th c hi n h n ho c b ng 50% cácự ệ ơ ặ ằ bước so v iớ đáp án : o Đã rút g n : 10ọ o Ch a rút g n : 8ư ọ  Th c hi n dự ệ ưới 50% các bước so v i đápớ án : o Đã rút g n : 9ọ o Ch a rút g n : 7ư ọ • Có đáp án cu i cùng saiố  Th c hi n h n ho c b ng 70%ự ệ ơ ặ ằ các bước so v i đápớ án : 5  Th c hi n ự ệ t 50% đ n dừ ế ư iớ 70% các bước so v i ớ đáp án : 3  Th c hi n ự ệ t 50% các ừ bước so v i đápớ án : 0 56 GV_BM 2: Đ bài t p ề ậ c a giáo viên.ủ Th c hi n các phép tính trên bi u tự ệ ể h c các phân s :ứ ố [phép toán] [phép toán] ...ố ố GV_BM 3: Đáp án c a giáo viên ( bài gủ iải c a ủ h c sinh )ọ Đ bài: ề Các bước bi n đ i tế ổ ương đương : Bước 1: ... Bước 2: ... Bước 3: ... Đáp s : ...ố Bộ phận: Học sinh. Mã số: HS stt Công vi cệ Lo i côngạ vi cệ Quy định liên quan Bi uể m u liênẫ quan Ghi chú 1 Ch n bài tọ ập Tra c uứ GV_QĐ 2 GV_BM 2 2 Gi i bài tả ập L u trư ữ GV_QĐ 3 GV_BM 3 3 Xem tóm tắt lý thuyết K t xuế ất 4 Xem đánh giá và đáp án K t xu tế ấ GV_QĐ 3 GV_QĐ 4 GV_BM 3 57 2. Mô hình hóa yêu cầu h thệ ngố Các mô tả yêu c uầ trong giai đo nạ xác định yêu c uầ chỉ mô tả chủ y uế các thông tin liên quan đ nế vi cệ th cự hi nệ các nghi pệ vụ trong thế gi iớ th cự ch aư và ch aư thể hi nệ rõ nét việc th cự hi nệ các nghi pệ vụ này trên máy tính. Mô tả thông qua các văn b nả dễ gây ra nh mầ lẫn và không trực quan. Ví d :ụ Xét yêu c uầ l pậ hóa đ nơ bán sách, yêu c uầ này chỉ mô tả bi uể m uẫ về hóa đơn, qui định l pậ hóa đ n và ch a th hi nơ ư ể ệ cách th c ứ lập hóa đ n trên ơ máy tính M cụ tiêu của mô hình hóa: Cho phép ta hi uể 1 cách chi tiết h nơ về ngữ c nhả v nấ đề cần gi i quyả ết m t cách tr c quan và b nộ ự ả ch t nhấ ất (thông tin cốt lõi) yêu cầu. K tế qu :ả cho m tộ mô hình mô tả l iạ toàn bộ hoạt đ ngộ c aủ hệ th ngố th c.ự M iỗ phương pháp phân tích đ a ra ư m t ki u ộ ể s ơ đ hay ồ mô hình đ xây d ng h th ng.ể ự ệ ố Kỹ thu tậ phân tích là cách ti nế hành sao cho thu th pậ đ cượ nh ngữ yêu cầu c aủ ng iườ s d ngử ụ từ đó trình bày l iạ nhu c uầ đó trên mô hình, chi ti tế hóa sơ đồ hay mô hình b ngằ đ cặ t ch cả ứ năng, đ cặ tả dữ liệu thông qua phân tích gốc nhìn, phân tích đ iố t ng,ượ phân tích dữ li u thuệ th pậ đ cượ ở các b cướ trên. Tr cướ khi đi vào tìm hi uể các phương pháp bi uể di nễ b ngằ mô hình, chúng ta hãy xem qua m t s nguyên lý phân tích.ộ ố 2.1 Các nguyên lý mô hình hóa a. Mô hình hóa mi n thông tin (nguyên lý phân tích 1)ề Ph i hi u và bi u di n ả ể ể ễ được mi n thông tinề  Định danh d lữ i u (đệ ối tượng, th c th )ự ể  Định nghĩa các thu cộ tính  Thi t ế l p các ậ m iố quan h gi a các d lệ ữ ữ i uệ b. Mô hình hóa ch c năng (nguyên lý phân tích 2)ứ B n ch t cả ấ ủa ph n ầ mềm là bi n đế ổi thông tin  Định danh các ch c năng ứ (bi n đế ối thông tin)  Xác định cách th c d lứ ữ i u (thông tin) di chuy nệ ể trong h thệ ống  Xác định các tác nh nậ tạo d lữ i u và tác nhân tiêu tệ h d lụ ữ i uệ c. Mô hình hóa hành vi (nguyên lý phân tích 3) Ph nầ mềm (h th ng) có tr ngệ ố ạ thái (hành vi)  Xác định các tr ngạ thái h th ngệ ố ví d : giao di n đ h a, section trongụ ệ ồ ọ ng d ng webứ ụ 58  Xác định các d lữ i u làm thay đ i hành vi ệ ổ hệ th ng ví d : bàn phíố ụ m, chu t, các c ng thông tinộ ổ d. Phân hoạch các mô hình (Nguyên lý phân tích 4) Làm mịn, phân ho ch và bi u dạ ể i n các ễ mô hình các ở m c khác nhauứ  Làm mịn các mô hình d lữ i uệ  T o cây (ạ mô hình) phân rã ch c năứ ng  Bi u di n hành vi các ễ ễ ở m c chi ti tứ ế khác nhau e. Tìm hi uể v n đ b nấ ề ả ch t (Nguyên lý phân tích 5)ấ  Nhìn nh n b n ch t cậ ả ấ ủa yêu c uầ  Không quan tâm đ n cách th c cài ế ứ đặt 2.3 S ơ đ phân rã cồ hức năng Sơ đồ phân rã ch cứ năng - Function Decomposition Diagram - FDD: Nêu lên các ch cứ năng thông qua vi c ệ mô t các tính ch t c a đ u vào và đ u raả ấ ủ ầ ầ  Xác định ph mạ vi c a h th ngủ ệ ố  Phân ho ch ch c năngạ ứ  T o n n t ng cho thiạ ề ả ết k ki n trúc ế ế h th ngệ ố Ví d : S đ phân rã chụ ơ ồ ức năng 2.3 Mô hình bản mẫu (protoype) Khi xác định yêu c u,ầ nhà phát triển ph nầ mềm d aự trên các ý tưởng hay yêu c uầ c a kháchủ hàng đ aư ra m tộ b nả thiết kế sơ bộ m tộ số màn hình giao di nệ và ti nế hành mô phỏng hay giả l pậ sơ bộ m tộ số ch cứ năng, Có thể xem đây bước cài đ tặ b nả m uẫ đ uầ tiên và chuy n choể người sử d ng.ụ B nả m uẫ này chỉ nh m đằ ể mô tả cách th cứ ph nầ mềm ho tạ động cũng nh cáchư người sử d ngụ t ngươ tác v iớ hệ th ng.ố Nh nằ giúp cho người dùng hình dung được di n ệ m oạ ban đầu c aủ yêu c uầ mà họ đ tặ ra. Mô hình này cũng c nầ có sự hỗ trợ gi aữ kỹ sư phân tích và kỹ s thư i t k pế ế h n ầ mềm phối h p th cợ ự hi n.ệ 59 Người sử d ngụ khi xem xét b nả m uẫ sẽ đ aư ra ý ki nế đóng góp và ph nả h iồ thông tin đ ngồ ý hay không đ ngồ ý phương án thiết kế c aủ b nả m uẫ đã đ aư ra. N uế người sử dụng đồng ý v iớ b nả m uẫ đã đ aư thì người phát tri nể sẽ ti nế hành cài đặt th cự s .ự Ngược l iạ cả hai phải quay l iạ giai đo nạ xác đ nhị yêu c u.ầ Công vi cệ này được l pặ l iạ liên t cụ cho đ nế khi người s d ng đ ng ý v i các ử ụ ồ ớ b nả m u do nhà phát trẫ i n để ưa ra. 2.4 S ơ đ luồ ồng d li uữ ệ S đ lu ng d lơ ồ ồ ữ i u - Data flow diagramệ – DFD Đây là mô hình cho phép xem toàn bộ sơ đồ lu ngồ dữ li uệ bên trong hệ th ng.ố Cách th cứ dữ li uệ được xử lý bên trong hệ th ng.Cóố nhi uề m cứ chi tiết khác nhau. Có nhi uề biến thể mở r ngộ khác nhau. Xem chi ti t ế ở chương kế ti pế thi tế kế ph nầ mềm. Ngoài ra còn có mô hình th cự thể k tế h pợ được trình bày trong h uầ h tế các cu nố sách Cơ sở dữ li uệ ho cặ Thi tế k CSDL.ế 2.5 Mô hình hướng đối t ngượ Phương pháp phân tích hướng đ iố tượng hình thành gi aữ th pậ niên 80 d aự trên ý tưởng l p ậ trình hướng đ i ố t ng.ượ Phương pháp này đã phát tri n,ể hoàn thi nệ và hi nệ nay r t ấ ph d ng. Nó dổ ụ ựa trên m t s khái ni mộ ố ệ c b n sau:ơ ả Ð i tố ượng (Object): gồm d lữ i u và th t cệ ủ ụ tác đ ng lên d lộ ữ i u này.ệ Ðóng gói (Encapsulation): Không cho phép tác đ ngộ tr cự tiếp lên dữ li uệ c aủ đ iố tượng mà ph i thông qua các ả phương pháp trung gian. pháp. L pớ (Class): T pậ h pợ các đ iố tượng có chung m tộ c uấ trúc dữ li uệ và cùng m tộ phư ngơ K th a (Heritage): tính cế ừ h t k th aấ ế ừ là đ c tính cho phép đặ ịnh nghĩa m tộ l p ớ m i tớ ừ các l pớ đã có b ngằ cách thêm vào đó nh ngữ dữ li uệ m i,ớ các phương pháp m iớ có thể kế th a nh ng đ c tính c a l p ừ ữ ặ ủ ớ cũ. a. Mô hình n m b t yắ ắ ều c u hầ ướng đ i tố ượng b ng UMLằ M cụ đích của ho tạ đ ngộ n mắ b tắ yêu c uầ là xây d ngự mô hình hệ th ngố mà sẽ được xây d ng b ng cách s d ng các use-case. Các đi mự ằ ử ụ ể b t đ u cho ho t đ ng này khá đa dắ ầ ạ ộ ạng: • T ừ mô hình nghi p v (ệ ụ business model) cho các ng d ng nghi p v .ứ ụ ệ ụ • T ừ mô hình lĩnh v c (dự omain model) cho các ng d ng nhúng (eứ ụ mbeded) • T ừ đ c ặ t ả yêu c u ầ c a ủ h ệ th ng ố nhúng được t o ạ b i ở nhóm khác và ho cặ dùng các phương pháp đ c t khác (thí d hặ ả ụ ướng c u trúc.ấ 60 • T đi mừ ể nào đó n mằ giữa các đi mể xu t phát trêấ n. Mô hình use-case: • Actor: người/ hệ th ng ngoài/ thiố ết b ngoài tị ương tác với h th ngệ ố • Use-case: các ch c năng có nghứ ĩa c aủ h th ng cung c p cho các actệ ố ấ or - lu ng các sồ ự ki n (flow of events)ệ - các yêu c uầ đ c biặ ệt c aủ use-case • Đặc t ki nả ế trúc • Các thiết kế m u giao dẫ i n ngệ ười dùng b. Mô hình phân tích hướng đ i tố ượng v i Uớ ML M cụ đích c aủ ho tạ đ ngộ phân tích yêu c uầ là xây d ngự mô hình phân tích với các đ cặ đi mể sau: • Dùng ngôn ng c a nhà phát tri n ữ ủ ể đ ể miêu tả mô hình • Th hi n gể ệ ốc nhìn t bên trong hừ ệ th ngố • Được c u trúc t các ấ ừ lớp phân tích và các package phân tích • Được dùng ch y u cho các nhà phát trủ ế i n đ hiể ể ểu cách th cứ t o hình d ng h th ngạ ạ ệ ố • Lo i ạ tr ừ m i chi ti t d th a, không nh t quánọ ế ư ừ ấ • Phát h a hiọ ện th c các ch t năng bên trong ự ấ hệ thống • Định nghĩa các d n ẫ xuất use-case, m i ỗ d n ẫ xu t ấ use-case c p ấ phân tích miêu t ả sự phân tích 1 use-case Mô hình phân tích= hệ th ng phân tíchố • Các class phân tích: l p biên, ớ l pớ th c th , ự ể l p đớ i u khi nề ể • Các d nẫ xu tấ use-case cấp phân tích: các lược đồ l pớ phân tích, các lược đồ tư ng ơ tác, lu ngồ s ki n, các ự ệ yêu c u đ c ầ ặ bi t cệ ủa use-case • Các package phân tích • Đặc t ki nả ế trúc L uư ý: Các mô hình hướng đ iố tượng cho t ngừ giai đo nạ phát tri nể ph nầ mềm được trình bày ở giáo trình khác. Xem chi ti tế cụ thể ở giáo trình môn Phân tích thi tế kế hướng đ iố tượng với UML. 2. 6 Ví dụ minh họa t yêu cừ ầu sang mô hình hóa Ví d 1: Xét ph n ụ ầ mềm qu n lý thả ư vi n v i 4 yêu c uệ ớ ầ - L p th đ cậ ẻ ộ giả 61 - Nh n sáchậ - Cho mượn sách - Tr sáchả Giai đo n 2 : Mô hình hóa yêu ạ c uầ  S đ lu ng d lơ ồ ồ ữ i u cho công vi cệ ệ lập th đ c gẻ ộ iả Qu n lý đ c giả ộ ả Máy in D5 D1 L pậ th đ cẻ ộ giả D4 D1: Thông tin v th đề ẻ ộc gi c n nả ầ h pậ D4: Thông tin v th đề ẻ ộc gi c nả ầ l u tr trên bư ữ ộ nh phớ ụ D5: Thông tin trên th ẻ đ c gi (trong tộ ả h giế ới thực) X lý th đ c gi : Kử ẻ ộ ả i m tra tính h pể ợ l c aệ ủ th tẻ rước ghi nhận và in  S đ lu ng d lơ ồ ồ ữ i u cho công vi c nệ ệ h n sáchậ Qu n lý sáchả D1 Nh nậ sách D4 D1: Thông tin v th sáchề ẻ c n nh pầ ậ D4: Thông tin v sách ề c n l u tr trên b nh ầ ư ữ ộ ớ phụ X lý nh p sách: Kử ậ i mể tra tính h p ớ l c a sách tệ ủ rước khi ghi nh n trên bậ ộ nh phớ ụ  S đ lu ng d lơ ồ ồ ữ i u cho công vi cệ ệ cho mượn sách 62 Th thủ ư D1 Cho mượn sách D3 D4 D1: Thông tin v đ c gề ộ i và sách ả mu nố mượn D3: Thông tin được s d ng cho vử ụ i c ki mệ ể tra qui định mượn sách D4: Thông tin v viề ệc mượn sách X lý cho mử ượn sách: Ki mể tra tính h p l c a ợ ệ ủ vi c ệ mượn sách ghi nh n trên b nhậ ộ ớ phụ  S đ lu ng d lơ ồ ồ ữ i u cho công vi cệ ệ tr sáchả Th thủ ư D1 Tr sáchả D3 D4 D1: Thông tin v đ c gề ộ i và sách tả rả D3: Thông tin s d ng cho vử ụ i c ệ kiểm tra qui đ nh tr sáchị ả D4: Thông tin v viề ệc tr sáchả X lý tử r sách: Ki mả ể tra tính h pợ lệ c a vi củ ệ tr sách ghi nả hận trên b nộ h .ớ 63 Chương 3: THIẾT K Ế PH N Ầ M MỀ 1. Tổng quan v thi t ề ế kế Trong thi tế k ,ế chúng ta định hình hệ th ngố và tìm d ngạ th cứ c aủ nó (kể cả ki nế trúc) mà đáp ngứ được m iọ yêu c u,ầ cả yêu c uầ phi ch cứ năng và các ràng bu cộ khác - được đ tặ ra cho hệ thống đó.

Các file đính kèm theo tài liệu này:

  • pdftailieu.pdf
Tài liệu liên quan