30
Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt TIỂU LUẬN Môn: CÔNG NGHỆ PHẦN MỀM Đề Tài: Chương Trình Lưu Điểm Của Sinh Viên Theo Môn Học Giáo viên hướng dẫn: Nguyễn Năm Sinh viên thực hiện: Hồ Tấn Tài – 12114271 Võ Thành Nhựt - 12053121 1

Đề tài Công Nghệ Phần Mềm

Embed Size (px)

DESCRIPTION

Phân tích về hệ thống lưu điểm của sinh viên trường đại học

Citation preview

Page 1: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

TIỂU LUẬNMôn: CÔNG NGHỆ PHẦN MỀM

Đề Tài: Chương Trình Lưu Điểm Của Sinh Viên Theo Môn Học

Giáo viên hướng dẫn: Nguyễn Năm

Sinh viên thực hiện:

Hồ Tấn Tài – 12114271Võ Thành Nhựt - 12053121

1

Page 2: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Mục lụcTrang

Giới thiệu chung. 3

1. Phân tích nghiệp vụ. 4

1.1.Hoạt động nghiệp vụ của chương trình. 41.2.Yêu cầu chương trình. 4

1.2.1.Yêu cầu chức năng. 41.2.2.Yêu cầu phi chức năng 4

2. Thiết kế hệ thống. 5

2.1.Lựa chọn mô hình phát triển. 5

2.1.1.Định nghĩa. 52.1.2.Đặc điểm mô hình xoắn ốc. 52.1.3.Quy trình. 6

2.2.Thiết kế chức năng của hệ thống. 9

2.2.1.Biểu đồ luồng dữ liệu. 92.2.2.Biểu đồ và đặc tả Usecase. 10

2.3.Kiến trúc hệ thống. 16

2.3.1.Máy móc. 162.3.2.Biểu đồ phân cấp chức năng. 16

2.4.Thiết kế CSDL. 17

2.4.1.Phát hiện thực thể. 172.4.2.Sơ đồ dữ liệu. 19

2.5.Thiết kế menu và giao diện. 20

2

Page 3: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Giới thiệu chungỞ những trường đại học, nhất là những trường đại học lớn có đến hang chục ngàn sinh viên. Nhưng thông tin và điểm số của mỗi sinh viên cần phải được lưu lại để phục vụ cho việc quản lý, giáo dục và đào tạo. Ngay cả khi sinh viên đã tốt nghiệp ra trường thì những thông tin về điểm của sinh viên cũng cần phải được lưu lại. Thử tưởng tượng nếu chúng ta thực hiện công việc này theo cách thủ công là ghi vào sổ sách thì chắc chắn sẽ mất rất nhiều thời gian cũng như công sức mà tính chính xác lại không được cao. Không những thế việc tìm kiếm thông tin về điểm của sinh viên cũng gặp rất nhiều khó khan hay việc bảo quản những sổ sách này cũng gây ra không ít phiền toái cho người quản lý.

Ngày nay, cùng với sự phát triển của Công Nghệ Thông Tin nói chung và Công Nghệ Phần Mềm nói riêng thì các phần mềm ngày nay đã phát triển rất nhanh chóng. Chúng giúp đỡ rất nhiều trong công việc của chúng ta, giúp chúng ta làm việc hiệu quả hơn, đỡ tốn nhiều công sức, thời gian và được quản lý một cách chặt chẽ hơn, tránh được những thất thoát về thông tin và đảm bảo việc an toàn thông tin cho hệ thống.

Trong các phần mềm đó, chúng tôi xin giới thiệu Chương Trình Lưu Điểm Của Sinh Viên Theo Môn Học. Chương trình sẽ giúp chúng ta có thể nhập điểm của sinh viên để lưu vào hệ thống, giúp dễ dàng tìm kiếm, chỉnh sửa một cách dễ dàng đỡ tốn nhiều công sức cũng như thời gian để ghi chép. Chúng ta chỉ cần nhập thông tin và chọn chức năng, phần còn lại chương trình sẽ hỗ trợ cho chúng ta một cách chính xác nhất.

