Dựa vào các biểu đồ UML, tài liệu đặc tả chương trình được tạo ra từ giai đoạn trên, đọc tài liệu mã nguồn cùng với việc sử dụng chương trình gốc, chúng ta đã có thể hiểu rõ hơn về hoạt động của chương trình, các chức năng, tình năng cũng như cách thức hoạt động của nó. Và dựa trên những hiểu biết về chương trình gốc này, kết hợp với những yêu cầu tiến hóa hệ thống đưa ra ở trên, chúng ta dễ dàng xây dựng lại cấu trúc mới cho chương trình.
Chương trình mới sẽ có các chức năng:
Thêm một địa chỉ mới
Sửa một địa chỉ đã có
Xóa một địa chỉ đã có
Lưu địa chỉ vừa được tạo
56
Sắp xếp các địa chỉ theo tên, họ, theo địa chỉ v.v…
Ngoài ra, chương trình mới sẽ có giao diện hoàn toàn bằng tiếng Việt, giúp cho việc sử dụng chương trình được dễ dàng và đơn giản hơn. Trước tiên, thực hiện việc cấu trúc lại mã nguồn của chương trình, bỏ đi các phần mã nguồn không thừa, không cần thiết nữa hoặc những phần mã nguồn sai. Sau đó, dựa trên mô hình thiết kế đã xây dựng ở trên thiết kế lại chương trình với các chức năng mới đã được thêm vào. Cụ thể ở đây sẽ đưa thêm các chức năng tìm kiếm, sắp xếp địa chỉ. Dựa trên các mô hình UML cũ, sử dụng Rational Rose để sửa chữa, tinh chỉnh và nâng cao chương trình với các chức năng mới được thêm vào, đồng thời phải đồng bộ chương trình để các chức năng mới không xung đột với hệ thống, chương trình mới có thể đảm bảo ổn định.
57
Các biểu đồ UML của chương trình mới
58
Hình 3-09: Biểu đồ tuần tự cho chức năng mới tìm kiếm
3.2.3 Tái kỹ nghệ dữ liệu
Với chương trình xây dựng ban đầu, một thông tin địa chỉ được lưu trữ gồm có: Last Name First Name Middle Name Phone Email Address 1 Address 2 City State ZIP
59
Country
Tất cả các thông tin trên được lưu trữ trong bảng cơ sở dữ liệu Address như sau: ID Last Name First Name Middle Name
Phone Email Address 1 Address 2 City State Postal Code
Country
Primary key
Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar
Hình 3-09: Bảng cơ sở dữ liệu địa chỉ của chương trình gốc
Trong bảng cơ sở dữ liệu Address, ID chính là khóa chính của bảng và được lấy giá trị tăng dần bắt đầu bằng 1. Tuy nhiên, để sửa đổi lại chương trình cho phù hợp với người sử dụng, các thông tin được lưu trữ cho một cá nhân sẽ được sửa đổi, nó sẽ có các thành phần sau: ID Họ Tên Ngày sinh Số điện thoại Email Địa chỉ Quận/Huyện Tỉnh/Thành phố Cơ quan Ghi chú Phân loại
Để lưu trữ các thông tin như đã nêu ở trên, trước tiên cần phải kỹ nghệ lại cơ sở dữ liệu của chương trình. Thực hiện sửa đổi lại dữ liệu ta sẽ có một bảng cơ sở dữ liệu mới như sau:
60
ID Ho Ten Ngaysinh Dienthoai Email Diachi Quanhuyen Tinhthanhpho Coquan Ghichu Phanloai Primarykey Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar
Hình 3-10: Bảng cơ sở dữ liệu của chương trình mới
Sau khi đã xây dựng những sửa đổi, ta có thể thực hiện những thay đổi này thông qua lớp AddressDao trong giai đoạn xây dựng mã nguồn để thu được dữ liệu như mong muốn