Một số nguyên tắc cơ bản cho việc thiết kế các form để hiện thông tin trên màn hình như sau:
• Khuôn dạng màn hình nhập liệu phải được thiết kế giống như khuôn dạng của tài liệu gốc. Không bắt người sử dụng phải nhớ thông tin từ màn hình này sang màn hình khác.
• Nên nhóm các trường thông tin trên màn hình theo một trật tự có ý nghĩa tự nhiên, theo tần số sử dụng, theo chức năng hoặc tầm quan trọng.
• Không bắt người dùng phải nhập các thông tin thứ sinh tức là những thông tin có thể tính toán được hoặc suy luận được từ những thông tin đã có.
• Tự động cập nhật những giá trị ngầm định nếu có thể.
• Sử dụng phím tab, phím enter để chuyển đến các trường thông tin tiếp theo.
Nguyên tắc trình bày thông tin trên màn hình
• Về mặt từ ngữ: Mỗi thực đơn phải có tiêu đề rõ nghĩa, từ mục phải mô tả rõ chức năng sẽ được thực hiện.
mục riêng.
• Về mặt kích thước và hình thức: số lượng các mục trên thực đơn không nên vượt quá chiều dài màn hình. Có thể sử dụng thực đơn nhiều cấp để thay thế những thực đơn quá dài. Thực đơn có sử dụng tiếng Việt có dấu và có định nghĩa phím tắt tạo điều kiện khi sử dụng.
2.1.7 Tiêu chuẩn đánh giá sản phẩm phần mềm
Để đánh giá được sản phẩm của một nền công nghệ là tốt hay xấu, chúng ta phải nghiên cứu để đưa ra được những tiêu chuẩn đánh giá chúng. Chất lượng của sản phẩm phần mềm bao gồm nhiều yếu tố dựa trên các tiêu chuẩn đã được tổng kết.
2.1.7.1 Tính đúng
Một sản phẩm thực hiện được gọi là đúng nếu nó thực hiện chính xác những chức năng đã đặc tả và thỏa mãn các mục đích công việc của khách hàng.
Như vậy, một sản phẩm phải được so sánh chuẩn đặt ra để kiểm tra tính đúng và điều này dẫn đến có nhiều bậc thang về tính đúng.
Liệt kê theo thang giảm dần, tính đúng của phần mềm có thể: + Tuyệt đối đúng,
+ Đúng , + Có lỗi,
+ Có nhiều lỗi,...
Ví dụ: Một hệ thống xử lý dữ liệu không chạy được khi file cơ sở dữ liệu rỗng hoặc có quá 104 bảng ghi,...là những hệ thống vi phạm tính đúng.
2.1.7.2 Tính khoa học
Tính khoa học của phần mềm được thể hiện qua các mặt - Khoa học về cấu trúc.
- Khoa học về nội dung.
- Khoa học về hình thức thao tác.
2.1.7.3 Tính tin cậy
Tính tin cậy của sản phẩm phần mềm thể hiện ở sản phẩm được trông chờ thực hiện các chức năng dự kiến của nó với độ chính xác được yêu cầu.
Phần mềm có thể kiểm thử được là phần mềm mà nó có cách dễ dàng để có thể kiểm tra được. Đảm bảo rằng nó thực hiện đúng các chức năng dự định.
2.1.7.5 Tính hữu hiệu
Tính hữu hiệu của phần mềm được xác định qua các tiêu chuẩn sau:
- Hiệu quả kinh tế hoặc ý nghĩa; giá trị thu được do áp dụng sản phẩm đó. - Tốc độ xử lý sản phẩm.
- Giới hạn tối đa của sản phẩm hoặc miền xác định của chương trình được xác định qua khối lượng tối đa của các đối tượng mà sản phẩm đó quản lý.
2.1.7.6 Tính sáng tạo
Một sản phẩm phần mềm có tính sáng tạo khi nó thảo mãn một trong các tính chất sau:
- Sản phẩm được thiết kế và cài đặt đầu tiên.
- Sản phẩm được phục vụ cho những đặc thù riêng.
- Sản phẩm có những đặc điểm khác về mặt nguyên lý so với các sản phẩm hiện hành.
- Sản phẩm có những ưu thế nổi bậc so với sản phẩm hiện hành.
2.1.7.7 Tính an toàn
Tính an toàn của sản phẩm phần mềm được đánh giá thông qua:
- Có cơ chế bảo mật và bảo vệ các đối tượng do hệ thống phát sinh hoặc quản lý.
- Bản thân sản phẩm được đặt trong một cơ chế bảo mật nhằm chống sao chép trộm hoặc làm biến dạng sản phẩm đó.
2.1.7.8 Tính toàn vẹn
Sản phẩm phần mềm có tính toàn vẹn khi nó:
- Có cơ chế ngăn ngừa việc thâm nhập bất hợp pháp vào phần mềm hay dữ liệu và ngăn ngừa việc phát sinh ra những đối tượng (dữ liệu, đơn thể...) sai quy cách hoặc mâu thuẩn với các đối tượng sẳn có.
- Không gây ra nhập nhằng trong thao tác. Đảm bảo nhất quán về cú pháp. - Có cơ chế phục hồi lại toàn bộ hoặc một phần những đối tượng thuộc
toàn bộ hoặc một phần những đối tượng thuộc diện quản lý của sản phẩm trong trường hợp có sự cố như hỏng máy, mất điện đột ngột.
2.1.7.9 Tính đối xứng và đầy đủ chức năng
Sản phẩm cung cấp đủ các chức năng cho người sử dụng và các chức năng của sản phẩm có các cặp loại trừ lẫn nhau, ví dụ các chức năng đối xứng thường gặp:
+ Tạo lập - Hủy bỏ,
+ Thêm - Bớt (xem - xóa), + Tăng - Giảm,
+ Dịch chuyển lên - xuống; phải - trái, + Quay xuôi - ngược chiều kim đồng hồ,...
2.1.7.10 Tính tiêu chuẩn và tính chuẩn
Sản phẩm phần mềm cần đạt được một số tiêu chuẩn tối thiểu được thừa nhận trong thị trường hoặc trong khoa học, và có thể chuyển đổi dạng cấu trúc dữ liệu riêng của hệ thống sang chuẩn và ngược lại.
Tính chuẩn của phần mềm thể hiện ở sản phẩm đó phù hợp với các chuẩn quốc gia hoặc quốc tế.
Trong khi xây dựng phần mềm, cần tuân theo nguyên tắc chuẩn hoá sau: + Chỉ thiết kế và xây dựng phần mềm sau khi đã xác định được chuẩn. + Mọi thành phần của phần mềm phải được thiết kế và cài đặt theo cùng một chuẩn (tối tiểu thì các chuẩn phải tương thích nhau).
2.1.7.11 Tính độc lập
Phần mềm cần và nên đảm bảo được tính độc lập với các đối tượng sau: - Độc lập với thiết bị,
- Độc lập với cấu trúc của đối tượng mà sản phẩm đó quản lý, - Độc lập với nội dung của đối tượng mà sản phẩm đó quản lý.
2.1.7.12 Tính dễ phát triển, hoàn thiện
Thể hiện ở phần mềm có thể mở rộng cho các phương án khác hoặc mở rộng, tăng cường về mặt chức năng một cách rõ ràng.
Ngoài các tính chất trên, tuỳ theo công dụng mà sản phẩm phần mềm cần phải được bổ sung các tính chất sau:
- Tính phổ dụng: có thể áp dụng cho nhiều lĩnh vực theo nhiều chế độ làm việc khác nhau.
- Tính đơn giản: mang những yếu tố tâm lý: dễ thao tác, dễ học, dễ hoàn thiện kỹ năng khai thác sản phẩm, trong sáng, dễ hiểu, dễ nhớ...
- Tính liên tác: là tính chất cần có để có thể gắn hệ thống này với hệ thống khác. - Tính súc tích: là độ gọn của chương trình tính theo số mã dòng lệnh. - Tính dung thứ sai lầm: tức là những hỏng hóc xuất hiện khi chương
trình gặp phải lỗi được chấp nhận.
- Tính module: là sự độc lập chức năng của các thành phần trong chương trình.
- Tính đầy đủ hồ sơ: hệ thống phải có đầy đủ hồ sơ pháp lý khi xây dựng. - Tính theo dõi được, tính dễ vận hành,.
2.2 Công cụ sử dụng để phân tích
2.2.1 Cơ sở lý thuyết để phân tích hệ thống về mặt xử lý
Phân tích hệ thống thông tin mới nói chung là sự nhận thức và mô tả một hệ thống, bởi vậy người ta thường dùng các mô hình, các biểu đồ trừu tượng hóa.
Mô hình hóa hệ thống:
Khái niệm: Mô hình là một dạng trừu tượng hóa của một hệ thống thực Mục đích của mô hình hóa: Cho phép nghiên cứu các đối tượng thuận lợi Phương pháp phân tích và thiết kế hướng cấu trúc
Tiếp cận hệ thống từ trừu tượng đến cụ thể, từ trên xuống dưới.
Hệ thống sẽ được nghiên cứu từ mức cao nhất, sau đó phân rã thành các mô đun ở mức tiếp theo để nghiên cứu.
Việc nghiên cứu chức năng của hệ thống và dữ liệu sử dụng cho hệ thống là tương đối độc lập.
Một số phương pháp phân tích và thiết kế có cấu trúc như: SA (phân tích hệ thống về chức năng), E/A (phân tích hệ thống về dữ liệu), SD (Thiết kế hệ thống)
2.2.1.1 Sơ đồ luồng thông tin (IFD)
Sơ đồ luồng thông tin (IFD) được dùng để mô tả hệ thống thông tin theo cách thức động. Tức là mô tả sự di chuyển của các tài liệu, thông tin, việc xử lý, lưu trữ chúng trong thế giới vật lý bằng các sơ đồ.
Các ký pháp của sơ đồ luồng thông tin như sau:
Lưu ý:
+ Dòng thông tin vào ra với kho dữ liệu không cần phải có mũi tên chỉ hướng. + Có thể dùng thêm một số ký tự khác như màn hình, đĩa từ.
2.2.1.2 Biểu đồ phân cấp chức năng
Biểu đồ phân cấp chức năng là công cụ khởi đầu để mô tả hệ thống qua chức năng do công ty IBM phát triển vì vậy cho đến nay nó vẫn còn được sử dụng. Nó cho phép phân rã dần dần các chức năng từ chức năng mức cao thành các chức năng chi tiết nhỏ hơn và kết quả cuối cùng ta thu được một cây chức năng, cây chức năng này xác định một cách rõ ràng dễ hiểu cái gì xảy ra trong hệ thống.
Thành phần của biểu đồ bao gồm:
Thủ công Tin học hoá
Tài liệu
Thủ công Tương tác người - máy Tin học hoá hoàn toàn - Xử lý
- Kho lưu trữ dữ liệu
- Các chức năng: được ký hiệu bằng hình chữ nhật có gán tên nhãn
- Kết nối: kết nối các chức năng mang tính chất phân cấp và được ký hiệu bằng đoạn thẳng nối chức năng cha tới chức năng con.
Ký pháp sử dụng trong biểu đồ chức năng
2.2.1.3 Biểu đồ luồng dữ liệu (DFD)
Mục đích diễn tả các chức năng của hệ thống trong các mối quan hệ trước sau trong tiến trình xử lý, trong bàn giao thông tin cho nhau. Mục đích của biểu đồ luồng dữ liệu là giúp ta thấy được đằng sau những cái gì thực tế xảy ra trong hệ thống, làm rõ các chức năng và thông tin cho quản lý.
Biểu đồ này dựa vào phương pháp phát triển hệ thống có cấu trúc bao gồm ba kỹ thuật phân tích chính:
- Sơ đồ dòng dữ liệu (DFD): mô tả quan hệ giữa các quá trình xử lý và các dòng dữ liệu.
- Định nghĩa từ điển dữ liệu (DDD): Mô tả các phần tử dòng dữ liệu một cách chi tiết.
- Xác định quá trình xử lý (PS) mô tả quá trình xử lý một cách chi tiết.
Cách thức xây dựng biểu đồ luồng dữ liệu:
o Xây dựng biểu đồ phân cấp chức năng o Xây dựng ma trận thực thể chức năng
o Xây dựng biểu đồ luồng dữ liệu ở các mức khác nhau
Một số khái niệm:
o Tiến trình: là một công việc của hệ thống nhằm thao tác trên các dữ liệu đầu vào và cho kết quả dữ liệu ở đầu ra xác định.
o Luồng dữ liệu: Là một đường truyền dẫn thông tin (hồ sơ, tập các Tên chức năng
Chức năng
mục thông tin trong hồ sơ) vào hoặc ra một chức năng nào đó.
o Kho dữ liệu: là một đối tượng lưu một tập các dữ liệu được sử dụng cho các chức năng của hệ thống.
o Tác nhân: Là một thực thể ngoài hệ thống có quan hệ thông tin với hệ thống.
Ký pháp dùng cho sơ đồ luồng dữ liệu (DFD)
2.2.2Cơ sở lý thuyết để phân tích hệ thống về mặt dữ liệu
Mục tiêu của giai đoạn phân tích hệ thống về dữ liệu là xây dựng mô hình dữ liệu quan niệm
Để hiểu và phân tích tốt hệ thống về mặt Dữ liệu ta cần phải hiểu rõ một số vấn đề sau đây:
2.2.2.1Mã hóa các tên gọi
* Mã hóa các tên gọi là việc gán một tên gọi vắn tắt cho một đối tượng nào đó. Các đối tượng trong hệ thống được đặt tên có thể là:
- Các ứng dụng tin học khác nhau trong một doanh nghiệp. - Các chức năng - Các đơn vị xử lý - Các chương trình - Các tài liệu - Các tệp dữ liệu Tên người/ bộ phận phát/ nhận tin Nguồn hoặc đích Dòng dữ liệu Tiến trình xử lý Kho dữ liệu Tên dòng dữ liệu Tiến trình xử lý Tệp dữ liệu
- Các thông tin trong các tài liệu hoặc các tệp - Các biến dùng trong các chương trình
* Việc mã hóa phải đạt một trong những yêu cầu sau đây: - Không nhập nhằng
- Thích hợp với phương thức sử dụng:
+ Sử dụng cho người: mã phải dễ hiểu, dễ giải mã
+ Sử dụng cho máy: Mã phải được định gnhia một cách chặt chẽ - Có khả năng mở rộng và xen thêm
- Phải ngắn gọn - Phải có tính gợi ý * Các kiểu mã hóa:
- Mã hóa liên tiếp: Dùng các số liên tiếp để chỉ các đối tượng
VD: Mã hóa khách hàng theo thứ tự thời gian: 001, 002, …, 084, 010309… - Mã hóa theo lát: Dùng từng lát cho từng loại đối tượng. Trong mỗi lát, thường dùng kiểu mã hóa liên tiếp.
- Mã hóa phân đoạn: Mã hóa được phân thành nhiều đoạn, mỗi đoạn mang theo một nghĩa riêng
- Mã hóa phân cấp: là một dạng của phân đoạn nhưng mỗi đoạn chỉ một tập hợp các đối tượng và các tập hợp đó bao nhau theo thứ tự từ trái qua phải.
- Mã hóa diễn nghĩa: Gán một tên ngắn gọn, nhưng hiểu được cho tưng đối tượng. Đây là cách mã hóa rất tiện dung cho xử lý thủ công.
2.2.2.2Mô hình dữ liệu quan niệm
Mô hình dữ liệu quan niệm là mô hình mô tả tập các dữ liệu được sử dụng trong hoạt động nghiệp vụ và tập các mối liên kết giữa chúng. Mô hình này là cơ sở của việc thiết kế CSDL hệ thống
Xây dựng mô hình dữ liệu quan niệm được tiến hành song song với phân tích hệ thống về chức năng nhằm để đưa ra mô hình dữ liệu phù hợp, thỏa mãn với các yêu cầu của hệ thống các chức năng nghiệp vụ
Mô hình dữ liệu quan niệm được thể hiện ở hai mức tương ứng với hai mô hình:
* Mô hình thực thể liên kết (Entity Relationship Model): bao gồm một tập các thực thể có mối liên kết với nhau thỏa mãn các ràng buộc xác định nhằm mô tả dữ liệu của HTTT.
- Do P.P.Chen đề xuất vào năm 1976. Các khái niệm được sử dụng trong mô hình này bao gồm: Kiểu thực thể, thực thể, thuộc tính của kiểu thực thể, khóa của kiểu thực thể, kiểu liên kết, ngôi của kiểu liên kết, thuộc tính của kiểu liên kết, ràng buộc của kiểu liên kết.
- Kiểu thực thể (Entity Type) : là một tập các đối tượng dữ liệu có cùng cấu trúc. Mỗi kiểu thực thể được xác định bởi một tên định danh, và được mô tả bởi một hình chữ nhật. Mỗi kiểu thực thể có thể có nhiều thuộc tính, mỗi thuộc tính được nối với kiểu thực thể bởi một đoạn thẳng.
- Thực thể (Entity): Là một thể hiện hoặc là một đối tượng cụ thể của loại thực thể
- Thuộc tính của kiểu thực thể (Entity Attribute ): là các đặc tính riêng biệt cơ bản của kiểu thực thể. Mỗi thuộc tính được xác định bởi một tên và được mô tả trong hình Ovan. Có nhiều kiểu thuộc tính như: thuộc tính đơn, thuộc tính phức hợp, thuộc tính đa trị, thuộc tính lưu trữ, thuộc tính suy diễn được, thuộc tính đa trị, thuộc tính có giá trị không xác định.
- Khóa của kiểu thực thể (Entity Key): là một thuộc tính của thực thể được dùng để định danh thực thể, nhằm để xác định một thực thể. Mỗi khóa có tên và được