Người dùng có thể đi đến các chức năng con bằng hai cách tương đương là chọn trong các đơn chọn kéo xuống hoặc kích vào các nút trên cửa sổ, vì vậy ta phân nhóm các chức năng của hệ thống
Theo nhóm thực thể: Trường thi. Thí sinh dự thi. Môn thi, ngày thi.
Theo nhóm giao dịch: Nhập mới.
Xem: Thông tin thí sinh… Cập nhật sửa đổi.
Lập báo cáo: Danh sách thí sinh dự thi, danh sách thi sinh trúng tuyển… Các cửa sổ của chương trình thực hiện 2 chức năng chính là hiển thị thông tin đã có và nhận dữ liệu vào, vì vậy, nó sẽ theo các thiết kế tài liệu xuất và tài liệu nhập ở trên.
Xét theo một cách phân loại khác thì nó sẽ thuộc vào 3 loại:
Loại chỉ đọc: dùng để hiển thị các thông tin đã có trong cơ sở dữ liệu của hệ thống, người dùng chỉ được phép xem mà không được phép nhập dữ liệu vào.
Loại nhập mới: Các thông tin hoàn toàn chưa có trong cơ sở dữ liệu
Loại cập nhật: Các thông tin đã có trong cơ sở dữ liệu, người dùng có thể xem, sửa đổi hoặc xoá đi. Các chức năng sửa đổi sẽ là nặng nề nhất vì phải tìm kiếm bản ghi theo mô tả, thay đổi dữ liệu trong nó và còn phải kiểm tra các điều kiện ràng buộc với những dữ liệu khác thừa kế từ bản ghi cũ có còn đảm bảo không. Việc thiết kế theo các phân loại trên sẽ thực hiện bằng việc đặt thuộc tính và điều khiển các nút lệnh, các hộp văn bản…Hơn nữa, việc phân loại các cửa sổ này sẽ phối hợp với việc quản lý các mức quyền truy nhập tới hệ thống. Chẳng hạn : với những người dùng chỉ có quyền xem thì chỉ được phép mở những cửa sổ hiển thị thông tin chỉ đọc, những người sử dụng được phép ghi thì mới được phép mở những cửa sổ khác, thậm chí nếu thiết kế kiểm soát sâu hơn, có thể phân nhỏ nhóm người dùng có quyền ghi theo nhóm công việc: chỉ những người quản lý nhóm chức năng này mới có quyền mở các cửa sổ sửa đổi dữ liệu tương ứng, với các nhóm dữ liệu khác họ chỉ có quyền xem.