Chúng em xin gửi lời cảm ơn sâu sắc nhất đến Thầy Nguyễn Năm đã tận tình giúp đỡ chúng em trong thời gian thực hiện đề tài. Sau một thời gian làm và tìm hiểu chúng em đã hoàn thành đề tài, tuy nhiên vẫn khó tránh khỏi những sai sót. Chúng em rất mong nhận được sự thông cảm và góp ý của Thầy. Chúng em xin chân thành cảm ơn.

3

Page 4: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

1. Phân tích nghiệp vụ.1.1. Hoạt động nghiệp vụ của chương trình.

Các hoạt động nghiệp vụ của một chương trình lưu điểm của sinh viên theo môn học có thể tóm tắt như sau:Với mỗi sinh viên chương trình sẽ lưu các thông tin: Mã số sinh viên, tên sinh viên, mã lớp, mã khoa.Nhân viên của chương trình sẽ được cấp tài khoản đăng nhập vào chương trình để quản lý điểm.Diểm thi của mỗi sinh viên sẽ được nhân viên lưu vào hệ thống ứng với số điểm, môn học và mã số sinh viên.Sinh viên muốn tra cứu điểm thi thì đăng nhập bằng mã số sinh viên của mình, hệ thống sẽ kiểm tra và xuất ra thông tin điểm thi của sinh viên đó.

1.2. Yêu cầu chương trình.1.2.1. Chương trình lưu điểm sinh viên theo môn học được xây dựng

nhằm mục đích đáp ứng các yêu cầu chức năng sau:Xây dựng chương trình quản lý điểm phục vụ công tác quản lý điểm trong một khoa của các trường đại học và cao đẳng với các yêu cầu sau:- Chức năng người dùng

Người dùng là sinh viên là những người có nhu cầu xem thông tin điểm của họ. Họ chỉ có quyền xem điểm.

- Chức năng quản trịCó 2 nhóm vai trò: quản trị viên và giáo vụ khoa. Họ phải đăng nhập vào hệ thống để sử dụng chức năng quản trị.

Quản trị viên có các chức năngQuản lý người dùng.

Giáo vụ khoa có các chức năngQuản lý sinh viên.Quản lý điểm.

1.2.2. Các yêu cầu phi chức năng.- Giao diện trực quan, dễ sử dụng.- Có thể sử dụng 24/24, đáp ứng hàng trăm lượt truy cập cùng lúc.- Hệ thống chạy trên nền web, người dùng truy cập thông qua trình

duyệt mọi lúc mọi nơi.- Có chức năng gửi mail tới người dùng.

4

Page 5: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

- Có khả năng bảo mật, phân quyền truy cập tốt, mỗi loại người dùng chỉ có thể sử dụng một số chức năng được phân quyền.

- Việc tính toán điểm phải chính xác, đáng tin cậy, độ sai số cho phép là 0.001

- Phải có tài liệu hướng dẫn cài đặt và sử dụng đầy đủ.

2. Thiết kế hệ thống2.1. Lựa chọn mô hình phát triển.

Theo những đặc điểm và yêu cầu của một Chương Trình Lưu Điểm Của Sinh Viên Theo Môn Học thì chúng tôi chọn mô hình xoắn ốc để phát triển dự án này.

2.1.1. Định nghĩa.

Mô hình xoắn ốc là một quá trình phát triển phần mềm kết hợp các yếu tố của cả thiết kế và tạo mẫu trong mỗi giai đoạn. Còn được gọi là vòng đời mô hình xoắn ốc (hoặc hình xoắn ốc phát triển), nó là một phườn pháp phát triển hệ thống được sử dụng trong công nghệ thông tin. Đây là mô hình phát triển kết hợp các tính năng của mô hình bản mẫu và thác nước. Mô hình xoắn ốc được sử dụng phổ biến cho các dự án lớn, đắt tiền và phức tạp.

Đây không phải là mô hình đầu tiên thảo luận về phát triển lặp, nhưng nó là mô hình đầu tiên để giải thích tại sao lại lặp vấn đề. Mỗi giai đoạn bắt đầu với một mục tiêu thiết kế và kết thúc đáp ứng được yêu cầu của khách hàng và là mô hình tiến bộ cho đến thời điểm hiện tại. Sự cố gắng và những nỗ lực phân tích và công nghệ được áp dụng ở từng giai đoạn của dự án, với một tầm nhìn hướng tới mục tiêu cuối cùng của dự án.

