Quy trình làm thiết kế cơ bản khi triển khai dự án phát triển phần mềm (Thiết kế cơ bản bước 3)

Không có gì tuyệt vời hơn sáng dậy đón ánh nắng , những cơn gió mát rượi , và nghe những giai điệu nhạc ngọt ngào.
Bước thứ 3 trong thiết kế cơ bản là tầng M – thiết kế database.
Điều kiện input đầu vào là người thiết kế phải hiểu được các khái niệm cơ bản về table, khóa ngoại, khóa chính…Để từ đó hình dung ra được mối liên kiết quan hệ xử lý logic giữa các màn hình như thế nào.Mục đích xây dựng các table sao cho các trường ít bị trùng lặp,  mỗi table đảm nhận nhiệm vụ đặc trưng của từng nghiệp vụ xử lý.
Cũng giống các bước thiết kế trước, việc chọn template thiết kế rất quan trọng, giúp người thiết kế đỡ tốn cost trong việc tạo form, chỉnh sửa khung print, macro. Điều thú vị, cũng như kinh nghiệm xây dựng các trường có trong table là gần như màn hình có item nào thì gần như trong table có các trường nhập liệu đó, có nghĩa là khi làm xong tầng V, thì mình bê gần như nguyên màn hình nhập liệu vào phần xây dựng các trường trong table. Tuy nhiên , cũng có một số trường hợp ngoại lệ ví dụ như một trường trong database lại đại diện xử lý cho nhiều trường nhập liệu trên màn hình, khi gặp case này người thiết kế cần phải đọc , phân tích kỹ càng ở mục tài liệu mô tả yêu cầu sơ khai. Cần chú ý đến yếu tố khóa chính , khóa ngoại để xác định được khi nào trường trong table đại diện cho từng item nhập liệu cho màn hình, xác định rõ case by case, mục đích để viết trong tài liệu logic nghiệp vụ sau này.
Tiếp đến phải clear được xử lý xóa logic, hay xóa vật lý. Hầu hết các hệ thống đều build trên nguyên tắc là xóa logic, trừ trường hợp các table có dữ liệu không quan trọng, thì có thể xóa vật lý lý do là đỡ tốn tài nguyên database. Ví dụ như table LOG, kể cả trong trường hợp xóa vật lý, thì người thiết kế cũng phải có kế hoạch backup định kỳ. Bởi data là tài nguyên quý giá nhất của một hệ thống.
Vậy khi xóa vật lý thì ae luôn phải có 7 trường thần thành này trong table
削除フラグ    DELFLG
削除日時        DELDATETIME
削除者コード DELUSERCD
登録日時        ADDDATETIME
登録者コード ADDUSERCD
更新日時         UPDDATETIME
更新者コード UPDUSERCD
Như bên trên đã nói khi xây dựng table phải quy định khóa chính của table có kiểu như thế nào, tự động tăng hay không…, rồi mối quan hệ giữa các table khác là quan hệ một – một, hay một nhiều? Để làm được việc này, đòi hỏi người làm thiết kế khi xây dựng thiết kế cũng đã phác thảo , hình dung được logic xử lý của hệ thống.
Sau đó, cần thêm kiến thức về database trong việc xử lý tốc độ truy xuất dữ liệu trong table, ấy là đánh chỉ số index các trường trong table. Kinh nghiệm là cứ trường nào làm key search là mình đánh index.
Okie, về cơ bản một table sẽ được thiết kế như sau




Mối quan hệ giữa các table được thể hiện qua file ERP
Và cuối cùng, cũng là kiến thức quan trọng để làm phần xử lý logic nghiệp vụ của tầng C. Đó là CRUD – viết tắt các khái niệm
C – Create
R – Read
U – Update
D – Delete
Điều kiện thực thi là liệt kê được danh sách các màn hình, mỗi màn hình tương ứng với các action tương tác với từng table.
Đã xong, phần thiết kế DB là vậy đó, trên đây là mình đã tóm lược các kiến thức hết sức sơ khai, để ae hình dung được quy trình thiết kế cơ bản là như thế nào. Với những ai coi thiết kế là nghiệp thì phải tử với nó, phải lăn vào dự án, chỉ có cách đó mới có được kiến thức trải nghiệm thực tế nhất, kinh nghiệm từ đó mới tích lũy trưởng thành được.
Về template , ae download từ link dưới nhé.
【xxxxxxxxxxxxxx】DB設計

No comments:

Post a Comment

The Ultimate XP Project

  (Bài chia sẻ của tác giả  Ryo Amano ) Trong  bài viết  số này, tôi muốn viết về dự án phát triển phần mềm có áp dụng nguyên tắc phát triển...