1. Trang chủ
  2. » Luận Văn - Báo Cáo

LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf

65 246 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 65
Dung lượng 1,74 MB

Nội dung

1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Trần Thị Hồng Sim TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Phần Mềm Cán bộ hướng dẫn: PGS.TS Nguyễn Văn Vỵ HÀ NỘI - 2010 1 Lời cảm ơn Lời đầu tiên, em muốn bày tỏ sự chân trọng và biết ơn sâu sắc đối với PGS.TS Nguyễn Văn Vỵ, giảng viên bộ môn Công Nghệ Phần Mềm, khoa Công Nghệ Thông Tin, trường Đại học Công Nghệ, Đại học Quốc Gia Hà Nội. Trong suốt quá trình học tập và thực hiện khóa luận này, thầy đã là người trực tiếp hướng dẫn và đưa ra những định hướng cho quá trình nghiên cứu. Chính nhờ sự tận tình chỉ bảo, dành rất nhiều thời gian quí báu của thầy trong suốt quá trình hướng dẫn mà em đã hoàn thành nghiên cứu khóa luận này. Em cũng xin gửi lời cảm ơn chân thành đến các thầy giáo, cô giáo là giảng viên trường Đại học Công Nghệ đã giảng dạy, truyền đạt kiến thức cho em trong suốt bốn năm học tại trường. Những kiến thức mà các thầy cô đã truyền thụ làm nền tảng cho em trong công việc sau này và là những kiến thức tiên quyết trong việc nghiên cứu và tìm hiểu đề tài trong khóa luận. Và cuối cùng, tôi xin gửi lời cảm ơn đến bạn bè, đồng nghiệp và đặc biệt là gia đình, những người đã luôn ở bên động viên, giúp đỡ, tạo điều kiện tốt nhất cho tôi trong suốt quá trình học tập và thực hiện khóa luận. Hà Nội, tháng 5/2010 Trần Thị Hồng Sim 2 Tóm tắt nội dung Ngày nay, công nghệ thông tin đang phát triển rất nhanh. Các hệ thống phần cứng của máy tính đang ngày càng trở nên mạnh mẽ hơn để đáp ứng nhu cầu ngày càng tăng của người sử dụng. Công nghệ thay đổi nhanh chóng theo từng ngày. Một hệ thống phần mềm hôm nay có thể là hiện đại nhưng chỉ sau một thời gian ngắn nó đã trở nên lạc hậu và không sử dụng hết được năng lực to lớn của phần cứng và không đáp ứng đầy đủ nhu cầu sử dụng của con người. Vậy chúng ta đang gặp phải một số lượng các hệ thống phần mềm có những đặc trưng này. Một giải pháp được đưa ra, đó chính là tái kỹ nghệ. Vì vậy đề tài “Tái kỹ nghệ hệ thống phần mềm” được chọn làm đề tài khóa luận của em. Để bảo trì, nâng cấp một hệ thống phần mềm lạc hậu, trong điều kiện cho phép có thể sử dụng giải pháp tái kỹ nghệ. Tuy nhiên, tái kỹ nghệ phải đi đôi với sự trợ giúp của những công cụ mạnh và có một quy trình thích hợp. Khóa luận trình bày một quy trình tái kỹ nghệ phần mềm với sự trợ giúp của công cụ Rational Rose. Bằng cách đó ta có thể nâng cấp một phần mềm cũ thành một phần mềm có khả năng đáp ứng các yêu cầu mới đặt ra và có được kiến trúc tốt, sử dụng hiệu quả nguồn tài nguyên hiện có, làm thuận lợi cho việc bảo trì tiếp tục sau này. Hơn thế nữa, quá trình tái kỹ nghệ hệ thống diễn ra một cách nhanh chóng và hiệu quả, đáp ứng được những thách thức đang đặt ra cho việc phát triển các phần mềm hiện nay Trong khóa luận này, những nội dung sau đây sẽ được trình bày: − Giới thiệu tổng quan về tái kỹ nghệ hệ thống phần mềm cùng và qui trình để thực hiện tái kỹ nghệ một hệ thống phần mềm. − Giới thiệu hai công cụ hỗ trợ cho quá trình tái kỹ nghệ trong phạm vi luận văn này là Rational Rose Enterprise Edition 7.0 và ngôn ngữ mô hình hóa (UML). − Sau khi đã hiểu về qui trình và cách thức thực hiện qui trình tái kỹ nghệ với các công cụ hỗ trợ, thực hiện tái kỹ nghệ một ứng dụng nhỏ để áp dụng là chương trình “Sổ địa chỉ”. 3 Mục lục Lời cảm ơn 1 Tóm tắt nội dung 2 Mục lục 3 Lời nói đầu 5 Chương 1: Tổng quan về tái kỹ nghệ 7 1.1 Bảo trì hệ thống phần mềm 7 1.2 Tổng quan chung về tái kỹ nghệ 9 1.3 Qui trình chung tái kỹ nghệ phần mềm 14 1.3.1 Dịch mã nguồn 15 1.3.2 Kỹ nghệ ngược 17 1.3.2.1 Làm lại tài liệu 19 1.3.2.2 Phục hồi thiết kế 19 1.3.3 Cấu trúc lại hệ thống 20 1.3.4 Module hóa chương trình 25 1.3.5. Tái kỹ nghệ dữ liệu 26 1.4 Các công cụ sử dụng cho tái kỹ nghệ 30 1.4.1 Ngôn ngữ UML 30 1.4.2 Hệ thống phần mềm RATIONAl ROSE 33 1.4.3 Tái kỹ nghệ hệ thống với kỹ nghệ đảo ngược của Rational Rose 41 1.5 Những ưu điểm và hạn hế của tái kỹ nghệ 45 1.5.1 Các ưu điểm 45 1.5.2 Các hạn chế 45 1.6 Kết luận 46 Chương 2: Bài toán về chương trình “Sổ địa chỉ” 47 2.1 Giới thiệu chương trình sổ địa chỉ 47 1.2 Những vấn đề cần cải tiến chương trình 48 Chương 3: Tái kỹ nghệ chương trình sổ địa chỉ 50 4 3.1 Sơ đồ tiến trình thực hiện tái kỹ nghệ 50 3.2 Qui trình thực hiện tái kỹ nghệ chương trình sổ địa chỉ 50 3.2.1 Xây dựng tài liệu và mô hình thiết kế UML 51 3.2.2 Cấu trúc lại chương trình 55 3.2.3 Tái kỹ nghệ dữ liệu 58 3.2.4 Xây dựng mã nguồn 60 3.2.5 Hoàn thiện, cài đặt và sử dụng 60 3.3 Kết quả đạt được và một số đánh giá 60 3.3.1. Liên quan đến chương trình 60 3.3.2. Liên quan đến triển khai 62 3.3.3. Một số vấn đề tồn tại 62 Kết luận 63 Tài liệu tham khảo 64 Tiếng Việt 64 Tiếng Anh 64 5 Lời nói đầu Ngày nay, chúng ta đang sống trong một kỉ nguyên của công nghệ thông tin. Với sự bùng nổ của công nghệ thông tin, sự hỗ trợ của máy tính cho các hoạt động của con người ngày càng trở nên cần thiết hơn bao giờ hết. Để đáp ứng những nhu cầu thiết yếu này, các phần mềm phục vụ con người ngày càng phổ biến hơn, số lượng lớn hơn và được nâng cấp để có chất lượng tốt hơn. Tuy nhiên, cùng với xu hướng phát triển của phần mềm, các hệ thống phần cứng, các chương trình hỗ trợ cũng như các môi trường phát triển, hay các qui trình nghiệp vụ cũng luôn đổi mới với tốc độ không ngừng. Ngày hôm nay, một hệ thống có thể là hiện đại, tối tân nhưng đến ngày mai nó đã trở nên lạc hậu và còn có thể không dùng được nữa. Trước sự thay đổi nhanh chóng của các công cụ, môi trường hỗ trợ này, các phần mềm cũ có nguy cơ bị bỏ đi. Vậy phải làm sao để giải quyết vấn đề này khi mà số lượng các phần mềm cũ ngày càng lớn? Nhiều giải pháp được đưa ra cho việc bảo trì phần mềm. Bảo trì phần mềm chính là một giai đoạn trong quy trình tiến hóa phần mềm. Đây là giai đoạn có chi phí tốn kém nhất, như ta đã biết, nó chiếm đến 70% trong tổng chi phí phát triển phần mềm. Tuy nhiên, nếu chúng ta thực hiện phát triển mới phần mềm thì chi phí bỏ ra còn lớn hơn rất nhiều. Cho nên một yêu cầu được đặt ra là phải lựa chọn một phương pháp bảo trì phần mềm sao cho có hiệu quả cao và giảm thiểu các rủi ro. Với một chương trình phần mềm đã sử dụng trong thời gian dài, nó có thể gặp phải các vấn đề như ngôn ngữ lập trình không còn được sử dụng, thiếu các công cụ hỗ trợ cần thiết, không đáp ứng đủ yêu cầu của người dùng v.v… Vì vậy, để có thể tiếp tục sử dụng được hệ thống phần mềm, ta thực hiện quá trình bảo trì cần phải có biện pháp xây dựng, cấu trúc lại những phần chương trình đã trở nên lạc hậu và không dùng được nữa. Và một phương pháp rất phổ biến và hiệu quả của ngày nay, đó chính là tái kỹ nghệ lại hệ thống phần mềm. Tái kỹ nghệ là một phương pháp tiến hóa phần mềm có hiệu quả cao trong khi chi phí bỏ ra ít hơn nhiều so với việc xây dựng mới phần mềm cũng như so với một số phương pháp tiến hóa khác. Có được điều này bởi quy trình tái kỹ nghệ được hỗ trợ bởi các công cụ và phương tiện mới với một quy trình khép kín khá hoàn thiện và đầy đủ. Một số công cụ hỗ trợ cho việc tái kỹ nghệ phần mềm như ngôn ngữ mô hình hóa 6 thống nhất UML, Rational Software Architecture, Rational Rose v.v… Trong phạm vi khóa luận tốt nghiệp này, chúng ta sẽ sử dụng hai công cụ hỗ trợ cho việc tái kỹ nghệ là ngôn ngữ UML và Rational Software Architecture. Cùng với việc tìm hiểu về quy trình tái kỹ nghệ, để có thể hiểu sâu hơn các bước thực hiện của quy trình, ta sẽ thực hiện tái kỹ nghệ cho một chương trình đơn giản là: Sổ địa chỉ. Cụ thể khóa luận tốt nghiệp này được xây dựng gồm ba chương: - Chương 1: Trình bày tổng quan về tái kỹ nghệ và phương pháp để tái kỹ nghệ một hệ thống phần mềm - Chương 2: Giới thiệu qua về chương trình “Sổ địa chỉ” - Chương 3: Thực hiện tái kỹ nghệ chương trình “Sổ địa chỉ”, từ đó rút ra những kết quả đánh giá cho chương trình và những hạn chế còn tồn tại trong nội dung khóa luận. Cuối cùng là kết luận và tài liệu tham khảo 7 Chương 1: Tổng quan về tái kỹ nghệ Tính tái dụng là một đặc trưng quan trọng của các thành phần phần mềm chất lượng cao. Tính tái dụng ở đây được hiểu là các thành phần của một hệ thống phần mềm có thể sử dụng lại trong các hệ thống phần mềm khác. Một vấn đề lớn đặt ra là: phải phát triển phần mềm như thế nào để về sau có thể sử dụng lại nhiều nhất và hiệu quả nhất. Nói chung, sau một thời gian sử dụng, các phần mềm cần phải được bảo trì để đáp ứng các yêu cầu phát sinh của người sử dụng, của công nghệ mới, và sự thay đổi của các hoạt động nghiệp vụ theo thời gian đúng theo nghĩa vòng đời của một hệ thống phần mềm, ta lại bắt đầu các công việc: phân tích, thiết kế, cài đặt, kiểm thử ở mức cao hơn. Như vậy, việc tái sử dụng các phần đó được xây dựng trước đây có ý nghĩa to lớn cho việc tiết kiệm công sức, thời gian, kinh phí trong hoạt động phát triển. Có nhiều cách thực hiện việc bảo trì hệ thống phần mềm và cũng 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 đều có những ưu và nhược điểm riêng, tuỳ theo hoàn cảnh thực tế mà ta có thể lựa chọn một công cụ sao cho hiệu quả nhất. Dưới đây sẽ trình bày một số vấn đề về tái kỹ nghệ hệ thống phần mềm bằng UML (Unified Modeling Language) và công cụ Rational Rose. 1.1 Bảo trì hệ thống phần mềm Phát triển phần mềm phải trải qua nhiều giai đoạn. Các giai đoạn đó bao gồm: phân tích yêu cầu, kiến trúc hệ thống, thiết kế, cài đặt, kiểm thử, triển khai phần mềm và bảo trì. Bảo trì chính là giai đoạn cuối trong vòng đời phát triển phần mềm. Bảo trì bảo đảm cho hệ thống được tiếp tục hoạt động sau khi thực hiện kiểm thử hay sau khi đưa hệ thống vào hoạt động trong thực tế. Bảo trì phần mềm bao gồm những sửa đổi làm hệ thống thích nghi với những yêu cầu thay đổi của người sử dụng, thay đổi dữ liệu cho phù hợp, gỡ rối, khử bỏ và sửa chữa các sai sót mà trước đây chưa phát hiện ra Ngày nay, việc xây dựng, phát triển cũng như quá trình bảo trì các hệ thống phần mềm được hỗ trợ nhiều bởi các công cụ, đó là kĩ nghệ phần mềm có máy tính trợ giúp (CASE). Công nghệ CASE đang phát triển mạnh mẽ, bao gồm các công cụ về: lập kế hoạch quản lý dự án, các công cụ trợ giúp phân tích và thiết kế, cài đặt hệ thống, tích 8 hợp và kiểm thử, làm bản mẫu …, Ở đây chúng ta sẽ quan tâm tới một số hoạt động trong quá trình bảo trì phần mềm bằng một số công cụ có sẵn. Các hoạt động trong bảo trì phần mềm bao gồm: − Trong quá trình kiểm thử, theo dõi quá trình hoạt động của hệ thống phần mềm, ta sẽ phát hiện ra tất cả các lỗi, các sai sót tiềm tàng trong hệ thống, tất cả các lỗi đó sẽ được thông báo cho các chuyên gia phát triển phần mềm để họ cập nhật lại. Tiến trình đó được gọi là bảo trì sửa chữa. − Theo thời gian, các khía cạnh xử lý và hệ thống phần cứng thay đổi; môi trường làm việc như hệ điều hành thay đổi; các thiết bị ngoại vi và các phần tử của hệ thống được nâng cấp; các yêu cầu của khách hàng cho hệ thống sẽ thay đổi Điều đó dẫn tới việc phải thay đổi hệ thống phần mềm sao cho phù hợp với các yêu cầu thay đổi trên, quá trình đó được gọi là bảo trì thích nghi. − Khi hệ thống phần mềm thành công và được đưa vào sử dụng, người ta nhận được các khuyến cáo về khả năng mới, các chức năng cần được bổ sung nâng cao Đó là quá trình nâng cấp hệ thống phần mềm cho phù hợp và tiện dụng hơn, được gọi là bảo trì hoàn thiện. − Hệ thống cần phải thay đổi để đảm bảo tính tin cậy, an toàn trong tương lai, tạo cơ sở tốt hơn cho việc nâng cao chất lượng trong tương lai, tiến trình đó được gọi là bảo trì phòng ngừa, hoạt động này được đặc trưng bởi các kĩ thuật đảo ngược và tái kĩ nghệ. Các công cụ bảo trì phần mềm có thể được chia theo các chức năng sau: − Kĩ nghệ ngược với các công cụ đặc tả: nhận chương trình gốc làm đầu vào và sinh ra các mô hình phân tích và thiết kế có cấu trúc đồ thị, các thông tin thiết kế khác. − Công cụ tái cấu trúc và phân tích mã: phân tích cú pháp chương trình, sinh ra đồ thị luồng điều khiển, và sinh tự động một 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 các hệ thống cơ sở dữ liệu trực tuyến. Bảo trì là giai đoạn cuối cùng trong tiến trình kĩ nghệ phần mềm, nó tiêu tốn rất nhiều thời gian, công sức và kinh phí. Tái kỹ nghệ là công nghệ đặc trưng giúp cho việc bảo trì các hệ thống phần mềm hiệu quả và nhanh chóng. 9 1.2 Tổng quan chung về tái kỹ nghệ Bản chất của việc tái kỹ nghệ phần mềm là để cải tiến hoặc biến đổi những phần mềm đã có để nó có thể hiểu, điều khiển hay sử dụng được bằng một cách khác. Ngày nay, số lượng các hệ thống được xây dựng từ đầu đang giảm dần, trong khi đó các hệ thống chúng ta được kế thừa lại ngày càng nhiều. Chức năng của các hệ thống đó vẫn không đổi nhưng hệ thống phần cứng, các công nghệ, môi trường làm việc thì ngày một đổi mới. Những hệ thống phần mềm được kế thừa lại đã trở nên lạc hậu, một số cấu trúc chương trình đã không còn dùng được nữa do đó nhu cầu tái kỹ nghệ phần mềm được tăng lên đáng kể. Việc tái kỹ nghệ phần mềm trở nên rất quan trọng trong việc phục hồi và tái sử dụng lại những phần mềm hiện có, làm cho chi phí bảo trì phần mềm có thể kiểm soát được và tạo ra cơ sở cho việc tiến hóa phần mềm trong tương lai. Thuật ngữ “Tái kỹ nghệ” nhanh chóng trở thành một từ được yêu thích đối với những nhà quản lý và phát triển phần mềm, nhưng nó thực sự có ý nghĩa như thế nào đối với họ? Về cơ bản thì tái kỹ nghệ là lấy các phần mềm được thừa kế hiện có mà việc bảo trì đối với chúng là rất đắt, hoặc là những thành phần, kiến trúc của hệ thống đã không dùng được nữa và làm lại nó bằng những công nghệ phần mềmphần cứng hiện thời. Vấn đề khó khăn ở đây là phải có sự hiểu biết về những hệ thống đó. Thường thì những tài liệu phân tích yêu cầu, tài liệu thiết kế và tài liệu về mã nguồn của chương trình không còn nữa, hoặc nếu còn thì đã quá lỗi thời. Vì vậy để hiểu các chức năng không còn sử dụng được một cách rõ ràng là một điều khó khăn. Thường thì hệ thống cũ vẫn bao gồm cả những chức năng không cần thiết nữa vì vậy những chức năng này không cần đưa vào hệ thống mới. Vậy thế nào là tái kỹ nghệ? Chikofsky và Cross đã định nghĩa tái kỹ nghệ là: “ kiểm tra, phân tích, biến đổi hệ thống phần mềm hiện thời để xây dựng lại thành một hệ thống mới, và bổ sung thêm một số thành phần mới vào trong đó” (Chikofsky 1990). Định nghĩa này rõ ràng tập trung vào làm sáng tỏ đặc trưng của thuật ngữ, các thay đổi của kết quả phần mềm. Arnold, đã định nghĩa một cách khác về tái kỹ nghệ là: “bất kỳ hoạt động nào làm cải tiến sự hiểu biết về phần mềm, hoặc là hoạt động cải tiến phần mềm và thường tăng khả năng bảo trì, khả năng sử dụng lại, khả năng tiến hóa” (Arnold 1993). Qui trình tái kỹ nghệ thường là sự kết hợp của nhiều qui trình khác nhau như kỹ nghệ ngược, làm lại tài liệu, cấu trúc lại chương trình, chuyển đổi và kỹ nghệ xuôi, dịch hệ thống sang một ngôn ngữ lập trình hiện đại hơn. Mục đích là để có cái nhìn rõ [...]... tả hệ thống Thiết kế và thực thi Hệ thống mới Kỹ thuật dịch xuôi Hệ thống phần mềm hiện thời Hiểu và chuyển đổi Hệ thống tái kỹ nghệ Tái kỹ nghệ phần mềm Hình 1-01 Sự khác biệt then chốt giữa tái kỹ nghệ và phát triển một hệ thống phần mềm mới chính là điểm xuất phát cho việc phát triển Đối với việc phát triển một hệ thống phần mềm mới, công việc sẽ bắt đầu với việc viết một tài liệu đặc tả cho hệ thống, ... như sau: Tái kỹ nghệ = kỹ nghệ ngược + biến đổi + kỹ nghệ xuôi Phải chú ý rằng, đôi khi tái kỹ nghệkỹ nghệ ngược được xem như là hai mặt hoàn toàn khác nhau Nhưng trong thực tế thì kỹ nghệ ngược được xem như là một phần của qui trình tái kỹ nghệ Thành phần đầu tiên trong qui trình tái kỹ nghệ, kỹ nghệ ngược”, là hoạt động nhằm xác định những vấn đề trừu tượng và xây dựng lại làm cho hệ thống trở... trúc Chi phí tăng Hình 1-03: Chi phí tái kỹ nghệ Ngoại trừ qui mô của hoạt động tái kỹ nghệ, các yếu tố ảnh hưởng đến chi phí của tái kỹ nghệ là: 13 1 Chất lượng của phần mềm để tái kỹ nghệ Chất lượng phần mềm và các tài liệu liên quan (nếu có) càng thấp thì chi phí cho việc tái kỹ nghệ sẽ càng cao 2 Công cụ hỗ trợ có sẵn cho việc tái kỹ nghệ Hoạt động tái kỹ nghệ sẽ không có chi phí hiệu quả nếu không... thì qui trình kỹ nghệ ngược phải bắt đầu với mã thực thi của chương trình Nhiều người cho rằng, tái kỹ nghệkỹ nghệ ngược là những tên gọi khác nhau của cùng một quá trình, nhưng trong thực tế kỹ nghệ ngược không phải là tái kỹ nghệ Mục đích của kỹ nghệ ngược là để thu được thiết kế hoặc đặc tả của hệ thống từ mã nguồn của nó Trong khi đó, mục đích của tái kỹ nghệ là để tạo ra một hệ thống mới có... của chúng Tái kỹ nghệ một hệ thống sẽ có chi phí hiệu quả khi hệ thống đó có giá trị nghiệp vụ cao nhưng lại 10 tốn kém cho việc bảo trì Tái kỹ nghệ cải thiện cấu trúc hệ thống, tạo ra tài liệu của hệ thống mới và làm cho nó dễ hiểu hơn Vậy trong trường hợp nào chúng ta nên thực hiện tái kỹ nghệ hệ thống Câu trả lời là tái kỹ nghệ sẽ có hiệu quả cao nhất khi thực hiện đối với một hệ thống cũ được kế... này sẽ làm gia tăng chi phí Các kỹ sư tái kỹ nghệ hệ thống sẽ phải mất rất nhiều thời gian để có thể thực sự hiểu được hệ thống 1.3 Qui trình chung tái kỹ nghệ phần mềm (Biến đổi) Khái niệm Nghĩ lại Yêu cầu Đặc tả lại Thiết kế Kỹ nghệ xuôi Yêu cầu Thiết kế Kỹ nghệ ngược (Trừu tượng) Thiết kế Triển khai Khái niệm Code lại (Cải tiến) Triển khai So sánh Hệ thống ban đầu Hệ thống đích chất lượng chức năng... cách thủ công để điều chỉnh và cải tiến hệ thống tạo ra 1.3.2 Kỹ nghệ ngược Kỹ nghệ ngược là qui trình phân tích phần mềm với mục đích để phục hồi những đặc tả và thiết kế của phần mềm đó Kỹ nghệ ngược không làm thay đổi hệ thống hoặc tạo ra một hệ thống mới, nó chỉ là quá trình kiểm tra mà không thay đổi chức năng tổng thể của chương trình Trong qui trình kỹ nghệ ngược, mã nguồn của chương trình chính... có khả năng bảo trì cao xuất phát từ một hệ thống cũ Như vậy, kỹ nghệ ngược là một quá trình giúp cho nhà phát triển có những cái nhình rõ ràng hơn về hệ thống, và nó chính là một phần của qui trình tái kỹ nghệ Những ảnh hưởng của quá trình này sẽ ảnh hưởng tới thành công của dự án tái kỹ nghệ Kỹ nghệ ngược thường được sử dụng trong qui trình tái kỹ nghệ phần mềm để khôi phục lại thiết kế và những đặc... với tái kỹ nghệ, hệ thống cũ đã đóng vai trò như một bản đặc tả cho hệ thống mới Chikofsky và Cross (Chikofsky and Cross, 1990) đã đưa ra thuật ngữ kỹ nghệ xuôi” (forward engineering) trong tiến trình phát triển để phân biệt với tái kỹ nghệ phần 11 mềm Sự khác biệt này được minh họa ở hình 1-01 Kỹ thuật dịch xuôi bắt đầu với việc đặc tả hệ thống và bao gồm cả việc thiết kế và thực thi trong hệ thống. .. tái kỹ nghệ Hình 1-02: Qui trình tái kỹ nghệ Hình 1-02 mô tả một qui trình tái kỹ nghệ có khả năng thực hiện được Đầu vào của qui trình là một chương trình được kế thừa và đầu ra là một phiên bản có các module có cấu trúc rõ ràng của chính chương trình đó Đồng thời cũng như là tái kỹ nghệ chương trình, dữ liệu cho hệ thống cũng có thể được tái kỹ nghệ lại Các hoạt động trong qui trình tái kỹ nghệ là: . quan về tái kỹ nghệ hệ thống phần mềm cùng và qui trình để thực hiện tái kỹ nghệ một hệ thống phần mềm. − Giới thiệu hai công cụ hỗ trợ cho quá trình tái kỹ nghệ trong phạm vi luận văn này. Tổng quan về tái kỹ nghệ 7 1.1 Bảo trì hệ thống phần mềm 7 1.2 Tổng quan chung về tái kỹ nghệ 9 1.3 Qui trình chung tái kỹ nghệ phần mềm 14 1.3.1 Dịch mã nguồn 15 1.3.2 Kỹ nghệ ngược 17 1.3.2.1. Tái kỹ nghệ = kỹ nghệ ngược + biến đổi + kỹ nghệ xuôi Phải chú ý rằng, đôi khi tái kỹ nghệ và kỹ nghệ ngược được xem như là hai mặt hoàn toàn khác nhau. Nhưng trong thực tế thì kỹ nghệ ngược