2.1.2.Đặc điểm mô hình xoắn ốc.

Về bản chất, mô hình mô tả sự phát triển của phần mềm qua các giai đoạn tiến hóa, mỗi giai đoạn được xem như là một mô hình thác đổ. Ban đầu người ta chưa định nghĩa mô hình một cách chi tiết, mà chỉ chú ý đến những đặc điểm nổi bất nhất. Sau đó đặc trưng này được xây dựng và đưa cho khách hàng xem xét. Với những thông tin phản hồi từ khách hàng, người phát triển trờ lại thực hiện các đặc trưng

5

Page 6: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

với mức độ chi tiết hơn. Bản chất của mô hình xoắn ốc đúng như tên gọi của nó là bắt đầu từ những cái khái quát nhất rồi đi dần đến từng chi tiết.

Mô hình xoắn ốc cung cấp cách thức làm phần mềm bằng cách đưa ra các phiên bản tăng dần. Sự tăng dần ở đây không phải là sự bổ sung thêm các thành phần khác như mô hình tăng dần, mà sự tăng ở đây là sự tiến hóa, tức là cũng nhưng đặc trưng ấy nhưng được làm mịn hơn, chi tiết hơn. Phiên bản sau cũng chính là phần mềm hoàn chỉnh hơn có thể chuyển giao cho khách hàng sử dụng.

2.1.3.Quy trình.

Quá trình phát triển được chia thành nhiều bước lặp lại, mỗi bước bắt đầu bằng việc lập kế hoạch, phân tích tủi ro, tạo bản mẫu, hoàn thiện và phát triển hệ thống, duyệt lại và cứ thế tiếp tục. Nội dung gồm 4 hoạt động chính:

Lập kế hoạch: Xác định mục tiêu, các giải pháp khác nhau để đạt được mục tiêu, các ràng buộc.

Phân tích rủi ro: Phân tích những rủi ro và khả năng giải quyết (thường là xây dựng bản mẫu).

Phát triển và kiểm tra. Lập kế hoạch cho pha tiếp theo.

6

Page 7: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Với mỗi lần lặp vòng xoắn ốc (bắt đầu từ tâm), các phiên bản được hoàn thiện dần. Tại một vòng xoắn ốc, phần tích rủi ro phải đi tới quyết định “tiến hành tieeso hay dừng”. Nếu rủi ro quá lớn thì có thể đình chỉ dự án hay thay đổi yêu cầu đặt ra cho thích hợp.

Lý do chúng tôi chọn mô hình xoắn ốc là vì:

Ưu điểm chính của mô hình xoắn ốc là phạm vi của nó có các lựa chọn thích ứng với các tính năng tốt của các mô hình phát triển phần mềm hiện có, trong cách tiếp cận theo định hướng rủi ro tránh nhiều khó khăn mà các mô hình khác gặp phải. Trong những tình huống thích hợp, mô hình xoắn ốc trở nên tương đương với một trong những mô hình quy trình hiện có. Trong tình huống khác, nó cung cấp hương dẫn trên kết hợp tốt nhất các phương pháp tiếp cận hiện có một dự án nhất định. Ví dụ ứng dụng của nó TRW-SPS cung cấp một kết hợp tạo mẫu, quy trình cụ thể và phát triển tiến hóa theo định hướng rủi ro.

Mô hình xoắn ốc có những thuận lợi:

7

Page 8: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Spiral Life Cycle Model là một trong những mô hình linh hoạt nhất SDLC tại chỗ. Giai đoạn phát triển có thể được xác định bởi người quản lý dự án, theo sự phức tạp của dự án.

Giám sát dự án rất dễ dàng và hiệu quả. Mỗi giai đoạn cũng như mỗi vòng lặp, yêu cầu xem xét từ những người có liên quan. Điều này làm cho các mô hình minh bạch hơn.

Quản lý rủi ro là một trong những tính năng trong xây dựng của mô hình, làm cho nó thêm hấp dẫn so với các mô hình khác.

Dự đoán về thời hạn, chi phí của dự án trở nên thực tế hơn như dự án di chuyển về phía trước và trng vòng xoắn ốc được hoàn thành.

