Phát Tri n Ph n M m H ển Phần Mềm Hướng Đối Tượng ần Mềm Hướng Đối Tượng ềm Hướng Đối Tượng ướng Đối Tượng ng Đ i T ối Tượng ượng ngTên đề tài: Phát triển hướng đối tượng cho hệ thống qu
Trang 1Phát Tri n Ph n M m H ển Phần Mềm Hướng Đối Tượng ần Mềm Hướng Đối Tượng ềm Hướng Đối Tượng ướng Đối Tượng ng Đ i T ối Tượng ượng ng
Tên đề tài: Phát triển hướng đối tượng cho hệ thống quản lý điểm cho Học Viện Công Nghệ Bưu Chính Viễn Thông.
Lớp D07CNPM1
Nhóm 1: 1 Hoàng Anh
2 Nguyễn Anh Bằng
3 Nguyễn Thanh Bình
4 Phan Huy Bình
5 Phạm Đình Cường
Giảng Viên Hướng Dẫn: Nguyễn Đình Hiến
Trang 2M c L c ục Lục ục Lục
I Tên đề tài 4
II Chức năng 4
III Tài liệu khảo sát 4
1 Tài liệu gốc 4
2 Các lớp thực thể 6
IV Khảo sát sơ bộ 6
1 Tóm tắt số liêu mô tả hệ thống thực 6
1.1 Quy mô 6
1.2 Số lượng tuyển sinh viên hàng năm: 6
1.3 Nhân lực 7
1.4 Trang thiết bị kỹ thuật 7
1.5 Mức độ tự động hóa 7
1.6 Chi phí 7
1.7 Hướng phát triển 7
2 Các yêu cầu của hệ thống mới 7
V Khảo sát chi tiết 8
1 Kịch bản của cách xem điểm cũ : 8
VI Phân tích hướng đối tượng 9
1 Use case 9
2 Scenario 10
3 Class diagram 11
4 Sequence diagram 12
5 State Chart 13
VII Thiết kế 14
1 Giao diện : 14
2 Class diagram 14
a Thiết kế cơ sở dữ liệu 14
3 Sequence Diagram 15
4 Generate code 15
Trang 3I Tên đề tài
Phát triển hướng đối tượng cho hệ thống quản lý điểm cho học viện công nghệ bưu chính viễn thông
II Chức năng
1 Xem điểm
Đối tượng: Sinh viên
Mô tả: chức năng này giúp cho sinh viên sau khi đăng nhập hệ thống có thể xem điểm của mình
III Tài liệu khảo sát
1 Tài liệu gốc
Trang 52 Các lớp thực thể
2.1 Sinh Viên
2.2 Học Phần
2.3 Bảng Điểm Sinh Viên
IV Khảo sát sơ bộ
1 Tóm tắt số liêu mô tả hệ thống thực
1.1 Quy mô
Hệ thống chỉ sử dụng trong nội bộ học viện
1.2 Số lượng tuyển sinh viên hàng năm:
-Hệ đại học
400 - 600 sinh viên chính quy
200 - 300 sinh viên tại chức
100 sinh viên kỹ sư bằng hai
200 - 300 sinh viên hệ hoàn chỉnh kiến thức
-Hệ sau đại học
80 - 100 học viên cao học
10 nghiên cứu sinh
Trang 6-Hệ đào tạo từ xa
1500 - 2000 sinh viên
1.3 Nhân lực
Số lượng nhân viên: 5
1.4 Trang thiết bị kỹ thuật
Số lượng máy tính: 5
1.5 Mức độ tự động hóa
Bán tự động:
Nhân viên nhập điểm của sinh viên theo từng lớp, từng môn học
Nhân viên up điểm của sinh viên theo khoa lên hệ thống
1.6 Chi phí
Ban đầu:
Máy tính: 5 máy
Chi phí xây dựng trang web: 10 000 000 VND ( 10 Triệu VND )
Chi phí duy trì và bảo trì: 2 000 000 VND/tháng ( 2 Triệu VND)
Lương nhân viên phòng giáo vụ : 5 000 000 VND/1 người/tháng
1.7 Hướng phát triển
Nhân viên nhập điểm của sinh viên lên hệ thống
Sinh viên có thể xem điểm của mình trực tiếp trên hệ thống, xem thời khóa biểu theo học kỳ, ghóp ý với học viện, xem lịch thi lại, xem lịch thi, xem thông báo của học viện
2 Các yêu cầu của hệ thống mới
Nhân viên nhập điểm cho sinh viên lên hệ thống.
Tổ chức các lớp như sau: Học viện phân thành các khoa cơ bản , khoa công nghệ thông tin, khoa kĩ thuật điện tử, khoa quản trị kinh doanh, khoa viễn thông, khoa quốc tế và đào tạo sau đại
Trang 7học Sẽ quản lý sinh viên theo các khóa, trong mỗi khóa chia làm nhiều lớp, mỗi lớp khoảng 50-80 sinh viên.
Quản lý thông tin sinh viên theo khoa, theo khóa, theo lớp và theo mã sinh viên, mã sinh viên là thông tin duy nhất để phân biệt các sinh viên với nhau.
Việc quản lý điểm của sinh viên như sau: điểm tổng kết môn học của sinh viên được tính theo điểm thi hết môn học và điểm tổng kết sẽ được tính theo quy chế 25 của Bộ GD:
Điểm môn học : ĐMH={(CC + KT + BTL) * 30%+ Thi * 70%} / 100%.
Trong đó:
ĐMH: Điểm môn học CC:Điểm chuyên cần.
KT:Điểm thi giữa kì.
BTL:Bài tập lớn.
Hệ thống giúp sinh viên xem điểm của mình trực tiếp trên web bằng cách đăng nhập vào hệ thống mà không cần phải tải file điểm về
Hệ thống nhanh, đáp ứng được nhiều người dùng một lúc
Chạy trên các trình duyệt như Internet Explorer, Mozilla Firefox…
Hệ điều hành Win7, Vista, Win Xp
Thời gian bảo trì hệ thống không quá 12 tiếng
V Khảo sát chi tiết
1 Kịch bản của cách xem điểm cũ :
Tên nghiệp vụ : Sinh viên xem điểm
Trang 8Các hoạt động chính:
Sinh viên truy cập vào website của trường www.ptit.edu.vn
Sinh viên chọn phần “Giáo vụ và công tác sinh viên”
Sinh viên chọn bảng điểm của lớp mình và download về máy
Sinh viên giải nén file down được
Trong file giải nén sinh viên chọn bảng điểm của lớp mình
Mở file điểm của lớp và xem điểm của mình Ngoại lê:
Chưa có file đính kèm điểm trên website
VI Phân tích hướng đối tượng
1 Use case
Trang 92. Scenario
Tác nhân chính Sinh viên
Người chịu trách nhiệm Sinh viên
Tiền điều kiện Sinh viên đã đăng nhập hệ thống
Đảm bảo tối thiểu Quay lại giao diện sau khi đã đăng nhập
Đảm bảo thành công Sinh viên xem được điểm (tối thiểu là một môn
học).
Kích họat Sinh viên sau khi đăng nhập chọn chức năng xem
điểm Chuỗi sự kiện chính:
1 Sinh viên yêu cầu chức năng xem điểm.
2 Hệ thống đáp ứng yêu cầu chức năng xem điểm của đối tượng sinh viên : 2.1 Khởi tạo bảng điểm của sinh viên từ đối tượng sinh viên đã đăng nhập.
2.2 Truy cập vào cơ sở dữ liệu, tìm kiếm điểm mỗi học phần của đối tượng sinh viên.
2.3 Hiển thị bảng điểm của sinh viên.
Ngoại lệ :
Trang 103 Class diagram
BDCSV(Bảng Điểm Sinh Viên):
o msv (mã sinh viên): thuộc tính khóa.
o hoten ( họ tên sinh viên): thuộc tính mô tả.
o diem hp( điểm học phần): thuộc tính mô tả.
o tsmh (tổng số môn học): thuộc tính suy diễn.
DHP( Điểm học phần):
o mahp(mã học phần): thuộc tính khóa.
o tenhp( tên học phần): thuộc tính mô tả.
o hocky(Học kỳ):Thuộc tính mô tả.
o namhoc(namhoc): thuộc tính mô tả.
o diemthi(điểm thi): thuộc tính mô tả.
o diemtk( điểm tổng kết): thuộc tính suy diễn.
`
Trang 114 Sequence diagram
Trang 125 State Chart
Trang 13VII Thiết kế
1 Giao diện :
2 Class diagram
a Thiết kế cơ sở dữ liệu
Trang 143 Sequence Diagram
4 Generate code
BDCSV.java
public class BDCSV {
private String _msv;
private String _hoten;
private String _lop;
private DHP[] _diemhp;
private Integer _tsmh;
public void BDCSV(Object aString_msv) {
throw new UnsupportedOperationException(); }
public void XemBDCSV() {
Trang 15throw new UnsupportedOperationException(); }
public void set_msv(String _msv) {
this._msv = _msv;
}
public String get_msv() {
return _msv; }
public void set_hoten(String _hoten) {
this._hoten = _hoten;
}
public String get_hoten() {
return _hoten; }
public void set_lop(String _lop) {
this._lop = _lop;
}
public String get_lop() {
return _lop; }
public void set_diemhp(DHP[] _diemhp) {
this._diemhp = _diemhp;
}
public DHP[] get_diemhp() {
return _diemhp; }
public void set_tsmh(Integer _tsmh) {
this._tsmh = _tsmh;
}
public Integer get_tsmh() {
return _tsmh; }
}
DHP.java
public class DHP {
private String _mahp;
private String _tenhp;
private Integer _sotrinh;
Trang 16private String _hocky;
private String _namhoc;
private Integer _diemthi;
private Float _diemtk;
public void XemdiemHP() {
throw new UnsupportedOperationException(); }
public void set_mahp(String _mahp) {
this._mahp = _mahp;
}
public String get_mahp() {
return _mahp;
}
public void set_tenhp(String _tenhp) {
this._tenhp = _tenhp;
}
public String get_tenhp() {
return _tenhp;
}
public void set_hocky(String _hocky) {
this._hocky = _hocky;
}
public String get_hocky() {
return _hocky;
}
public void set_sotrinh(Integer _sotrinh) {
this._sotrinh = _sotrinh;
}
public Integer get_sotrinh() {
return _sotrinh;
}
public void set_namhoc(String _namhoc) {
this._namhoc = _namhoc;
}
public String get_namhoc() {
return _namhoc;
}
public void set_diemthi(Integer _diemthi) {
this._diemthi = _diemthi;
}
public Integer get_diemthi() {
return _diemthi;
Trang 17public void set_diemtk(Float _diemtk) {
this._diemtk = _diemtk;
}
public Float get_diemtk() {
return _diemtk; }
}