Ngày đăng: 28/06/2014, 00:20

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[9] E. J. Chikofsky and J. H. Cross, “Reverse Engineering and Design Recovery: A Taxonomy,” IEEE Software, vol. 7, pp. 13–17, January 1990 Sách, tạp chí
Tiêu đề: Reverse Engineering and Design Recovery: A Taxonomy
[10] Rational Rose Corp., Rational Rose 2002, http://www.rational.com/uml/ Link
[11] Using Rose Rational Rose® 2001, Rational the e-development company [12] http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javadb/ Link
[1] Nguyễn Văn Vỵ, Phân tích và thiết kế các hệ thống thông tin hiện đại hướng cấu trúc và hướng đối tượng, NXB Thống kê 2002 Khác
[2] PGS.TS Nguyễn Văn Vỵ, Phân tích và thiết kế hệ thống phần mềm theo hướng đối tượng, Bài giảng trường Đại học Công Nghệ Khác
[3] Đặng Văn Đức, Phân tích và thiết kế hướng đối tượng bằng UML, NXB Giáo dục 2002 Khác
[4] Trương Ninh Thuận, Phân tích thiết kế hướng đối tượng, Bài giảng trường Đại học Công Nghệ Khác
[5] TS. Dương Kiều Hoa – Tôn Thất Hoà, Phân tích và thiết kế HTTT theo UML Tiếng Anh Khác
[6] Francesco Bonfiglio, Reverse Engineering Legacy Code with Rational Rose, article Khác
[7] Dr. Linda H. Rosenberg, Software Re-engineering, Engineering Section head Software Assurance Technology Center Unisys Federal Systems Khác
[8] Ian Sommeville, Software Engineering, Sixth Edition, Addisom – Wesley, 2001 Khác