Nó phù hợp với các dự án có nguy cơ cao, nơi mà nhu cầu kinh doanh có thể không ổn định.

Một sản phẩm tùy biến rất cao có thể được phát triển bằng cách sử dụng này.

Phương pháp phân tích thiết kế được áp dụng trong dự án này là Phương pháp phân tích thiết kế hệ thống có cấu trúc.

Đặc điểm:

Phương pháp này bao gồm 9 hoạt động: Khảo sát, phân tích, thiết kế, bổsung, tạo sinh, kiểm thử xác nhận, bảo đảm chất lượng, mô tả thủ tục, biến đổicơ sở dữ liệu, cài đặt.Các hoạt động có thể thực hiện song song. Chính khía cạnh không tuần tựnày mà thuật ngữ “pha” được thay thế bởi thuật ngữ “hoạt động” (“pha” chỉ mộtkhoảng thời gian trong một dự án trong đó chỉ có một hoạt động được tiếnhành). Mỗi hoạt động có thể cung cấp những sửa đổi phù hợp cho một hoặcnhiều hoạt động trước đó.

Lý do cúng tôi chọn phương pháp này là vì:

Người thiết kế có thể lắng nghe được nhu cầu của khách hàng và điều chỉnh sao cho phù hợp với yêu cầu của người dùng. Có thể thay đồi nhiều lần, kiểm thử một cách dễ dàng để chắc rằng sẽ có một sản phẩm hoàn hảo cho người dùng.

8

Page 9: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2. Thiết kế chức năng của hệ thống.

2.2.1. Biểu đồ luồng dữ liệu.

9

Page 10: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2. Biểu đồ và đặc tả Usecase.

10

Page 11: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2.1. Biểu đồ Usecase Đăng nhập.

Number 1Name Đăng nhậpSummary Usecase này cho phép tác nhân đăng nhập vào hệ thốngPriority 5Preconditions NonePostconditions Tác nhân đăng nhập thành công vào hệ thốngPrimary Actor(s) Sinh viên, Giáo vụ, quản trị viênSecondary Actor(s)

Database

Trigger DangNhap()Main Scenario Step Action

1 Tác nhân nhập thông tin đăng nhập2 Tác nhân nhấn nút yêu cầu đăng nhập3 Hệ thống kiểm tra thông tin đăng nhập4 Tác nhân đăng nhập thành công vào hệ thống

Extensions Step Branching Action3a Thông tin đăng nhập không chính xác.

11

Page 12: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2.2. Biểu đồ Usecase Xem điểm.

Number 2Name Xem điểmSummary Usecase này cho phép tác nhân xem điểm.Priority 5Preconditions Không có.Postconditions Nếu usecase thành công tác nhân sẽ xem được thông tin

điểm.Primary Actor(s) Sinh viên, Giáo vụ hoặc quản trị viên.Secondary Actor(s)

Database

Trigger XemDiem()Main Scenario Step Action

1 Tác nhân nhập MSSV và mã bảo vệ2 Tác nhân yêu cầu xem điểm.3 Hệ thống kiểm tra thông tin nhập vào.4 Hệ thống hiện kết quả tìm kiếm lên màn hình.

Extensions Step Branching Action3a Tác nhân nhập sai thông tin.4a Tác nhân có thể thoát và tiếp tục nhập để xem

điểm của sinh viên khác.

12

Page 13: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2.3.Biểu Usecase Quản lý điểm.

Number 3Name Quản lý điểmSummary Usecase này cho phép giáo vụ có thể thực hiện những thao

tác cập nhật điểm trong hệ thống.Priority 5Preconditions Tác nhân đăng nhập thành công vào hệ thống.Postconditions Tác nhân cập nhật thành công thông tin điểm.Primary Actor(s) Giáo vụSecondary Actor(s)

Database

Trigger Update()Main Scenario Step Action

1 Tác nhân chọn chức năng cần thao tác.2 Tác nhân nhập thông tin cần cập nhật.3 Hệ thống kiểm tra thông tin cập nhật4 Hệ thống thực hiện cập nhật.5 Hệ thống báo kết quả cập nhật cho tác nhân.

Extensions Step Branching Action3a Thông tin cập nhật chưa đủ hoặc không đúng.

13

Page 14: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2.4.Biểu đồ Usecase Quản lý sinh viên.

