Xem mẫu

  1. Ch ng 3 Ch Software Engineering 3.1 L ch s ti n tri n Công ngh h c ph n m m 3.2 3.2 S ti n tri n c a các ph ng pháp thi t k ph n m m 3.3 nh ngh a Công ngh h c ph n m m 3.4 Vòng i c a ph n m m 3.5 Quy trình phát tri n ph n m m Nhuongld. Software Engineering, 2007
  2. 3.1 3.1 L ch s ti ti n tri n c a CNHPM Na u 1960: Ít quan tâm n ph n m m, ch y u t p trung nâng cao tính n ng và tin c y c a ph n c ng Gi a nh ng n m 1960: Phát tri n h i 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 và quy trình g l i, ki m th trong ph m vi gi i h n Nhuongld. Software Engineering, 2007
  3. L ch s ti ti n tri n c a CNHPM (ti p) N m 1968: T i Tây c, H i ngh khoa h c c a NATO ã a ra t “Software Engineering”. B t u bàn lu n v kh ng kho ng ph n m m và xu h ng hình thành CNHPM nh mt chuyên môn riêng N a cu i 1960: IBM a ra chính sách phân bi t giá c gi a ph n c ng và ph n m m. T ó, ý th c v ph n m m ngày càng cao. B t u nh ng nghiên c u c b n v ph ng pháp lu n l p trình Nhuongld. Software Engineering, 2007
  4. L ch s ti ti n tri n c a CNHPM (ti p) u nh ng n m 1970: Nh m nâng cao ch t l ng Na ph n m m, không ch có các nghiên c u v l p trình, ki m th , mà có c nh ng nghiên c u m b o tính tin c y trong 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 Gi a nh ng n m 1970: H i ngh qu"c t u tiên v CNHPM CNHPM c t# ch c (1975): International Conference on SE (ICSE) Nhuongld. Software Engineering, 2007
  5. L ch s ti n tri n c a CNHPM (ti p) N a sau nh ng n m 1970: Quan tâm n m i pha trong quy trình phát tri n ph n m m, nh ng t p trung chính $ nh ng pha u. ICSE t# ch c l n 2, 3 và 4 vào 1976, 1978 và 1979 Nh t B n có “K ho ch phát 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” ãbt u trên ph m vi các n c công nghi p Nhuongld. Software Engineering, 2007
  6. L ch s ti ti n tri n c a CNHPM (ti p) u nh ng n m 1980: Trình h c v n và ng d%ng Na 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 và các công c% khác nhau làm t ng n ng su t s n xu t ph n m m áng k ICSE ICSE t# ch c l n 5 và 6 n m 1981 và 1982 v i trên 1000 ng i tham d m i n m Nh t B n sang “K ho ch phát tri n các k! thu t b o trì ph n m m” (1981-1985) Nhuongld. Software Engineering, 2007
  7. L ch s ti ti n tri n c a CNHPM (ti p) n nay: T h c v n sang N a cu i nh ng n m 1980 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 và 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 có “K ho ch h th"ng công nghi p hóa s n xu t ph n m m” (SIGMA: Software Industrialized Generator & Maintenance Aids, 1985-1990) Nhi u trung tâm, vi n nghiên c u CNHPM ra i. Các tr ng a vào gi ng d y SE Nhuongld. Software Engineering, 2007
  8. Hi Hi n nay 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 trong s n xu t ph n m m và 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 và t o công c% tr giúp s n xu t ph n m m Nhuongld. Software Engineering, 2007
  9. 3.2 S ti n tri n c a các ph 3.2 ti ng pháp thi t k PM PM Ph ng pháp lu n trong CNHPM: b t u t nh ng n m 1970 Trong phát tri n ph n m m: Nâng cao n ng su t (productivity) tin c y (Reliability) Giá Giá thành - tính n ng (Cost-performance) Ti n tri n ph ng pháp thi t k : S kh$i, Tr $ng thành, Phát tri n và Bi n #i Nhuongld. Software Engineering, 2007
  10. S k h i: n a kh u 1970 Khái ni m v tính mô un, c% th hóa t ng b c trong ph ng pháp lu n thi t k ra i N. Wirth: Chi ti t hóa t ng giai o n. Thi t k trên xu"ng. L p trình mô un Nhuongld. Software Engineering, 2007
  11. Tr ng thành: n a cu i 1970 Tr Ph ng pháp lu n v quy trình thi t k ph n m m v i ph ng pháp phân chia mô un và thi t k trong t ng mô un. L.L. Constantine, 1974: Thi t k c u trúc hóa (phân chia mô un); E.W. Dijkstra, 1972: L p trình c u trúc hóa (trong mô un) . Ph ng pháp M.A.Jackson (1975) và J.D.Warnier (1974) Tr u t ng hóa d li u: B.H. Liskov (1974);D.L.Parnas (1972) Nhuongld. Software Engineering, 2007
  12. Phát Phát tri n: n a u 1980 Tri n khai các công c% h tr phát tri n ph n m m d a trên các ph ng pháp và k! thu t a ra nh ng n m 1970 B kh$i t o ch ng trình (Program generators: Pre- compiler; graphics-input editors, etc.) Ngôn ng "i tho i n gi n (4GL, DB SQL) H tr giúp: H tr giúp ki m th ; H tr giúp qu n lý th vi vi n; H tr giúp tái s d%ng Nhuongld. Software Engineering, 2007
  13. Bi Bi n i: n a cu i 1980 1980 n nay a ra các môi tr ng m i v phát tri n ph n m m. Tri n khai m i v k t h p gi a CNHPM và CNH Tri th c (Knowledge Engineering) Tri n khai nh ng môi tr ng b c cao v phát tri n ph n m m; T ng hóa s n xu t ph n m m; Ch ph n m m theo k! thu t ch th (Prototyping); L p trình h ng "i t ng - OOP; H ng thành ph n; H tr phát tri n ph n m m t các h chuyên gia, vv Nhuongld. Software Engineering, 2007
  14. Hình Hình thái s n xu t Ph n m m a ra các k! thu t ph 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 và công c% ph n m m máy tính hóa t ng ph n công 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 ng t i s n xu t ph n m m t ng Nhuongld. Software Engineering, 2007
  15. 3.3 nh ngh a Công ngh h c ph n m m ngh 3.3 Bauer [1969]: CNHPM là vi c thi t l p và s d%ng các nguyên t c công ngh h c úng 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 trên các máy th c Parnas [1987]: CNHPM là vi c xây d ng ph n m m nhi u phiên b n b$i nhi u ng i Ghezzi [1991]: CNHPM là m t l nh v c c a khoa h c máy tính, liên quan n xây d ng các 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 Nhuongld. Software Engineering, 2007
  16. 3.3 nh ngh a Công ngh h c ph n m m (ti p) ngh 3.3 IEEE [1993]: CNHPM là (1) vi c áp d%ng ph ng pháp ti p c n có h th"ng, bài b n và cl ng hóa trong phát tri n, v n hành và b o trì ph n m m; (2) nghiên c u các ph ng pháp ti p c n c dùng trong (1) Pressman [1995]: CNHPM là b môn tích h p c quy trình, các ph ng pháp, các công c phát tri n ph n m m máy tính Nhuongld. Software Engineering, 2007
  17. 3.3 nh ngh a Công ngh h c ph n m m (ti p) ngh 3.3 Sommerville [1995]: CNHPM 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 mm K. Kawamura [1995]: CNHPM 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 nh ng nguyên t c, nguyên lý nào ó) 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 Nhuongld. Software Engineering, 2007
  18. 3.3 nh ngh a Công ngh h c ph n m m (ti p) ngh 3.3 Công ngh h c ph n m m là l nh v c khoa h c v các ph ng pháp lu n, k thu t và công c tích h p trong quy trình s n xu t và v n hành ph n m m nh m t o ra ph n m m v i nh ng ch t l ng mong mu n [Software Engineering is a scientìic field to deal with methodologies, techniques and tools integrated in software production-maintenance process to obtain software with desired qualities] Nhuongld. Software Engineering, 2007
  19. Công ngh Công ngh h c trong CNHPM ? (1) Nh các ngành công ngh h c khác, CNHPM c'ng l y các ph ng pháp khoa h c làm c s$ (2) Các k! thu t v thi t k , ch t o, ki m th và b o trì ph n mm ã c h th"ng hóa hóa thành ph ng pháp lu n và hình thành nên CNHPM (3) 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 và ph ng pháp lu n tr$ thành các ch khác nhau trong CNHPM Nhuongld. Software Engineering, 2007
  20. Công Công ngh h c trong CNHPM ? (ti p) (4) 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 và b o d ng (tính quan tr ng c a thi t k và b o d ng) (5) 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 (6) Cách ti p c n công ngh h c (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) và tin c y c a ph n m m, (ng th i gi m chi phí giá thành Nhuongld. Software Engineering, 2007
nguon tai.lieu . vn