HÌNH ẢNH LIÊN QUAN

Hình 1-02: Qui trình tái kỹ nghệ - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 02: Qui trình tái kỹ nghệ (Trang 13)
Hình 1-04: Mô hình hoạt động tái kỹ nghệ - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 04: Mô hình hoạt động tái kỹ nghệ (Trang 15)
Hình 1-05: Qui trình dịch mã nguồn - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 05: Qui trình dịch mã nguồn (Trang 17)
Hình 1-06: Mô hình qui trình kỹ nghệ ngược - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 06: Mô hình qui trình kỹ nghệ ngược (Trang 19)
Hình 1-10: Cấu trúc chương trình tự động - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 10: Cấu trúc chương trình tự động (Trang 25)
Hình 1-11: Chuyển đổi dữ liệu - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 11: Chuyển đổi dữ liệu (Trang 29)
Hình 1-12: Quá trình tái kỹ nghệ dữ liệu - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 12: Quá trình tái kỹ nghệ dữ liệu (Trang 30)
Hình 1-14: Biểu đồ ca sử dụng một hệ thống bán hàng qua catalog - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 14: Biểu đồ ca sử dụng một hệ thống bán hàng qua catalog (Trang 35)
Hình 1-16: Biểu đồ tuần tự - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 16: Biểu đồ tuần tự (Trang 36)
Hình 1-15: Biểu đồ lớp - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 15: Biểu đồ lớp (Trang 36)
Hình 1-18: Biểu đồ tương tác của một hệ thống trả lương nhân viên - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 18: Biểu đồ tương tác của một hệ thống trả lương nhân viên (Trang 37)
Hình 1-17: Biểu đồ trạng thái của hệ thống bán vé - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 17: Biểu đồ trạng thái của hệ thống bán vé (Trang 37)
Hình 1-19: Biểu đồ hoạt động của hệ thống đặt hàng ở nhà hàng - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 19: Biểu đồ hoạt động của hệ thống đặt hàng ở nhà hàng (Trang 38)
Hình 1-20: Biểu đồ thành phần - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 20: Biểu đồ thành phần (Trang 38)
Hình 1-21: Biểu đồ cài đặt của một hệ thống - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 21: Biểu đồ cài đặt của một hệ thống (Trang 39)
Hình 1-25: Sinh mã nguồn từ mô hình UML của Rational Rose - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 25: Sinh mã nguồn từ mô hình UML của Rational Rose (Trang 42)
Hình 1-26a: Một bước lặp của quá trình tái thiết kế với xuất phát là mã  nguồn - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 1 26a: Một bước lặp của quá trình tái thiết kế với xuất phát là mã nguồn (Trang 44)
Hình 2-01: Giao diện chương trình “Sổ địa chỉ” - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 2 01: Giao diện chương trình “Sổ địa chỉ” (Trang 48)
Hình 3-01: Sơ đồ tiến trình tái kỹ nghệ “Sổ địa chỉ” - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 01: Sơ đồ tiến trình tái kỹ nghệ “Sổ địa chỉ” (Trang 51)
Hình 3-02: Mô hình kỹ nghệ ngược sử dụng Rational Rose - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 02: Mô hình kỹ nghệ ngược sử dụng Rational Rose (Trang 52)
Hình 3-03: Biểu đồ lớp của chương trình “Sổ địa chỉ” - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 03: Biểu đồ lớp của chương trình “Sổ địa chỉ” (Trang 53)
Hình 3-04: Biểu đồ use case - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 04: Biểu đồ use case (Trang 54)
Hình 3-05: Biểu đồ tuần tự cho việc thêm một địa chỉ mới - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 05: Biểu đồ tuần tự cho việc thêm một địa chỉ mới (Trang 55)
Hình 3-06: Biểu đồ tuần tự cho quá trình xóa một địa chỉ - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 06: Biểu đồ tuần tự cho quá trình xóa một địa chỉ (Trang 55)
Hình 3-07: Biểu đồ tuần tự cho việc sửa một địa chỉ - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 07: Biểu đồ tuần tự cho việc sửa một địa chỉ (Trang 56)
Hình 3-08: Biểu đồ use case của chương trình mới - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 08: Biểu đồ use case của chương trình mới (Trang 58)
Hình 3-09: Biểu đồ tuần tự cho chức năng mới tìm kiếm - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 09: Biểu đồ tuần tự cho chức năng mới tìm kiếm (Trang 59)
Hình 3-09: Bảng cơ sở dữ liệu địa chỉ của chương trình gốc - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 09: Bảng cơ sở dữ liệu địa chỉ của chương trình gốc (Trang 60)
Hình 3-10: Bảng cơ sở dữ liệu của chương trình mới - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 10: Bảng cơ sở dữ liệu của chương trình mới (Trang 61)
Hình 3-11: Giao diện chương trình mới - LUẬN VĂN:TÁI KỸ NGHỆ HỆ THỐNG PHẦN MỀM pdf
Hình 3 11: Giao diện chương trình mới (Trang 62)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w