Number 4Name Quản lý sinh viênSummary Usecase này cho phép giáo vụ có thể thực hiện những thao

tác cập nhật sinh viên trong hệ thống.Priority 5Preconditions Tác nhân đăng nhập thành công vào hệ thống.Postconditions Tác nhân cập nhật thành công thông tin sinh viên.Primary Actor(s) Giáo vụSecondary Actor(s)

Database

Trigger Update()Main Scenario Step Action

1 Tác nhân chọn chức năng cần thao tác.2 Tác nhân nhập thông tin cần cập nhật.3 Hệ thống kiểm tra thông tin cập nhật4 Hệ thống thực hiện cập nhật.5 Hệ thống báo kết quả cập nhật cho tác nhân.

Extensions Step Branching Action3a Thông tin cập nhật chưa đủ hoặc không đúng.

14

Page 15: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.2.2.5.Biểu đồ Usecase Quản lý người dùng.

Number 5Name Quản lý người dùng.Summary Usecase này cho phép Quản trị viên có thể thực hiện những

thao tác cập nhật người dùng trong hệ thống.Priority 5Preconditions Tác nhân đăng nhập thành công vào hệ thống.Postconditions Tác nhân cập nhật thành công thông tin người dùng.Primary Actor(s) Quản trị viên.Secondary Actor(s)

Database

Trigger Update()Main Scenario Step Action

1 Tác nhân chọn chức năng cần thao tác.2 Tác nhân nhập thông tin cần cập nhật.3 Hệ thống kiểm tra thông tin cập nhật4 Hệ thống thực hiện cập nhật.5 Hệ thống báo kết quả cập nhật cho tác nhân.

Extensions Step Branching Action3a Thông tin cập nhật chưa đủ hoặc không đúng.

15

Page 16: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.3.Kiến trúc hệ thống.

2.3.1.Máy móc.

Yêu cầu máy Client có kết nối Internet.

2.3.2. Biểu đồ phân cấp:

16

Page 17: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.4.Thiết kế cơ sở dữ liệu.

2.4.1. Phát hiện thực thể.

KHOA

Tên thuộc tính Diễn giải Kiểu dữ liệu

MaKhoa Mã khoa int

TenKhoa Tên khoa Nvarchar(50)

LOP

Tên thuộc tính Diễn giải Kiểu dữ liệu

MaLop Mã lớp int

TenLop Tên lớp Nvarchar(50)

FK_MaKhoa Mã khoa int

FK_CTDT Mã chương trình đào tạo int

CHUONGTRINHDAOTAO

Tên thuộc tính Diễn giải Kiểu dữ liệu

MaCTDT Mã chương trình đào tạo int

TenCTDT Tên chương trình đào tạo Nvarchar(50)

17

Page 18: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

MONHOC

Tên thuộc tính Diễn giải Kiểu dữ liệu

MaMH Mã môn học int

TenMH Tên môn học Nvarchar(50)

FK_MaCTDT Mã chương trình đào tạo int

DIEM

Tên thuộc tính Diễn giải Kiểu dữ liệu

FK_MSSV Mã số sinh viên int

FK_MaMH Mã môn học int

DiemTK Điểm thường kỳ float

DiemGK Điểm giữa kỳ float

DiemCK Điểm cuối kỳ float

TongKet Tổng kết float

SINHVIEN

Tên thuộc tính Diễn giải Kiểu dữ liệu

MSSV Mã số sinh viên int

TenSV Tên sinh viên Nvarchar(50)

FK_MaLop Mã lớp int

NgaySinh Ngày sinh Date

DiaChi Địa chỉ Nvarchar(MAX)

FK_CTDT Mã chương trình đào tạo int

2.4.2. Sơ đồ dữ liệu.

18

Page 19: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

2.5.Thiết kế Menu và giao diện.

19

Page 20: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Hình 1. Giao diện form chính.

Hình 2. Giao diện form Quản lý điểm sinh viên.

20

Page 21: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Hình 3. Giao diện form quản lý sinh viên

21

Page 22: Đề tài Công Nghệ Phần Mềm

Sinh viên thực hiện: Hồ Tấn Tài – Võ Thành Nhựt

Hình 4: Giao diện form Quản lý người dùng

22