Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 62 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
62
Dung lượng
1,92 MB
Nội dung
LỜI CẢM ƠN Trước hết em xin bày tỏ lòng biết ơn sâu sắc thầy giáo hướng dẫn Thạc sĩ Nguyễn Trọng Thể, Khoa Công Nghệ Thông Tin - Trường Đại học Dân lập Hải Phịng; giáo hướng dẫn Thạc sĩ Đào Thị Kiên, Khoa Công Nghệ Thơng tin Trường Cao đẳng Cộng đồng Hải Phịng tận tình giúp đỡ, bảo em năm học qua dành nhiều thời gian q báu để giúp em hồn thành báo cáo thực tập giao Em xin gửi lời cảm ơn đến Ban giám hiệu, thầy cô giáo Trường Đại học Dân lập Hải Phòng giảng dạy chúng em suốt quãng thời gian qua, cung cấp cho chúng em kiến thức chuyên môn cần thiết quý báu giúp chúng em hiểu rõ lĩnh vực nghiên cứu để hoàn thành đề tài giao Xin cảm ơn bạn bè gia đình động viên cổ vũ, đóng góp ý kiến, trao đổi, động viên suốt trình học làm tốt nghiệp, giúp em hoàn thành đề tài thời hạn Hải Phòng, tháng năm 2009 Sinh viên Vũ Thị Tuyết Minh Báo cáo đồ án tốt nghiệp MỤC LỤC MỞ ĐẦU CHƢƠNG 1: TÁI KỸ NGHỆ PHẦN MỀM 1.1 Tổng quan tái kỹ nghệ .5 1.1.1 Bảo trì 1.1.2 Tái kỹ nghệ 1.2 Dịch mã nguồn 10 1.3 Kỹ nghệ ngược 12 1.4 Phát triển trúc chương cấu trình 13 1.5 Mơdul hóa chương trình .17 1.6 Tái kỹ nghệ liệu .18 1.7 Kết luận 19 CHƢƠNG 2: CÁC CÔNG CỤ TRỢ GIÚP TÁI KỸ NGHỆ 20 2.1 Giới thiệu công cụ Rational Software Architecture 20 2.2 Cơng cụ lập trình nhúng .25 2.3 Dịch xuôi, dịch ngược Rational Software Architecture 26 2.4 Thiết kế hệ thống Rational Software Architecture 27 CHƢƠNG TÁI KỸ NGHỆ TRONG HỆ THỐNG CẢNH BÁO THIÊN TAI 37 3.1 Cấu trúc hệ thống cảnh báo thiên tai 37 3.2 Hệ thống cảnh báo thiên tai Error! Bookmark not defined 3.2.1 Mô tả hệ thống cảnh báo thiên tai Error! Bookmark not defined 3.2.2 Ưu điểm hệ thống cảnh báo thiên tai 40 3.2.3 Nhược điểm hệ thống cảnh báo thiên tai 41 3.3 Tái kĩ nghệ hệ thống cảnh báo thiên tai 42 3.3.1 Lựa chọn giải pháp tái kĩ nghệ 42 3.4 Tiến trình tái kỹ nghệ hệ thống cảnh báo thiên tai .44 3.4.1 Sơ đồ tiến trình 44 3.4.2 Các bước thực 44 Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp 3.4.2.1 Từ mã nguồn hệ thống chuyển sang mơ hình trực quan 45 3.4 2.2 Từ mơ hình trực quan cấu trúc lại chương trình 47 3.4.2.3 Modul hóa tiến trình .51 3.4.2.4 Tái kỹ nghệ liệu .53 3.4.2.5 Tiến trình dịch chương trình 53 3.5 Quy trình nạp phần mền cho nút mạng vận hành hệ thống 54 3.6 Kết đạt số đánh giá 56 3.6.1 Cấp nguồn cho nút gốc nút mạng 56 3.6.2 Đánh giá kết qua phép đo .58 3.6.3 Nhận xét .58 KẾT LUẬN 60 TÀI LIỆU THAM KHẢO 61 Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp MỞ ĐẦU Chúng ta bước vào kỷ ngun cơng nghệ thơng tin Máy tính với hàng loạt hệ thống phần mềm ngày trở nên thân thiện, cần thiết thiếu lĩnh vực hoạt động người Phần mềm ngày hoàn thiện, nâng cao chất lượng phát triển với kích thước lớn Nhưng bên cạnh đó, bùng nổ thơng tin làm cho loạt hoạt động ln bị thay đổi Đó thay đổi môi trường, thay đổi công nghệ, thay đổi nghiệp vụ Để khắc phục thay đổi người ta thường đưa hệ thống vào bảo trì Cơng việc bảo trì phần mềm xem xét pha tốn pha vòng đời phần mềm Người ta ước tính chi phí cho xấp xỉ 70% tổng cơng sức chi phí phát triển phần mềm[1] Nhưng xây dựng lại hệ thống chưa phải giải pháp hay, ta phải bỏ phần hữu dụng phần mềm Hơn nữa, chi phí cho việc làm phần mềm tốn Làm để hàng loạt hệ thống phần mềm lớn, cũ, hoạt động thích nghi với thay đổi với mức chi phí thay đổi chấp nhận Tái kỹ nghệ phần mềm trả lời cho câu hỏi Tái kỹ nghệ phần mềm hoạt động tiến hóa hệ thống phần mềm để tiếp tục sử dụng cho hiệu quả, giúp ta dễ dàng đỡ tốn việc bảo trì sau Những phần mềm sử dụng thời gian dài có nhiều nhược điểm như: xây dựng ngôn ngữ cũ mà khơng cịn dùng nữa, tài liệu viết cho phần mềm bị hỏng thiếu việc cất giữ cập nhật chưa tốt, tính hoạt động bị hạn chế hoạt động nghiệp vụ có thay đổi, … Giải pháp tốt giúp ta tiếp tục sử dụng phần mềm tái kỹ nghệ Tái kỹ nghệ giải pháp tốt nói giải pháp để đạt mục đích với chi phí rẻ Hơn nữa, đảm bảo an tồn cho hoạt động nghiệp vụ hệ thống làm việc Về mặt khoa học, tái kỹ nghệ đưa giải pháp tiến hóa hệ thống phần mềm cơng cụ phương tiện với quy trình khép kín hồn thiện tiện Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp dụng Về mặt thực tiễn, hướng giải tốt, vừa đáp ứng nhu cầu tái thiết kế hệ thống cũ, vừa đem lại hiệu lớn thiết thực mặt kinh tế Đồ án đề cập tới việc tái kỹ nghệ phần mềm qua minh hoạ kết hợp thiết kế hướng đối tượng với công nghệ tái kỹ nghệ có sử dụng quy trình tái kỹ nghệ cho ứng dụng cho hệ thống cảnh báo hiểm hoạ thiên tai sử dụng hệ thống mạng cảm nhận không dây WSN Đề tài gồm ba chương: Chương 1: Trình bày quy trình tái kỹ nghệ hệ thống phần mềm Chương 2: Trình bày cơng cụ trợ giúp trình tái kỹ nghệ phần mềm Chương 3: Tái kĩ nghệ hệ thống cảnh báo thiên tai Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp CHƢƠNG 1: TÁI KỸ NGHỆ PHẦN MỀM 1.1 Tổng quan tái kỹ nghệ Sau thời gian sử dụng, phần mềm cần phải bảo trì để đáp ứng yêu cầu phát sinh người sử dụng, công nghệ mới, thay đổi hoạt động nghiệp vụ theo thời gian Đúng theo nghĩa vòng đời hệ thống phần mềm, ta lại bắt đầu cơng việc: phân tích, thiết kế, cài đặt, kiểm thử mức cao Có nhiều cách thực việc bảo trì hệ thống phần mềm có nhiều cơng cụ để thiết kế lại phần mềm Mỗi công cụ thiết kế lại phần mềm có ưu nhược điểm riêng, tuỳ theo hồn cảnh thực tế mà ta lựa chọn công cụ cho hiệu Trong em trình bày số vấn đề tái thiết kế hệ thống phần mềm UML (Unified Modeling Language) 1.1.1 Bảo trì Bảo trì hệ thống nhằm bảo đảm cho hệ thống tiếp tục hoạt động sau thực trắc nghiệm hay sau đưa hệ thống vào hoạt động thực tế Bảo trì phần mềm bao gồm sửa đổi làm hệ thống thích nghi với yêu cầu thay đổi người sử dụng, thay đổi liệu cho phù hợp, gỡ rối, khử bỏ sửa chữa sai sót mà trước chưa phát Các hoạt động bảo trì phần mềm bao gồm[5] : Trong trình kiểm thử, theo dõi trình hoạt động hệ thống phần mềm, ta phát tất lỗi, sai sót tiềm tàng hệ thống, tất lỗi gói tin cho chuyên gia phát triển phần mềm để họ cập nhật lại Tiến trình gọi bảo trì sửa chữa Theo thời gian, khía cạnh xử lý hệ thống phần cứng thay đổi; môi trường làm việc hệ điều hành thay đổi; thiết bị ngoại vi phần tử hệ thống nâng cấp; yêu cầu khách hàng cho hệ thống thay đổi Điều dẫn tới việc phải thay đổi hệ thống phần mềm cho phù hợp với yêu cầu thay đổi trên, q trình gọi bảo trì thích nghi Khi hệ thống phần mềm thành công đưa vào sử dụng, người ta nhận khuyến cáo khả mới, chức cần bổ sung nâng cao… Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Đó q trình nâng cấp hệ thống phần mềm cho phù hợp tiện dụng hơn, gọi bảo trì hồn thiện Hệ thống cần phải thay đổi để đảm bảo tính tin cậy, an toàn tương lai, tạo sở tốt cho việc nâng cao chất lượng tương lai, tiến trình gọi bảo trì phịng ngừa, hoạt động đặc trưng kĩ thuật đảo ngược tái kĩ nghệ Các cơng cụ bảo trì phần mềm chia theo chức sau: Kĩ nghệ ngược với công cụ đặc tả: nhận chương trình gốc làm đầu vào sinh mơ hình phân tích thiết kế có cấu trúc đồ thị, thông tin thiết kế khác Cơng cụ tái cấu trúc phân tích mã : phân tích cú pháp chương trình, sinh đồ thị luồng điều khiển, sinh tự động chương trình có cấu trúc Cơng cụ tái kĩ nghệ hệ thống trực tuyến: dùng để thay đổi hệ thống sở liệu trực tuyến Bảo trì giai đoạn cuối tiến trình kĩ nghệ phần mềm, tiêu tốn nhiều thời gian, cơng sức kinh phí Tái kỹ nghệ cơng nghệ đặc trưng giúp cho việc bảo trì hệ thống phần mềm hiệu nhanh chóng 1.1.2 Tái kỹ nghệ Các sản phẩm công nghệ sử dụng nhiều, cổ điển, chúng thường hay bị hỏng, nhiều thời gian cho việc sửa chữa không đạt trình độ cơng nghệ Vậy ta phải làm gì? Nếu sản phẩm phần cứng thay thiết bị mới, cịn phần mềm lựa chọn khơng có sẵn lúc cần thiết phải xây dựng lại Ta phải tạo sản phẩm mà chức khác thêm vào, hiệu tốt hơn, độ tin cậy cao khả bảo trì cải thiện Đó gọi tái kỹ nghệ Q trình tái kỹ nghệ bao gồm phân tích, cấu trúc lại tài liệu, kỹ nghệ ngược, cấu trúc lại mã, cấu trúc lại liệu, kỹ nghệ xi Mục đích hoạt động tạo phiên chương trình tồn tại, để có chất lượng cao bảo trì tốt Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Sản phẩm việc tái kỹ nghệ đa dạng như: mẫu phân tích, mẫu thiết kế, thủ tục kiểm thử, Đầu cuối việc tái kỹ nghệ tiến trình nghiệp vụ và/hoặc tái kỹ nghệ phần mềm Trong thực tế, khơng hệ thống phần mềm thương mại hệ thống cũ, cần để hỗ trợ cho tiến trình nghiệp vụ Các công ty cần hệ thống đến mức họ phải giữ chúng hoạt động Chiến lược phát triển phần mềm bao gồm việc giữ lại, thay phát triển kiến trúc q trình tái kỹ nghệ phần mềm Tái kỹ nghệ phần mềm đề cập đến việc làm lại hệ thống hoạt động để chúng tiếp tục hoạt động tốt dễ bảo trì sau Tái kỹ nghệ bao gồm việc làm lại tài liệu hệ thống, tổ chức cấu trúc lại hệ thống, biên dịch hệ thống sang ngơn ngữ lập trình đại hơn, chỉnh sửa, cập nhật cấu trúc lượng giá liệu hệ thống Thơng thường, chức phần mềm khơng thay đổi hệ thống cấu trúc giữ lại Từ khía cạnh kỹ thuật, tái kỹ nghệ phần mềm xem giải pháp thứ hai cho vấn đề tiến hóa hệ thống Kiến trúc phần mềm không cập nhật hệ thống trung tâm phân tán Nó khơng thể thay đổi hồn tồn ngơn ngữ lập trình hệ thống, hệ thống cũ khơng thể chuyển đổi sang ngơn ngữ lập trình hướng đối tượng Java C++ vốn có giới hạn hệ thống giữ lại chức phần mềm không thay đổi Tuy nhiên, từ quan điểm nghiệp vụ, tái kỹ nghệ phần mềm nhằm để bảo đảm hệ thống cũ tiếp tục sử dụng Nó đắt gặp nhiều rủi ro cách tiếp cận khác cho việc tiến hóa hệ thống Để hiểu điều này, cần đưa đánh giá thô vấn đề hệ thống cũ Tái kỹ nghệ hệ thống phần mềm có ưu điểm cách tiếp cận phát triển hệ thống; vì: Giảm rủi ro: có rủi ro lớn việc phát triển phần mềm, tất yếu với tổ chức Các lỗi tạo đặc tả hệ thống, nảy sinh vấn đề, không ổn định hệ thống, v.v Giảm giá thành: Giá thành việc tái kỹ nghệ thấp đáng kể so với giá phát triển phần mềm Ulrich (1990) đưa ví dụ hệ thống cũ, Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp giá xây dựng ước lượng khoảng 50 triệu đôla Hệ thống tái kỹ nghệ thành công với giá khoảng 12 triệu đô la Nếu số điển hình tái kỹ nghệ rẻ viết lại Đặc tả hệ thống Thiết kế triển khai Hệ thống Hiểu chuyển đổi Hệ thống tái kỹ nghệ Kỹ nghệ xuôi Hệ thống phần mềm tồn Tái kỹ nghệ phần mềm Hình 1-1 Tiến trình kỹ nghệ phần mềm xi tái kỹ nghệ phần mềm Hình 1.1 minh hoạ tiến trình tái kỹ nghệ khả thi Đầu vào tiến trình chương trình kế thừa đầu cấu trúc, phiên hiệu chỉnh chương trình Ở thời điểm chương trình tái kỹ nghệ, liệu cho hệ thống tái kỹ nghệ Các hoạt động tiến trình tái kỹ nghệ là: Chuyển đổi mã nguồn: Chương trình chuyển đổi từ ngơn ngữ lập trình phiên cũ sang phiên sang ngôn ngữ khác Kỹ nghệ ngược: Chương trình phân tích trích thơng tin từ để giúp làm tài liệu tổ chức chức Cải tiến cấu trúc chương trình: Cấu trúc điều khiển chương trình phân tích chỉnh sửa làm cho dễ đọc dễ hiểu Modul hóa chương trình: Việc thay phần chương trình nhóm với làm cho phù hợp, bổ sung modul bỏ dư thừa Trong số trường hợp, giai đoạn bao gồm biến đổi kiến trúc Tái kỹ nghệ liệu: Dữ liệu xử lý chương trình thay đổi tương ứng với thay đổi chương trình Chương trình tái kỹ nghệ khơng cần thiết yêu cầu tất bước hình 1.2 Việc chuyển mã nguồn khơng cần thiết ngơn ngữ lập trình dùng để phát triển hệ thống cịn hỗ trợ cơng ty cung cấp trình biên dịch Nếu tái kỹ Vũ Thị Tuyết Minh_CT902 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp nghệ hoàn toàn dựa vào cơng cụ tự động tài liệu lấy thơng qua tái kỹ nghệ khơng cần thiết Tái kỹ nghệ liệu yêu cầu cấu trúc liệu chương trình thay đổi tái kỹ nghệ hệ thống đòi hỏi Tuy nhiên, tái kỹ nghệ phần mềm bao gồm số chương trình cấu trúc lại Chương trình gốc Tài liệu chương trình Chương trình modul hóa Dữ liệu gốc Kỹ nghệ đảo ngược Dịch sang mã Modul hóa chương trình Tái kỹ nghệ liệu Chương trình cấu trúc lại Dữ liệu tái kỹ nghệ Cải tiến cấu trúc chương trình Hình 1-2 Tiến trình tái kỹ nghệ phần mềm Giá việc tái kỹ nghệ rõ ràng phụ thuộc vào mức độ khó khăn cơng việc thực Có nhiều cách tiếp cận khả thi với tái kỹ nghệ hình 1.3 Giá tái kỹ nghệ tăng từ trái sang phải: từ mức phải chuyển đổi mã nguồn (là rẻ ) đến mức cao phải thay đổi lại toàn cấu trúc Tự động kết cấu lại chương trình Kết cấu lại liệu chương trình Tự động kết cấu lại với thay đổi thủ công Tự động chuyển đổi mã nguồn Cấu trúc lại với thay đổi kiến trúc Hình 1-3 Các cách tiếp cận tái kỹ nghệ Vũ Thị Tuyết Minh_CT902 Giá tăng Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Hình 3-8 Cửa sổ hình soạn thảo mã nguồn 3.4 2.2 Từ mơ hình trực quan cấu trúc lại chƣơng trình a Kỹ nghệ ngược Kỹ nghệ ngược thường tái kỹ nghệ trước đó, hệ thống kỹ nghệ ngược đầu vào cho tiến trình đặc tả yêu cầu, hỗ trợ trình bảo trì sau Để phân tích phần mềm phải dựa quan điểm hiểu thiết kế đặc tả nó, phần tiến trình tái kỹ nghệ, q trình cụ thể hóa lại hệ thống cho việc cài đặt lại Nhờ xây dựng liệu chương trình sinh liệu từ Vũ Thị Tuyết Minh_CT902 47 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Cấu trúc chương trình Phân tích tự động Tạo tài liệu Hệ thống cảnh báo Diễn giải thủ công Cấu trúc liệu Các thực thể chức Hình 3-9 Sơ đồ tiến trình cấu trúc chương trình Việc áp dụng quy trình tái kỹ nghệ cho hệ thống cảnh báo thiên tai với mạng cảm nhận khơng dây có đề cập vấn đề cấu trúc lại chương trình, liệu cải thiện số chức chương trình để phù hợp với yêu cầu mở rộng hệ thống tiết kiệm lượng cho mạng, đồng thời giúp hiểu hệ thống dễ bảo trì sau Tiết kiệm lượng cho nút mạng cảm nhận không dây nhằm kéo dài thời gian sống nút mạng, cụ thể là: tiết kiệm lượng dựa hoạt động truyền nhận không dây, dựa việc thiết lập chế độ làm việc nó, ngồi phụ thuộc yếu tố tiêu thụ điện thiết bị phần cứng Việc thay đổi chế độ cách chuyển đổi chế độ hệ vi xử lý CC1010 thông qua tần số giúp cho việc thay đổi chế độ làm việc nút mạng WSN cách linh hoạt phần mềm nhúng Khi chọn chế độ thực phần mềm có chuyển đổi chế độ làm việc nhờ đưa vào thông số thời gian cho nút mạng trình thiết lập hợp lý mang lại tiết kiệm lượng đáng kể b Cấu trúc lại chương trình Cải thiện cấu trúc chương trình trình sửa lại cấu trúc điều khiển sai vịng lặp đơn giản hóa lại điều kiện Ví dụ: Điều kiện phức tạp: if not (A > B and (C < D or not ( E > F) ) ) Điều kiện đơn giản hóa: if (A = D or E > F) Vũ Thị Tuyết Minh_CT902 48 Trường Đại học Dân Lập Hải Phịng Báo cáo đồ án tốt nghiệp Chương trình cần kiến trúc lại Chương trình kiến trúc lại Phân tích, xác định cấu trúc điều khiển Bộ sinh mã chương trình Trình diễn biểu đồ Hình 3-10 Tiến trình kiến trúc lại chương trình Trong trình tổ chức lại chương trình, hệ thống chỉnh sửa với hai thuật tốn: thuật tốn chương trình thu nhận nhiện độ thuật toán định tuyến giá tối thiểu Do vi điều khiển bị ràng buộc mặt tài ngun nên địi hỏi chương trình đưa vào vi điều khiển phải ngắn gọn, tiết kiệm nhớ song đảm bảo cho việc viết chương trình nhanh, bảo trì nâng cấp dễ dàng Thuật tốn chương trình thu nhận nhiệt độ mơ tả sau: Khởi tạo tham số: - Khởi tạo ADC, RF - Về chế độ nghỉ F Đến thời điểm phát số liệu? T - Wake up C1010 - Thu thập số liệu (cảm nhận) - Phát số liệu cho nút gốc - Trở chế độ nghỉ Hình 3-11 Thuật toán làm việc thu nhận nút mạng cảm nhận Vũ Thị Tuyết Minh_CT902 49 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Ý nghĩa bước lưu đồ thuật toán: Bước 1: Khởi tạo: Khởi tạo ADC: + Đặt biến đổi ADC chế độ đơn (10 bit) + Đặt điện áp tham chiếu 1.25V Khởi tạo RF: Thiết lập tần số RF: 433MHz, 868MHz, 915MHz Cách điều chế tín hiệu: mã hố Manchester Cơng suất phát: dBm Xác định tốc độ truyền liệu: 2.4kb/s Về chế độ nghỉ: Thiết lập giá trị bit PCON.IDLE = 01h Bước 2: Thời điểm phát số liệu thời điểm xung nhịp đồng hồ thời gian thực – RTC đếm 15s sau nút mạng chuyển chế độ nghỉ Nếu True : nút mạng chuyển sang trạng thái bước Nếu False : nút mạng quay trở lại trạng thái nghỉ Bước 3: Wake up C1010: Nút mạng thức dậy chuyển sang chế độ hoạt động, giá trị bit PCON.IDLE thay đổi Thu thập số liệu (cảm nhận): Cảm biến thực chức cảm nhận, thu thập thơng tin, sau đưa tín hiệu dạng tương tự cho vi điều khiển Tại vi điều khiển, ADC chuyển tín hiệu sang dạng số đọc giá trị vừa chuyển đổi Phát số liệu cho nút gốc: Bộ thu phát RF bật TX để thực truyền số liệu cảm nhận nút gốc Trở chế độ nghỉ: Thiết lập giá trị cho bit PCON.IDLE = Vũ Thị Tuyết Minh_CT902 50 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp 3.4.2.3 Modul hóa tiến trình Tiến trình tổ chức lại chương trình thành phần liên quan tập hợp lại với thành modul Việc kiểm tra tổ chức lại chương trình thường thực thủ cơng Chương trình hệ thống cảnh báo nên cấu trúc lại sau: − Các thư viện hệ thống tập hợp thành Modul systems − Thư viện chuẩn C/C++ thành modul thư viện C/C++ − Tập hợp hàm có sử dụng việc định nghĩa phần cứng Hardware Definition Files thành modul HDF − Tập hợp hàm có sử dụng giao thức truyền nhận Hardware Abstraction Library thành modul HAL − Tập hợp hàm có sử dụng vào thiết lập ghi cho vi điều khiển CC1010 Chipcon Utility Library thành modul CUL Hình 3-12 Sơ đồ modul hóa cấu trúc chương trình Vũ Thị Tuyết Minh_CT902 51 Trường Đại học Dân Lập Hải Phịng Báo cáo đồ án tốt nghiệp Ngồi cịn có thư viện hỗ trợ: − CC1010.h: thư viện hỗ trợ hệ xử lý vào cho chíp hệ vi điều khiển CC1010 − vt1010.h: thư viện nhằm điều chỉnh, điều khiển trình ta cần thu thập thông tin, đo đạc, theo dõi biến thiên biến trạng thái trình − C1010eb.h: hỗ trợ quy trình nạp chương trình phần mền vào nhớ vi điều khiển − Reg1010.h: thư viện thao tác truy cập với ghi CC1010 Hình 3-13 Biểu đồ lớp thành phần chương trình Các bước chuyển đổi mơ hình sang mã C/C++ sau: Từ cửa sổ khung nhìn Model Explorer view, bấm chuột phải vào mơ hình UML model, chọn Transform -> Execute Transform -> UML to C/C++ Trong cửa sổ thực Run Transform, chọn Target page, click New Project để tạo dự án đích cho C++ Tại cửa sổ New Project wizard, đặt tên cho dự án NewTempBoadcast kích Finish Nhấn vào Run trang Run transform Vũ Thị Tuyết Minh_CT902 52 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp 3.4.2.4 Tái kỹ nghệ liệu Tái kỹ nghệ liệu phân tích tổ chức lại cấu trúc liệu chương trình, phù hợp với yêu cầu hệ thống, phần q trình xử lý việc di chuyển liệu từ hệ thống tới hệ liệu từ hệ liệu tới hệ liệu khác Mục đích tạo môi trường quản trị liệu, phù hợp yêu cầu hệ thống Các phương pháp tái kỹ nghệ liệu như: phương pháp liệu sạch, xóa ghi trùng lặp, xóa thơng tin thừa định dạng không chuẩn, phương pháp mở rộng liệu, xóa giới hạn xử lý, thay đổi độ dài trường thay đổi giới hạn bảng, vv Hình 3-14 Sơ đồ cấu trúc liệu địa nhớ ghi 3.4.2.5 Tiến trình dịch chƣơng trình Hệ thống tái kỹ nghệ Hệ thống tái kỹ nghệ Xác định khác mã nguồn Thiết kế chuyển đổi lệnh Dịch mã tự động (Keil) Hệ thống tái kỹ nghệ (HEX) Dịch mã thủ cơng Hình 3-15 Tiến trình dịch chương trình Vũ Thị Tuyết Minh_CT902 53 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Trong thư mục NewTempBoadcast chứa tệp mã nguồn header TempBoadcast thay đổi Nhưng tệp có mã C++ mà ta xem, sửa hay thay đổi giá trị mơ hình cách nhấn đúp chuột vào lớp để sửa mã nguồn Sau sử dụng Keil để dịch dự án sang tệp HEX thực qua trình nạp lại (Ép flash rom) cho nhớ CC1010 nút mạng 3.5 Quy trình nạp phần mền cho nút mạng vận hành hệ thống Sau phần mềm thiết kế lại, sử dụng công cụ Keil để dịch dự án sang tệp HEX thực trình nạp lại (Ép flash rom) vào nhớ CC1010 cho nút mạng Các bước tiến trình thực sau: Bước 1: Nối mạch MB với PC Chương trình nhúng nạp cho nút mạng thông qua mạch Hình 3-16 Bo mạch tool để nạp phần mềm cho nút mạng Vũ Thị Tuyết Minh_CT902 54 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Bước 2: Gắn nút mạng vào mạch nối với PC Nút mạng Hình 3-17 Cách kết nối vào máy tính Bước 3: Dùng trình biên dịch, dịch chương trình C/C++ sang tệp Hex để sử dụng trình dịch Keil Vision 2.0 Bước 4: Bật nguồn pin mạch gắn nút mạng, mở chương trình Chipcon CC1010 Flash Programmer để nạp tệp hex vừa dịch bước cho nút mạng Hình 3-18 Chương trình nạp phần mềm cho nút mạng Vũ Thị Tuyết Minh_CT902 55 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Bước 5: Tháo nút mạng khỏi mạch, gắn với nguồn pin 3.5V lắp đặt lại vị trí cần thiết Trước lắp lại nên tiến hành kiểm tra hoạt động nút mạng xem có tốt khơng Nếu khơng tốt phải nạp lại kiểm thử Bước 6: Cuối vận hành hệ thống 3.6 Kết đạt đƣợc số đánh giá Tái kỹ nghệ áp dụng quy trình phát triển phần mềm RUP giúp tổ chức quản lý toàn tiến trình phát triển phần mềm Nhờ trình tái kỹ nghệ mà nhà kiến trúc, nhà phân tích, thiết kế nhà phát triển phần mền dễ dàng sử dụng đồng trao đổi công đoạn với nhau, tuân thủ theo tiến trình chung, quản lý thay đổi, quản trị yêu cầu, dễ bảo trì cải thiện chất lượng phần mềm Với hệ thống trên, sau vận hành cho kết quả, ta kiểm thử nút chế độ khác cách gắn thiết bị hiển thị cho nút mạng hình 4.23, chưa bật nút gốc, nghĩa nút gốc hoạt động không thu tín hiệu nút mạng Màn hình hiển thị sau: Hình 3-19 Kết kiểm tra nút số nut gốc chưa hoạt động 3.6.1 Cấp nguồn cho nút gốc nút mạng Khi cấp nguồn, nút gốc thu thông tin nút mạng tiến hành kiểm tra địa chỉ, địa cần đọc, cho hiển thị liệu lên LCD sau: Hình 3-20 Truyền đơn bước nút gốc hoạt động Vũ Thị Tuyết Minh_CT902 56 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp Truyền đa bước nút mạng truyền nút sở thông qua nút trung gian H a H b H c Hình 3-21 Truyền đa bước mức nhiệt độ an toàn H.a H.b H c Hình 3-22 Nhiệt độ vượt mức ngưỡng Vũ Thị Tuyết Minh_CT902 57 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp 3.6.2 Đánh giá kết qua phép đo Bảng cho kết đo với chương trình có tiết kiệm lượng nhờ chuyển đổi chế độ làm việc, tần số RF 433MHz, kết thu là: Dòng điện tiêu thụ (mA) Lần đo Chế độ nghỉ Số liệu Số liệu cũ Cảm nhận Số liệu Truyền Số liệu cũ Số liệu Số liệu cũ 0.1 9.6 21 23.6 18 18 0.2 10 23.6 24 17.8 17.3 0.2 10 23.6 24 17.9 18.5 0.2 10 23.5 24 17.8 18 0.1 10 22.8 24 19 18 Trung bình 0.16±0.048 9.8±0.056 22.9± 0.8 24± 0.8 18.1± 0.36 18.1± 0.36 Bảng 3-23 Kết sau vận hành thử nghiệm 3.6.3 Nhận xét Từ bảng kết ta nhận thấy, chương trình thực tiết kiệm lượng rõ ràng Dòng điện tiêu thụ chế độ nghỉ khoảng 1% dịng điện tiêu thụ chế độ tích cực Vì vậy, thời gian nút mạng chế độ nghỉ kéo dài tiết kiệm lượng nhiều Trong chương trình này, thời gian nút mạng nghỉ lấy 15s Tuy nhiên, tuỳ theo ứng dụng thực tế yêu cầu thường xuyên hay định kỳ cung cấp thơng tin mà giá trị tăng lên giảm Ta nhận thấy, với mạng cần cung cấp thông tin cách định kỳ tốn lượng Căn vào nhu cầu thực tế sử dụng ta can thiệp vào thời gian nút mạng nghỉ để tiết kiệm lượng Với kiến trúc chương trình tiết kiệm tiêu thụ lượng nút mạng thay đổi chế độ liên tục, khó theo dõi kết đo Để thấy rõ hiệu Vũ Thị Tuyết Minh_CT902 58 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp tiết kiệm lượng, ta bỏ hàm chuyển đổi chế độ làm việc: SelectClockMode(char iMode) chức truyền liệu nút gốc, kết đo mạng cảm nhận là: Dòng điện tiêu thụ (mA) Tần số RF Lần Lần Lần Lần Lần Trung bình 433MHz 21.2 21 21.1 21.2 21 21.1±0.1 915MHz 23.1 23 23.3 23.1 23 23.1±0.1 Bảng 3-24 Bảng kết thử nghiệm thay đổi khơng có tiết kiệm lượng Khi tần số truyền nhận tăng lên, dòng điện tiêu thụ lớn So sánh cột giá trị dòng điện tiêu thụ cảm nhận bảng 4.3 với bảng 4.4 ta thấy: tần số 433MHz có chuyển đổi chế độ làm việc dòng điện tiêu thụ lớn Như vậy, rõ ràng trình chuyển đổi chế độ làm việc tiêu hao phần lượng Tuy nhiên, phần lượng tiêu hao khơng đáng kể so với phần lượng mà tiết kiệm Vì vậy, giải pháp chuyển đổi chế độ làm việc coi giải pháp tiết kiệm lượng Vũ Thị Tuyết Minh_CT902 59 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp KẾT LUẬN Đề tài trình bày vấn đề tái kỹ nghệ phần mềm vận dụng chúng cho việc phát triển phần mềm Quá trình tái kỹ nghệ phần mềm đề cập tới tác vụ nhằm tổ chức lại, hay thay đổi lại hệ thống phần mềm để làm cho việc bảo trì chúng dễ dàng hơn, hệ thống hoạt động hiệu Tiến trình tái kỹ nghệ có liên quan đến hoạt động: dịch mã nguồn, kỹ nghệ đảo ngược, cải thiện cấu trúc chương trình, mơdul hóa chương trình tái kỹ nghệ liệu Để áp dụng quy trình tái kỹ nghệ cho hệ thống cụ thể, đề tài tìm hiểu quy trình IBM Rational Unified Process dành cho phát triển hệ thống phần mềm hướng đối tượng công cụ trợ giúp cho tiến trình tái kỹ nghệ phát triển hệ nhúng Đề tài tập trung vào việc ứng dụng quy trình tái kỹ nghệ phần mềm công cụ trợ giúp cho hệ thống cảnh báo thiên tai (cảnh báo cháy rừng) với mạng cảm nhận không dây WSN nhằm nâng cao chất lượng hiệu Kết đạt hệ thống nhờ tái kỹ nghệ cho thấy: hệ thống hoạt động trở lại tốt, với số thay đổi như: việc tiêu thụ dòng điện nút mạng ba chế độ khác nhiều, dòng điện tiêu thụ chế độ nghỉ khoảng 1% chế độ cảm nhận chế độ truyền, nghĩa lượng tiêu thụ chế độ nghỉ giảm khoảng 100 lần so với lượng tiêu thụ chế độ tích cực Đồng thời, lượng nút mạng trì lâu làm cho việc chọn đường nhanh chóng, dễ dàng hơn, tăng tốc độ mạng Nhược điểm quy trình phụ thuộc phần lớn vào cơng cụ hỗ trợ triển khai Hướng đề tài mở rộng ứng dụng quy trình tái kỹ nghệ sử dụng lại hệ phần mềm cụ thể khác: hệ thống quản lý thông tin, phần mềm tiện ích, phần mềm hệ thống với loại dự án nhằm cải tạo phần mềm cũ để phù hợp với thay đổi yêu cầu Vũ Thị Tuyết Minh_CT902 60 Trường Đại học Dân Lập Hải Phòng Báo cáo đồ án tốt nghiệp TÀI LIỆU THAM KHẢO [1] Nguyễn Văn Vỵ, Phân tích thiết kế hệ thống thông tin đại hướng cấu trúc hướng đối tượng, NXB Thống kê, 2002 [2] Nguyễn Văn Vỵ, Phân tích thiết kế hệ thống thông tin đại hướng cấu trúc hướng đối tượng, NXB Thống kê, 2002 [3] PSG.TS Nguyễn Văn Vỵ, Phân tích thiết kế hệ thống phần mềm theo hướng đối tượng, Bài giảng, ĐH Công nghệ, 2004 [4] PGS.TS Vương Đạo Vy, Mạng truyền liệu, ĐHQG, 2005 [5] Roger S Pressman, Software Engineering a practitioner’s Approach, McGraw-Hill, 860 pp, 2001 [6] E J Chikofsky and J H Cross, “Reverse Engineering and Design Recovery: A Taxonomy,” IEEE Software, vol 7, pp 13–17, January 1990 [7] Chipcon, CC1010 Datasheet Vũ Thị Tuyết Minh_CT902 61 Trường Đại học Dân Lập Hải Phòng