Bài giảng nhập môn công nghệ phần mềm chương 3

18 464 0
Bài giảng nhập môn công nghệ phần mềm chương 3

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

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

Thông tin tài liệu

8/26/2013 PH N I: GI I THI U CHUNG V CÔNG NGH PH N M M PH N I: GI I THI U CHUNG V CÔNG NGH PH N M M I B n ch t ph n m m nh ngh a chung ộ ph n m m Ki n trúc ph n m m Các khái ni m c tính chung c a ph n m m Th ph n m m t t ? I B n ch t ph n m m II Nh ng v n đ phát tri n ph n m m III Quy trình phát tri n ph n m m Các ng d ng ph n m m II Nh ng v n đ phát tri n ph n m m III Quy trình phát tri n ph n m m 1 nh ngh a chung v ph n m m • Ph n m m (Software - SW) nh m t khái ni m đ i ngh a v i ph n c ng (Hardware - HW), nhiên, khái ni m t ng đ i • T x a, SW nh th đ c cho không ho c bán kèm theo máy (HW) • D n d n, giá thành SW ngày cao cao h n HW Cức đ c tính c a SW HW Hardware • V t “c ng” • Kim lo i • V t ch t • H u hình • S n xu t công nghi p b i máy móc • nh l ng • H ng hóc, hao mòn Software • V t “m m” • K thu t s d ng • Tr u t ng • Vô hình • S n xu t b i ng i • nh tính • Không hao mòn nh ngh a SW đ i ngh a v i HW • IEEE: Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system • Ph n m m – Các l nh (ch ng trình máy tính) đ c th c hi n cung c p nh ng ch c n ng k t qu mong mu n – Các c u trúc d li u làm cho ch ng trình thao tác thông tin thích h p – Các t li u mô t thao tác cách s d ng ch ng trình • Vai trò SW ngày th hi n tr i • Mứy tính chi c h p SW • Ngày nay, SW quy t đ nh ch t l ng m t h th ng mứy tính (HTMT), ch đ c t lõi, trung tâm c a HTMT • H th ng mứy tính g m HW SW 8/26/2013 nh ngh a SW theo ngh a r ng • Trong m t h th ng máy tính, n u tr b thi t b lo i ph ki n ph n l i ph n m m (SW) • Ngh a h p: SW d ch v ch ng trình đ t ng kh n ng x lý c a ph n c ng c a máy tính (nh h u hành - OS) • Ngh a r ng: SW t t c k thu t ng d ng đ th c hi n nh ng d ch v ch c n ng cho m c đích b ng ph n c ng • Không ch SW c b n SW ng d ng • Ph i g m c kh n ng, kinh nghi m th c ti n k n ng c a k s (ng i ch ph n m m): K n ng c a k s ph m m m (Know-how of Software Engineer) • Là t t c k thu t làm cho s d ng ph n c ng máy tính đ t hi u qu cao Ph n m m ? Nhóm K thu t, Ph ng pháp lu n Nhóm ch ng trình Nhóm t li u Kinh nghi m k s , k n ng Ph n m m ? • Các khái ni m trình t c th hóa m t h th ng • Các ph ng pháp ti p c n gi i quy t v n đ • Các trình t thi t k phát tri n đ c chu n hóa • Các ph ng pháp đ c t yêu c u, thi t k h th ng, thi t k ch ng trình, ki m th , toàn b quy trình qu n lý phát tri n ph n m m Nhóm K thu t, Ph ng pháp lu n Nhóm ch ng trình Nhóm t li u Kinh nghi m k s , k n ng • Là ph n giao di n v i ph n c ng, t o thành t nhóm l nh ch th cho máy tính bi t trình t thao tác x lý d li u • Ph n m m c b n: v i ch c n ng cung c p môi tr ng thao tác d dàng cho ng i s d ng nh m t ng hi u n ng x lý c a ph n c ng (ví d nh OS ch ng trình h th ng) • Ph n m m ng d ng: dùng đ x lý nghi p v thích h p (qu n lý, k toán, ), ph n m m đóng gói, ph n m m c a ng i dùng, Ph n m m ? Nhóm K thu t, Ph ng pháp lu n Nhóm ch ng trình Nhóm t li u Kinh nghi m k s , k n ng 10 Ph n m m ? • Nh ng t li u h u ích, có giá tr cao r t c n thi t đ phát tri n, v n hành b o trì ph n m m • ch ph n m m v i đ tin c y cao c n t o t li u ch t l ng cao: đ c t yêu c u, mô t thi t k t ng lo i, u ki n ki m th , th t c v n hành, h ng d n thao tác 11 Nhóm K thu t, Ph ng pháp lu n Nhóm ch ng trình Nhóm t li u Kinh nghi m k s , k n ng • Ph n m m ph thu c nhi u vào ý t ng (idea) k n ng (know-how) c a ng i/nhóm tức gi • Kh n ng h th ng hóa tr u t ng • Kh n ng l p trình • K n ng công ngh • Kinh nghi m làm vi c • T m bao quứt • 12 8/26/2013 Ph n m m Nhìn t ph Ki n trúc ph n m m • Phân c p H th ng Ch ng trình file t m th i file (master files) Ch n v công vi c H th ng  nv b c công vi c ng trình  Module Tham s Module Tham s Ch ng trình Ph n m m Nhìn t ph Ch ng trình  Module Các file t m th i Tham s Ch • H th ng  • ng trình Module Tham s Ch ng trình • Module chung (Common Module) –  • Program Ch c n ng E ChModule c n ng F ChModule c n ng G Thi t k ch c n ng – ChSubroutine c n ng H ki n trúc ch c n ng mà ph n m m có u ki n phân c p ch c n ng – Theo chi u đ ng: sâu ph c t p Theo chi u ngang: r ng nhi u ch c n ng, qui mô l n T ph ng pháp lu n ph n m m sang k thu t ph n m m • Các file Master files Subsystem Ch c n ng C  ng di n th t c H th ng Subsystem Ch c n ng B C u trúc chi u ngang (Horizontal structure) H th ng C u trúc ph n m m: – Program Ch c n ng D n v thành viên (Member unit) Module chung (Common module) • System Ch c n ng A C u trúc chi u đ ng (Vertical structure) H th ng ng di n c u trúc Quan h th t gi a thành ph n c u thành ph n m m Thu t toán v i nh ng phép l p, r nhánh, u n lu ng x lý (quay lui hay b qua) C u trúc lôgic bi u th t ng ch c n ng có ph n m m trình t th c hi n chúng Thi t k c u trúc tr c r i sang ch c n ng • Khi ch tác ph n m m c n nhi u ph ng pháp: – Ph ng pháp lu n (Methodology): nh ng chu n m c c b n đ ch t o ph n m m v i ch tiêu đ nh tính – Các ph ng pháp k thu t (Techniques): nh ng trình t c th đ ch t o ph n m m cách ti p c n khoa h c mang tính đ nh l ng 15 T ph ng pháp lu n ph n m m sang k thu t ph n m m Môđun ng hóa Che gi u t.tin Khứi ni m ph n m m • Là kh n ng phân chia ph n m m thành module ng v i ch c n ng, đ ng th i cho phép qu n lý t ng th : khái ni m phân chia tr n (partion and merge) • Hai ph ng pháp phân chia module theo chi u Phân tích c u trúc Thi t k c u trúc L p trình c u trúc D H li u tr u t ng đ i t – Theo chi u sâu – Theo chi u r ng ng • Quan h gi a môđun ? qua đ i s (arguments) ng 17 C u trúc r ng chi u ngang SW Phân chia chi u r ng Tính đ c l p d n Phân chia chi u sâu Tr u t 3.1 Tính module (Modularity) C u trúc sâu chi u đ ng Tinh ch nh t ng b c 16 i u n ph c t p d n 18 8/26/2013 3.2 Tinh ch nh t ng b (Step refinement) • Cách ti p c n t Th gi i bên c Ví d : Trình t gi i quy t v n đ t m c thi t k ch ng trình đ n m c l p trình xu ng (top-down approach) Tr u t ng hóa m c cao: Th gi i bên ngoài, tr ng thái ch a rõ ràng Chi ti t hóa c t yêu c u d n t ng b c Ngôn ng ch ng trình Tr u t ng hóa m c trung gian: Xức đ nh yêu c u đ c t nh ng đ nh ngh a yêu c u • Bài toán: t m t nhóm N s khác t ng d n, tìm s có giá tr b ng K (nh p t vào) in v trí c a • Gi i t ng b c t khái ni m đ n chi ti t hóa t ng câu l nh b i ngôn ng l p trình • Ch n gi i thu t tìm ki m nh phân (pp nh phân) Tr u t ng hóa m c th p: T ng l nh c a ch ng trình đ c vi t b i ngôn ng th t c 19 C th hóa b C th hóa th t c qua cức ch c n ng Bài toán cho 20 Tìm ki m giá tr (pp nh phân) Nh p giá tr K c ti p theo Xác l p ph m vi m ng s L p l i x lý tìm ki m giá tr K ph m vi tìm ki m Nh n giá tr nhóm N s L p l i tìm ki m K ph m vi tìmki m Tìm ki m giá tr (pp nh phân) Tìm v trí gi a phân đôi m ng So sánh K v i giá tr gi a In v trí (n u có) t l i ph m vi tìm ki m 21 M c mô t ch Câu h i ng trình (b ng PDL) u cK Nh n giá tr cho m ng chi u A(I), (I =1, 2, ,.N) MIN = MAX = N DO WHILE (Có giá tr b ng K không, cho đ n MIN > MAX) L y MID = (MIN + MAX) / IF A(MID) > K THEN MAX = MID - ELSE IF A(MID) < K THEN MIN = MID + ELSE In giá tr MID ENDIF ENDIF ENDDO K tThềc 22 B t M1 Làm th đ đ nh ngh a c u trúc c a m t h th ng đ c thi t k d a module? M2 … Mn-1 đ c tính c n có c a c u trúc này? Mn H th ng 23 8/26/2013 3.3 Che gi u thông tin (Information hiding) [Parnas72] 3.3 Che gi u thông tin (Information hiding) [Parnas72] • Các module nên đ c đ c tr ng b i nh ng quy t đ nh thi t k (design decision) cho m i môđun đ u bí m t đ i v i module khác • R t h u ích cho ki m th b o trì ph n m m C đ nh t t c quy t đ nh thi t k (design decision) có kh n ng b thay đ i Gán m i quy t đ nh thi t k vào m t module m i; lúc quy t đ nh thi t k s ph n bí m t c a module (module secret) Thi t k giao di n c a module (module interface), giao di n s không thay đ i ph n bí m t c a module thay đ i quy t đ nh thi t k design decision M quy t đ nh thi t k design decision M2 … design decisionn-1 M quy t đ nh thi t k quy t đ nh thi t k design decision n M H th ng 25 3.3 Che gi u thông tin (Information hiding) [Parnas72] Ng i dùng Các tài nguyên c n xu t ra: ki u d li u, bi n, thu c tính, hàm, s ki n, ngo i l , v.v interface Bicycle { void changeCadence (int newValue); void changeGear(int newValue); void speedUp(int increment); void applyBrakes(int decrement); } Giao di n Bí m t Module 3.4 Tr u t ng hóa (Abstraction) Cài đ t tài nguyên c n xu t class Bike implements Bicycle { } class Motor-Bike implements Bicycle { } • Cho phép t p trung xem xét v n đ m c t ng quát, g t nh ng chi ti t m c th p liên quan • m c tr u t ng – Tr u t ng th t c: dãy ch th v i ch c n ng đ c thù gi i h n – Tr u t ng d li u: t p h p d li u mô t đ i t ng d li u – Tr u t ng u n: C ch u n ch ng trình không c n đ c t nh ng chi ti t bên • Ví d : M c a Th t c: M g m ; D C a li u: 28 • Là hàng hóa vô hình, không nhìn th y đ c • Ch t l ng ph n m m: không mòn mà có xu h ng t t lên sau m i l n có l i (error/bug) đ c hi n s a • Ph n m m v n ch a l i ti m tàng, theo quy mô l n kh n ng ch a l i cao • L i ph n m m d đ c hi n b i ng i 29 c tính chung c a ph n m m • Ch c n ng c a ph n m m th ng bi n hóa, thay đ i theo th i gian (theo n i s d ng) • Hi u ng sóng thay đ i ph n m m • Ph n m m v n ch a ý t ng sứng t o c a tức gi /nhóm làm • C n kh n ng “t nh phân” xây d ng, tri n ph n m m • Có th chép r t đ n gi n 30 8/26/2013 5.1 Cức ch tiêu c b n Th ph n m m t t ? Y u t khái ni m ph n m m t t Hi u su t x lý Tính d hi u • Ph n ứnh yêu c u ng i dùng (tính hi u qu - effectiveness) • Ch a l i ti m tàng • Giứ thành không v t quứ giứ c l ng ban đ u • D v n hành, s d ng • Tính an toàn đ tin c y cao c tr ng g n Cức ch tiêu c b n Th i gian (Ph n c ng phát tri n) 31 5.2 Hi u su t x 32 5.3 D hi u lý cao • Hi u su t th i gian t t (efficiency): • • • • – ph c t p tính toứn th p (Time complexity) – Th i gian quay vòng ng n (Turn Around Time: TAT) – Th i gian h i đứp nhanh (Response time) • S d ng tài nguyên h u hi u: CPU, RAM, HDD, Internet resources, Ki n trúc c u trúc thi t k d hi u D ki m tra, ki m th , ki m ch ng D b o trì Có tài li u (mô t yêu c u, u ki n ki m th , v n hành, b o trì, FAQ, ) v i ch t l ng cao Tính d hi u: ch tiêu ngày quan tr ng 33 34 Phân lo i ph n m m Ví d c th ??? Ph n m m • Ph n m m h th ng (System SW) Ph n m m h th ng • Ph n m m th i gian th c (Real-time SW) • Ph n m m nghi p v (Business SW) H u hành • Ph n m m tính toán KH&KT (Engineering & Science SW) Ph n m m ng d ng Ph n m m m c đích chung Ph n m m x v n b n Ph n m m nhúng • Ph n m m nhúng (Embedded SW) Ch • Ph n m m máy cá nhân (Personal computer SW) ng trình ti n ích Ph n m m m c đích đ c bi t Ph n m m tính toán KHKT Ch ng trình th vi n • Ph n m m Web (Web-based SW) Ch • Ph n m m trí tu nhân t o (Artificial Intelligent SW) lý Ph n m m web Ph n m m nghi p v ng trình d ch Ph n m m đ t hàng 35 36 8/26/2013 Bài t p v nhà: Phân bi t cức khứi ni m sau PH N I: GI I THI U CHUNG V CÔNG NGH PH N M M • H th ng, ph n m m, ng d ng • L p trình, tri n ph n m m • L p trình viên k s ph n m m I B n ch t ph n m m II Nh ng ộ n đ phát tri n ph n m m Kh ng ho ng ph n m m ? Nh ng khó kh n s n ớu t ph n m m III Quy trình phát tri n ph n m m (CNPM) 37 38 Nh ng v n đ phát tri n ph n m m M ts y ut • Ph n m m l n s kéo theo ph c t p hóa t ng chi phí tri n • i vai trò giứ thành SW vs HW • Công s c cho b o trì t ng chi phí cho Backlog l n • Nhân l c ch a đứp ng đ c nhu c u ph n m m • Nh ng phi n hà c a ph n m m gây nh ng v n đ xã h i • Ví d : 39 Nh ng khó kh n s n xu t ph n m m • Không có ph ng pháp mô t rõ ràng đ nh ngh a yêu c u c a ng dùng (khách hàng) Nh ng khó kh n s n xu t ph n m m i  Sau bàn giao s n ph m d phát sinh nh ng tr c tr c • • • 40 (troubles) V i nh ng ph n m m quy mô l n, t li u đ c t c đ nh th i gian dài  Khó đáp ng nhu c u thay đ i c a ng i dùng m t cách k p th i th i gian Ph ng pháp lu n thi t k không nh t quán  Thi t k theo cách riêng (c a công ty, nhóm), s d n đ n suy gi m ch t l ng ph n m m (do ph thu c nhi u vào ng i) Không có chu n v vi c t o t li u quy trình s n xu t ph n m m  c t không rõ ràng s làm gi m ch t l ng ph n m m 41 • Không ki m th tính đ n c a ph n m m t ng giai đo n mà ch ki m giai đo n cu i phát hi n l i  th ng bàn giao s n ph m không h n • Coi tr ng vi c l p trình h n khâu thi t k  gi m ch t l ng ph n m m • Coi th ng vi c tái s d ng ph n m m (software reuse)  gi m n ng su t lao đ ng • Ph n l n thao tác quy trình phát tri n ph n m m ng i th c hi n  gi m n ng su t lao đ ng • Không ch ng minh đ c tính đ n c a ph n m m  gi m đ tin c y c a ph n m m 42 8/26/2013 Nh ng v n đ s n xu t ph n m m (ti p) • • • • • Chu n v m t ph n m m t t không th đo đ c m t cách đ nh l ng  Không th đánh giá đ c m t h th ng đ n hay không u t nhân l c l n vào b o trì  gi m hi u su t lao đ ng c a nhân viên Công vi c b o trì kéo dài  gi m ch t l ng c a t li u nh h ng x u đ n nh ng vi c khác Qu n lý d án l ng l o  qu n lý l ch trình s n xu t ph n m m không rõ ràng Không có tiêu chu n đ c l ng nhân l c d toán  làm kéo dài th i h n v t kinh phí c a d án PH N I: GI I THI U CHUNG V CÔNG NGH PH N M M I B n ch t ph n m m II Nh ng v n đ phát tri n ph n m m III.Quy trình phát tri n ph n m m S ti n tri n c a ph ng pháp thi t k ph n m m nh ngh a Công ngh h c ph n m m Vòng đ i c a ph n m m M t s quy trình phát tri n ph n m m 43 S ti n tri n c a cức ph thi t k ph n m m Ít quan tâm t i ph n m m T p trung nâng cao tính n ng đ tin c y c a ph n c ng ng phứp 44 S ti n tri n c a cức ph thi t k ph n m m Phát tri n h u hành nh ph n m m l n (IBM OS/360, EC OS) Xu t hi n nhu c u v quy trình phát tri n ph n m m l n quy trình g l i, ki m th ph m vi gi i h n Nghiên c u v l p trình, ki m th , đ m b o tính tin c y quy trình s n xu t ph n m m K thu t: l p trình c u trúc hóa, l p trình môđun, thi t k c u trúc hóa, vv H i ngh qu c t đ u tiên v CNHPM đ c t ch c (1975): International Conference on SE (ICSE) Quan tâm đ n m i pha quy trình tri n ph n m m, nh ng t p trung nh ng pha đ u ICSE t ch c l n 2, vào 1976, 1978 1979 Nh t B n có “K ho ch tri n k thu t s n xu t ph n m m” t n m 1981 Cu c “cứch tân s n xu t ph n m m” b t đ u ph m vi cức n c công nghi p Chính sứch phân bi t giứ c gi a ph n c ng ph n m m (IBM) Nghiên c u c b n v ph ng phứp lu n l p trình Xu t hi n khứi ni m “Software Engineering” (1968) B t đ u bàn lu n v kh ng kho ng ph n m m xu h ng hình thành CNHPM nh m t chuyên môn riêng 1960 1970 1980 1990 S ti n tri n c a cức ph thi t k ph n m m Trình đ h c v n ng d ng CNHPM đ c nâng cao, cức công ngh đ c chuy n vào th c t Xu t hi n cức s n ph m ph n m m cức công c khức làm t ng n ng su t s n xu t ph n m m đứng k ICSE t ch c l n n m 1981 1982 v i 1000 ng i tham d m in m Nh t B n sang “K ho ch tri n cức k thu t b o trì ph n m m” (19811985) 2000 45 ng phứp 1960 1970 1970 Công nghi p hóa s n xu t ph n m m b ng cách đ a nh ng k thu t công ngh h c (Engineering techniques) thành c s khoa h c c a CNHPM Th ch hóa lý lu n s n xu t ph n m m ng d ng nh ng ph ng pháp lu n m t cách nh t quán T ng c ng nghiên c u t o công c tr giúp s n xu t ph n m m 1980 1990 2000 1980 1990 2000 46 Hình thứi s n xu t Ph n m m T h c v n sang nghi p v ! Ch t l ng ph n m m t p trung ch y u tính n ng su t, đ tin c y tính b o trì Nghiên c a h tr t đ ng hóa s n xu t ph n m m Nh t B n: SIGMA: Software Industrialized Generator & Maintenance Aids, 1985-1990 Nhi u trung tâm, vi n nghiên c u CNHPM đ i Cức tr ng đ a vào gi ng d y SE a k thu t, ph 47 ng pháp lu n ng d ng th c t vào t ng quy trình C i biên, bi n đ i vào t ng s n ph m công c ph n m m (máy tính hóa t ng ph n) T ng h p, h th ng hóa cho t ng lo i công c (Máy tính hóa toàn b quy trình s n xu t ph n m m) H 1960 ng phứp ng t i s n ớu t ph n m m t đ ng 48 8/26/2013 Công ngh ph n m m (Software Engineering) Công ngh ph n m m (Software Engineering) • Bauer [1969]: CNPM vi c thi t l p s d ng nguyên t c công ngh h c đ n dùng đ 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 máy th c • Parnas [1987]: CNPM vi c xây d ng ph n m m nhi u phiên b n b i nhi u ng i • Ghezzi [1991]: CNPM m t l nh v c c a khoa h c máy tính, liên quan đ n xây d ng h th ng 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]: CNPM – (1) vi c áp d ng ph ng pháp ti p c n có h th ng, b n đ c l ng hóa phát tri n, v n hành b o trì ph n m m; – (2) nghiên c u ph ng pháp ti p c n đ c dùng (1) • Pressman [1995]: CNPM b môn tích h p c quy trình, ph ng pháp, công c đ phát tri n ph n m m máy tính 49 50 Công ngh ph n m m (Software Engineering) Công ngh ph n m m (Software Engineering) • Sommerville [1995]: CNPM l nh v c liên quan đ n lý thuy t, ph ng pháp công c dùng cho phát tri n ph n m m • K Kawamura [1995]: CNPM l nh v c h c v n v k thu t, ph ng pháp lu n công ngh h c (lý lu n k thu t đ c hi n th c hóa nh ng nguyên t c, nguyên lý đó) toàn b quy trình phát tri n ph n m m nh m nâng cao c ch t l ng c a s n xu t ph n m m • Công ngh ph n m m l nh v c khoa h c v ph ng pháp lu n, k thu t công c tích h p quy trình s n xu t v n hành ph n m m nh m t o ph n m m v i nh ng ch t l ng mong mu n [Software Engineering is a scientific field to deal with methodologies, techniques and tools integrated in software production-maintenance process to obtain software with desired qualities] 51 52 Công ngh CNPM ? Công ngh CNPM ? (ti p) • Nh ngành công ngh h c khác, CNPM c ng l y ph ng pháp khoa h c làm c s • Các k thu t v thi t k , ch t o, ki m th b o trì ph n m m đ c h th ng hóa thành ph ng pháp lu n hình thành nên CNPM • Toàn b quy trình qu n lý phát tri n ph n m m g n v i khái ni m vòng đ i ph n m m, đ c mô hình hóa v i nh ng k thu t ph ng pháp lu n tr thành ch đ khác CNPM • Trong vòng đ i ph n m m không ch có ch t o mà bao g m c thi t k , v n hành b o d ng (tính quan tr ng c a thi t k b o d ng) • Trong khái ni m ph n m m, không ch có ch ng trình mà c t li u v ph n m m • Cách ti p c n công ngh (khái ni m công nghi p hóa) th hi n ch nh m nâng cao n ng su t (tính n ng su t) đ tin c y c a ph n m m, đ ng th i gi m chi phí giá thành 53 54 8/26/2013 Cức ph ng phứp lu n k thu t cho t ng pha Vòng đ i ph n m m • Vòng đ i ph n m m th i k tính t ph n m m đ c sinh (t o) cho đ n ch t (t lúc hình thành đứp ng yêu c u, v n hành, b o d ng cho đ n lo i b không đâu dùng) • Quy trình ph n m m (vòng đ i ph n m m) đ c phân chia thành pha chính: phân tích, thi t k , ch t o, ki m th , b o trì Bi u di n pha có khác theo t ng ng i 55 Tên pha N i dung nghi p ộ Xác đ nh yêu c u Thi t k h th ng Thi t k ch ng trình c t yêu c u ng i dùng Xác đ nh yêu c u ph n m m Thi t k c b n ph n m m Thi t k c u trúc c a ph n m m Là thi t k chi ti t: Thi t k c u trúc bên c a ph n m m (đ n v ch ng trình ho c môđun) L p trình Mã hóa b i ngôn ng l p trình Ph ng pháp, k thu t Phân tích c u trúc hóa Thi t k c u trúc hóa L p trình c u trúc Ph ng phứp Jackson Ph ng phứp Warnier Mã hóa c u trúc hóa m b o Ki m tra ch t l ng ph n m m Ph ng phứp ki m ch t l ng tri n th ch ng trình S d ng, v n hành ph n m m phát V n hành tri n Ch a c th B o trì Bi n đ i, u ch nh ph n m m 56 3.4 Quy trình phát tri n ph n m m M t vòng l p Khung quy trình chung (Common process framework) Lu ng công vi c ti n trình (Process Workflows) Ho t đ ng khung (Framework activities) Inception Elaboration ng Quy trình h tr Các ho t đ ng giám sát, đánh giá k thu t, đ m b o ch t l ng ph n m m, qu n lý c u hình, qu n lý r i ro, (Umbrella activities) Các dòng công vi c Qu n lý c u hình Môi tr ng qu n lý Preliminary Iteration(s) Iter #1 Iter #2 57 4.1 Capability Maturity Model (CMM by SEI): Mô hình kh n ng thu n th c T i ph i s d ng mô hình CMM công ngh làm ph n m m? Khó kh n không s d ng CMM • • • Các ti n trình ph n m m th ng b thay đ i c p nh t mà s chu n b tr c c t m t ti n trình ph n m m không ch t ch , d n đ n s kh ng ho ng th c hi n m t d án Thi u c s đ đứnh giá ch t l ng ph n m m, đ đ a ph ng th c ti n hành cách gi i quy t v n đ phát sinh Thu n l i s CMM • • • • Transition Cài đ t Ki m th Tri n khai i m quan tr ng (milestones),s n ph m chuy n giao (deliverables) • Construction Mô hình nghi p v Yêu c u Phân tích thi t k T p tác v (Task sets) Tác v (Tasks) i m Ki m Tra Ch t L (SQA points) Phases Iter #n Iter Iter #n+1 #n+2 Các vòng l p Iter #m Iter #m+1 58 Các khái ni m • Ti n trình (Process) d ng D dàng qu n lý phát tri n ph n m m Các ti n trình đ c c p nh t qua s u n c a nhà ph n tích ki m th Vai trò, trách nhi m c a m i thành viên ti n trình đ c phân đ nh rõ ràng Qu n lý ch t l ng c a ph n m m, tho mãn yêu c u khách hàng Có c s chu n xác đứnh giá ch t l ng, th i gian, chi phí phân tích d án ti n trình 59 – M t ti n trình ph n m m m t t p h p hành đ ng, ph ng th c, th c hành, thay đ i mà ng i ta dùng đ trì phát tri n ph n m m c ng nh thành ph n liên quan t i chúng (ví d : k ho ch d án, thi t k , l p trình, ki m th , tài li u h ng d n ) • Kh n ng ti n trình ph n m m (Software Process Capability) – Cho bi t ph m vi k t qu có th mong đ i c a m t ti n trình ph n m m – D đoứn kh n ng làm d án ph n m m ti p theo c a công ty 60 10 8/26/2013 thu n th c c a ti n trình ph n m m Th c thi ti n trình ph n m m (Software Process Performance) (Software process maturity) • Ch rõ m t ti xác đ nh, qu n, đ t hi • Cho bi t kh giá tr c a ti v ng ch c c • Th c thi ti n trình ph n m m cho bi t k t qu th c t c a m t ti n trình ph n m m • H ng t i k t qu đ t đ c kh n ng ti n trình ph n m m cho th y k t qu có th mong đ i • Do ph thu c vào đ c tr ng c a d án t ng tr ng h p c th , nên k t qu th c t th ng không ph n ánh đ y đ kh n ng ti n trình c a m t công ty n trình ph n m m đ c n lý, đứnh giá, u u qu m t cách rõ ràng n ng phát tri n, ch n trình ph n m m, tính a d án 61 c Mô hình chi ti t thành ph n c u trúc CMM M cđ thu n th c nh n đ ch Kh n ng ti n trình đ tđ d Mô hình m c c a CMM Ti n trình ph n m m mang tính ch t tu ti n, l n x n, có ti n trình đ c xác đ nh tr c, hi u qu c a công vi c mang tính riêng l Khó có đ c m t môi tr ng làm vi c n đ nh K ho ch ngân sách, ch t l ng s n ph m v n hành không th Ti d đoứn tr c đ c ct Các vùng ti n trình t ch c b i Các tính n ng ph bi n c nh n đ Th c thi ho c th ch hoá ti n trình c i ti n liên t c n trình d đoán đ c ct Các th c hành ứnh x Cức m c tiêu 62 Ti n trình n đ nh, chu n Ti n trình có k lu t mô t C s h t ng ho c cức ho t đ ng C i ti n (5) c qu n lý (4) c đ nh ngh a (3) Có tính l p l i (2) Quá trình v n hành ph thu c vào kh n ng c a t ng cá nhân riêng l , th ng xuyên thay đ i ph thu c vào k n ng, trình đ hi u bi t ho t đ ng c a t ng thành viên d án Ban đ u (1) 63 d Mô hình m c c a CMM Có s c i ti n h n, chi n l c qu n lý d án vµ th t c đ th c thi chi n l c y đ c thi t l p Các k ho ch qu n lý d án m i đ c d a nh ng kinh nghi m c a d án c Ti n trình c i ti n liên t c Ti n trình d đoán đ c Ti n trình n đ nh, chu n Ti n trình có k lu t Ban đ u (1) Có tính l p l i (2) 64 d Mô hình m c c a CMM L p đ c tài li u ti n trình tiêu chu n đ i v i vi c phát tri n b o trì ph n m m có t ch c, bao g m c công ngh ph n m m, ti n trình qu n lý, ti n trình tích h p v i (ngh a r ng đ u c a m t ti n trình s đ u vào c a ti n trình ti p theo ) C i ti n (5) c qu n lý (4) Ti n trình c i ti n liên t c Ti n trình d đoán đ c Ti n trình n đ nh, chu n c đ nh ngh a (3) K t qu đ a đ c nh ng hi u qu qu n lý ti n trình c a m t d án nµy vào m t d án khác i u cho phép l p l i (repeatable) nh ng thành công đ i v i m t d án t ng t m c dù có th d án c ng có nh ng m khác bi t 65 Ti n trình có k lu t Ban đ u (1) Có tính l p l i (2) C i ti n (5) c qu n lý (4) c đ nh ngh a (3) M t ti n trình đ c đ nh ngh a t t g m có tính ch t nh có tiêu chu n, đ u vào, tiêu chu n th t c rõ ràng đ ti n hành công vi c, ki m tra đ u 66 11 8/26/2013 d Mô hình m c c a CMM M c tiêu u n ti n trình Các ti n trình ph n m m đ c qu n lý đ v n hành n đ nh, an toàn Có nh ng đứnh giá ph n m m ch t l ng, hi u qu ho t đ ng ti n trình Ti n trình c i ti n liên t c Ti n trình d đoán đ c Ti n trình n đ nh, chu n Ti n trình có k lu t Ti p t c c i ti n ti n trình, có th xác đ nh đ c nh ng m m nh m y u c a ti n trình, có kh n ng phân tích m khuy t, xác đ nh nguyên nhân gây đ tránh m khuy t C i ti n (5) c qu n lý (4) Ti n trình c i ti n liên t c Ti n trình d đoán đ c Ti n trình n đ nh, chu n c đ nh ngh a (3) Có tính l p l i (2) Ban đ u (1) d Mô hình m c c a CMM Do ti n trình n đ nh đ c đứnh giá nên có tr ng h p ngo i l , s xác đ nh ch rõ nh ng nguyên nhân gây bi n đ i Ti n trình có k lu t C i ti n (5) c qu n lý (4) c đ nh ngh a (3) Có tính l p l i (2) Ban đ u (1) 67 18 Vùng ti n trình KPA (Key Process Area) LEVEL 2: Có th l p Qu n lý c u hình ph n m m m b o ch t l ng ph n m m Qu n lý h p đ ng ph n m m Theo dõi giám sát d án ph n m m L p k ho ch d án ph n m m Qu n lý yêu c u M C 3: Xem xét ngang H p tác gi a nhóm K thu t s n ph m ph n m m 10 Qu n lý ph n m m tích h p 11 Ch ng trình hu n luy n 12 nh ngh a ti n trình t ch c 13 Tr ng tâm ti n trình t ch c c đ nh ngh a M C 4: 14 Qu n lý ch t l ng ph n m m 15 Qu n lý trình đ nh l ng 68 Kh n ng nhìn nh n t i m i m c thu n th c 16 Qu n lý thay đ i ti n trình 17 Qu n lý thay đ i công ngh 18 Phòng ng a khiêm khuy t c qu n lý M C 5: C i ti n 69 Kh n ng ti n trình d m c c a CMM đoứn theo 70 e Cứch th c s • Khi m c đ thu n th c t ng, s sai khức gi a k t qu đ t đ c k t qu d tính gi m xu ng • Khi m c đ thu n th c t ng, đ bi n đ ng c a k t qu th c t so v i k t qu đ gi m xu ng • Khi m c đ thu n th c t ng cức k t qu s đ c c i thi n ó là, chi phí gi m, th i gian tri n ng n h n, ch t l ng n ng su t t ng 71 d ng mô hình CMM nh giứ ti n trình ph n m m (Software process assessments ) xức đ nh tr ng thứi c a ti n trình ph n m m hi n t i c a t ch c, xức đ nh m c đ u tiên đ i v i cức v n đ có liên quan t i ti n trình ph n m m x lý chúng xây d ng h th ng h tr tri n ti n trình ph n m m • ứnh giứ kh n ng ph n m m (Software capability evaluations) xức đ nh cức nhà th u có đ t cứch tri n khai m t d ứn ph n m m ho c qu n lý hi n tr ng c a m t h th ng ph n m m có s n • 72 12 8/26/2013 Nh ng m chung c a ph s d ng CMM L a ch n đ i Câu h i thu n th c ng th c 4.2 Mô hình n tính • Công ngh h c H th ng / Thông tin mô hình hóa (System / Information engineering and modeling): thi t l p yêu c u, ánh x m t s t p yêu c u sang ph n m m trình t ng tác gi a ph n c ng, ng i CSDL Phân tích tr l i Các m u CMM (1) (2) (3) H Th m t i ch Ph ng v n xem xét tài li u (4) s KPA Tìm ki m Phân tích D a CMM Thi t k L p trình Ki m th Công ngh h c H th ng / Thông tin (5) (6) 73 74 4.2 Mô hình n tính 4.2 Mô hình n tính T o mã / l p trình (Code generation / programming): Chuy n thi t k thành ch ng trình máy tính b i ngôn ng N u thi t k đ c chi ti t hóa l p trình có th ch thu n túy c h c • H tr / B o trì (Support / Maintenance): ứp ng nh ng thay đ i, nâng c p ph n m m phát tri n s thay đ i c a môi tr ng, nhu c u Phân tích Thi t k Ki m th (Testing): Ki m tra ch ng trình môđun c v lôgic bên ch c n ng bên ngoài, nh m phát hi n l i đ m b o v i đ u vào xác đ nh cho k t qu mong mu n L p trình Ki m th Phân tích Công ngh h c H th ng / Thông tin Thi t k L p trình Ki m th Công ngh h c H th ng / Thông tin 75 76 4.3 Mô hình ch th model) i m y u c a Mô hình n tính • Th c t cức d ứn tuân theo dòng tu n t c a mô hình, mà th ng có l p l i (nh mô hình c a Boehm) • Khứch hàng tuyên b rõ ràng xong h t cức yêu c u • Khứch hàng ph i có lòng kiên nh n ch đ i th i gian nh t đ nh m i có s n ph m N u hi n l i n ng m t th m h a! (Prototyping T o/s a b nm u Nghe Khách trình bày Khách ki m tra b nm u 77 78 13 8/26/2013 4.4 Mô hình phát tri n ng d ng nhanh (Rapid Application Development: RAD) Mô hình ch th : Khi ? • Khi m i rõ m c đích chung chung c a ph n m m, ch a rõ chi ti t đ u vào hay x lý ho c ch a rõ yêu c u đ u • Dùng nh “H s khai” đ thu th p yêu c u ng i dùng qua cức thi t k nhanh • Cức gi i thu t, k thu t dùng làm b n m u có th ch a nhanh, ch a t t, mi n có m u đ th o lu n g i yêu c u c a ng i dùng • Là quy trình phát tri n ph n m m gia t ng, t ng d n t ng b c (Incremental software development) v i m i chu trình phát tri n r t ng n (60-90 ngày) • Xây d ng d a h ng thành ph n (Componentbased construction) v i kh n ng tái s d ng (reuse) • G m m t s nhóm (teams), m i nhóm làm RAD theo pha: Mô hình nghi p v , Mô hình d li u, Mô hình x lý, T o ng d ng, Ki m th đứnh giá (Business, Data, Process, Appl Generation, Test) 79 Mô hình tri n Team #3 ng d ng nhanh RAD: Business modeling Mô hình nghi p v Mô hình Team #2 d li u Mô hình Mô hình nghi p v ti n trình T o Mô hình Team #1 ng d ng d li u Ki m th Mô hình Mô hình &Turnover nghi p v 80 • Lu ng thông tin đ câu h i: – – – – – ti n trình T o ng d ng Ki m th Mô hình &Turnover Mô hình d li u c mô hình hóa đ tr l i cức Thông tin u n x Thông tin đ c sinh ra? Ai sinh ? Thông tin đ n đâu ? Ai x lý chúng ? lý nghi p v ? ti n trình T o ng d ng Ki m th &Turnover 82 60 - 90 days RAD: Mô hình d li u ti n trình • Mô hình d li u (Data modeling): đ i t ng d li u c n đ h tr nghi p v (business) nh ngh a thu c tính c a t ng đ i t ng xác l p quan h gi a đ i t ng • Mô hình ti n trình (Process modeling): Các đ i t ng d li u đ c chuy n sang lu ng thông tin th c hi n ch c n ng nghi p v T o mô t x lý đ c p nh t (thêm, s a, xóa, khôi ph c) t ng đ i t ng d li u 83 RAD: T o ng d ng ki m th • T o ng d ng (Application Generation): Dùng k thu t th h đ t o ph n m m t thành ph n có s n ho c t o thành ph n có th tái d ng l i sau Dùng công c t đ ng đ xây d ng ph n m m • Ki m th (Testing and Turnover): Ki m th thành ph n m i ki m ch ng m i giao di n (các thành ph n c đ c ki m th dùng l i) 84 14 8/26/2013 RAD: H n ch ? M đ u • C n ngu n nhân l c d i đ t o cức nhóm cho cức ch c n ng • Yêu c u hai bên giao kèo th i gian ng n ph i có ph n m m hoàn ch nh, thi u trứch nhi m c a m t bên d làm d ứn đ v • RAD không ph i t t cho m i ng d ng, nh t v i ng d ng không th môđun hóa ho c đòi h i tính n ng cao • M o hi m k thu t cao không nên dùng RAD • Ph n l n h ph n m m ph c t p đ u ti n hóa theo th i gian: môi tr ng thay đ i, yêu c u phát sinh thêm, hoàn thi n thêm ch c n ng, tính n ng • Các mô hình ti n hóa (evolutionary models) có tính l p l i K s ph n m m t o phiên b n (versions) ngày hoàn thi n h n, ph c t p h n • Các mô hình tiêu bi u: – – – – Gia t ng (Incremental) Xo n c (Spiral) Xo n c WINWIN (WINWIN spiral) Phát tri n đ ng th i (Concurrent development) 85 Mô hình gia t ng (The incremental model) 86 Mô hình gia t ng • K t h p mô hình tu n t ý t ng l p l i c a ch b n m u • S n ph m lõi v i nh ng yêu c u c b n nh t c a h th ng đ c tri n • Cức ch c n ng v i nh ng yêu c u khức đ c tri n thêm sau (gia t ng) • L p l i quy trình đ hoàn thi n d n Gia t ng Phân tích Thi t k L p trình Xu t x Ki m th ng Công ngh h th ng/thông tin Gia t ng Phân tích Gia t ng Thi t k Phân tích Gia t ng L p trình Ki m th Xu t x ng Thi t k L p trình Ki m th Xu t x Phân tích Thi t k L p trình Ki m th ng XX Th i gian/l ch 87 Mô hình xo n c (spiral) L p k ho ch Mô hình xo n c (ti p) • Giao ti p khứch hàng: gi a ng i tri n khứch hàng đ tìm hi u yêu c u, ý ki n • L p k ho ch: Xức l p tài nguyên, th i h n nh ng thông tin khức • Phân tích r i ro: Xem xét m o hi m k thu t m o hi m qu n lý • K ngh : Xây d ng m t hay m t s bi u di n c a ng d ng Phân tích r i ro Giao ti p khách hàng Khái ni m 88 K ngh Làm m i Nâng c p B o trì Khách hàng đánh giá Xây d ng & Xu t x ng 89 90 15 8/26/2013 Mô hình xo n c (ti p) Mô hình xo n c: M nh y u? • Xây d ng xu t x ng: xây d ng, ki m th , cài đ t cung c p h tr ng i dùng (t li u, hu n luy n, ) • ứnh giứ c a khứch hàng: Nh n cức ph n h i c a ng i s d ng v bi u di n ph n m m giai đo n k ngh cài đ t • T t cho cức h ph n m m quy mô l n • D ki m soứt cức m o hi m t ng m c ti n hóa • Khó thuy t ph c khứch hàng ph ng phứp ti n hóa xo n c có th ki m soứt đ c • Ch a đ c dùng r ng rãi nh cức mô hình n tính ho c ch th 91 Mô hình xo n c WINWIN 92 Mô hình xo n c WINWIN • Nh m th a hi p gi a ng i tri n khứch hàng, c hai “Th ng” (win-win) Xác đ nh u ki n th ng c a c đông – Khứch có ph n m m th a mãn yêu c u – Ng i tri n có kinh phí th a đứng th i gian h p lý 3a Hòa h p u ki n th ng 3b Thi t l p m c tiêu m c ti p ràng bu c, d ki n Xác đ nh m c ti p c a c đông • Cức ho t đ ng xức đ nh h th ng: ánh giá ti n trình d ki n s n ph m, gi i quy t r i ro – Xức đ nh c đông (stakeholders) – Xức đ nh u ki n th ng c a c đông – Th a hi p u ki n th ng c a cức bên liên quan Xét t đánh giá Ki m đ nh s n ph m quy trình Xác đ nh m c ti p c a s n phâm quy trình, k c phân chia nh 93 94 Mô hình phát tri n đ ng th i (concurrent development) Mô hình h ng thành ph n Component-based model • Xác đ nh m ng l i nh ng ho t đ ng đ ng th i (Network of concurrent activities) • Các s ki n (events) xu t hi n theo u ki n v n đ ng tr ng thái t ng ho t đ ng • Dùng cho m i lo i ng d ng cho hình nh xác v tr ng thái hi n tr ng c a d án • Th ng dùng phát tri n ng d ng khách/ch (client/server applications): h th ng thành ph n c u thành h th ng đ c phát tri n đ ng th i • G n v i nh ng công ngh h ng đ i t ng (Object-oriented technologies) qua vi c t o l p (classes) có ch a c d li u gi i thu t x lý d li u 95 • Có nhi u t ng đ ng v i mô hình xo n c • V i u m tái s d ng thành ph n qua Th vi n / kho l p: ti t ki m 70% th i gian, 80% giá thành, ch s s n xu t 26.2/16.9 • V i UML nh chu n công nghi p tri n khai 96 16 8/26/2013 4.7 Mô hình RUP (Rational Unified Process) Mô hình d a thành ph n L p k ho ch • SV t Phân tích r i ro Giao ti p khách hàng Xây d ng b c l p th n c a h th ng Khách hàng đánh giá K ngh Xây d ng & Xu t x ng nghiên c u Xác đ nh thành ph n ng viên t thành ph n vào th vi n Tìm thành ph n t th vi n L y thành ph n n u có Xây d ng thành ph n n u kh.có 97 98 4.8 Các k thu t th h (Fourth generation techniques) T ng k t mô hình • Thác n c: mô hình n tính • Ch th : mô hình l p l p l i • Gia t ng: k t h p gi a mô hình n tính l p l p l i • Xo n c: k t h p gi a mô hình n tính l p l p l i • Phát tri n nhanh: mô hình l p l p l i • T p h p cức công c cho phép xức đ nh đ c tính ph n m m m c cao, sau sinh t đ ng mã ngu n d a theo đ c t • Cức công c 4GT n hình: ngôn ng phi th t c cho truy v n CSDL; t o bứo cứo; x lý d li u; t ng tức hình; t o mã ngu n; kh n ng đ h a b c cao; kh n ng b ng tính; kh n ng giao di n Web; vv 99 100 S n ph m quy trình (Product and process) 4GT: T i ? • T thu th p yêu c u cho đ n s n ph m: đ i tho i gi a khứch ng i tri n quan tr ng • Không nên b qua khâu thi t k 4GT ch ứp d ng đ tri n khai thi t k qua 4GL • M nh: gi m th i gian tri n t ng n ng su t • Y u: 4GT khó dùng h n ngôn ng l p trình, mã khó t i u khó b o trì cho h th ng l n  c n k n ng c a k s ph n m m • T ng lai: 4GT v i mô hình theo thành ph n 101 • Quy trình y u s n ph m khó mà t t, song không nên coi tr ng m c vào quy trình ho c m c vào s n ph m • S n ph m quy trình c n đ c coi tr ng nh 102 17 8/26/2013 Nh ng vi c c n làm Công ội c B u l p tr ng Ng i tham gia Ng i ph trách K t qu c nđ t T t c SV T t c SV Có l p tr Tham gia vào h p th nhóm vthgiang-it4080k55@googlegroups.com T t c SV L p tr ng T t c SV đ ng ký h c môn đ u ph i gia nh p h p th nhóm L u ý: gia nh p, đ i tên hi n th theo d ng: H tên MSSV l p khoá 4/9/2012 Ch t danh sách sinh viên phân nhóm BTL (3-4 ng i) T t c SV L p tr ng Danh sách phân nhóm g m: mã nhóm (FSE01 – FSExx), h tên SV, s hi u SV, l p, email, nhóm tr ng (t/f) 4/9/2012 Nhóm tr ng L p tr ng Danh sách đ ng ký t p l n = danh sách phân nhóm + mã BTL (BTL01 - BTLyy) + mô t ng n g n BTL Mã nhóm H tên MSSV l p khoá 25/9/2012 Làm t p /bài t p l n T t c SV T t c SV / Nhóm tr ng Báo cáo, mã ngu n / tài li u CT Theo yêu c u c a giáo viên Ch a t p /bài t p l n T t c SV T t c SV / Nhóm tr ng Báo cáo, mã ngu n / tài li u CT Theo yêu c u c a giáo viên B o v t p l n T t c SV T t c SV Slide, thuy t trình, demo CT (max Theo yêu c u c a ng ký t p l n ng H n chót 28/8/2012 103 Bài t p v nhà • Bài t p v nhà: M t s ví d v ph n m m có th áp d ng quy trình nói 104 18 [...]... tr ng Danh sách đ ng ký bài t p l n = danh sách phân nhóm + mã BTL (BTL01 - BTLyy) + mô t ng n g n BTL Mã nhóm H và tên MSSV l p khoá 25/9/2012 Làm bài t p /bài t p l n T t c SV T t c SV / Nhóm tr ng Báo cáo, mã ngu n / tài li u CT Theo yêu c u c a giáo viên Ch a bài t p /bài t p l n T t c SV T t c SV / Nhóm tr ng Báo cáo, mã ngu n / tài li u CT Theo yêu c u c a giáo viên B o v bài t p l n T t c SV T... n T t c SV T t c SV / Nhóm tr ng Báo cáo, mã ngu n / tài li u CT Theo yêu c u c a giáo viên B o v bài t p l n T t c SV T t c SV Slide, thuy t trình, demo CT (max 3 Theo yêu c u c a ng ký bài t p l n ng H n chót 28/8/2012 1 03 Bài t p v nhà • Bài t p v nhà: M t s ví d v các ph n m m có th áp d ng các quy trình nói trên 104 18 ... (repeatable) nh ng thành công đ i v i m t d án t ng t m c dù có th các d án này c ng có nh ng đi m khác bi t 65 Ti n trình có k lu t Ban đ u (1) Có tính l p l i (2) C i ti n (5) c qu n lý (4) c đ nh ngh a (3) M t ti n trình đ c đ nh ngh a t t g m có các tính ch t nh có tiêu chu n, đ u vào, tiêu chu n và th t c rõ ràng đ ti n hành công vi c, ki m tra các đ u ra 66 11 8/26/20 13 d Mô hình 5 m c c a CMM... 17 8/26/20 13 Nh ng vi c c n làm Công ội c B u l p tr ng Ng i tham gia Ng i ph trách K t qu c nđ t T t c SV T t c SV Có l p tr Tham gia vào h p th nhóm vthgiang-it4080k55@googlegroups.com T t c SV L p tr ng T t c các SV đ ng ký h c môn này đ u ph i gia nh p h p th nhóm L u ý: khi gia nh p, đ i tên hi n th theo d ng: H và tên MSSV l p khoá 4/9/2012 Ch t danh sách sinh viên và phân nhóm BTL (3- 4 ng i)... ng d li u 83 RAD: T o ng d ng và ki m th • T o ng d ng (Application Generation): Dùng các k thu t th h 4 đ t o ph n m m t các thành ph n có s n ho c t o ra các thành ph n có th tái d ng l i sau này Dùng các công c t đ ng đ xây d ng ph n m m • Ki m th (Testing and Turnover): Ki m th các thành ph n m i và ki m ch ng m i giao di n (các thành ph n c đã đ c ki m th và dùng l i) 84 14 8/26/20 13 RAD: H n... (gia t ng) • L p l i quy trình đ hoàn thi n d n Gia t ng 1 Phân tích Thi t k L p trình Xu t x Ki m th ng 1 Công ngh h th ng/thông tin Gia t ng 2 Phân tích Gia t ng 3 Thi t k Phân tích Gia t ng 4 L p trình Ki m th Xu t x ng 2 Thi t k L p trình Ki m th Xu t x Phân tích Thi t k L p trình Ki m th ng 3 XX 4 Th i gian/l ch 87 Mô hình xo n c (spiral) L p k ho ch Mô hình xo n c (ti p) • Giao ti p khứch hàng:... th i • G n v i nh ng công ngh h ng đ i t ng (Object-oriented technologies) qua vi c t o các l p (classes) có ch a c d li u và gi i thu t x lý d li u 95 • Có nhi u t ng đ ng v i mô hình xo n c • V i u đi m tái s d ng các thành ph n qua Th vi n / kho các l p: ti t ki m 70% th i gian, 80% giá thành, ch s s n xu t 26.2/16.9 • V i UML nh chu n công nghi p đang tri n khai 96 16 8/26/20 13 4.7 Mô hình RUP (Rational... th l p 1 Qu n lý c u hình ph n m m 2 m b o ch t l ng ph n m m 3 Qu n lý h p đ ng con ph n m m 4 Theo dõi và giám sát d án ph n m m 5 L p k ho ch d án ph n m m 6 Qu n lý yêu c u M C 3: 7 Xem xét ngang nhau 8 H p tác gi a các nhóm 9 K thu t s n ph m ph n m m 10 Qu n lý ph n m m tích h p 11 Ch ng trình hu n luy n 12 nh ngh a ti n trình t ch c 13 Tr ng tâm ti n trình t ch c c đ nh ngh a M C 4: 14 Qu n lý... s n • 72 12 8/26/20 13 Nh ng đi m chung c a 2 ph s d ng CMM L a ch n đ i Câu h i thu n th c ng th c 4.2 Mô hình tuy n tính • Công ngh h c H th ng / Thông tin và mô hình hóa (System / Information engineering and modeling): thi t l p các yêu c u, ánh x m t s t p con các yêu c u sang ph n m m trong quá trình t ng tác gi a ph n c ng, ng i và CSDL Phân tích tr l i Các m u CMM (1) (2) (3) H Th m t i ch Ph... c v lôgic bên trong và ch c n ng bên ngoài, nh m phát hi n ra l i và đ m b o v i đ u vào xác đ nh thì cho k t qu mong mu n L p trình Ki m th Phân tích Công ngh h c H th ng / Thông tin Thi t k L p trình Ki m th Công ngh h c H th ng / Thông tin 75 76 4 .3 Mô hình ch th model) i m y u c a Mô hình tuy n tính • Th c t cức d ứn ít khi tuân theo dòng tu n t c a mô hình, mà th ng có l p l i (nh mô hình c a Boehm) ... module? M2 … Mn-1 đ c tính c n có c a c u trúc này? Mn H th ng 23 8/26/20 13 3 .3 Che gi u thông tin (Information hiding) [Parnas72] 3. 3 Che gi u thông tin (Information hiding) [Parnas72] • Các module... web Ph n m m nghi p v ng trình d ch Ph n m m đ t hàng 35 36 8/26/20 13 Bài t p v nhà: Phân bi t cức khứi ni m sau PH N I: GI I THI U CHUNG V CÔNG NGH PH N M M • H th ng, ph n m m, ng d ng • L p... ph n m m t đ ng 48 8/26/20 13 Công ngh ph n m m (Software Engineering) Công ngh ph n m m (Software Engineering) • Bauer [1969]: CNPM vi c thi t l p s d ng nguyên t c công ngh h c đ n dùng đ thu

Ngày đăng: 23/01/2016, 00:55

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan