CÔNG NGHỆ PHẦN MỀM - Chương 4
lượt xem 72
download
Tham khảo tài liệu 'công nghệ phần mềm - chương 4', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: CÔNG NGHỆ PHẦN MỀM - Chương 4
- Các k thu t ñ c t (4) Nguy n Thanh Bình Khoa Công ngh Thông tin Trư ng ð i h c Bách khoa ð i h c ðà N ng N i dung Khái ni m ñ c t T i sao ph i ñ c t ? Phân lo i các k thu t ñ c t Các k thu t ñ c t 2 1
- Khái ni m ñ c t ð c t (specification) ñ nh nghĩa m t h th ng, mô-ñun hay m t s n ph m c n ph i làm cái gì không mô t nó ph i làm như th nào mô t nh ng tính ch t c a v n ñ ñ t ra không mô t nh ng tính ch t c a gi i pháp cho v n ñ ñó 3 Khái ni m ñ c t ð c t là ho t ñ ng ñư c ti n hành trong các giai ño n khác nhau c a ti n trình ph n m m: ð c t yêu c u (requirement specification) • s th ng nh t gi a nh ng ngư i s d ng tương lai và nh ng ngư i thi t k ð c t ki n trúc h th ng (system architect specification) • s th ng nh t gi a nh ng ngư i thi t k và nh ng ngư i cài ñ t ð c t môñun (module specification) • s th ng nh t gi a nh ng ngư i l p trình cài ñ t mô-ñun và nh ng ngư i l p trình s d ng mô-ñun 4 2
- T i sao ph i ñ c t ? H p ñ ng s th ng nh t gi a ngư i s d ng và ngư i phát tri n s n ph m H p th c hóa s n ph m làm ra ph i th c hi n chính xác nh ng gì mong mu n Trao ñ i gi a ngư i s d ng và ngư i phát tri n gi a nh ng ngư i phát tri n Tái s d ng 5 Phân lo i các k thu t ñ c t ð c t phi hình th c (informal) ngôn ng t nhiên t do ngôn ng t nhiên có c u trúc các kí hi u ñ h a ð c t n a hình th c (semi-informal) tr n l n c ngôn ng t nhiên, các kí hi u toán h c và các kí hi u ñ h a ð c t hình th c (formal) kí hi u toán h c • ngôn ng ñ c t • ngôn ng l p trình 6 3
- ð c t hình th c hay không hình th c ? ð c t hình th c chính xác (toán h c) h p th c hóa hình th c (công c hóa) công c trao ñ i: khó ñ c, khó hi u khó s d ng ð c t không hình th c d hi u, d s d ng m md o thi u s chính xác nh p nh ng 7 ng d ng ñ c t hình th c ng d ng trong các giai ño n s m c a ti n trình phát tri n h n ch l i trong phát tri n ph n m m ng d ng ch y u trong phát tri n các h th ng “quan tr ng” (critical systems) h th ng ñi u khi n h th ng nhúng h th ng th i gian th c 8 4
- Chi phí phát tri n khi s d ng ñ c t hình th c 9 Các k thu t ñ c t Trình bày m t s k thu t Máy tr ng thái h u h n M ng Petri ði u ki n trư c và sau Ki u tr u tư ng ð ct Z 10 5
- Máy tr ng thái h u h n (state machine) mô t các lu ng ñi u khi n b i u d i n d n g ñ th bao g m t p h p các tr ng thái S (các nút c a ñ th ) t p h p các d li u vào I (các nhãn c a các cung) t p h p các chuy n ti p T : S x I → S (các cung có hư ng c a ñ th ) • khi có m t d li u vào, m t tr ng thái chuy n sang m t tr ng thái khác 11 Máy tr ng thái h u h n ði ð t máy xu ng ð t máy xu ng Ví d 1 Nh c máy Âm m i quay s B ms Th i gian ñ i k t thúc S sai Thông báo Quay s quay s sai S ñúng K tn i Máy b n K t n i ñư c ð chuông Thuê bao ñư c g i nh c máy 12 ðàm tho i 6
- Máy tr ng thái h u h n Ví d 2 H th ng c n mô t bao g m m t nhà s n xu t, m t nhà tiêu th và m t kho hàng ch ch a ñư c nhi u nh t 2 s n ph m Nhà s n xu t có 2 tr ng thái • P1: không s n xu t • P2: ñang s n xu t Nhà tiêu th có 2 tr ng thái • C1: có s n ph m ñ tiêu th • C2: không có s n ph m ñ tiêu th Nhà kho có 3 tr ng thái • ch a 0 s n ph m • ch a 1 s n ph m • ch a 2 s n ph m 13 Máy tr ng thái h u h n Gi i pháp 1: mô t tách r i các thành ph n L y t kho S n xu t P2 C2 P1 C1 G i vào kho Tiêu th G i vào kho G i vào kho 1 2 0 L y t kho L y t kho 14 7
- Máy tr ng thái h u h n Gi i pháp 1 không mô t ñư c s ho t ñ ng h t h ng c n mô t s ho t ñ ng k t h p các thành ph n c a h th ng 15 Máy tr ng thái h u h n Gi i pháp 2: mô t k t h p các thành ph n G i vào kho G i vào kho S n xu t S n xu t S n xu t L y t kho L y t kho Tiêu th Tiêu th Tiêu th L y t kho L y t kho Tiêu th Tiêu th Tiêu th S n xu t S n xu t S n xu t G i vào kho G i vào kho 16 8
- Máy tr ng thái h u h n Gi i pháp 2 mô t ñư c ho t ñ ng c a h th ng s tr ng thái l n bi u di n h th ng ph c t p h n ch khi ñ c t nh ng h th ng không ñ ng b o các thành ph n c a h th ng ho t ñ ng song song ho c c nh tranh 17 M ng Petri (Petri nets) thích h p ñ mô t các h th ng không ñ ng b v i nh ng ho t ñ ng ñ ng th i mô t lu ng ñi u khi n c a h th ng ñ xu t t năm 1962 b i Carl Adam Có hai lo i m ng Petri (c ñi n) m ng Petri m r ng 18 9
- M ng Petri G m các ph n t m t t p h p h u h n các nút ( ) m t t p h p h u h n các chuy n ti p ( ) m t t p h p h u h n các cung (→) • các cung n i các nút v i các chuy n ti p ho c ngư c l i m i nút có th ch a m t ho c nhi u th ( ) 19 M ng Petri Ví d t2 p2 t1 p1 p4 t3 p3 20 10
- M ng Petri M ng Petri ñư c ñ nh nghĩa b i s ñánh d u các nút c a nó Vi c ñánh d u các nút ñư c ti n hành theo nguyên t c sau: m i chuy n ti p có các nút vào và các nút ra n u t t c các nút vào c a m t chuy n ti p có ít nh t m t th , thì chuy n ti p này là có th vư t qua ñư c, n u chuy n ti p này ñư c th c hi n thì t t c các nút vào c a chuy n ti p s b l y ñi m t th , và m t th s ñư c thêm vào t t c các nút ra c a chuy n ti p n u nhi u chuy n ti p là có th vư t qua thì ch n chuy n ti p nào cũng ñư c 21 M ng Petri Ví d t1 t2 t1 không th vư t qua ñư c t2 có th vư t qua ñư c t3 ho c t3 ñư c vư t qua ho c t4 ñư c vư t qua t4 22 11
- M ng Petri Ví d t2 t2 khi t2 ñư c vư t qua 23 M ng Petri Ví d 24 12
- M ng Petri Ví d 1: mô t ho t ñ ng c a ñèn giao thông red yr yellow rg gy 25 green M ng Petri Ví d 1: mô t ho t ñ ng c a 2 ñèn giao thông red2 red1 yr1 yr2 rg2 yellow1 yellow2 rg1 gy2 gy1 26 green2 green1 13
- M ng Petri Ví d 1: mô t ho t ñ ng an toàn c a 2 ñèn giao thông red2 red1 safe yr1 yr2 rg1 yellow2 rg2 yellow1 gy1 gy2 27 green2 green1 M ng Petri Ví d 1: mô t ho t ñ ng an toàn và h p lý c a 2 ñèn giao thông red1 red2 safe2 yr1 yr2 rg1 rg2 yellow1 yellow2 gy1 gy2 safe1 28 green2 green1 14
- M ng Petri Ví d 2: mô t chu kỳ s ng c a m t ngư i tr con d y thì cư i thanh niên có v có ch ng ly hôn 29 ch t ch t M ng Petri Ví d 3: vi t thư và ñ c thư begin receive_mail mail_box rest rest type_mail read_mail send_mail ready Mô t trư ng h p 1 ngư i vi t và 2 ngư i ñ c ? Mô t trư ng h p h p thư nh n ch ch a nhi u nh t 3 thư ? 30 15
- M ng Petri Ví d 4: tình hu ng ngh n (dead-lock) P1 P2 P3 t1 t2 P4 P5 t3 t4 P7 P6 t5 t6 P8 P9 2 2 t7 t8 31 M ng Petri Ví d 4: gi i pháp ch ng ngh n P1 P2 P3 t1 t2 P4 P5 t3 t4 2 2 P7 P6 t5 t6 P8 P9 2 2 t7 t8 32 16
- M ng Petri Ví d 5 H th ng c n mô t bao g m m t nhà s n xu t, m t nhà tiêu th và m t kho hàng ch ch a ñư c nhi u nh t 2 s n ph m Nhà s n xu t có 2 tr ng thái • P1: không s n xu t • P2: ñang s n xu t Nhà tiêu th có 2 tr ng thái • C1: có s n ph m ñ tiêu th • C2: không có s n ph m ñ tiêu th Nhà kho có 3 tr ng thái • ch a 0 s n ph m • ch a 1 s n ph m • ch a 2 s n ph m 33 M ng Petri Ví d 5: mô t tách r i m i thành ph n S n xu t L y t kho C1 C2 P1 P2 Tiêu th G i vào kho G i vào kho G i vào kho 1 2 0 L y t kho L y t kho 34 17
- M ng Petri Ví d 5: mô t k t h p các thành ph n S n xu t P1 G i vào kho P2 G i vào kho L y t kho 2 0 1 L y t kho C1 C2 Tiêu th 35 ði u ki n trư c và sau (pre/post condition) ñư c dùng ñ ñ c t các hàm ho c mô-ñun ñ c t các tính ch t c a d li u trư c và sau khi th c hi n hàm pre-condiition: ñ c t các ràng bu c trên các tham s trư c khi hàm ñư c th c thi post-condition: ñ c t các ràng bu c trên các tham s sau khi hàm ñư c th c thi có th s d ng ngôn ng phi hình th c, hình th c ho c ngôn ng l p trình ñ ñ c t các ñi u ki n 36 18
- ði u ki n trư c và sau Ví d : ñ c t hàm tìm ki m function search ( a : danh sách ph n t ki u K, size : s phân t c a dánh sách, e : ph n t ki u K, result : Boolean ) ∀i, 1 ≤ i ≤ n, a[i] ≤ a[i+1] pre result = (∃i, 1 ≤ i ≤ n, a[i] = e) post 37 ði u ki n trư c và sau Bài t p: ñ c t các hàm S p x p m t danh sách các s nguyên 1. ð o ngư c các ph n t c a m t danh 2. sách ð m s ph n t có giá tr e trong m t danh 3. sách các s nguyên 38 19
- Ki u tr u tư ng (abstract types) Mô t d li u và các thao tác trên d li u ñó m t m c tr u tư ng ñ c l p v i cách cài ñ t d li u b i ngôn ng l p trình ð c t m t ki u tr u tư ng g m: tên c a ki u tr u tư ng • dùng t khóa sort khai báo các ki u tr u tư ng ñã t n t i ñư c s d ng • dùng t khóa imports các thao tác trên trên ki u tr u tư ng • dùng t khóa operations 39 Ki u tr u tư ng Ví d 1: ñ c t ki u tr u tư ng Boolean sort Boolean operations : → Boolean true : → Boolean false ¬_ : Boolean → Boolean _∧_ : Boolean x Boolean → Boolean _∨_ : Boolean x Boolean → Boolean m t thao tác không có tham s là m t h ng s m t giá tr c a ki u tr u tư ng ñ nh nghĩa ñư c bi u di n b i kí t “_” 40 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Kỹ thuật phần mềm- Bài 4: Phân tích, đặc tả và yêu cầu
0 p | 159 | 69
-
NGÂN HÀNG CÂU HỎI MÔN: CÔNG NGHỆ PHẦN MỀM
4 p | 404 | 41
-
Bài giảng công nghệ phần mềm : Kiểm thử và Bảo trì part 4
5 p | 101 | 28
-
Đề thi cuối kỳ môn Công nghệ phần mềm - Trường CĐ Kỹ thuật Cao Thắng
1 p | 429 | 18
-
Giáo Trình Công Nghệ Phần Mềm part 4
23 p | 123 | 17
-
Bài giảng Công nghệ phần mềm: Bài 4 - TS. Lê Nguyễn Tuấn Thành
93 p | 82 | 15
-
Bài giảng công nghệ phần mềm : Thiết kế và Lập trình part 4
6 p | 103 | 14
-
Bài giảng công nghệ phần mềm : Các chủ đề khác trong SE part 2
5 p | 100 | 13
-
Bài giảng Công nghệ phần mềm: Bài 4 - Học viện Kỹ thuật Quân sự
65 p | 21 | 12
-
Bài giảng Bộ môn Công nghệ phần mềm - Bài 4: Thiết kế hệ thống phần mềm
65 p | 74 | 9
-
Bài giảng công nghệ phần mềm : Các chủ đề khác trong SE part 4
5 p | 90 | 9
-
Bài giảng Nhập môn công nghệ phần mềm: Chủ đề 4 - Lương Trần Hy Hiến
67 p | 79 | 5
-
Hiệu quả hoạt động của mô hình khu công nghệ thông tin tại TP. Hồ Chí Minh trong bối cảnh cuộc cách mạng công nghiệp lần thứ 4. Trường hợp Công viên Phần mềm Quang Trung (QTSC)
17 p | 34 | 5
-
Bài giảng Nhập môn công nghệ phần mềm: Chủ đề 4 - Lương Trần Hy Hiến (tt)
21 p | 56 | 4
-
Bài giảng Nhập môn Công nghệ phần mềm: Tuần 4 - Nguyễn Thị Minh Tuyền
60 p | 14 | 4
-
Bài giảng Nhập môn công nghệ phần mềm: Chủ đề 4 - Lương Trần Hy Hiến (P3)
64 p | 46 | 3
-
Bài tập Nhập môn công nghệ phần mềm (Introduction to software engineering) - Bài tập tuần 03: Phương pháp Agile & các hoạt động của Agile
5 p | 50 | 3
-
Giáo án thảo luận: Công nghệ phần mềm
27 p | 70 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn