TRƯỜNG ĐẠI HỌC VÕ TRƯỜNG TOẢN KHOA CÔNG NGHỆ THÔNG TIN
LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ
CÁC CÔNG TRÌNH CỦA MỘT CÔNG TY
XÂY DỰNG
Sinh viên thực hiện:
NGUYỄN HỮU TIẾN
MSSV: 0951190434
Lớp: ĐH Công Nghệ Thông Tin
Khóa: 2009 - 2013
Giáo viên hướng dẫn: PHẠM THỊ NGỌC HÀ
Hậu Giang – Năm 2013
TRƯỜNG ĐẠI HỌC VÕ TRƯỜNG TOẢN KHOA CÔNG NGHỆ THÔNG TIN
LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG CHƯƠNG TRÌNH QUẢN LÝ
CÁC CÔNG TRÌNH CỦA MỘT CÔNG TY
XÂY DỰNG
Sinh viên thực hiện:
NGUYỄN HỮU TIẾN
MSSV: 0951190434
Lớp: ĐH Công Nghệ Thông Tin
Khóa: 2009 - 2013
Giáo viên hướng dẫn: PHẠM THỊ NGỌC HÀ
Hậu Giang – Năm 2013
LỜI CAM ĐOAN
Đề tài “Xây dựng chương trình quản lý các công trình của một công ty xây
dựng” được thực hiện bởi Nguyễn Hữu Tiến. Tôi xin cam đoan đề tài này là kết quả
nghiên cứu, phân tích và thực hiện của cá nhân tôi, dựa vào chính kiến thức đã học,
sự nỗ lực và tâm huyết của bản thân cùng sự hướng dẫn tận tình của cô Phạm Thị
Ngọc Hà.
Tôi xin chịu hoàn toàn trách nhiệm về tính xác thực và nguyên bản của luận
văn này.
Sinh viên thực hiện
(Ký và ghi rõ họ tên)
i
Nguyễn Hữu Tiến
LỜI CẢM TẠ
Lời đầu tiên tôi xin chân thành cảm ơn đến quý Thầy, Cô trường Đại học Võ
Trường Toản, những người đã trực tiếp giảng dạy, truyền đạt những kiến thức bổ
ích cho tôi, đó chính là những nền tảng cơ bản, là những hành trang vô cùng quý giá,
là bước đầu tiên cho tôi bước vào sự nghiệp sau này trong tương lai.
Tôi xin chân thành gửi lời cảm ơn sâu sắc đến cô Phạm Thị Ngọc Hà người đã
tận tình chỉ bảo, giúp đỡ, hướng dẫn tôi trong suốt thời gian làm luận văn và đồng
thời động viên lúc tôi gặp khó khăn trong nghiên cứu.
Tôi cũng xin cảm ơn các Thầy, Cô trong khoa Công nghệ Thông tin đã góp ý
cũng như giải đáp các thắc mắc của tôi.
Cuối cùng, tôi xin cảm ơn những người thân trong gia đình và bạn bè đã giúp
đỡ, động viên tôi hoàn thành khóa luận này.
Xin chân thành cảm ơn.
Sinh viên thực hiện
(Ký và ghi rõ họ tên)
ii
Nguyễn Hữu Tiến
BẢN NHẬN XÉT LUẬN VĂN TỐT NGHIỆP
__________________________________________
Họ và tên người hướng dẫn: Phạm Thị Ngọc Hà
Học vị: Kỹ sư
Chuyên ngành: Công Nghệ Thông Tin
Cơ quan công tác: Trường Đại Học Võ Trường Toản
Họ và tên sinh viên: Nguyễn Hữu Tiến
Mã số sinh viên : 0951190434
Chuyên ngành : Công Nghệ Thông Tin
Tên đề tài : Xây Dựng Chương Trình Quản Lý Các Công Trình Của Một
Công Ty Xây Dựng
NỘI DUNG NHẬN XÉT
1. Tính phù hợp của đề tài với chuyên ngành đào tạo:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
2. Về hình thức:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
3. Ý nghĩa khoa học, thực tiễn và tính cấp thiết của đề tài:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
iii
.............................................................................................................................
4. Độ tin cậy của số liệu và tính hiện đại của luận văn:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
5. Nội dung và các kết quả đạt được:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
6. Các nhận xét khác:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
7. Kết luận:
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
………., ngày…… tháng …… năm…
Người nhận xét
iv
(Ký và ghi rõ họ tên)
NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN
____________________________________________
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
Hậu Giang, ngày …. tháng …. năm …
Giảng viên phản biện
v
(Ký và ghi rõ họ tên)
MỤC LỤC
CHƯƠNG 1................................................................................................................1
TỔNG QUAN.............................................................................................................1
1.1 ĐẶT VẤN ĐỀ: .............................................................................................1
1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ:.............................................................2
1.3 PHẠM VI CỦA ĐỀ TÀI: ............................................................................2
1.4 PHƯƠNG PHÁP NGHIÊN CỨU – HƯỚNG GIẢI QUYẾT VẤN ĐỀ: ...3
CHƯƠNG 2................................................................................................................4
CƠ SỞ LÝ THUYẾT.................................................................................................4
2.1 SƠ LƯỢC VỀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG HƯỚNG ĐỐI
TƯỢNG ..................................................................................................................4
2.1.1 Tổng quan về hệ thống thông tin...............................................................4
2.1.2 Phương pháp phân tích thiết kế hệ thống thông tin theo kiểu hướng đối
tượng: ..................................................................................................................4
2.1.3 Mô hình ......................................................................................................5
2.1.4 Sơ đồ hoạt vụ..............................................................................................5
2.1.5 Sơ đồ lớp.....................................................................................................6
2.1.6 Sơ đồ tương tác ..........................................................................................9
2.2 SƠ LƯỢC VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER...............14
2.2.1 Giới thiệu hệ quản trị cơ sở dữ liệu: .......................................................14
2.2.2 Phân loại:..................................................................................................15
2.3 MICROSOFT VISUAL STUDIO 2008 .........................................................19
CHƯƠNG 3..............................................................................................................20
NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU ...........................................................20
3.1 KẾT QUẢ ĐIỀU TRA VÀ THU THẬP THÔNG TIN.................................20
3.1.1 Quản lý công trình ...................................................................................20
3.1.2 Quản lý công đoạn ...................................................................................20
3.1.3 Quản lý tài sản công trình .......................................................................21
3.1.4 Quản lý vật tư công trình ........................................................................22
3.1.5 Quản lý nhân viên ....................................................................................23
vi
3.1.6 Quản lý đối tác .........................................................................................23
3.1.7 Thống kê...................................................................................................23
3.2 GIẢI PHÁP PHÂN TÍCH, THIẾT KẾ MÔ HÌNH ......................................23
3.2.1 Sơ đồ use case...........................................................................................23
3.2.2 Mô tả văn bản các trường hợp sử dụng use case....................................26
3.2.3 Sơ đồ lớp...................................................................................................39
3.2.4 Mô tả thuộc tính.......................................................................................40
3.2.5 Lưu đồ giải thuật......................................................................................56
3.2.6 Sơ đồ tuần tự............................................................................................60
3.3 KẾT QUẢ ĐẠT ĐƯỢC .................................................................................67
3.3.1 Sơ đồ chức năng của chương trình..........................................................67
3.3.2 Giao diện chương trình............................................................................67
3.4 THẢO LUẬN KẾT QUẢ...............................................................................77
3.4.1 Kết quả đạt được......................................................................................77
3.4.2 Thuận lợi khó khăn trong quá trình thực hiện chương trình:...............78
KẾT LUẬN VÀ ĐỀ NGHỊ ......................................................................................79
KẾT LUẬN...........................................................................................................79
vii
HƯỚNG PHÁT TRIỂN.......................................................................................79
DANH MỤC HÌNH ẢNH
Hình 1: Sơ đồ thêm nhân viên..........................................................................10
Hình 2: Sơ đồ đăng nhập..................................................................................11
Hình 3 : Sơ đồ xuất vật tư ................................................................................12
Hình 4 : Sơ đồ xem thông tin vật tư.................................................................13
Hình 5: Sơ đồ use case phân hệ Admin ...........................................................23
Hình 6: Sơ đồ use case phân hệ nhân viên.......................................................24
Hình 7: Sơ đồ use case phân hệ thủ kho ..........................................................24
Hình 8: Sơ đồ use case phân hệ nhân viên quản lý .........................................25
Hình 9: Sơ đồ class phân hệ quản dự án công trình xây dựng .......................39
Hình 10: Lưu đồ thể hiện chức năng đăng nhập.............................................56
Hình 11: Lưu đồ thể hiện chức năng tìm kiếm công trình .............................57
Hình 12: Lưu đồ thể hiện chức năng thêm thông tin công đoạn ....................58
Hình 13: Lưu đồ thể hiện chức năng lập phiếu xuất ......................................59
Hình 14: Sơ đồ tuần tự đăng nhập tài khoản nhân viên.................................60
Hình 15: Sơ đồ tuần tự cập nhật công đoạn ....................................................60
Hình 16: Sơ đồ tuần tự thêm công đoạn..........................................................61
Hình 17: Sơ đồ tuần tự sửa công đoạn.............................................................62
Hình 18: Sơ đồ tuần tự xóa công đoạn.............................................................63
Hình 19: Sơ đồ tuần tự xuất tài sản từ kho ra công trình...............................64
Hình 20: Sơ đồ tuần tự điều chuyển vật tư......................................................65
Hình 21: Sơ đồ tuần tự thống kê......................................................................66
Hình 22: Sơ đồ chức năng của chương trình...................................................67
Hình 23: Giao diện đăng nhập tài khoản.........................................................67
Hình 24: Giao diện chính của chương trình....................................................68
Hình 25: Giao diện cập nhật công trình ..........................................................69
Hình 26: Liên kết giữa công đoạn và công trình .............................................69
Hình 27: Giao diện cập nhật công đoạn ..........................................................70
Hình 28: Giao diện cập nhật tài sản công trình ..............................................71
Hình 29: Giao diện cập nhật vật tư..................................................................71
viii
Hình 30: Giao diện cập nhật nhân viên ...........................................................72
Hình 31: Giao diện cập nhật chủ đầu tư..........................................................73
Hình 32: Giao diện thêm nhà cung cấp ...........................................................73
Hình 33: Nhập vật tư vào kho..........................................................................74
Hình 34: Xuất vật tư ra công trình ..................................................................75
Hình 35: Điều chuyển tài sản giữa các công trình...........................................75
ix
Hình 36: Báo cáo vật tư xuất kho ....................................................................76
DANH MỤC BIỂU BẢNG
Bảng 1: KIỂU DỮ LIỆU TRONG SQL.............................................................. 15
Bảng 2: MÔ TẢ THUỘC TÍNH (CÔNG TRÌNH)............................................ 40
Bảng 3: PHƯƠNG THỨC (CÔNG TRÌNH)...................................................... 41
Bảng 4: MÔ TẢ THUỘC TÍNH(CÔNG ĐOẠN) .............................................. 41
Bảng 5: PHƯƠNG THỨC (CÔNG ĐOẠN) ....................................................... 42
Bảng 6: MÔ TẢ THUỘC TÍNH (VẬT TƯ) ....................................................... 42
Bảng 7: PHƯƠNG THỨC (VẬT TƯ) ................................................................. 43
Bảng 8: MÔ TẢ THUỘC TÍNH (PHIẾU NHẬP VẬT TƯ) ............................ 43
Bảng 9: PHƯƠNG THỨC (PHIẾU NHẬP VẬT TƯ) ...................................... 44
Bảng 10: MÔ TẢ THUỘC TÍNH (PHIẾU XUẤT VẬT TƯ).......................... 44
Bảng 11: PHƯƠNG THỨC (PHIẾU XUẤT VẬT TƯ) .................................... 45
Bảng 12: MÔ TẢ THUỘC TÍNH (CHI TIẾT VẬT TƯ XUẤT) .................... 45
Bảng 13: MÔ HÌNH VẬT LÝ (CHI TIẾT VẬT TƯ NHẬP) .......................... 46
Bảng 14: MÔ TẢ THUỘC TÍNH (PHIẾU KIỂM KÊ VẬT TƯ) ................... 46
Bảng 15: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU KIỂM KÊ VẬT TƯ)47
Bảng 16: MÔ TẢ THUỘC TÍNH (PHIẾU ĐIỀU CHUYỂN VẬT TƯ) ........ 47
Bảng 17: PHƯƠNG THỨC (PHIẾU ĐIỀU CHUYỂN VẬT TƯ) .................. 48
Bảng 18: MÔ TẢ THUỘC TÍNH (TÀI SẢN) .................................................... 48
Bảng 19: PHƯƠNG THỨC (TÀI SẢN) .............................................................. 49
Bảng 20: MÔ TẢ THUỘC TÍNH (PHIẾU KIỂM KÊ TÀI SẢN) .................. 49
Bảng 21: MÔ TẢ THUỘC TÍNH (PHIẾU ĐIỀU CHUYỂN TÀI SẢN) ....... 50
Bảng 22: PHƯƠNG THỨC (PHIẾU ĐIỀU CHUYỂN TÀI SẢN) ................. 50
Bảng 23: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU ĐIỀU CHUYỂN TÀI
SẢN).......................................................................................................................... 51
Bảng 24: MÔ TẢ THUỘC TÍNH (CHỨC VỤ) ................................................. 51
Bảng 25: MÔ TẢ THUỘC TÍNH (NHÂN VIÊN) ............................................. 52
Bảng 26: PHƯƠNG THỨC (NHÂN VIÊN) ....................................................... 52
Bảng 27: MÔ TẢ THUỘC TÍNH (CHỦ ĐẦU TƯ) .......................................... 53
Bảng 28: PHƯƠNG THỨC (CHỦ ĐẦU TƯ) .................................................... 53
x
Bảng 29: MÔ TẢ THUỘC TÍNH (NHÀ CUNG CẤP)..................................... 54
Bảng 30: PHƯƠNG THỨC (NHÀ CUNG CẤP)............................................... 54
.................................................................................................................................... 55
xi
Bảng 31: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU KIỂM KÊ TÀI SẢN)
TỪ VIẾT TẮT
Tiếng việt:
- CMND: Chứng minh nhân dân.
- DVT: Đơn vị tính
- CSDL: Cơ sở dữ liệu.
Tiếng anh:
- SQL: Structured Query Language.
- DDL: Data Definition Language.
- DML: Data Manipulation Language.
- IDE: Integrated Development Environment.
xii
- WPF: Windows Presentation Foundation.
TÓM TẮT
Ngày nay trong thời kỳ công nghiệp hóa – hiện đại hóa đất nước thì công
nghệ thông tin thật sự trở thành một lĩnh vực rất quan trọng trong đời sống con
người. Các doanh nghiệp đang có xu hướng ứng dụng công nghệ thông tin vào hệ
thống quản lý, hoạt động kinh doanh của mình. Đó là điều kiện cho sự ra đời của
các phần mềm quản lý sau này.
Hiện nay, các công ty hoạt động trong lĩnh vực xây dựng điều mong muốn có
một phần mềm “Quản lý các công trình xây dựng” và đó cũng là đề tài của tôi. Đề
tài đi sâu vào quản lý thông tin các dự án công trình, quản lý các công đoạn trong
công trình. Ngoài ra phần mềm còn quản lý cả tài sản công trình và vật tư trong
công trình.
Trong thời gian thực hiện đề tài, tôi đã ứng dụng những kiến thức đã học trên
ghế nhà trường và các kinh nghiệm có được trong việc xây dựng mô hình hệ thống
bằng phương pháp Phân tích hệ thống thông tin hướng đối tượng, lập trình bằng
ngôn ngữ C#.NET trên cơ sở dữ liệu MySQL.
Rất mong được sự đóng góp ý kiến của thầy cô để chương trình có thể hoàn
xiii
thiện và tối ưu hơn.
ABSTRACT
Nowadays, industrialization – modernization of the country is always
advanced and up higher level. Information technology becomes playing role so
important of human life. Almost of businesses, they have tendency to apply
Information technology on management system, and operation of their business. It
finds out the main reason of the release of management software later.
Currently, the need of "Management of Construction Projects" absolutely high
of companies operating in the construction sector. That is the reason why I choose
the topic "Management of Construction Projects" and when it comes into deeply
Project Milestones Management or Works Projects Information Management.
Besides, the software also control over properties and materials of constructions.
During carrying the topic out, I have applied much knowledge which learned
in school and my experience gained in building mock-up systems based on Object-
Oriented Information System Analysis language C #. NET database in MySQL.
It’s my honor to get feedback also comments from teacher in order that my
xiv
program could be well-done completely and be able to more optimize.
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
CHƯƠNG 1
TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ:
Cùng với sự phát triển của khoa học công nghệ chúng ta đạt được nhiều thành
công to lớn trong lĩnh vực công nghệ thông tin đáp ứng phần nào nhu cầu khoa học kỹ
thuật trong đời sống. Công nghệ thông tin mang lại cho con người những thành công
vượt bậc trong công việc cũng như giảm thiểu đáng kể công sức của người lao động.
Công nghệ thông tin xâm nhập phần lớn vào các lĩnh vực khác nhau như văn hóa,
kinh tế, giáo dục, y tế và trong xây dựng, công nghệ thông tin cũng đóng một vai trò
thiết yếu.
Thực tế, trong xây dựng để quản lý dự án công trình là một vấn đề không nhỏ. Bởi
lẽ, một công trình có nhiều thành phần cần phải lưu trữ thông tin như các công đoạn,
công việc, vật tư công trình, tài sản của công trình, cũng như chủ đầu tư, nhà cung cấp,
nhân viên công trình. Một khối lượng lớn công việc đòi hỏi người quản lý cần phải
giải quyết một cách chính xác và hợp lý nhất. Nếu quản lý bằng tay, thì vấn đề xuất
hiện lỗi trùng lặp, hay sơ suất sẽ rất thường xuyên xảy ra. Điều đó làm cho người quản
lý đau đầu trong việc xử lý các vấn đề phát sinh trong dự án. Do đó, quản lý tổng thể
dự án công trình là vấn đề đang được các doanh nghiệp xây dựng quan tâm.
Trong thời gian gần đây, trên thị trường xuất hiện rất nhiều phần mềm quản lý dự
án công trình, có phần mềm đi sâu quản lý chi phí, có phần mềm chuyên quản lý chất
lượng…, nhưng ở đây vấn đề mà luận văn này đề cập là việc quản lý tổng quan về
công trình. Với mục tiêu xây dựng một phần mềm không chỉ quản lý thông tin nhân
viên hay chi phí của công trình mà còn quản lý xuyên suốt các giai đoạn thực hiện
cũng như gắn kết các thành phần tham gia dự án như tài sản công trình và vật tư của
công trình, nhà cung cấp và chủ đầu tư. Không chỉ vậy, phần mềm phải tối ưu hóa
trong việc quản lý, thông qua chương trình người quản lý dễ dàng kiểm soát và điều
hành tiến độ công việc một cách linh hoạt và hiệu quả. Bên cạnh đó phần mềm phải
đơn giản hóa việc sử dụng, tối ưu hóa việc xử lý và có chi phí thấp.
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 1 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
1.2 LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ:
Từ những vấn đề trên đã khiến cho các nhà phân tích, lập trình viên đi sâu nghiên
cứu tạo ra các phần mềm quản lý để góp phần giải quyết những khó khăn của nhà quản
lý, nhân viên trong quá trình quản lý các dự án công trình xây dựng.
Hiện nay, có nhiều phần mềm cũng liên quan đến lĩnh vực xậy dựng, tuy nhiên các
phần mềm đều đi sâu vào quản lý theo kiểu từng phần: có phần mềm quản lý chất
lượng công trình, phần mềm quản lý chi phí công trình, phần mềm quản lý nhân viên
công trình. Gần đây nhất cũng có xuất hiện phần mềm quản lý tổng quan về công trình như CENDIBUILDING 2 nhưng nhìn chung thì phức tạp, khiến người dùng khó hiểu. Đứng trước những nhu cầu đó, tôi mong muốn tạo ra một phần mềm quản lý công
trình đáp ứng những yêu cầu sau:
- Nội dung: Đi sâu vào quản lý thông tin công trình, các công đoạn của công
trình, vật tư trong công trình, tài sản trong công trình.
- Tính đơn thể hóa cao: Có kết hợp, tách rời các phần với nhau, trao đổi thông
tin qua giao diện.
- Trao đổi thông tin: Tất cả các phần được thiết kế chặt chẽ với nhau, dữ liệu
trao đổi qua lại được tự động, không cần thao tác chuyển đổi thông tin.
- Giao diện: Phát triển trên nền windows, giao diện đồ họa phân theo mô hình
trực quan, cơ chế tìm kiếm thông minh. Giao diện chính thân thiện, màu sắc
bắt mắt, người dùng dễ dàng học cách sử dụng và sử dụng.
- Tìm kiếm: Tính năng tìm kiếm động, tra cứu và xử lý thông tin nhanh chóng
và chính xác.
1.3 PHẠM VI CỦA ĐỀ TÀI:
Từ những mong muốn và nhu cầu trên nên tôi chọn đề tài “Xây dựng chương trình
quản lý các công trình của một công ty xây dựng”. Đề tài vừa có thể đáp ứng nhu cầu
người sử dụng, vừa có thể áp dụng trong các công ty xây dựng.
- Phạm vi trong dự án:
- Quản lý thông tin công trình
- Quản lý thông tin công đoạn
- Quản lý tài sản công trình
- Quản lý vật tư công trình
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 2 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
- Quản lý nhân viên công trình
- Phạm vi ngoài dự án:
- Không quản lý chi phí công trình
- Không quản lý chất lượng công trình
- Không tính lương nhân viên
- Công cụ sử dụng:
- Visual studio 2008: Ngôn ngữ C#
- SQL Server 2005
- StarUML
- Microsoft Word, Excel
- Sách, Internet
1.4 PHƯƠNG PHÁP NGHIÊN CỨU – HƯỚNG GIẢI QUYẾT VẤN ĐỀ:
- Thu thập tài liệu thông qua sách và Internet.
- Tổng hợp tài liệu, tổng hợp các hoạt động trong lĩnh vực xây dựng.
- Từ nguồn tài liệu đã thu - thập, tiến hành phân tích hệ thống, xây dựng mô
hình Use case Diagrams, Class Diagrams, Sequence Diagrams.
- Tìm hiểu về bộ công cụ Visual studio 2008, ngôn ngữ C#.
- Trong khi đó tiếp tục tìm hiểu hệ thống, hoàn thiện các mô hình đã xây dựng,
tiến hành lập trình, phát triển hệ thống.
- Chạy thử chương trình, sửa lỗi, hoàn thiện hệ thống.
- Viết báo cáo quá trình thực hiện đề tài.
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 3 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
2.1 SƠ LƯỢC VỀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG HƯỚNG ĐỐI TƯỢNG
2.1.1 Tổng quan về hệ thống thông tin
Thông tin là một loại tài nguyên của tổ chức, phải được quản lý chu đáo giống
như mọi tài nguyên khác. Việc xử lý thông tin đòi hỏi chi phí về thời gian, tiền bạc và
nhân lực. Việc xử lý thông tin phải hướng tới khai thác tối đa tiềm năng của nó.
Hệ thống thông tin là một hệ thống bao gồm con người, dữ liệu, các quy trình và
công nghệ thông tin tương tác với nhau để thu thập, xử lý, lưu trữ và cung cấp thông
tin cần thiết ở đầu ra nhằm hỗ trợ cho một hệ thống. Nó hiện hữu dưới mọi hình dạng
và quy mô.
Hệ thống thông tin là một tập hợp và kết hợp của các phần cứng, phần mềm và
các hệ mạng truyền thông được xây dựng và sử dụng để thu thập, tạo, tái tạo, phân
phối và chia sẻ các dữ liệu, thông tin và tri thức nhằm phục vụ các mục tiêu của tổ
chức.
2.1.2 Phương pháp phân tích thiết kế hệ thống thông tin theo kiểu hướng đối
tượng:
Đây là một trong những phương pháp phân tích thiết kế hệ thống thông tin. Nó
được hình thành giữa thập niên 80 dựa trên ý tưởng lập trình hướng đối tượng. Phương
pháp này được phát triển, hoàn thiện và hiện nay rất phổ dụng.
Chọn tiếp cận hướng đối tượng là tất yếu để phát triển hệ thống phần mềm phức
tạp, theo kịp đà phát triển không ngừng của công nghệ và các nhu cầu ứng dụng trong
thực tế. Tuy nhiên lập trình hướng đối tượng lại ít trực quan, ít tự nhiên hơn lập trình
theo chức năng.
Do đó, đòi hỏi phải mô hình hóa hướng đối tượng thật tốt. Phương pháp này giúp
hiểu biết tốt hơn, thực tế so sánh tốt hơn các giải pháp thiết kế trước khi lập trình. Nó
dựa trên các ngôn ngữ mô hình hóa.
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 4 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
2.1.3 Mô hình
Mô hình là một tập hợp các phần tử thường được dùng trong phép tương ứng
những lớp các đối tượng, các quan hệ và những quá trình xử lý nào đó trong lĩnh vực
cần mô tả để có một sự biểu diễn cô đọng, tổng quát, có ý nghĩa, đơn giản và dễ hiểu.
Trong tin học, mô hình là phương pháp cho tương ứng những phạm trù trừu
tượng, phức tạp trong thế giới thực và thậm chí ngay cả trong tin học để có cách nhìn
trực quan, dễ hiểu, từ đó có thể từng bước tin học hóa toàn bộ hay một phần lĩnh vực
đó.
Mô hình là một công cụ rất quan trọng trong việc xây dựng hệ thống thông tin.
2.1.4 Sơ đồ hoạt vụ
Sơ đồ hoạt vụ hay còn gọi là mô hình trường hợp sử dụng là một mô hình cơ bản
trong việc phân tích và thiết kế hệ thống thông tin theo kiểu hướng đối tượng.
Trường hợp sử dụng là một kỹ thuật mô tả hệ thống dựa trên quan điểm người sử
dụng. Mỗi trường hợp sử dụng là một cách thức riêng biệt để sử dụng hệ thống.
Trường hợp sử dụng là một tập hợp bao gồm các thao tác được kích hoạt bởi một
tác nhân bên ngoài và tạo ra một kết quả xác định được, quan sát được.
Tác nhân là những ai, những gì sử dụng hệ thống và có tương tác với hệ thống.
Các trường hợp sử dụng được gom lại trong các sơ đồ hoạt vụ, nhằm chỉ ra mối
liên hệ giữa các trường hợp sử dụng và giữa các tác nhân. Những sơ đồ này cũng cho
phép biểu diễn sự phụ thuộc giữa các trường hợp sử dụng lẫn nhau và giữa các tác
nhân lẫn nhau.
Quan hệ giữa các trường hợp sử dụng trong sơ đồ hoạt vụ:
- Quan hệ bao gồm:
Trường hợp sử dụng B được coi là bao hàm của trường hợp sử dụng A nếu hành
vi mô tả B bao hàm hành vi mô tả A, ta nói B phụ thuộc vào A.
Ký hiệu:
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 5 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
- Quan hệ mở rộng:
Nếu hành vi của trường hợp sử dụng B có thể được mở rộng bởi hành vi của
trường hợp sử dụng A, ta nói A mở rộng B.
Ký hiệu:
- Quan hệ tổng quát hóa:
Một trường hợp sử dụng A là sự tổng quát hóa của trường hợp sử dụng B nếu B
là trường hợp đặc biệt của A.
A
B
Ký hiệu:
- Quan hệ giữa các tác nhân:
Mối quan hệ duy nhất có thể có giữa các tác nhân là sự tổng quát hóa.
Ký hiệu:
2.1.5 Sơ đồ lớp
Lớp là một sự mô tả một tập hợp các đối tượng có cùng các đặc tính: cùng một
ngữ nghĩa, có chung các thuộc tính, các phương thức và các quan hệ.
Một đối tượng là một thể hiện của lớp.
Ký hiệu:
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 6 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
Tên lớp
Danh sách các thuộc tính
Danh sách các phương thức
Tên lớp: phải có nghĩa và bắt đầu bằng chữ hoa.
Mỗi thuộc tính được mô tả bằng tên và kiểu. Tên của thuộc tính phải duy nhất
trong lớp.
Mỗi phương thức được mô tả kiểu trả về, danh sách các đối số và kiểu tương ứng
của mỗi đối số.
2.1.5.1 Thuộc tính
Các thuộc tính biểu diễn các dữ liệu được bao gói trong các đối tượng của lớp
đang xét.
Một thuộc tính có thể được khởi tạo lúc khai báo. Ngữ pháp đầy đủ của thuộc
tính như sau:
[=
Trong một lớp có một số thuộc tính đặc biệt gọi là khóa.
2.1.5.2 Phương thức(method)
Hành vi của một đối tượng được mô hình hóa bằng một tập các phương thức.
Người ta phân biệt đặc tả (specification, header) của phương thức với cài đặt
(implementation) của nó. Tương ứng với mỗi đặc tả, có thể có nhiều cài đặt, nhưng với
mỗi cài đặt chỉ tương ứng với một đặc tả duy nhất.
2.1.5.3 Nguyên tắc xây dựng một lớp
Trong quá trình xây dựng một lớp ngoài việc nghiên cứu hệ thống thông tin, cần
phải dựa vào một số nguyên tắc sau:
- Nguyên tắc 1: Trong một lớp, đối với bất kỳ đối tượng nào của lớp đó, mỗi
thuộc tính đều phải có một nghĩa và phải có một giá trị duy nhất.
- Nguyên tắc 2: Mọi thuộc tính trong một lớp phải phụ thuộc vào khóa, bằng
một phụ thuộc hàm sơ cấp. Nghĩa là phụ thuộc vào toàn bộ khóa chứ không
phải phụ thuộc vào một bộ phận của khóa.
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 7 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
- Nguyên tắc 3: Mọi thuộc tính của một lớp phải phụ thuộc vào khóa bằng một
phụ thuộc hàm sơ cấp trực tiếp.
2.1.5.4 Quan hệ giữa các lớp
- Liên kết: Một liên kết biểu diễn mối liên hệ ngữ nghĩa bền vững giữa hai lớp.
- Lớp liên kết: Khi phân tích ta thấy có những thuộc tính không thể đặt vào
trong một lớp thuần túy nào, mà phụ thuộc đồng thời vào nhiều lớp nối nhau
qua một liên kết. Vì trong phân tích hệ thống hướng đối tượng, chỉ có lớp mới
có thể chứa thuộc tính nên liên kết này trở thành một lớp gọi là lớp liên kết.
- Liên kết do suy diễn: Liên kết do suy diễn là liên kết được đặt điều kiện hoặc
được suy diễn từ ít nhất một liên kết khác.
- Liên kết nhiều chiều: Liên kết n chiều là liên kết mà trong đó có n lớp tham
gia vào liên kết.
2.1.5.5 Các nguyên tắc chuyển một sơ đồ lớp thành các bảng trong cơ sở dữ
liệu
- Nguyên tắc 1: Một lớp chuyển thành một bảng.
- Nguyên tắc 2: Một thuộc tính của một lớp sẽ chuyển thành một thuộc tính của
một bảng. Đặc biệt một khóa trong một lớp sẽ chuyển thành khóa của bảng.
- Nguyên tắc 3: Nếu trong một liên kết hai chiều, bản số về phía lớp thứ nhất là
1 thì lớp đó sẽ được chuyển thành bảng thứ nhất theo quy tắc 2, còn lớp kia sẽ
chuyển thành bảng thứ hai theo quy tắc 2 cộng thêm thuộc tính khóa của bảng
thứ nhất làm khóa ngoài cho bảng thứ hai.
- Nguyên tắc 4: Một liên kết hoặc một lớp liên kết giữa các lớp mà các bảng số
không phải là 1 biến thành một bảng gồm tất cả các khóa của các lớp tham gia
và các thuộc tính của lớp liên kết đó (nếu có). Các khóa này kết hợp lại thành
khóa của bảng vừa được tạo ra. Mỗi lớp tham gia sẽ chuyển thành một bảng
theo quy tắc 2.
- Nguyên tắc 5: Một liên kết tự thân sẽ biến mất hay trở thành một bảng, tùy
theo các bảng số của quan hệ đó. Nếu có một bản số là 1 thì xem quan hệ tự
thân như quan hệ giữa hai lớp và áp dụng quy tắc 3. Nếu không có bản số nào
là 1 thì áp dụng quy tắc 4 .
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 8 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
2.1.6 Sơ đồ tương tác
2.1.6.1 Tương tác
Một tương tác định nghĩa hành vi của một hệ có cấu trúc (một hệ thống con, một
trường hợp sử dụng, một lớp, một thành tố, …) bằng cách đặc biệt chú trọng đến việc
trao đổi các thông tin giữa các thể hiện (instances) của nó.
2.1.6.2 Sinh tuyến (đường đời: lifeline)
Một sinh tuyến biểu diễn một thành phần duy nhất (unique: không được trùng
lắp) tham gia vào một tương tác.
Một sinh tuyến được biểu diễn bằng một hình chữ nhật hoặc một hình người
"treo" một đường thẳng dọc có chấm. Trong hình chữ nhật hoặc phía dưới hình người
chứa một định danh có ngữ pháp như sau :
[
2.1.6.3 Định nghĩa sơ đồ tương tác
Các sơ đồ tuần tự và sơ đồ liên lạc biểu diễn các tương tác giữa các sinh tuyến.
Một sơ đồ tuần tự chỉ ra các tương tác dưới góc độ thời gian, đặc biệt là các chuỗi
thông báo (messages) trao đổi nhau giữa các sinh tuyến, trong khi một sơ đồ liên lạc
biểu diễn về mặt không gian của các sinh tuyến.
Còn có dạng thứ ba của sơ đồ tương tác là sơ đồ thời gian nhằm mô hình hóa các
hệ thống được khai thác dưới những điều kiện nghiêm ngặt về thời gian, chẳng hạn các
hệ thống thời thực. Tuy nhiên, các sơ đồ tuần tự hoàn toàn có thể thực hiện chức năng
này.
2.1.6.4 Các dạng thông báo
Các thông tin chủ yếu chứa trong các sơ đồ tuần tự là các thông báo. Một thông
báo định nghĩa một liên lạc giữa các sinh tuyến.
Có nhiều dạng thông báo, trong đó phổ biến nhất là dạng:
(1) : Gửi một tín hiệu. Thông báo khởi động một phản ứng nơi đối tượng nhận
một cách không đồng bộ và không cần đợi trả lời.
(2) : Kích hoạt thực hiện một thao tác trong một phương thức. Đây là dạng thông
báo được sử dụng nhiều nhất trong lập trình hướng đối tượng.
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 9 -
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
Ví dụ : dt.pt(), trong đó dt là đối tượng nhận thông báo và pt là một phương thức
của dt. Trong thực tế, đa số thông báo loại này là đồng bộ. Cũng có thể thực hiện
thông báo dạng này một cách không đồng bộ qua các thread.
Thông báo đồng bộ
Thông báo không đồng
(synchrone)
bộ (asynchrone)
Cách 1
Cách 2
(3) : Tạo hoặc hủy một thể hiện (đối tượng)
2.1.6.5 Thông báo và sự kiện
UML phân biệt việc gửi với nhận một thông báo, cũng như phân biệt việc bắt đầu
với việc kết thúc thực hiện một phản ứng. Các sự kiện (event) được dùng để đánh dấu
từng giai đoạn.
sd Thêm NV
: GD Nhân Viên
QL KH
thêm
sự kiện bắt đầu thực hiện
sự kiện gửi
sự kiện nhận
sự kiện chấm dứt thực hiện
Ví dụ :
Hình 1: Sơ đồ thêm nhân viên
Hoặc :
Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 10 -
sd Đăng Nhập
Đăng Nhập
NV
Nhập
sự kiện bắt đầu thực hiện
Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng
sự kiện nhận
Kiểm tra mã
sự kiện chấm dứt thực hiện
sự kiện gửi
Hình 2: Sơ đồ đăng nhập
Dựa vào các sự kiện gửi và nhận, UML định nghĩa 3 kiểu thông báo :
- Thông báo đầy đủ : các sự kiện gửi và nhận đều được biết.
- Thông báo bị lạc : sự kiện gửi có được biết, nhưng sự kiện nhận thì không.
Ký hiệu :
- Thông báo tìm được : ngược lại, sự kiện nhận có được biết, nhưng sự kiện gửi
Ký hiệu
thì không.
2.1.6.6 Ngữ pháp của thông báo
Thông báo gửi có ngữ pháp dưới đây:
Trong danh sách, các tham số cách nhau bởi dấu phẩy, và mỗi tham số có ngữ
pháp như sau :
[ với : dấu ‘ :’ nếu đó là tham số có thể sửa được (đọc/ ghi) Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 11 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Ví dụ : nhậpMã(« 1234 ») nhậpMã(m) ghiNhận(Ma_NV, Ma_CT) sửaSolg(sl : 10) Thông báo trả lời Thông báo trả lời có ngữ pháp dưới đây : [ Ví dụ : soluongvattuton= ktrasoluong(« A001 ») maOK=ktraMa(ma) :true 2.1.6.7 Ràng buộc các sinh tuyến Các sinh tuyến của một tương tác có thể mang đủ loại ràng buộc. Ký hiệu: - Một ràng buộc được biểu diễn trên một sinh tuyến bằng một văn bản giữa dấu móc ({ }). - Một ràng buộc cũng có thể được chứa trong một ghi chú gắn với thể hiện của sd xuất vật tư GDXuatV
T NV yeuccau_xuatvt(soluon
g)) ktravattu(sotien) assert { HT.soluong>soluong } Xuất (soluong) sự kiện liên quan. Hình 3 : Sơ đồ xuất vật tư Sinh Viên: Nguyễn Hữu Tiến - 12 - GVHD: Phạm Thị Ngọc Hà Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Phép assert khẳng định sự cần thiết của việc gửi thông báo tiếp theo. Như vậy, xuất vật tư trong kho, bắt buộc phải kiểm tra số lượng vật tư tồn trong kho, sau khi kiểm tra, thuộc tính soluongvattu của kho phải lớn hơn soluongvattuton) Ghi chú : Một ràng buộc được đánh giá khi khai thác tương tác. Nếu ràng buộc không được thỏa mãn, các thể hiện của sự kiện đi theo sau ràng buộc nay sẽ được xem là không hợp lệ, ngược lại với khi ràng buộc được thỏa mãn. Như vậy, một sơ đồ tương tác có thể mô tả các thông báo không hợp lệ, nghĩa là không bao giờ được gửi đi. 2.1.6.8 Các kiểu phân đoạn của tương tác a) Rẽ nhánh: + Sử dụng từ khóa alt nếu là cấu trúc rẽ nhánh có else. + Sử dụng từ khóa opt nếu là cấu trúc rẽ nhánh không có else. b) Vòng lặp: + Nếu là vòng lặp không xác định thì sử dụng từ khóa loop. + Nếu là vòng lặp xác định thì sử dụng từ khóa loop với cú pháp loop[1,số lần lặp] sd Xem thông tin tt[i]: TTCT CDT NVQL ycXemTTCT( ) Ví dụ : ttctrinh() tt=thongtin() tt=thongtin()
tg=trigia() Hình 4 : Sơ đồ xem thông tin vật tư Sinh Viên: Nguyễn Hữu Tiến - 13 - GVHD: Phạm Thị Ngọc Hà Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng c) Các toán tử assert, ignore và consider: Toán tử assert có tác dụng và ngữ pháp như đã trình bày ở phần IV.3.5. Các phép ignore và consider cho phép tập trung chú ý để mô hình hóa một số thông báo có thể được gửi trong một tương tác, ignore định nghĩa các thông báo có thể bỏ qua, còn consider định nghĩa các thông báo cần phải chú ý đến. d) Ngữ pháp: Các toán tử assert, ignore và consider được đặt sau tên của sơ đồ tuần tự, với ngữ pháp như sau: ignore { danh sách thông báo} consider { danh sách thông báo} 2.1.6.9 Phân rã một sinh tuyến Đôi khi, một tương tác quá phức tạp để có thể được mô tả trong một sơ đồ thôi, nên ta có thể cắt một sinh tuyến ra trên nhiều sơ đồ. Một phần của sinh tuyến được phân rã ra sẽ được thay thế bằng một hình chữ nhật với từ khóa ref, và được trình bày ở sơ đồ khác. 2.2 SƠ LƯỢC VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU SQL SERVER 2.2.1 Giới thiệu hệ quản trị cơ sở dữ liệu: SQL (Structured Query Language – ngôn ngữ hỏi có cấu trúc) là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu được lưu trữ trong các cơ sở dữ liệu. SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ. SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm: - Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu. - Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu. - Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 14 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống. - Cho phép lập trình kết nối với nhiều ngôn ngữ lập trình khác dùng xây dựng các ứng dụng đặc thù (Visual Basic, C, C++, ASP, ASP.NET, XML,…) - Sử dụng câu lệnh truy vấn dữ liệu Transaction-SQL (Access là SQL, Oracle là PL/SQL). Ngôn ngữ truy vấn có cấu trúc - SQL (Structured Query Language) là hệ thống ngôn ngữ được sử dụng cho các hệ quản trị cơ sở dữ liệu quan hệ. Thông qua SQL có thể thực hiện được các thao tác trên cơ sở dữ liệu như định nghĩa dữ liệu, thao tác dữ liệu, điều khiển truy cập, quản lý toàn vẹn dữ liệu. SQL là một thành phần quan trọng và không thể thiếu trong hệ quản trị cơ sở dữ liệu quan hệ. 2.2.2 Phân loại: 2.2.2.1 DDL (Data Definition Language): Phần DDL của SQL cho phép tạo ra hoặc xoá các bảng. Chúng ta cũng có thể định nghĩa các khoá (key), chỉ mục (index), chỉ định các liên kết giữa các bảng và thiết lập các quan hệ ràng buộc giữa các bảng trong CSDL. a) SQL dùng: Bảng ≡ Quan hệ Dòng ≡ Bộ Cột ≡ Thuộc tính. b) DDL dùng lệnh CREATE để: Tạo lược đồ(scheme). Tạo bảng (table). Tạo khung nhìn (view). Tạo ràng buộc toàn vẹn (assertion, trigger) c) Kiểu dữ liệu: Bảng 1: KIỂU DỮ LIỆU TRONG SQL Kiể Dữ Liệu Diễn Giải Khoảng giá trị từ -263 đến 263 -1 tức từ : bigint 9.223.372.036.854.775.808 đến 9.223.372.036.854.775,807. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 15 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng int Khoảng giá trị từ -231 đến 231 -1
Khoảng giá trị từ -215 đến 215 tức từ -32.768 đến 32.767. smallint Khoảng giá trị từ 0 đến 255. tinyint bit decimal numeric Chứa giá trị 0 hoặc 1.
Có giá t rị từ -1038 +1 đến 1038 -1.
Có giá t rị từ -1038 +1 đến 1038 -1.
Khoảng giá trị từ -263 đến 263 tức từ: money 922.337.203.685.477,5808 922.337.203.685.477,5807. Khoảng giá trị từ -214.748,3648 đến 214.748,3647 smallmoney Float: độ chính xác từ 1.79E + 308 đến 1.79E + 308. float Độ chính xác từ -3.40E + 38 đến 3.40E + 38. real Khoảng giá trị từ 1/1/1753 đến 31/12/9999. datetime Khoảng giá trị từ 1/1/1900 đến 6/6/2079. smalldatetime Không chứa Unicode, chiều dài tối đa là 8.000 ký tự. char varchar Không chứa Unicode, chiều dài tối đa là 8.000 ký tự.
Không chứa Unicode, chiều dài tối đa là 231 -1 text Có chứa Unicode, chiều dài tối đa là 4.000 ký tự nchar Có chứa Unicode, chiều dài tối đa là 4.000 ký tự nvarchar Có chứa Unicode, chiều dài tối đa là 230 – 1 ntext Chiều dài tối đa là 8.000 byte binary varbinary Chiều dài tối đa là 8.000 byte
Chiều dài là 231 -1 tương đương với 2.147.483.647 byte image Kiểu con trỏ cursor Là kiểu dữ liệu xác định theo kiểu dữ liệu khác sql_variant Một kiểu dữ liệu đặc biệt được sử dụng để lưu trữ một tập hợp table kết quả để xử lý Kích thước 8 byte, lưu trữ dạng số nhị phân do hệ thống tự timestamp sinh ra, mỗi giá trị timestamp trong CSDL là duy nhất. uniqueidentifier Kiểu dữ liệu ID cho một bộ dữ liệu nào đó của database Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 16 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng d) Các ràng buộc cơ bản: NOT NULL: chỉ định 1 cột không thể bằng NULL. NULL. Khóa chính. Khóa ngoại. UNIQUE: chỉ định 1 cột không nhận giá trị trùng. DEFAULT: gán giá trị mặc định. CHECK: kiểm tra một điều kiện nào đó. Đặt tên ràng buộc: CONSTRAINT e) Các lệnh cơ bản: Lệnh tạo bảng: CREATE TABLE [ Lệnh thêm cột: ALTER TABLE Lệnh xóa cột: ALTER TABLE Lệnh thay đổi dữ liệu: ALTER TABLE Lệnh thêm ràng buộc: ALTER TABLE CONSTRAINT CONSTRAINT Lệnh xóa ràng buộc: ALTER TABLE Lệnh xóa bảng: DROP TABLE 2.2.2.2 DML (Data Manipulation Language): Đối với đa số người sử dụng, SQL được xem như là công cụ hữu hiệu để thực hiện các yêu cầu truy vấn và thao tác trên dữ liệu. Trong chương này, ta sẽ bàn luận đến nhóm các câu lệnh trong SQL được sử dụng cho mục đích này. Nhóm các câu lệnh này được gọi chung là ngôn ngữ thao tác dữ liệu (DML: Data Manipulation Language) bao gồm các câu lệnh sau: Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 17 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng a) SELECT - lấy dữ liệu từ một bảng CSDL. Câu lệnh SELECT được dùng để phát sinh câu truy vấn đến SQL Server và dữ liệu trả về được chứa trong một bộ kết quả (Result Set). Câu lệnh SELECT được thành lập từ nhiều mệnh đề: - Mệnh đề SELECT cho phép lựa chọn một/nhiều/tất cả(*) các thuộc tính Cú pháp: SELECT tên_các_cột FROM tên_bảng - Mệnh đề FROM tương ứng với phép tích đề các của các quan hệ được xét. Cú pháp: SELECT tên_cột FROM tên_bảng WHERE tên_cột phép_toán giá_trị - Mệnh đề WHERE tượng ứng chọn dựa trên các thuộc tính của các quan hệ xuất hiện sau FROM. Cú pháp: SELECT tên_cột FROM tên_bảng WHERE tên_cột phép_toán giá_trị - Mệnh đề GROUP BY nhóm các bộ có cùng giá trị trên các thuộc tính đó Cú pháp: SELECT tên_cột FROM tên_bảng GROUP BY tên_cột - Mệnh đề HAVING xuất hiện sau khi tạo nhóm, đưa ra điều kiện cho nhóm. Cú pháp: SELECT tên_cột FROM tên_bảng GROUP BY tên_cột HAVING điều_kiện giá_trị - Mệnh đề ORDER BY cho phép trình bày kết quả câu truy vấn theo thứ tự Cú pháp: SELECT tên_cột FROM tên_bảng WHERE điều_kiện_tên_giá_trị ORDER BY cột_sắp_xếp b) DELETE - xoá dữ liệu trong bảng. Cú pháp: DELETE FROM {tên bảng | tên khung nhìn} [WHERE thức điều kiện>] c) INSERT INTO - thêm dữ liệu mới vào bảng. Cú pháp: INSERT [INTO] {tên bảng | tên khung nhìn} {[(danh sách các cột)] { các giá trị} d) UPDATE - cập nhật/sửa đổi dữ liệu trong bảng. {biểu thức | DEFAULT | NULL} [WHERE <điều kiện chọn lọc>] } Cú pháp: UPDATE { Tên bảng | tên khung nhìn} SET {Tên cột = Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 18 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 2.3 MICROSOFT VISUAL STUDIO 2008 Microsoft Visual Studio là môi trường phát triển tích hợp chính (Integrated Development Environment (IDE) được phát triển từ Microsoft. Đây là một sản phẩm phần mềm máy tính có công dụng giúp đỡ các lập trình viên trong việc phát triển phần mềm. Một số tính năng nổi bật của Microsoft Visual Studio 2008: - Microsoft Visual Studio 2008 thiết kế giao diện nhanh, hiệu quả, chỉ với một IDE duy nhất, chúng ta có thể làm việc được với tất cả các phiên bản của .Net Framework. - Trong Windows Form designer của Visual Studio 2008 được tích hợp chặt chẽ với WPF (Windows Presentation Foundation), giúp nhà phát triển có được một giao diện đẹp chỉ với các thao tác kéo thả dữ liệu. - Microsoft Visual Studio 2008 còn hỗ trợ việc tạo ra các khóa liên kết giữa các bảng với nhau cũng như quy định về cách thức quan hệ dữ liệu giữa các bảng khi thao tác với nhau cũng bằng thao tác kéo thả dữ liệu. - Ngoài ra Microsoft Visual Studio 2008 còn cho phép tạo mới các store để thao tác dữ liệu thông qua các store rất nhanh và đơn giản. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 19 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.1 KẾT QUẢ ĐIỀU TRA VÀ THU THẬP THÔNG TIN Công ty Cổ Phần Đầu Tư Xây Dựng Dố 10 IDICO cần một phần mềm quản lý dự án công trình xây dựng. Phần mềm này được sử dụng chủ yếu cho nhân viên quản lý công trình (thầu chính) và nhân viên quản lý kho (thủ kho), nhằm giúp cho các nhân viên quản lý làm việc đạt kết quả cao và đẩy nhanh tiến độ công việc. Vì vậy phần mềm cần phải đáp ứng đầy đủ các chức năng cơ bản sau: 3.1.1 Quản lý công trình Khi một chủ đầu tư (hay khách hàng) yêu cầu xây dựng một công trình thì bộ phận quản lý dự án công trình sẽ tiến hành kiểm tra trao đổi với khách hàng hay chủ đầu tư. Nếu hai bên không đáp ứng được yêu cầu thì sẽ hủy, ngược lại nếu hai bên đồng thỏa thuận thì bộ phận quản lý dự án sẽ tiến hành ký hợp đồng với chủ đầu tư, sau đó bộ phận quản lý lập thông tin chi tiết về dự án công trình cần làm, bao gồm: Mã công trình, tên công trình, địa chỉ, tên khách hàng hay chủ đầu tư, tên nhân viên thực hiện quản lý công trình, dự toán công trình, quyết toán công trình, ngày bắt đầu, ngày đăng ký kết thúc, ngày kết thúc, tiến trình thực hiện công trình, diện tích công trình, thể loại công trình. Khi các chi tiết được lập đầy đủ thì thông tin sẽ được lưu vào hệ thống. 3.1.2 Quản lý công đoạn Trong một dự án xây dựng công trình bao gồm nhiều công đoạn, chi tiết công đoạn: Mã công đoạn, tên công đoạn, nhân viên (khoán) nhận công đoạn, thời gian bắt đầu, thời gian kết thúc, dự toán, quyết toán. Và trong mỗi công đoạn được phân ra làm nhiều công việc khác nhau, chi tiết công việc gồm: Mã công việc, tên công việc, thời gian bắt đầu, thời gian kết thúc, dự toán cho công việc và quyết toán cuối cùng khi công việc đã hoàn thành. Mỗi công đoạn có thể do nhân viên của công ty làm hoặc có thể do nhân viên khoán bên ngoài công ty nhận làm. Đó được gọi là khoán công trình, cụ thể hơn khoán công trình là hình thức bàn giao công việc cho một cá nhân hay tổ đội, nhằm cho Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 20 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng khoán công trình chịu trách nhiệm về một hạn mục nào đó trong công trình. Sau khi chi tiết về công đoạn được lập hoàn chỉnh thì được lưu vào hệ thống. 3.1.3 Quản lý tài sản công trình Trong thời gian thi công công trình, bộ phận quản lý dự án phải thường xuyên theo dõi và thống kê các trang thiết bị, phương tiện, dụng cụ được sử dụng trong công trình để đảm bảo được tài sản trong công trình không thất thoát, mỗi tài sản được đánh dấu bao gồm: Mã tài sản, tên tài sản, ngày nhập về, thuộc công trình, số lượng, đơn vị tính, tình trạng, trị giá tài sản…, bộ phận quản lý có thể thêm xóa sửa thông tin của các tài sản trong công trình. 3.1.3.1 Lập phiếu kiểm tài sản Như trình bày, tài sản sử dụng trong công trình rất nhiều, với một số lượng khá lớn nên rất khó quản lý, vì thế phải tiến hành kiểm kê tài sản thường xuyên để tránh thất thoát và nếu tài sản có hư hỏng thì có thể tiến hành sửa chữa kịp thời, chi tiết phiếu kiểm kê tài sản bao gồm: Mã phiếu kiểm kê, tên tài sản, ngày lập phiếu, nhân viên kiểm kê, số lượng, hiện trạng tài sản. Sau khi phiếu được tạo thì nhân viên có thể in phiếu. 3.1.3.2 Lập phiếu xuất tài sản Sau bắt đầu tiến hành thực hiện công trình thì nhân viên cần xem xét các công cụ, thiết bị nào cần sử dụng để có thể đăng ký với thủ kho xuất ra. Để tài sản xuất kho thì thủ kho sẽ tiến hành lập phiếu xuất kho, chi tiết phiếu bao gồm: Mã phiếu xuất, tên tài sản, ngày lập, nhân viên lập, hiện trạng vật tư, số lượng. 3.1.3.3 Lập phiếu điều chuyển tài sản Một công ty thì có thể nhận nhiều công trình để làm, do đó các trang thiết bị, phương tiện hay dụng cụ sẽ không phục vụ được cho tất cả các công trình nên tài sản công trình sẽ được thường xuyên điều chuyển qua lại giữa các công trình góp phần phục vụ cho công trình. Vì thế cần phải quản lý tài sản qua lại giữa các công trình tránh tính trạng thất thoát, người quản lý sẽ tiến hành lập phiếu kiểm kê tài sản khi tài sản đó thuộc công trình này mà điều chuyển qua công trình khác, chi tiết phiếu điều chuyển tài sản gồm: Mã phiếu điều chuyển, tên tài sản, ngày lập, nhân viên lập phiếu, từ công trình, đến công trình, nhân viên giao tài sản, nhân viên nhận tài sản. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 21 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.1.4 Quản lý vật tư công trình Ngoài ra khi công trình đang thi công thì vấn đề vật tư là không thể thiếu, bộ phận quản lý tiến hành thống kê, kiểm soát vật tư một cách chặt chẽ trành tình trạng hao hụt do nhiều nguyên nhân khác nhau, quản lý vật tư bao gồm: Mã vật tư, tên vật tư, đơn vị tính, đơn giá, hiện trang, số lượng. Nhân viên quản lý có thể thêm, sửa, xóa thông tin vật tư công trình. 3.1.4.1 Lập phiếu nhập vật tư Bên cạnh đó khi bên dự án cần nhập vật tư từ phía nhà cung cấp (đối tác) thì sẽ được lập phiếu nhập vật tư, bao gồm: Mã phiếu, tên vật tư, ngày nhập, nhà cung cấp, người lập, bộ phận kho, người giao nhận, chi tiết vật tư (mã vật tư, tên vật tư, số lượng, đơn giá…) để có thể thống kê vật tư và tính toán chi phí quyết toán cho công trình sau này. 3.1.4.2 Lập phiếu xuất vật tư Sau khi nhập vật tư, thì vật tư sẽ được chứa trong kho vật tư, công trình nào cần vật tư thì liên hệ với bộ phận xuất kho để lấy vật tư sử dụng cho công trình. Để vật tư xuất kho thì thủ kho sẽ tiến hành lập phiếu xuất kho, chi tiết phiếu bao gồm: Mã phiếu xuất, tên vật tư, ngày lập, nhân viên lập, hiện trạng vật tư, số lượng. 3.1.4.3 Phiếu điều chuyển vật tư Trường hợp khác, trong quá trình thi công thì công ty xây dựng có điều động vật tư qua nhiều công trình khác nhau trong công ty, mỗi lần chuyển vật tư từ nơi này sang nơi khác thì sẽ được lập phiếu điều chuyển vật tư: Mã phiếu điều chuyển vật, tên vật tư, chuyển từ công trình, sang công trình, người lập, bộ phận kho, người giao nhận, chi tiết vật tư (mã vật tư, tên vật tư, số lượng…). 3.1.4.4 Lập phiếu kiểm kê vật tư Như trình bày, vật tư sử dụng trong công trình rất nhiều, với một số lượng khá lớn nên rất khó quản lý, vì thế phải tiến hành kiểm kê vật tư thường xuyên để tránh thất thoát , hết vật tư trong kho và nếu vật tư có hết thì có thể tiến hành nhập hàng kịp thời, chi tiết phiếu kiểm kê vật tư bao gồm: Mã phiếu kiểm kê, tên vật tư, ngày lập phiếu, nhân viên kiểm kê, số lượng, hiện trạng vật tư. Sau khi phiếu được tạo thì nhân viên có thể in phiếu. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 22 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.1.5 Quản lý nhân viên Khi nhân viên vào làm trong công ty thì hồ sơ nhân viên sẽ được lưu trữ để dễ dàng phần quản lý. Chi tiết nhân viên trong hồ sơ bao gồm: Mã nhân viên, tên nhân viên, ngày sinh, giới tính, chứng minh nhân dân, địa chỉ, điện thoại, mail, chức vụ, loại lương, trình độ, ngành nghề, việc được giao. Thông tin hồ sơ nhân viên có thể sửa, xóa. 3.1.6 Quản lý đối tác Đối tác ở đây gồm có: Nhà cung cấp và chủ đầu tư. - Thông tin nhà cung cấp bao gồm: Mã nhà cung cấp, tên nhà cung cấp, địa chỉ, điện thoại, mail, website, số tài khoản. - Thông tin chủ đầu tư bao gồm: Mã chủ đầu tư, tên chủ đầu tư, giới tính, chứng minh nhân dân, ngày sinh, địa chỉ, fax, mail, điện thoại. 3.1.7 Thống kê Bộ phận báo cáo thống kê có thể lấy thông tin từ các bộ phận khác và có nhiệm vụ thống kê phiếu nhập vật tư, thống kê phiếu chuyển vật tư, thống kê tài sản, thống kê vật tư, thống kê tình trạng công trình, báo cáo lãi lỗ trong công trình… 3.2 GIẢI PHÁP PHÂN TÍCH, THIẾT KẾ MÔ HÌNH 3.2.1 Sơ đồ use case Hình 5: Sơ đồ use case phân hệ Admin Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 23 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 6: Sơ đồ use case phân hệ nhân viên Hình 7: Sơ đồ use case phân hệ thủ kho Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 24 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 8: Sơ đồ use case phân hệ nhân viên quản lý Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 25 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.2 Mô tả văn bản các trường hợp sử dụng use case 3.2.2.1 Use case đăng nhập Định danh: - Tên: DangNhap - Mục tiêu: Use case này mô tả cách một người dùng đăng nhập vào hệ thống quản lý dự án các công trình xây dựng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này bắt đầu khi một actor muốn đăng nhập vào hệ thống quản lý dự án các công trình xây dựng. - Điều kiện đầu (pre-cond): không có. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu actor nhập tài khoản và mật khẩu. + Actor nhập tài khoản và mật khẩu. + Hệ thống kiểm chứng tên tài khoản, mật khẩu được nhập và cho phép actor đăng nhập vào hệ thống. - Điều kiện cuối (post-cond): Nếu use case thành công, actor lúc này đã đăng nhập vào hệ thống. Nếu không trạng thái hệ thống sẽ không thay đổi. - Xử lý ngoại lệ: + Nếu actor nhập sai tên đăng nhập hoặc mật khẩu, hệ thống sẽ hiển thị một thông báo lỗi. Actor có thể chọn trở về đăng nhập lại hoặc hủy việc đăng nhập lúc này use case kết thúc. + Nếu actor nhập sai tên đăng nhập: Hệ thống sẽ thông báo không tồn tại tên đăng nhập. + Nếu actor nhập sai mật khẩu: Hệ thống sẽ hiển thị thông báo yêu cầu nhập lại mật khẩu. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 26 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.2.2 Use case quản lý công trình Định danh: - Tên: CongTrinh - Mục tiêu: Thêm, sửa, xóa thông tin về công trình sẽ được mở tương ứng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về công trình sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin về công trình mà chủ đầu tư yêu cầu công ty xây dựng thực hiện. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin về công trình. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có 3.2.2.3 Use case quản lý công đoạn Định danh: - Tên: CongDoan - Mục tiêu: Thêm, sửa, xóa thông tin về công đoạn sẽ được mở tương ứng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 27 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về công đoạn sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ công trình. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin về công đoạn. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. 3.2.2.4 Use case quản lý vật tư công trình Định danh: - Tên: VatTu - Mục tiêu: Thêm, sửa, xóa thông tin vật tư công trình sẽ được mở tương ứng. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về vật tư công trình sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ nhà cung cấp, thông tin chi tiết về vật tư. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin về vật tư. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 28 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Xử lý ngoại lệ: Không có. 3.2.2.5 Use case quản lý tài sản công trình Định danh: - Tên: TaiSan - Mục tiêu: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về tài sản công trình sẽ được mở tương ứng. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về tài sản công trình sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ nhà cung cấp tài sản, thông tin chi tiết về tài sản. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin về tài sản. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. 3.2.2.6 Use case quản lý nhân viên công trình Định danh: - Tên: NhanVien - Mục tiêu Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về nhân viên sẽ được mở tương ứng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 29 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về nhân viên sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ nhân viên khi mới vào làm. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin nhân viên. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. 3.2.2.7 Use case quản lý chủ đầu tư Định danh: - Tên: ChuDauTu - Mục tiêu Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về chủ đầu tư sẽ được mở tương ứng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về chủ đầu sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ chủ đầu tư khi có hợp tác với công ty. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin chủ đầu tư. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 30 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. Xử lý ngoại lệ: Không có. 3.2.2.8 Use case quản lý nhà cung cấp Định danh: - Tên: NhaCungCap - Mục tiêu Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về nhà cung cấp sẽ được mở tương ứng. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Use case này cho phép actor chọn lựa việc thêm, sửa, xóa thông tin về nhà cung cấp sẽ được mở tương ứng. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin từ nhà cung cấp khi hợp tác bán vật tư cho công ty. - Chuỗi liên kết các thông báo (messages): + Hệ thống hiển thị các chức năng cập nhật thông tin nhà cung cấp. + Actor sẽ nhập đầy đủ các thông tin và sau đó lưu thông tin. + Nếu thông tin được yêu cầu nhập vào mà bị bỏ trống thì hệ thống yêu cầu nhập lại thông tin bị bỏ trống đó. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. 3.2.2.9 Use case tạo mới công trình Định danh: - Tên: Them_CT Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 31 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Mục tiêu: Lưu thông tin của công trình mới được cập nhật vào hệ thống danh sách các công trình mà công ty đã đang và sẽ thực hiện - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Người quản lý lưu thông tin về chi tiết công trình khi chủ đầu tư và công ty ký hợp đồng, thông tin chi tiết về công trình sẽ giúp cho bên thầu xây dựng nắm được các yêu cầu mà hai bên thỏa thuận, để có thể theo sát công trình. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, chọn công trình và chọn tiếp chức năng thêm công trình. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu nhập thông tin về công trình. + Thêm công trình thành công. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Nếu nhân viên quản lý nhập thông tin công trình không đầy đủ thì hệ thống sẽ yêu cầu nhân viên nhập lại. 3.2.2.10 Use case sửa công trình Định danh: - Tên: Sua_CT - Mục tiêu: Chỉnh sửa thông tin chi tiết công trình khi có thay đổi thông tin - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 32 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Mô tả tổng quát chuỗi: Người quản lý có nhu cầu cần chỉnh sửa thông tin công trình khi có sự thay đổi hoặc do người quản lý nhập sai thông tin. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách của công trình, chọn công trình và chọn tiếp chức năng sửa công trình. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn công trình cần sửa. + Sửa thông tin công trình thành công. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Nếu nhân viên quản lý nhập thông tin sửa công trình không hợp lệ thì hệ thống sẽ yêu cầu nhân viên nhập lại. 3.2.2.11 Use case xóa công trình Định danh: - Tên: Xoa_CT - Mục tiêu: Xóa thông tin công trình ra khỏi danh sách công trình. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Người quản lý xóa thông tin công trình khi công trình đó đã thực hiện xong và vượt quá thời gian bảo trì. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách công trình, chọn công trình và chọn tiếp chức năng xóa công trình. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn công trình cần xóa. + Thông báo xóa công trình thành công. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 33 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.2.12 Use case tìm kiếm công trình Định danh: - Tên: Tim_CT - Mục tiêu: Khi nhân viên cần biết thông tin về công trình thì nhân viên tiến hành tìm kiếm công trình từ danh sách của công trình. - Tác nhân chính: Nhân viên quản lý - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Tìm kiếm thông tin về công trình khi người quản lý muốn biết các chi tiết về công trình muốn tìm kiếm. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách công trình. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn điều kiện tìm kiếm và nhập thông tin tìm kiếm. + Hệ thống hiển thị kết quả tìm kiếm. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ (Exception): + Không tồn tại công trình cần tìm hệ thống hiển thị thông báo không tìm thấy công trình được yêu cầu và yêu cầu actor nhập lại nội dung tìm kiếm 3.2.2.13 Use case lập phiếu kiểm kê tài sản Định danh: - Tên: PhieuKiemKe_TS - Mục tiêu: Kiểm kê tài sản trong công trình và in phiếu. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 34 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Mô tả tổng quát chuỗi: Người quản lý có nhu cầu muốn biết thông tin về các tài sản được sử sụng trong công trình một cách tổng quát thì thủ kho tiến hành kiểm kê tài sản. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách tài sản. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn hình thức kiểm kê. + Hiển thị thông tin tài sản được kiểm kê. - Điều kiện cuối (post-cond): Hiển thị thông tin tài sản được kiểm kê, nếu muốn in phiếu thì tiến hành in. Khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Tìm không thấy phiếu kiểm kê tài sản mà actor yêu cầu dẫn đến không có dữ liệu xuất ra hệ thống yêu cầu chọn lại phiếu kiểm kê. 3.2.2.14 Use case lập phiếu xuất vật tư. Định danh: - Tên: PhieuXuat_VT - Mục tiêu: Lập phiếu xuất vật tư từ kho vật tư ra công trình và in phiếu. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Công trình cần vật tư để sử dụng thì người quản lý yêu cầu xuất vật tư từ kho, thủ kho tiến hành xuất vật tư và tiến hành lập phiếu. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách vật tư từ kho vật tư. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn vật tư cần xuất kho. + Hệ thống thông báo xuất kho và in phiếu. - Điều kiện cuối (post-cond): Hiển thị thông tin vật tư xuất và in phiếu xuất. Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 35 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Xử lý ngoại lệ: + Tìm không thấy phiếu xuất vật tư mà actor yêu cầu dẫn đến không có dữ liệu xuất ra hệ thống yêu cầu chọn lại phiếu xuất. 3.2.2.15 Use case lập phiếu nhập vật tư Định danh: - Tên: PhieuNhap_VT - Mục tiêu: Lập phiếu nhập vật tư từ nhà cung cấp vật tư vào công ty xây dưng và in phiếu. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Công ty xây dựng cần vật tư để sử dụng thì thủ kho tiến hành liên hệ với nhà cung cấp để nhập vật tư vào. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin về vật tư. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn vật tư cần nhập kho. + Hệ thống thông báo nhập kho và in phiếu. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Tìm không thấy phiếu nhập vật tư mà actor yêu cầu dẫn đến không có dữ liệu xuất ra hệ thống yêu cầu chọn lại phiếu nhập. 3.2.2.16 Use case lập phiếu điều chuyển vật tư Định danh: - Tên: PhieuChuyenVatTu_VT - Mục tiêu: Lập phiếu điều chuyển vật tư (chuyển mã vật tư) từ công trình này sang công trình khác trong công ty và in phiếu. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 36 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Khi một trong các công trình trong công ty cần vật tư phục vụ cho xây dựng, mà kho đã hết hoặc công trình khác gần công trình cần vật tư mà đang dư vật tư, thì có thể chuyển vật tư từ công trình khác sang công trình đang cần. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có thông tin về vật tư. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn vật tư cần chuyển. + Hệ thống thông báo chuyển vật tư và in phiếu. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: Không có. 3.2.2.17 Use case thống kê vật tư. Định danh: - Tên: ThongKe_VT - Mục tiêu: Thủ kho tiến hành thống kê vật tư để biết tình hình vật tư tồn hay hết trong kho. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Người quản lý muốn biết tình hình vật tư trong kho như thế nào thì thủ kho tiến hành thống kê vật tư và in phiếu. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách vật tư. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn chức năng thống kê. + Hệ thống hiển thị thông tin vật tư trong kho. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 37 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Có dữ liệu nhưng không thể xuất được file hệ thống phải thông báo lỗi gặp phải và yêu cầu liên hệ với bên quản trị chỉnh sửa. + Tìm không thấy vật tư mà actor yêu cầu dẫn đến không có dữ liệu xuất ra hệ thống yêu cầu nhập lại tên vật tư. 3.2.2.18 Use case thống kê tài sản. Định danh: - Tên: ThongKe_TS - Mục tiêu: Thủ kho tiến hành thống kê tài sản để biết hiện trạng của các tài sản sử dụng trong công trình. - Tác nhân chính: Thủ kho - Ngày tạo và ngày cập nhật mới nhất: 01/03/2013. - Người tạo: Nguyễn Hữu Tiến - Đại Học Công Nghệ Thông Tin - Khóa 2. - Phiên bản (version): 1.1.1.0 Chuỗi hành vi: - Mô tả tổng quát chuỗi: Người quản lý muốn biết tình hình hiện trạng tài sản sử dụng trong công trình nên tiến hành thống kê vật tư và in phiếu. - Điều kiện đầu (pre-cond): Đăng nhập vào hệ thống, có danh sách tài sản. - Chuỗi liên kết các thông báo (messages): + Hệ thống yêu cầu chọn chức năng thống kê. + Hệ thống hiển thị thông tin tài sản. - Điều kiện cuối (post-cond): Nếu khi thoát khỏi chương trình hay quay lại trang chính thì kết thúc use case. - Xử lý ngoại lệ: + Có dữ liệu nhưng không thể xuất được file hệ thống phải thông báo lỗi gặp phải và yêu cầu liên hệ với bên quản trị chỉnh sửa. + Tìm không thấy tài sản mà actor yêu cầu dẫn đến không có dữ liệu xuất ra hệ thống yêu cầu nhập lại tên tài sản. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 38 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.3 Sơ đồ lớp Hình 9: Sơ đồ class phân hệ quản dự án công trình xây dựng Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 39 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.4 Mô tả thuộc tính Bảng 2: MÔ TẢ THUỘC TÍNH (CÔNG TRÌNH) 1 Ma_CT int X [0..9] Mã số của công trình X 2 Ten_CT nvarchar 100 X Tên của công trình X 3 DiaChi_CT nvarchar 100 X Địa chỉ của công trình 4 NgayBD_CT datetime X 5 NgayDKKT_CT datetime X >1/1/1900<
Ngày hiện hành
>1/1/1900<
Ngày hiện hành Ngày bắt đầu làm của công
trình
Ngày đăng ký kết thúc của
công trình 6 DuToan_CT Float X 0< Dự toán của công trình 7 QuyetToan_CT Float X 0< Quyết toán của công trình 8 NgayKT_CT datatime X Ngày kết thúc công trình 10 NgayKyHD_CT datetime X Ngày ký hợp đồng >1/1/1900<
Ngày hiện hành
>1/1/1900<
Ngày hiện hành 11 TheLoai_CT nvarchar 50 X Thể loại của công trình 12 DienTich_CT int X Diện tích công trình Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 40 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 3: PHƯƠNG THỨC (CÔNG TRÌNH) 1 Hiencongtrinh Hiển thị công trình đang xét 2 HienDScongtrinh X Hiển thị tất cả công trình đang xét 3 Dscongtrinh X Danh sách công trình 4 Timkiemcongtrinh X Ten_CT Nvarchar Tìm kiếm theo tên công trình Nvarchar Tìm thông tin công trình nhập từ bàn phím 5 Timkiemcongtrinh X Ma_CT Int Tìm kiếm theo mã công trình Nvarchar Tìm thông tin công trình nhập từ bàn phím 6 Themnhacongtrinh X void Thêm thông tin công trình 7 Suanhacongtrinh X void Sửa thông tin công trình 8 Xoanhacongtrinh X void Xóa công trình ra khỏi danh sách Bảng 4: MÔ TẢ THUỘC TÍNH (CÔNG ĐOẠN) X [0..9] Mã của công đoạn 1 Ma_CD int 2 Ten_CD nvarchar 100 X X 3 ThoiGianBD_CD datetime X 4 ThoiGianKT_CD datetime X 5 DuToan_CD Float X >1/1/1900<
Ngày hiện hành
>1/1/1900<
Ngày hiện hành Tên của công đoạn
Thời gian bắt đầu làm công
đoạn
Thời gian kết thúc của công
đoạn
Dự toán công đoạn 6 QuyetToan_CD Float X Quyết toán công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 41 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 5: PHƯƠNG THỨC (CÔNG ĐOẠN) 1 Hiencongdoan Hiển thị công đoạn đang xét 2 HienDScongdoan X Hiển thị tất cả công đoạn khi xét 3 Dscongdoan X Danh sách công đoạn 4 Timkiemcongdoan X Ten_CD Nvarchar Tìm kiếm theo tên công đoạn Nvarchar Tìm thông tin công đoạn nhập từ bàn phím 5 Timkiemcongdoan X Ma_CD Int Tìm kiếm theo mã công đoạn Nvarchar Tìm thông tin công đoạn nhập từ bàn phím 6 Themcongdoan X void Thêm thông tin công đoạn 7 Suacongdoan X void Sửa thông tin công đoạn 8 Xoacongdoan X void Xóa công đoạn ra khỏi danh sách Bảng 6: MÔ TẢ THUỘC TÍNH (VẬT TƯ) 1 Ma_VT int X X [0..9] Mã của vật tư 2 Ten_VT nvarchar 100 X X Tên vật tư 3 SoLuong_VT int X 1< Số lượng vật tư 4 DVT_VT nvarchar 50 X Đơn vị tính vật tư 5 TriGia_VT Float X Đơn giá vật tư Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 42 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 7: PHƯƠNG THỨC (VẬT TƯ) 1 Hienvattu Hiển thị vật tư đang xét 2 HienDSvattu X Hiển thị tất cả vật tư đang xét 3 Dsvattu X Danh sách vật tư 4 Timkiemvattu X Ten_VT Nvarchar Tìm kiếm theo tên vật tư Nvarchar Tìm thông tin vật tư nhập từ bàn phím 5 Timkiemvattu X Ma_VT Int Tìm kiếm theo mã vật tư Nvarchar Tìm thông tin vật tư nhập từ bàn phím 6 Themnhavattu X void Thêm thông tin vật tư 7 Suanhavattu X void Sửa thông tin vật tư 8 Xoanhavattu X void Xóa thông tin vật tư 9 Thongkevattu X void Thống kê tình trạng vật tư Bảng 8: MÔ TẢ THUỘC TÍNH (PHIẾU NHẬP VẬT TƯ) 1 Ma_PNhap int X X [0..9] Mã phiếu nhập vật tư 2 Ma_NV int X [0..9] Mã nhân viên lập phiếu 3 Ma_VT int X [0..9] Mã vật tư có trong phiếu Ma_NV
(NhanVien)
Ma_VT
(VatTu) 4 NgayTao_PNhap datetime X Ngày tạo phiếu nhập >1/1/1900<
Ngày hiện hành Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 43 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 9: PHƯƠNG THỨC (PHIẾU NHẬP VẬT TƯ) Hiển thị phiếu nhập đang xét 1 Hienphieunhap Hiển thị tất cả phiếu nhập đang xét 2 HienDSphieunhap X Danh sách phiếu nhập 3 Dsphieunhap X 4 Timkiemphieunhap Ten_NCC Nvarchar Nvarchar Tìm thông tin phiếu nhập nhập từ bàn phím X 5 Timkiemphieunhap Ma_NCC datetime Nvarchar Tìm thông tin phiếu nhập nhập từ bàn phím X Tìm kiếm theo tên nhà
cung cấp
Tìm kiếm theo ngày lập
phiếu void Thêm thông tin chi tiết phiếu nhập 6 Themphieunhap X void Xóa phiếu nhập ra khỏi danh sách 7 Xoaphieunhap X Bảng 10: MÔ TẢ THUỘC TÍNH (PHIẾU XUẤT VẬT TƯ) 1 Ma_Pxuat int [0..9] Mã phiếu xuất X X 2 Ma_NV int [0..9] Mã nhân viên X 3 Ma_CT int [0..9] Mã công trình X Ma_NV
(NhanVien)
Ma_CT
(CongTrinh) 4 NgayTao_Pxuat datetime Ngày tạo X >1/1/1900<
Ngày hiện hành 5 HienTrangVatTu_Pxuat nvarchar 50 Hiện trạng vật tư. X Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 44 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 11: PHƯƠNG THỨC (PHIẾU XUẤT VẬT TƯ) 1 Hienphieuxuat Hiển thị phiếu xuất đang xét 2 HienDSphieuxuat Hiển thị tất cả xuất nhập đang xét X 3 Dsphieuxuat Danh sách phiếu xuất X 4 Timkiemphieuxuat Ten_CT Nvarchar Nvarchar Tìm thông tin phiếu xuất nhập từ bàn phím X 5 Timkiemphieuxuat Ma_CT datetime Nvarchar Tìm thông tin phiếu xuất nhập từ bàn phím X 6 Themphieuxuat void Thêm thông tin chi tiết phiếu xuất Tìm kiếm theo tên công
trình
Tìm kiếm theo ngày lập
phiếu X 7 Xoaphieuxuat void Xóa phiếu xuất ra khỏi danh sách X Bảng 12: MÔ TẢ THUỘC TÍNH (CHI TIẾT VẬT TƯ XUẤT) 1 Ma_Pxuat int X [0..9] Ma_Pxuat(PhieuXuatVatTu) Mã phiếu xuất vật tư X 2 Ma_VT int X [0..9] Ma_VT(VatTu) Mã vật tư xuất 3 DonGia Float X Đơn giá vật tư xuất 4 SoLuong int X Số lượng vật tư xuất 1< Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 45 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 13: MÔ TẢ THUỘC TÍNH (CHI TIẾT VẬT TƯ NHẬP) [0..9] Mã phiếu nhập X int 1 Ma_Pnhap Ma_Pnhap
(PhieuNhapVatTu) X [0..9] Ma_VT(VatTu) Mã vật tư nhập X int 2 Ma_VT X 1< Số lượng vật tư int 3 SoLuong X 0< Đơn giá của vật tư Float 4 DonGia X 0< Tiền của vật tư Float 5 ThanhTien Hiện trạng vật tư 6 HienTrangVatTu nvarchar 50 Bảng 14: MÔ TẢ THUỘC TÍNH (PHIẾU KIỂM KÊ VẬT TƯ) 1 Ma_PKK int [0..9] Mã phiếu X X int 2 Ma_NV [0..9] X Ma_NV
(NhanVien) Mã nhân viên
lập phiếu int 3 Ma_VT [0..9] Ma_VT(VatTu) Mã vật tư X 4 datetime Ngày tạo phiếu X NgayTao_
PKK >1/1/1900<
Ngày hiện hành Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 46 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 15: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU KIỂM KÊ VẬT TƯ) X [0..9] Ma_PKK(PhieuKiemKe) Mã phiếu kiểm kê 1 Ma_PKK int X [0..9] Ma_VT(VatTu) Mã vật tư cần kiểm kê 2 Ma_VT int X Hiện trạng vật tư 3 HienTrang nvarchar 50 Đơn vị tính 4 DVT nvarchar 20 X 1< Số lượng vật tư int X 5 SoLuong Bảng 16: MÔ TẢ THUỘC TÍNH (PHIẾU ĐIỀU CHUYỂN VẬT TƯ) 1 Ma_PDC int X X [0..9] Mã phiếu 2 Ma_NV int X Ma_NV(NhanVien) Mã nhân viên 3 Ma_CT int X Ma_CT(CongTrinh) Mã công trình 4 Ma_VT int X Ma_VT(VatTu) Mã vật tư 5 NgayTao datetime X Ngày tạo phiếu >1/1/1900<
Ngày hiện hành Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 47 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 17: PHƯƠNG THỨC (PHIẾU ĐIỀU CHUYỂN VẬT TƯ) 1 HienphieudieuchuyenVT Hiển thị phiếu đang xét 2 HienDSphieudieuchuyenVT Hiển thị tất cả phiếu đang xét X 3 DsphieudieuchuyenVT X 4 TimkiemphieudieuchuyenVT Ten_CT Nvarchar Nvarchar X Danh sách phiếu điều chuyển
Tìm thông tin công trình nhập từ bàn
phím 5 TimkiemphieudieuchuyenVT Ma_CT datetime Nvarchar Tìm thông tin ngày lập nhập từ bàn phím X Tìm kiếm theo tên công
trình
Tìm kiếm theo ngày lập
phiếu void Thêm thông tin chi tiết phiếu 6 ThemphieudieuchuyenVT X void Xóa phiếu ra khỏi danh sách 7 XoaphieudieuchuyenVT X Bảng 18: MÔ TẢ THUỘC TÍNH (TÀI SẢN) 1 Ma_TS int X [0..9] Mã của tài sản công trình 2 Ten_TS nvarchar 100 X X Tên của tài sản công trình 3 TriGia_TS Float X 0< Trị giá của tài sản công trình 4 SoLuong_TS int X Số lượng tài sản 5 DVT_TS nvarchar 20 X Đơn vị tính Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 48 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 19: PHƯƠNG THỨC (TÀI SẢN) 1 Hientaisan Hiển thị tài sản đang xét 2 HienDStaisan X Hiển thị tất cả tài sản đang xét 3 Dstaisan X Danh sách tài sản 4 Timkiemtaisan X Ten_VT Nvarchar Tìm kiếm theo tên tài sản Nvarchar Tìm thông tin tài sản nhập từ bàn phím 5 Timkiemtaisan X Ma_VT Int Tìm kiếm theo mã tài sản Nvarchar Tìm thông tin tài sản nhập từ bàn phím 6 Themnhataisan X void Thêm thông tin tài sản 7 Suanhataisan X void Sửa thông tin tài sản 8 Xoanhataisan X void Xóa thông tin tài sản 9 Thongketaisan X void Thống kê tình trạng tài sản Bảng 20: MÔ TẢ THUỘC TÍNH (PHIẾU KIỂM KÊ TÀI SẢN) 1 Ma_PhieuKK X X int [0..9] Mã của phiếu kiểm kê tài
sản công trình 2 Ma_NV X Mã nhân viên lập phiếu int [0..9] 3 Ma_TS X int Ma_NV
(NhanVien)
Ma_TS
(TaiSan) 4 NgayTao_PKK X Mã tài sản trong phiếu
kiểm kê
Ngày tạo phiếu kiểm kê
tài sản [0..9]
>1/1/1900<
Ngày hiện hành datetime Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 49 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 21: MÔ TẢ THUỘC TÍNH (PHIẾU ĐIỀU CHUYỂN TÀI SẢN) X X [0..9] Mã phiếu 1 Ma_PDCTS int X Mã công trình 2 Ma_CT int Ma_CT
(CongTrinh) X Mã nhân viên 3 Ma_NV int Ma_NV
(NhanVien) X Mã tài sản 4 Ma_TS int Ma_TS
(TaiSan) X 5 NgayTao_PDCTS datetime >1/1/1900<
Ngày hiện hành Ngày tạo phiếu điều
chuyển Bảng 22: PHƯƠNG THỨC (PHIẾU ĐIỀU CHUYỂN TÀI SẢN) Hiển thị phiếu đang xét 1 HienphieudieuchuyenTS Hiển thị tất cả phiếu đang xét 2 HienDSphieudieuchuyenTS X Danh sách phiếu điều chuyển 3 DsphieudieuchuyenTS X X 4 TimkiemphieudieuchuyenTS Ten_CT Nvarchar Tìm kiếm theo tên công trình Nvarchar Tìm thông tin công trình X 5 TimkiemphieudieuchuyenTS Ma_CT datetime Tìm kiếm theo ngày lập phiếu Int Tìm thông tin ngày lập 6 ThemphieudieuchuyenTS X void Thêm thông tin chi tiết phiếu 7 XoaphieudieuchuyenTS X void Xóa phiếu ra khỏi danh sách Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 50 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 23: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU ĐIỀU CHUYỂN TÀI SẢN) 1 Ma_PDCTaiSan int X X [0..9] Ma_PDCTaiSan
(PhieuDieuChuyenTS) Mã phiếu điều chuyển tài
sản 2 Ma_TS int Ma_TS (TaiSan) Mã tài sản tài sản điều lượng 3 SoLuong int X 1< Số
chuyển 4 DVT nvarchar 20 Đơn vị tính 5 HienTrang nvarchar 50 Hiện trạng của tài sản được
điều chuyển Bảng 24: MÔ TẢ THUỘC TÍNH (CHỨC VỤ) 1 Ma_CV int X [0..9] Mã chức vụ 2 Ten_CV int X X Tên chức vụ Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 51 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 25: MÔ TẢ THUỘC TÍNH (NHÂN VIÊN) 1 Ma_NV
3 Ten_NV
4 GioiTinh_NV int
nvarchar
nvarchar 100 X Mã của nhân viên
Tên của nhân viên
Giới tính của nhân viên X
X
X 5 NgaySinh_NV datetime Ngày sinh của nhân viên X [0..9]
>1/1/1900<
Ngày hiện hành 6 DiaChi_NV nvarchar 100 Địa chỉ của nhân viên X 7 CMND_NV
8 DienThoai_NV int
int [0..9]
[0..9] Chứng minh nhân dân
Điện thoại nhân viên X Bảng 26: PHƯƠNG THỨC(NHÂN VIÊN) 1 Hiennhanvien Hiển thị nhân viên đang xét 2 HienDSnhanvien X Hiển thị tất cả nhân viên đang xét 3 Dsnhanvien X Danh sách nhân viên 4 Timkiemnhanvien X Ten_NV Nvarchar Tìm kiếm theo tên nhân viên Nvarchar Tìm thông tin nhân viên nhập từ bàn phím 5 Timkiemnhanvien X Ma_NV Int Tìm kiếm theo mã nhân viên Nvarchar Tìm thông tin nhân viên nhập từ bàn phím 6 Themnhanvien X void Thêm thông tin nhân viên mới 7 Suanhanvien X void Sửa thông tin nhân viên 8 Xoanhanvien X void Xóa nhân viên ra khỏi danh sách Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 52 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 27: MÔ TẢ THUỘC TÍNH (CHỦ ĐẦU TƯ) 1 Ma_CDT
3 Ten_CDT
4 CMND_CDT int
nvarchar
int 100 X X Mã của chủ đầu tư
Tên của chủ đầu tư
Chứng minh nhân dân X
X
X 5 NgaySinh_CDT datetime Ngày sinh của chủ đầu tư X 6 GioiTinh_CDT nvarchar 20 [0..9]
[0..9]
>1/1/1900<
Ngày hiện hành Giới tính của chủ đầu tư X 7 DiaChi_CDT nvarchar 100 Địa chỉ của chủ đầu tư X 8 DienThoai_CDT int [0..9] Số điện thoại Bảng 28: PHƯƠNG THỨC(CHỦ ĐẦU TƯ) 1 Hiencongdoan Hiển thị công đoạn đang xét 2 HienDScongdoan X Hiển thị tất cả công đoạn khi xét 3 Dscongdoan X Danh sách công đoạn 4 Timkiemcongdoan X Ten_CD Nvarchar Tìm kiếm theo tên công đoạn Nvarchar Tìm thông tin công đoạn nhập từ bàn phím 5 Timkiemcongdoan X Ma_CD Int Tìm kiếm theo mã công đoạn Nvarchar Tìm thông tin công đoạn nhập từ bàn phím 6 Themcongdoan X Thêm thông tin công đoạn void 7 Suacongdoan X Sửa thông tin công đoạn void 8 Xoacongdoan X Xóa công đoạn ra khỏi danh sách void Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 53 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 29: MÔ TẢ THUỘC TÍNH (NHÀ CUNG CẤP) 1 Ma_NCCVT Int [0..9] Mã của nhà cung cấp vật tư X X 2 Ten_NCCVT nvarchar 100 X X Tên của nhà cung cấp vật tư 3 DiaChi_NCCVT nvarchar 100 X Địa chỉ nhà cung cấp vật tư 4 DienThoai_NCCVT Int X [0..9] Điện thoại của nhà cung cấp vật tư 5 SoTK_NCCVT nvarchar 20 X [0..9] Tài khoản nhà cung cấp Bảng 30: PHƯƠNG THỨC (NHÀ CUNG CẤP) 1 Hiennhacungcap Hiển thị nhà cung cấp đang xét 2 HienDSnhacungcap X Hiển thị tất cả nhà cung cấp đang xét 3 Dsnhacungcap X Danh sách nhà cung cấp 4 Timkiemnhacungcap X Ten_NCC Nvarchar Tìm kiếm theo tên nhà cung cấp Nvarchar Tìm thông tin nhà cung cấp 5 Timkiemnhacungcap X Ma_NCC Int Tìm kiếm theo mã nhà cung cấp Nvarchar Tìm thông tin nhà cung cấp 6 Themnhacungcap X void Thêm thông tin nhà cung cấp 7 Suanhacungcap X void Sửa thông tin nhà cung cấp 8 Xoanhacungcap X void Xóa nhà cung cấp ra khỏi danh sách Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 54 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Bảng 31: MÔ TẢ THUỘC TÍNH (CHI TIẾT PHIẾU KIỂM KÊ TÀI SẢN) 1 Ma_PhieuKK int X X X [0..9] Mã phiếu kiểm kê tài sản Ma_PhieuKK
(PhieuKiemKe) 2 Ma_TS int X Ma_TS (TaiSan) Mã tài sản 3 SoLuong int X 1< Số lượng tài sản kiểm kê 4 DVT nvarchar 20 X Đơn vị tính của tài sản 5 HienTrang nvarchar 50 Hiện trạng của tài sản được
kiểm kê Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 55 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.5 Lưu đồ giải thuật Hình 10: Lưu đồ thể hiện chức năng đăng nhập Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 56 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 11: Lưu đồ thể hiện chức năng tìm kiếm công trình Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 57 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 12: Lưu đồ thể hiện chức năng thêm thông tin công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 58 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 13: Lưu đồ thể hiện chức năng lập phiếu xuất Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 59 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.2.6 Sơ đồ tuần tự Hình 14: Sơ đồ tuần tự đăng nhập tài khoản nhân viên Hình 15: Sơ đồ tuần tự cập nhật công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 60 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 16: Sơ đồ tuần tự thêm công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 61 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 17: Sơ đồ tuần tự sửa công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 62 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 18: Sơ đồ tuần tự xóa công đoạn Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 63 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 19: Sơ đồ tuần tự xuất tài sản từ kho ra công trình Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 64 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 20: Sơ đồ tuần tự điều chuyển vật tư Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 65 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 21: Sơ đồ tuần tự thống kê Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 66 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.3 KẾT QUẢ ĐẠT ĐƯỢC 3.3.1 Sơ đồ chức năng của chương trình Hình 22: Sơ đồ chức năng của chương trình 3.3.2 Giao diện chương trình Giao Diện Đăng Nhập Hình 23: Giao diện đăng nhập tài khoản Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 67 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Trước khi vào phần giao diện chính của chương trình, người dùng cần phải đăng nhập vào hệ thống. Sau khi đăng nhập thành công, tùy thuộc vào nhóm quyền của tài khoản đăng nhập mà chương trình sẽ cho phép thao tác khác nhau. Giao Diện Chính Hình 24: Giao diện chính của chương trình Giao diện chính của chương trình sau khi đăng nhập thành công, giao diện bao gồm các mục trên thanh công cụ như Hệ Thống, Trợ Giúp. Ngoài ra còn có các danh mục Dự Án Công Trình, Tài Sản Công Trình, Vật Tư, Tài Sản, Nhân Viên, Đối Tác và Thống Kê. Các danh mục này được truy xuất đến các form quản lý khác nhau. Quản Lý Công Trình Chức năng: Cho phép thực hiện thao tác thêm mới công trình, sửa thông tin công trình và xóa công trình ra khỏi danh sách lưu trữ. Ngoài ra chương trình còn thêm chức năng tìm kiếm công trình theo mã và theo tên công trình, nhằm giúp thao tác nhanh hơn đối với một danh sách có số lượng nhiều. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 68 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 25: Giao diện cập nhật công trình Trong quản lý công trình thì luôn đính kèm danh sách các công đoạn thuộc công trình đó. Khi thao tác vào các công đoạn trong danh sách thì chương trình sẽ gọi form công đoạn, nhưng điều quan trọng là không gọi tất cả danh sách công đoạn mà chương trình sẽ tìm kiếm thông tin công đoạn được chọn. Ở form công đoạn được chọn, người dùng có thể thêm, sửa, xóa thông tin công đoạn. Hình 26: Liên kết giữa công đoạn và công trình Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 69 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Quản Lý Công Đoạn Chức năng: Cho phép thực hiện thao tác thêm mới công đoạn, sửa thông tin công đoạn và xóa công đoạn ra khỏi danh sách lưu trữ. Cũng như danh mục công trình, chương trình còn thêm chức năng tìm kiếm công đoạn theo mã và theo tên công đoạn. Hình 27: Giao diện cập nhật công đoạn Quản Lý Tài Sản Công Trình Chức năng: Quản lý tài sản công trình một cách cụ thể, nhằm kiểm soát tình hình sử dụng tài sản. Cho phép người dùng thêm, sửa, xóa và tìm kiếm thông tin tài sản. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 70 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 28: Giao diện cập nhật tài sản công trình Quản Lý Vật Tư Công Trình Chức năng: Quản lý thông tin của tất cả vật tư khi được nhập vào kho, thông tin vật tư sẽ được lưu vào hệ thống nhằm giúp thủ kho nắm bắt được tình hình sử dụng vật tư của từng công trình. Cho phép người dùng thêm, sửa, xóa và tìm kiếm thông tin vật tư. Hình 29: Giao diện cập nhật vật tư Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 71 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Quản Lý Nhân Viên Chức năng: Cho phép người dùng thêm mới nhân viên khi nhân viên đó được vào làm, hay sửa thông tin nhân viên khi có sai sót hoặc thay đổi và xóa nhân viên ra khỏi danh sách khi nhân viên đó không còn làm trong công ty. Ngoài ra còn cho phép tìm kiếm nhân viên theo mã hoặc tên nhân viên. Hình 30: Giao diện cập nhật nhân viên Quản Lý Chủ Đầu Tư Chức năng: Nhằm ràng buộc người đầu tư xây dựng công trình và công ty xây dựng, nên thông tin chủ đầu tư sẽ được lưu lại. Cho phép người dùng có thể thêm, sửa, xóa và tìm kiếm thông tin của chủ đầu tư. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 72 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 31: Giao diện cập nhật chủ đầu tư Quản Lý Nhà Cung Cấp Chức năng: Nhằm kiểm soát tình trạng nhập vào của vật tư nên thông tin vật tư và nhà cung cấp phải luôn được lưu kèm. Cho phép người dùng thực hiện các thao tác thêm, sửa, xóa và tìm kiếm nhà cung cấp. Hình 32: Giao diện thêm nhà cung cấp Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 73 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Giao Diện Nhập Vật Tư Chức năng: Quản lý vật tư nhập vào kho của công ty, khi người dùng lập phiếu thì buộc phải nhập các thông tin liên quan đến phiếu nhập, khi chọn lưu phiếu thì thông tin phiếu sẽ được lưu và đồng thời gọi form chi tiết phiếu nhập. Danh sách phiếu sẽ được cập nhật liên tục khi người dùng lập hoặc xóa phiếu. Ngoài ra, chương trình còn thêm chức năng tìm kiếm phiếu nhập theo tên nhà cung cấp hay theo ngày lập phiếu. Hình 33: Nhập vật tư vào kho Giao Diện Xuất Vật Tư Chức năng: Quản lý vật tư xuất từ kho đến công trình, khi người dùng lập phiếu thì buộc phải nhập các thông tin liên quan đến phiếu xuất, khi chọn lưu phiếu thì thông tin phiếu sẽ được lưu và đồng thời gọi form chi tiết phiếu nhập. Danh sách phiếu sẽ được cập nhật liên tục khi người dùng lập hoặc xóa phiếu. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 74 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Hình 34: Xuất vật tư ra công trình Điều chuyển Tài Sản Công Trình Chức năng: Quản lý tài sản điều chuyển qua lại giữa các công trình, cho phép người dùng lập phiếu, lưu phiếu và xóa phiếu. Khi xóa phiếu thì kéo theo tất cả các thông tin chi tiết trong phiếu cũng được xóa tất cả không còn tồn tại nữa. Hình 35: Điều chuyển tài sản giữa các công trình Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 75 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng Báo Cáo Thống Kê Chức năng: Cho phép người dùng thống kê vật tư, thống kê tài sản, và in báo cáo vật tư xuất nhập tùy vào nhu cầu sử dụng của người dùng Hình 36: Báo cáo vật tư xuất kho Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 76 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng 3.4.1 Kết quả đạt được. Tuy đã rất cố gắng tìm hiểu về các hoạt động, công việc trong "Xây dựng chương trình quản lý các công trình của một công ty xây dựng" nhưng cũng gặp nhiều khó khăn và lỗi trong chương trình. Rất mong quý Thầy, Cô có thể góp ý kiến và bổ sung để chương trình được tối ưu và hoàn thiện. Trong quá trình khảo sát, phân tích - thiết kế chương trình quản lý các công trình của một công ty xây dựng cơ bản đã hoàn thành những công việc sau: Những vấn đề làm được: - Xây dựng được các mô hình và tạo được cơ sở dữ liệu cho hệ thống. - Thêm, cập nhật, xóa các danh mục: + Danh mục công trình. + Danh mục công đoạn. + Danh mục nhân viên. + Danh mục vật tư công trình. + Danh mục tài sản công trình. + Danh mục chủ đầu tư. + Danh mục nhà cung cấp. - Xử lý được các nghiệp vụ: + Nhập vật tư công trình. + Xuất vật tư công trình. + Điều chuyển vật tư công trình. + Điều chuyển tài sản. + Xuất tài sản ra công trình. - Báo cáo: Lãi lỗ công trình, thu chi trong công trình. - Thống kê: Thống kê tài sản công trình, vật tư công trình, tình hình công trình đã đang và sẽ làm. - Tìm kiếm: Thông tin công trình, thông tin nhân viên, vật tư, tài sản cũng như các đối tác với công ty. Những vấn đề chưa giải quyết được: Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 77 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng - Do trình độ hiểu biết của bản thân chưa nhiều nên việc phân tích thiết kế và cài đặt phần mềm còn nhiều lỗi nhỏ. Chỉ mang tính chất học hỏi, trao đổi và bổ sung kiến thức, rèn luyện khả năng làm việc độc lập của bản thân. Hạn chế một số chức năng đặt ra nhưng chưa làm được: - Chưa hoạch định rõ ràng kế hoạch thi công, không bám sát được tiến độ công trình, không theo dõi sát tình hình sử dụng tài sản của từng công trình, không tính chi phí công trình. - Các form có giao diện chưa thật sự tốt. - Một số form chưa xử lý code chưa tối ưu. 3.4.2 Thuận lợi khó khăn trong quá trình thực hiện chương trình: Về môi trường nghiên cứu: - Thuận lợi: Được sự giúp đỡ hướng dẫn tận tình của cô Phạm Thị Ngọc Hà. Được sự giúp đỡ, giải thích của các anh trong Công ty Cổ Phần Đầu Tư Xây Dựng Hưng Long IDICO. Được sự giúp đỡ và động viên của bạn bè. - Khó khăn: Do kiến thức chưa vững nên không thể lập trình toàn vẹn và theo ý muốn. Về môi trường thiết kế cài đặt: - Thuận lợi: Sử dụng hệ quản trị cơ sở dữ liệu SQL server 2005 có khả năng lưu trữ dữ liệu lớn, tính an toàn thông tin cao, ít xảy ra sự cố đổ vào cơ sở dữ liệu. Ngôn ngữ Microsoft Visual C# 2008 hỗ trợ lập trình thông qua form thuận lợi cho việc thiết kế giao diện. - Khó khăn: Ngôn ngữ Microsoft Visual C# 2008 có nhiều điểm mới nên hạn chế tài liệu tham khảo và mất thời gian nghiên cứu. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 78 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng KẾT LUẬN Đề tài “Xây dựng chương trình quản lý các công trình của một công ty xây dựng” được thực hiện trong suốt khoảng thời gian từ ngày 01 tháng 3 năm 2013 đến ngày 12 tháng 06 năm 2013 đã hoàn thành và đáp ứng được một số chức năng cơ bản về quản lý thông tin công trình, công đoạn, thông tin tài sản, vật tư, thông tin các đối tác ngoài ra còn có các nghiệp vụ, xuất – nhập vật tư, xuất tài sản, điều chuyển tài sản và vật tư, in báo cáo thống kê. Bên cạnh những chức năng hoàn thiện đã kể trên chương trình vẫn còn một số vấn đề cần được bổ sung và điều chỉnh trong thời gian tới. HƯỚNG PHÁT TRIỂN Nhằm có được một chương trình toàn diện các chức năng, nên trong thời gian sắp tới chương trình sẽ được bổ sung cải tiến thêm những điểm sau đây: - Tối ưu hóa code trong các form. - Hoạch định rõ ràng kế hoạch thi công, bám sát được tiến độ công trình, theo dõi tình hình sử dụng tài sản của từng công trình. - Thêm các chức năng tính chi phí công trình. - Xây dựng đầy đủ các chức năng đáp ứng nhu cầu sử dụng, nghiệp vụ của một công ty xây dựng. Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà - 79 - Phần Mềm Quản Lý Dự Án Công Trình Xây Dựng [1]. Nguyễn Ngọc Bình Phương, Thái Thanh Phong (2008). Các Giải Pháp Lập Trình C#, Nhà xuất bản Giao Thông Vận Tải, Hà Nội. [2]. Phạm Thị Xuân Lộc, Phân tích hệ thống hướng đối tượng, Khoa Công Nghệ Thông Tin & Truyền Thông, Đại học Cần Thơ. [3]. Phạm Vũ Câu (2007). Quản Lý Dự Án Công Trình Xây Dựng, Nhà xuất bản Lao Động & Xã Hội, Hà Nội. [4]. Ths Đinh Thế Hiển (2000). Phân tích thiết kế hệ thống thông tin quản lý, Nhà xuất bản thống kê. [5]. Ths Phan Tấn Tài, Giáo trình thiết kế và phân tích hệ thống, Khoa Công Nghệ Thông Tin & Truyền Thông, Đại học Cần Thơ. [6]. Ths Trần Nguyên Phong (2008). Giáo trình SQL, Khoa Công Nghệ Thông Tin, Trường Đại học Khoa Học Huế, Huế. [7]. Trương Văn Chí Công (12-2003). Lập Trình Hướng Đối Tượng C++, Khoa Công Nghệ Thông Tin & Truyền Thông, Đại học Cần Thơ. [8]. Http://topweb.vn/vi/tai-nguyen/download/a11054/he-quan-tri-co-so-du-lieu- sql-server-2005-download-sql-server-2005-full.aspx Sinh Viên: Nguyễn Hữu Tiến GVHD: Phạm Thị Ngọc Hà 1]
[ : ]
loop[1,n]
CHƯƠNG 3
NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU
CongTrinh
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Stt
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khoá
ngoài
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Diễn giải
Kiểu
tham số
Kiểu trả
về
Phương
thức lớp
Tên
tham số
CongDoan
Stt
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khoá
ngoài
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Kiểu trả về
Diễn giải
Kiểu
tham số
Phương
thức lớp
Tên
tham số
VatTu
Stt
Kiểu
Min Max
Diễn giải
Tên thuộc
tính
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV
luận lý
RBTV
khoá
ngoài
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Kiểu trả về
Diễn giải
Kiểu
tham số
Phương
thức lớp
Tên
tham số
PhieuNhapVatTu
Stt
Tên thuộc tính
Kiểu
Min Max
Diễn giải
Khóa
chính
Duy
nhất
Not
null
RBTV
luận lý
RBTV khóa
ngoài
Kích
thước
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
Diễn giải tham số
Kiểu trả về
Diễn giải
Stt
Tên thuộc tính
Tên
tham số
Kiểu tham
số
Phương
thức lớp
PhieuXuatVatTu
Stt
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Khoá
chính
Duy
nhất
Not
null
RBTV khoá
ngoài
Kích
thước
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Kiểu trả về
Diễn giải
Phương
thức lớp
Kiểu
tham số
Tên
tham
số
ChiTietVatTuXuat
Kiểu
Min Max
RBTV khoá ngoài
Diễn giải
Stt
Tên thuộc
tính
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV
luận lý
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
ChiTietVatTuNhap
Stt
Tên thuộc tính
Kiểu
Min Max
Diễn giải
Khóa
chính
Duy
nhất
Not
null
RBTV
luận lý
RBTV khóa
ngoài
Kích
thước
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
PhieuKiemKeVatTu
Stt
Kiểu
Min Max
Diễn giải
Kích
thước
Khóa
chính
Duy
nhất
Not
null
RBTV
luận lý
RBTV khóa
ngoài
Tên
thuộc
tính
Số chữ
số thập
phân
Miền
giá
trị
Trị
mặc
nhiên
CT_PKKVT
Stt
Kiểu
Min Max
RBTV khoá ngoài
Diễn giải
Tên thuộc
tính
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV
luận lý
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ số
thập
phân
PhieuDieuChuyenVT
Stt
Kiểu
Min Max
RBTV luận lý
RBTV khoá ngoài
Diễn giải
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Tên
thuộc
tính
Số chữ
số thập
phân
Miền
giá
trị
Trị
mặc
nhiên
Stt
Tên thuộc tính
Diễn giải tham số
Kiểu trả về
Diễn giải
Kiểu
tham số
Phương
thức lớp
Tên
tham số
TaiSan
Stt
Kiểu
Min Max
Diễn giải
Tên thuộc
tính
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV
luận lý
RBTV
khoá ngoài
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Kiểu trả về
Diễn giải
Phương
thức lớp
Tên
tham số
Kiểu
tham số
PhieuKKTaiSan_CT
Stt
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV khoá
ngoài
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
PhieuDieuChuyenTS
Stt
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Khoá
chính
Duy
nhất
Not
null
RBTV khoá
ngoài
Kích
thước
Miền
giá
trị
Trị
mặc
nhiên
Số
chữ
số
thập
phân
Diễn giải tham số
Diễn giải
Stt
Tên thuộc tính
Tên
tham số
Kiểu trả
về
Phương
thức lớp
Kiểu
tham số
CT_PDCTaiSan
Stt
Tên thuộc tính
Kiểu
RBTV khoá ngoài
Diễn giải
Min Max
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
luận
lý
Số
chữ
số
thập
phân
ChucVu
Stt
Kiểu
Min Max
Diễn giải
Kích
thước
Khoá
chính
Duy
nhất
Not
null
RBTV luận
lý
Tên
thuộc
tính
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khoá
ngoài
Số chữ
số
thập
phân
NhanVien
Stt
Tên thuộc tính
Kiểu
RBTV luận lý
Diễn giải
Min Max
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khoá
ngoài
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Diễn giải
Tên
tham số
Kiểu
tham số
Kiểu trả
về
Phương
thức lớp
ChuDauTu
Stt
Tên thuộc tính
Kiểu
Min Max
RBTV luận lý
Diễn giải
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khoá
ngoài
Số
chữ
số
thập
phân
Stt
Tên thuộc tính
Diễn giải tham số
Diễn giải
Kiểu
tham số
Kiểu trả
về
Phương
thức lớp
Tên
tham số
NhaCungCap
Stt
Tên thuộc tính
Kiểu
Min Max
Diễn giải
Kích
thước
Khóa
chính
Duy
nhất
Not
null
RBTV
luận lý
Miền
giá
trị
Trị
mặc
nhiên
RBTV
khóa
ngoài
Số
chữ
số
thập
phân
Diễn giải tham số
Diễn giải
Stt
Tên thuộc tính
Tên
tham số
Kiểu
tham số
Kiểu trả
về
Phương
thức lớp
CT_TS
Stt
Kiểu
Min Max
RBTV khoá ngoài
Diễn giải
Tên thuộc
tính
Kích
thước
Khoá
chính
Duy
nhất
Not
null
Miền
giá
trị
Trị
mặc
nhiên
RBTV
luận
lý
Số
chữ
số
thập
phân
3.4 THẢO LUẬN KẾT QUẢ
KẾT LUẬN VÀ ĐỀ NGHỊ
Tài Liệu Tham Khảo
Tài liệu liên quan
Tài liêu mới