Tải bản đầy đủ (.pdf) (35 trang)

(TIỂU LUẬN) bài tập lớn kỹ thuật phần mềm đề tài phần mềm qu n lý phòng lab

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.79 MB, 35 trang )

BÀI TẬP LỚN KỸ THUẬT PHẦN MỀM
Đề tài: Phần mềm quản lý phòng lab
Giảng viên hướng dẫn: TS. Vũ Song Tùng

Nhóm sinh viên thực hiện:
Hồng Hịa Bình – MSSV: 20080197
Lưu Quang Trung – MSSV: 20082779
Vũ Quang Trọng – MSSV: 20082770
Trần Anh Tuấn – MSSV: 20082953
Vũ Mạnh Tưởng – MSSV: 2008

Hà Nội ngày 10 tháng 5 năm 2011


M ỤC LỤC
A. THƠNG TIN VỀ THÀNH VIÊN NHĨM TH ỰC HIỆN ......................................... 5
B. NỘI DUNG ĐỀ TÀI ................................................................................................... 6
CHƯƠNG I: TỔNG QUAN VỀ ĐỀ TÀI ....................................................................... 6
1.1

Giới thiệu ........................................................................................................... 6

1.1.1 Giới thi ệu về Viện Điện Tử Viễn Thông ........................................................... 6
1.1.2 Cơ sở vật chất và hoạt động nghiên cứu khoa học củ a Viện .............................. 6
1.1.3 Giới thi ệu về ESRC Lab ................................................................................... 6
1.2

Báo cáo khả thi .................................................................................................. 7

1.2.1


Kh ả thi về kỹ thuật ........................................................................................ 7

1.2.2

Kh ả thi về kinh tế .......................................................................................... 7

1.2.3

Kh ả thi về vận hành ...................................................................................... 7

1.2.4

Kh ả thi về kế hoạch làm việc ........................................................................ 8

1.3

Phạm vi của Project........................................................................................... 9

1.3.1 Chức năng ........................................................................................................ 9
1.3.2 Dữ liệu.............................................................................................................. 9
1.3.3 Ph ần cứng ......................................................................................................... 9
1.3.4 Ph ần mềm ......................................................................................................... 8
1.3.5 Nhân lực ......................................................................................................... 10
CHƯƠNG 2. GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG............................................... 10
2.1. Đánh giá Hệ Quản trị Cơ sở Dữ liệu ................................................................. 10
2.1.1 Microsoft Access ........................................................................................... 10
2.1.2 Oracle ............................................................................................................ 11
2.1.3 FoxPro ........................................................................................................... 11
2.1.4 SQL Server .................................................................................................... 12
2|Page



2.2. Đánh giá các công nghệ khác . .......................................................................... 15
2.2.1 C/C++ ............................................................................................................ 15
2.2.2 Visual Basic.................................................................................................... 16
2.2.3 C# .................................................................................................................. 16
2.3. K ết luận & đánh giá. ......................................................................................... 17
CHƯƠNG 3: PHÂN TÍCH H Ệ THỐNG ..................................................................... 19
3.1 Phân tích yêu cầu hệ thống ................................................................................. 19
3.1.1 Sơ đồ chức năng (Function Diagram) .................................................... 19
3.1.2 Biểu đồ luồng dữ liệu (Data Flow Diagram) .......................................... 19
CHƯƠNG 4: THIẾT K Ế H Ệ THỐNG........................................................................ 23
4.1 Thiết kế cơ sở dữ liệu .......................................................................................... 23
4.1.1 Liệt kê các trường dữ liệu ............................................................................... 23
4.1.2 Giả thiết phụ thuộc hàm .................................................................................. 23
4.1.3 Chuẩn hóa....................................................................................................... 24
a. Chuẩn hóa 1NF ............................................................................................... 24
b. Chuẩn hóa 2NF ............................................................................................... 24
c. Chuẩn hóa 3NF ............................................................................................... 25
4.1.3 Sơ đồ thực thể liên kết của toàn bộ CSDL....................................................... 26
4.2 Thiết kế giao diện (Interface Designing) ............................................................ 28
C. KẾT LUẬN .............................................................................................................. 34
D. TÀI LIỆU THAM KH ẢO ....................................................................................... 35

3|Page


A. THƠNG TIN VỀ THÀNH VIÊN NHĨM THỰC HIỆN
Nhóm th ực hiện đề tài gồm 5 thành viên:
Điện t ử 4, K53, MSSV: 20080197




Hồng Hịa Bình –



Lưu Quang Trung – Điện tử 3, K53, MSSV: 20082779



Vũ Quang Trọng –

Điện t ử 4, K53, MSSV: 20082770



Trần Anh Tuấn –

Điện t ử 4, K53, MSSV: 20082953



Vũ Mạnh Tưởng –

Điện tử 4, K53, MSSV: 2008

4|Page



B. NỘI DUNG ĐỀ TÀI
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1. Giới thiệu
1.1.1 Giới thiệu v ề Vi ện Điện Tử Viễn Thơng
Nằm trong khoa Cơ khí – Điện – Vô tuyến điện ngay từ lúc mới thành lập trường Đại
học Bách Khoa Hà Nội, Viện Điện Tử Viễn Thông đã có q trình hình thành và phát
triển hơn 50 năm. Viện là một trong những cơ sở hàng đầu trong cả nước về nghiên
cứu khoa h ọc và đào tạo kỹ sư, các nhà nghiên cứu trong lĩnh vực Điện tử viễn thơng.
Cùng với q trình đổi mới và phát triển của Trường ĐH Bách khoa Hà Nội, Viện
Điện tử - Viễn thơng đang tích cực triển khai các hoạt động đổi m ới trên toàn bộ các
lĩnh vực: Đào tạo, Nghiên cứu khoa học và xây d ựng cơ sở vật chất. Chương trình đào
tạo được đổi mới toàn diện theo hướng hiện đại và hội nhập. Đa dạng hóa các loại
hình đào tạo. Mở rộng các chương trình đào tạo đặc biệt (Kỹ sư tài năng, chương trình
tiên tiến), phát triển đào tạo sau đại học (Cao học, Nghiên cứu sinh). Kết hợp đào tạo
lý thuyết và kỹ năng thực hành. Gắn ch ặt đào tạo và nghiên cứu khoa học. Hoạt động
nghiên cứu khoa học, h ợp tác trong và ngoài nước được phát triển mạnh m ẽ. Trang
thiết b ị, cơ sở vật ch ất cho họ c tập, thự c hành và nghiên cứu được tăng cường và ngày
càng hoàn thiện.Cơ ch ế quản lý m ới theo hướng tự chủ, tự chịu trách nhiệm đang
được triển khai từng bước. Một môi trường học tập, làm việc và nghiên cứu khoa học
thuận lợi, thân thiện đã được tạo lên, có sứ c h ấp dẫn đố i với sinh viên và cán bộ khoa
học có trình độ cao.

1.1.2 Cơ sở vật chất và hoạt độ ng nghiên cứu khoa học của Viện
Cơ sở vật chất nghiên cứu và đào tạo của Viện Điện tử – Viễn thông được tổ chức
thành một hệ thống các phịng thí nghiệm, như ở sơ đồ dưới đây:

5|Page


1.1.3 Giới thiệu v ề ESRC Lab

a. Hướng nghiên cứu của phòng
Phòng ESRC Lab (Embedded Systems and Reconfigurable Computing) là 1 trong
những phịng thí nghiệm chun ngành của Viện Điện Tử Viễn Thơng, đây là phịng
thí nghiệm chun về hệ thống nhúng và tính tốn kh ả cấu hình với những chủ đề
trọng điểm là: Hệ nhúng, FPGA, Linux, ARM, MCU,…
b. Sơ đồ tổ chức và điều hành của phòng ESRC Lab
Cơ cấu thành viên của phòng:

ESRC members
K51
13

6|Page

11
9

K52
K53


Sơ đồ tổ chức và điều hành:

1.2

Báo cáo khả thi

1.2.1 Khả thi về kỹ thuật
Phần m ềm viết cho phòng lab ESRC được xây d ựng trên Hệ quản trị cơ sở dữ
liệu và các ngôn ngữ thiết kế giao diện, chúng là những cơng nghệ tốt và khơng khó

tiếp thu:
 Đã biết lập trình C# và hệ quản trị dữ liệu SQL.
 Các cơng cụ trên có th ể tìm thấy trên internet.
1.2.2 Khả thi về kinh tế
Đây là bài tập lớn bổ trợ cho việc tiếp thu môn học. Vì vậ y nhóm khơng xét
đến tính khả thi về kinh t ế.
1.2.3 Khả thi về vận hành
Phòng lab có dàn máy tính, cấu hình khá cao:
- Chip xử lý: Intel Core 2 Duo, 2.26 GHz ~ 2.3GHz
- Ram: 2G
- Ổ cứng: Samsung 160G.
- Hệ điều hành: Window XP SP2, Windows 7 SP1.
Mặt khác, phần mềm nhóm định thự c hiện giao diện thân thi ện với người sử
dụng, khơng địi cấu hình cao như các phần mêm thực hiện các chức năng mơ phỏng
đồ họa, đó là lý do nhóm tin rằng các máy tính trên hồn tồn có khả năng chạy được
phần mềm sẽ thiết k ế với đầy đủ tính năng
7|Page


1.2.4 Khả thi về kế hoạch làm việc
Sau khi đánh giá sơ bộ về yêu cầu đặ t ra từ việc quản lý phịng lab ESRC,
nhóm đã đặt ra kế ho ạch như sau:
Cơng việc
Nghiên cứu sơ bộ
Phân tích hệ thống
Thiết kế hệ thống
Phát triển hệ thống
Triển khai, đánh
giá


1.3

Th ời gian
1 tuần
2 tuần
3 tuần
4 tuần
1 tháng

Bắt đầu
25/1/2011
2/2/2011
16/2/2011
9/3/2011
9/4/2011

Kết thúc
2/2/2011
16/2/2011
9/3/2011
9/4/2011
9/5/2011

Phạm vi của Project

1.3.1 Chức năng
Do th ời gian có hạn, trong khn khổ project, chương trình phịng lab bao gồm:
 Xử lý đầu vào: Thông tin thành viên, thông tin đề tài, thơng tin nhóm.
 Lập báo cáo: Cho biết tiến độ của đề tài do các nhóm và thành viên thự c
hiện.

Đây là chỉ là những chức năng chính mà nhóm lập trình, phù hợp với ho ạt động của
phịng lab. Báo cáo là mộ t dữ liệu quan trọng để đánh giá khả năng nghiên cứu của
phòng lab.
1.3.2 Phần cứng
Cấu hình máy tính khơng cần q cao với ứng dụng trong khuân khổ project
- Máy tính: Bộ vi xử lý Intel Dual Core ho ặc cao hơn
- Ram 1GB trở lên.
- Ổ cứng 80GB trở lên
- Các thiết bị ngo ại vi kèm theo: Máy in, máy Fax.
- Hệ thống máy tính được nối mạng nội bộ cơng ty v ới nhau. Cơ sở dữ
liệu được sao lưu trên máy chủ.
1.3.3

Phần mềm
 Máy tính chạy hệ điều hành WinXP/Vista/Window 7.
 Bộ gõ tiếng Việt: TCVN 5712:1993, nên dùng Unikey 3.5 hoặc Vietkey
2000 trở lên.
 Phần mềm khác: Microsoft Office 2010 cho kết xuất báo cáo, viết thư.

8|Page


1.3.4

Nhân lực
Đề tài được thực hiện bởi nhóm 5 sinh viên.
 Hồng Hịa Bình
 Trần Anh Tuấn
 Vũ Mạnh Tưởng
 Vũ Quang Trọng

 Lưu Quang Trung

Với th ời gian dự kiến 14 tu ần,cùng với sự hợp tác và trách nhiệm của mỗ i thành viên,
nhóm sẽ hồn thành đề tài hiệu quả và đúng yêu cầu đưa ra.

9|Page


CHƯƠNG 2: GIỚI THIỆU CÔNG NGHỆ SỬ DỤNG
2.1. Đánh giá Hệ Quản trị Cơ sở Dữ liệu (Database Management System
Assessment)
HQTCSDL là phần mềm hay h ệ thống được thiết kế để quản trị một cơ sở dữ
liệu. Cụ th ể, các chương trình thuộ c loại này h ỗ trợ kh ả năng lưu trữ, sửa chữa, xóa và
tìm kiếm thơng tin trong một cơ sở dữ liệu (CSDL). Có rất nhiều loại hệ quản trị
CSDL khác nhau: từ phần m ềm nhỏ chạy trên máy tính cá nhân cho đến những hệ
quản trị phức tạp chạ y trên một ho ặc nhiều siêu máy tính
Hiện nay có rất nhiều HQTCSDL, tùy t ừng yêu cầu cụ thể ta sẽ sử d ụng các
công cụ khác nhau. Mộ t s ố Hệ QTCSDL thông dụng hiện nay:
-

MS Access
Oracle (của hãng Oracle)
FoxPro
SQL Server (c ủa hãng Microsoft)

2.1.1 Microsoft Access
Microsoft Access là m ột Hệ Quản Trị Cơ Sở Dữ Liệu (QTCSDL) tương tác
người sử dụng chạy trong môi trường Windows. Microsoft Access cho chúng ta m ột
công cụ hiệu lực và đầy s ức mạnh trong cơng tác tổ chức, tìm kiếm và biểu diễn thông
tin.

Microsoft Access cho ta các khả năng thao tác dữ liệu, khả năng liên kết và
công cụ truy vấn m ạnh mẽ giúp quá trình tìm kiếm thơng tin nhanh. Người sử dụng có
thể chỉ dùng mộ t truy vấn để làm việc với các dạng cơ sở dữ liệu khác nhau. Ngồi ra,
có thể thay đổi truy vấn b ất kỳ lúc nào và xem nhiều cách hiển th ị dữ liệu khác nhau
chỉ cần động tác nhấp chuộ t.
Microsoft Access và khả năng kết xu ất dữ liệu cho phép người sử dụng thi ết
kế những biểu mẫu và báo cáo ph ức tạp đáp ứng đầy đủ các yêu cầu qu ản lý, có th ể
vận động dữ liệu và kết hợp các biểu mẫu va báo cáo trong một tài liệu và trình bày
kết quả theo dạng th ức chuyên nghiệp.
Microsoft Access là m ột công cụ đầy năng lực để nâng cao hiệu suất công
việc. Bằng cách dùng các Wizard của MS Access và các lệnh có sẵn (macro) ta có th ể
dễ dàng tự động hóa cơng việc mà khơng cần lập trình. Đố i với những nhu cầu quản
lý cao, Access đưa ra ngơn ngữ lập trình Access Basic (Visual Basic For application)
một ngơn ngữ lập trình m ạnh trên CSDL.
Microsoft Access được tích h ợp sẵn trong bộ Microsoft Office nên có ưu thế
hơn các phần mềm khác về giá cả.
10 | P a g e


Nhược điểm chính: phần mềm thích h ợp khi cài đặt và sử dụng trong m ạng nội
bộ (LAN), không thích hợp nếu như cơng ty phải sử dụng ở nhiều địa điể m cách xa
nhau. Ngồi ra Access khơng thể quản lí cơ sở d ữ liệu quá lớn và có đơng người sử
dụng cùng truy cập một lúc.
2.1.2 Oracle
Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng và
người d ùng cuối được trang bị các giải pháp kỹ thuật thơng tin hồn h ảo. Các ứng
dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy tính cá nhân đến các
hệ thống xử lý song song lớn.
Oracle cung cấp một hệ quản trị cơ sở dữ liệu (Database Management System DBMS) uyển chuyển: Oracle Server để lưu giữ v à qu ản lý các thông tin dùng trong
các ứng dụng. Phiên bản Oracle 7 quản lý cơ sở dữ liệu với tất cả các ưu điểm của cấu

trúc CSDL quan hệ cộng th êm khả năng lưu giữ và thực thi các đối tượng CSDL như
các procedure và các trigger.
Oracle Server là một hệ quản trị CSDL điều khiển:
-

Lưu giữ d ữ liệu trên các vùng dữ liệu đã thiết kế

-

Truy xu ất dữ liệu cho các ứng dụng, dùng các kỹ thu ật tương đối tối ưu

-

Bảo mật dữ liệu, cấp quyền khác nhau cho các user

-

Liên kết và toàn vẹn dữ liệu khi CSDL được phân bố trên mạng

Đây là hệ cơ sở dữ liệu mạnh với rất nhiều ưu điểm tính b ảo mật cao, tính an
tồn dữ liệu cao, dễ dàng b ảo trì nâng cấp, cơ chế quyền h ạn rõ ràng, ổn định,…Bên
cạnh đó Oracle dễ cài đặt, d ễ triển khai và d ễ nâng cấp lên phiên bản mới. Ph ần mềm
này cịn tích hợp thêm PL/SQL, là một ngơn ngữ lập trình có cấu trúc - Structure
Language. Tạo thu ận
lợi cho các lập trình viện viết các Trigger, StoreProcedure, Package.
2.1.3 FoxPro
Foxpro là hệ qu ản trị cơ sở d ữ liệu dùng để giải quyết các bài toán trong lĩnh
vực quản lý. FoxPro được thừa kế và phát triển trên phần mềm DBASE III PLUS và
DBASE IV, nh ững s ản ph ẩm nổi tiếng của hãng ASTON-TATE. Khi các cơng cụ lập
trình và các ứng dụng trên mơi trường Windowns ngày càng nhiều thì Microsoft cho

ra đời các phiên bản FoxPro 2.6, chạy được trên hai môi trườ ng DOS và Windows.
Phiên bản cuối cùng c ủa FoxPro (2.6) làm việc trên Mac OS, MS-DOS, Windows và
Unix. Visual FoxPro 3.0 là phiên bản "Visual" đầu tiên, có thể chạy trong Mac và
Windows, các phiên bản sau chỉ dùng trong Windows.
11 | P a g e


Visual FoxPro là sản phẩm của hãng Microsoft, nó kế th ừa từ Foxpro for
Windows, là m ột trong những cơng cụ tiện lợi để giải quyết các bài tốn trong lĩnh
vực quản lý cho những người chuyên nghiệp và không chuyên nghiệp. Visual FoxPro,
ký hiệu vắn tắt là VFP, là mộ t h ệ quản trị cơ sở d ữ liệu (Database Management
System -DBMS) trực quan. Nó khơng chỉ là m ột hệ DBMS mà còn là mộ t ngơn ngữ
lập trình có triển vọng. Nó có thể được dùng để viết cả các ứng dụng web.
Ứng dụng biên-d ịch bởi VFP có th ể chạ y trong Windows mà không c ần cài đặt
(install), tuy nhiên ph ải chứa các file thư viện hỗ trợ lúc ch ạy (run time support
library) tùy theo version củ a VFP và Windows.
- Là mộ t hệ biên dịch (compiled), do đó cho phép lập trình viên mềm dẻo trong
xử lý mã : chương trình có thể ho ạt động với các mã do nó tự sinh ra trong q
trình chạy.
- Dễ tách ứng dụng thành nhiều module và do đó có thể dễ dàng nâng cấp sử a
đổi.
- Visual Foxpro version trước 9 sẽ không hỗ trợ trực tiếp mã Unicode, VFP9 có
hỗ trợ trực tiếp mã Unicode tùy theo cài đặ t trên Windows version.
2.1.4 SQL Server
SQL (Structured Query Language - ngơn ngữ truy vấn mang tính cấu trúc) là
một loại ngơn ngữ máy tính phổ biến để tạo, sửa, và lấy d ữ liệu từ một h ệ quản trị cơ
sở dữ liệu quan h ệ. Ngôn ngữ này phát triển vượt xa so với mục đích ban đầu là để
phục vụ các h ệ quản trị cơ sở dữ liệu đối tượng-quan h ệ. Nó là mộ t tiêu chuẩn
ANSI/ISO.
SQL Server là hệ thống quản trị cơ sở dữ liệu quan h ệ (Relational DataBase

Management System- RDBMS) s ử d ụng các lệnh giáo chuyển Transaction-SQL để
trao đổi dữ liệu giữa Client Computer và Server Computer.
SQL Server có mộ t số đặc tính sau:
-

Cho phép quản trị một hệ CSDL lớn (lên đến vài tega byte), có tốc độ xử lý
dữ liệu nhanh đáp ứng yêu cầu về thời gian.

-

Cho phép nhiều người cùng khai thác trong m ột thời điểm đối với m ột
CSDL và toàn b ộ qu ản trị CSDL (lên đến vài chục ngàn user).

-

Có h ệ thống phân quyền b ảo mật tương thích với hệ thống bảo m ật củ a
cơng ngh ệ NT (Network Technology), tích hợp với h ệ thống b ảo m ật của
Windows NT ho ặc sử d ụng hệ thống b ảo vệ độc lập của SQL Server.

12 | P a g e


-

Hỗ trợ trong việc triển khai CSDL phân tán và phát triển ứng dụng trên
Internet

-

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).

-

Tính tương thích cao cũng như chi phí rẻ hơn các phần mềm như Oracle,
Visual FoxPro. So sánh giá cả 2 sản ph ẩm SQL Server và Oracle như trên
bảng 2.1 và bảng 2.2

Bảng 2.1 Bảng so sánh giá cả giữa SQL Server và Oracle 9i Standard
Edition
Số
CPU

Oracle 9i Standard Edition

SQL Server 2000 Standard Edition

1

15 $

4,999 $

2


30 $

9,998 $

4

60 $

19,998 $

8

120 $

39,992 $

16

240 $

79,984 $

32

480 $

159,968 $

Bảng 2.2: Bả ng so sánh giá cả giữa SQL Server và Oracle các phiên bản
khác

Oracle 9i
Enterprise
Edition

Oracle 9i
Enterprise
Edition with
OALP or data
mining

Oracle 9i
Enterprise
Edition with
OALP and data
mining

SQL Server 2000
Enterprise Edition

1

40 $

60 $

80 $

19,999 $

2


80 $

120 $

160 $

39,998 $

Số
CPU

13 | P a g e


4

160 $

240 $

320 $

79,996 $

8

320 $

480 $


640 $

159,992 $

16

640 $

960 $

1280 $

319,984 $

32

1280 $

1920 $

2560 $

639,968 $

Có khả năng xử lý khá tốt, nhanh các cơ sở dữ liệu tầm trung nên phù h ợp với
các doanh nghiệp vừa và nhỏ.Access không xử lý tốt lắm các d ữ liệu lớn.
Ta có thể so sánh 1 vài thơng số phụ giữa 2 công cụ Oracle và SQL Server như
trên bảng 2.3:
Hình 2.3: Bảng so sánh mộ t số thơng số khác giữa SQL Server và Oracle

Đặc tính

SQL Sever 2000

Oracle 9i Database

Độ dài tên cơ sở dữ liệu

128

8

Độ dài tên cột

128

30

Độ dài tên chỉ số

128

30

Độ tài tên bảng

128

30


Độ dài tên được xem

128

30

Độ dài tên thủ tục được lưu

128

30

Độ dài ch ỉ số

900

749

16

32

Số cột tối đa mỗi bảng

1024

1000

Số hàng tối đa 1 bảng


8036

255000

Số truy vấn tối đa

16777216

16777216

Đệ quy Subqueries

40

64

16777216

4000

Số cột tối đa cho mỗi ch ỉ số

Hằng chuỗi kích thước trong
SELECT

14 | P a g e


Hằng chuỗi kích thước trong
WHERE


8000

4000

Ngồi ra cơng cụ SQL server cũng có tính tương thích và hỗ trợ cao với cơng
cụ lập trình mà nhóm sử dụng là C#.
Với cơng cụ SQL server, ta dùng ph ần mềm SQL Server 2005 của Microsoft
với các tính năng khá đầy đủ, tương thích với hệ điều hành tốt
2.2. Đánh giá các cơng nghệ khác .
Để xây dựng hoàn chỉnh phần mềm quản lý, ngồi DBMS ta cịn c ần cơng cụ
lập trình đủ m ạnh, thích hợp để viết phần m ềm. Một số lựa chọn có thể cân nhắc:.
So

C/C++.
Visual Basic
C#.
sánh ưu nhược điểm và đặc điểm từng ngôn ngữ giúp ta có sự lựa chọn tối

ưu.
2.2.1 C/C++
Ngơn ngữ lập trình C là mộ t ngôn ngữ mệnh lệnh được phát triển từ đầu th ập
niên 1970 bởi Ken Thompson và Dennis Ritchie để dùng trong h ệ điều hành UNIX.
Từ dó, ngôn ngữ này đã lan rộng ra nhiều hệ điều hành khác và trở thành một những
ngôn ngữ phổ dụng nhất. C là ngơn ngữ rất có hiệu quả và được ưa chuộng nh ất để
viết các phần mềm hệ thống, mặc dù nó cũng được dùng cho việc viết các ứng dụng.
-

-


-

15 | P a g e

Đây là một dạng ngơn ngữ đa mẫu hình tự do có kiểu tĩnh và hỗ trợ lập
trình thủ tục, d ữ li ệu trừu trượng, lập trình hướng đối tượng, và lập trình đa
hình. Từ th ập niên 1990, C++ đã trở thành m ột trong những ngôn ngữ
thương mại phổ biến nhất.
So với C, C++ tăng cường thêm nhiều tính năng, bao gồm: khai báo như
mệnh đề, chuyển kiểu giống như hàm, new/delete, bool, các kiểu tham
chiếu, const, các hàm trong dòng (inline), các đố i số m ặc định, quá tải hàm,
vùng tên (namespace), các lớp (bao gồm tất cả các chức năng liên quan tới
lớp như kế thừa, hàm thành viên (phương pháp), hàm ảo, lớp trừu tượng, và
cấu tử), sự quá tải toán tử , tiêu b ản, tốn tử ::, xử lí ngoại lệ, và sự nhận
dạng kiểu trong th ời gian thi hành.
C++ là ngôn ngữ hướng đối tượng, 1 điều mà C khơng có.
Cơng cụ so ạn thảo của 2 ngôn ngữ này không trực quan tạo điều kiện thuận
lợicho người sử dụng.


2.2.2 Visual Basic
Visual Basic (viết tắt VB) là mộ t ngơn ngữ lập trình h ướng sự kiện (event
driven) và mơi trường phát tri ển tích hợp (IDE) k ết bó đượ c phát tri ển đầu tiên b ởi
Alan Cooper dưới tên Dự án Ruby (Project Ruby), và sau đó được Microsoft mua và
cải tiến nhiều.
Visual Basic đã được thay thế b ằng Visual Basic .NET. Phiên b ản cũ của
Visual Basic b ắt nguồn phần lớn từ BASIC và để lập trình viên phát triển các giao
diện người dùng đồ họa (GUI) theo mơ hình phát triển ứng dụng nhanh (Rapid
Application Development, RAD); truy cập các cơ sở dữ liệu dùng DAO (Data Access
Objects), RDO (Remote Data Objects), hay ADO (ActiveX Data Objects); và lập các

điều khiển và đối tượng ActiveX.
Một lập trình viên có thể phát triển ứng dụng dùng các thành ph ần (component)
có sẵn trong Visual Basic. Các chương trình bằng Visual Basic cũng có thể sử dụng
Windows API, nhưng làm vậy thì ph ải sử d ụng các khai báo hàm bên ngồi.
Visual có khá nhiều ưu điểm như đơn giản, dễ học, d ễ sử dụng nhưng cũng có
khá nhiều nhược điểm khơng phù hợp với dự án:
-

Không h ỗ trợ kh ả năng lập trình hướng đối tượng nhất là tính thừa k ế
(Inheritance)
Giới h ạn trong khi ch ạy nhi ều tiểu trình trong 1 ứng dụng.
Khả năng xử lý lỗi yếu.
Khó dùng chung với các ngơn ngữ khác như C++.
Khơng có User Interface thích hợp cho Internet.

2.2.3 C#
Là một ngơn ngữ lập trình hướng đối tượng được phát triển bởi Microsoft, là
phần khởi đầu cho kế ho ạch .NET của h ọ.
Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo ECMA là
C#, chỉ bao gồm dấu số thường. Microsoft phát triển C# d ựa trên 2 ngôn ngữ cực
mạnh là C++ và Java. C# được miêu tả là ngơn ngữ có được sự cân bằng giữa C++,
Visual Basic, Delphi và Java.
C# được thiết kế ch ủ yếu bởi Anders Hejlsberg kiến trúc sư phần m ềm nổi
tiếng với các sản phẩm Turbo Pascal, Delphi, J++, WFC.
C# là ngôn ngữ khá đơn giản với hơn 80 từ khóa,10 kiểu dữ liệu định ngh ĩa
sẵn.Tuy nhiên nó vẫn có khả năng hỗ trợ đầy đủ lập trình cấu trúc,thành phần
component, lập trình h ướng đối tượng.

16 | P a g e



C#, theo một hướng nào đó, là ngơn ngữ lập trình phản ánh tr ực tiếp nh ất đến
.NET
Framework mà tất cả các chương trình .NET chạy, và nó phụ thuộc m ạnh m ẽ
vào Framework này. Mọ i dữ liệu cơ sở đều là đối tượng, đượ c cấp phát và hủy bỏ b ởi
trình dọn rác Garbage-Collector (GC), và nhiều kiểu trừu tượng khác chẳng hạn như
class, delegate, interface, exception, v.v, phản ánh rõ ràng những đặc trưng củ a .NET
runtime.
Tóm tắt ưu điểm của cơng cụ lập trình này:
- Là ngơn ngữ đơn giản, ít từ khóa.
- C# có khả năng lập trình đa d ạng, hỗ trợ hướng đối tượng, hướng module
- Hiện nay C# là ngôn ngữ khá phổ biến.
2.3. Kết luận & đánh giá.
Với đề tài nhóm thực hiện, trong khn khổ củ a mình, nhóm sẽ sử dụng các
cơng cụ chính sau:
SQL Server vì cơng cụ này có khá nhiều ưu điểm phù hợp với khôn khổ
project.
- C# được lựa chọn làm ngôn ngữ lập trình vì các tính n ăng đã nói.
Cơng cụ sử dụng là Microsoft Visual C# 2010 với kh ả năng lập trình thuận tiện, kết
nối dữ liệu SQL linh hoạt.
-

17 | P a g e


CHƯƠNG 3: PHÂN TÍCH H Ệ THỐNG
3.1 Phân tích u cầu hệ thống:
3.1.1 Sơ đồ chức năng (Functional Diagram):

3.1.2 Biểu đồ lu ồng dữ liệu (Data Flow Diagram):

a. Context Diagram:

b. Other Level Data Flow Diagrams:
18 | P a g e


Data flow diagram (High level)

19 | P a g e


Data flow diagram (function 1)

Data flow diagram (function 2)

20 | P a g e


Data flow diagram (function 3)

21 | P a g e


CHƯƠNG 4: THIẾT KẾ HỆ THỐNG
4.1 Thiết kế Cơ sở dữ liệu
4.1.1 Liệt kê các trường dữ liệu:
Các d ữ liệu có trong phần m ềm được liệt kê ở bảng dưới đây:

4.1.2 Giả thiết phụ thuộc hàm:
(1) Member_ID  Member_Name, Member_DoB, Member_Group,

Member_Email, Member_Mobile, Member_Address,
Member_Project, Member_Report, Group_ID, Project_ID,
Report_ID.
(2) Group_ID 

Group_Name, Group_Member, Group_Project,
Group_Report.

(3) Project_ID  Project_Name, Project_Member, Project_Group,
Project_StartTime, Project_EndTime,
Project_RealEndTime, Project_Progress, Project_Report.
(4) Report_ID 
22 | P a g e

Report_Name, Report_Group.


4.1.3 Chuẩn hóa
a. Chuẩn hóa 1NF: Bảo đảm tính ngun tố và duy nhất.
Khóa chính được ch ọn là: Member_ID vì nó xác định duy nhất các thuộc tính:
Group_ID, Project_ID, Report_ID.
Q trình chu ẩn hóa 1NF đượ c thực hiện như bảng dưới đây:

Bảng chuẩn hóa 1NF

b. Chuẩn hóa 2NF:
Các thuộc tính khơng khóa phải phụ thuộc hàm đầy đủ vào khóa chính.

23 | P a g e



Bảng chuẩn hóa 2NF

c. Chuẩn hóa 3NF:
Khơng có phụ thuộc hàm vào thuộc tính khơng khóa.

24 | P a g e


Bảng chuẩn hóa 3NF

ProjectManager1111
PK

Member_ID
Project_ID
Group_ID
Member_Name
Member_DoB
Member_Group
Member_Email
Member_Mobile
Member_Address
Member_Project
Member_Report
Report_ID

Group111
PK


Group_ID
Group_Name
Group_Member
Group_Project
Group_Report

Report1
PK

Report_ID
Report_Name
Report_Project

Project
PK

Project_ID
Project_Member
Project_Group
Project_StartTime
Project_EndTime
Project_RealEndTime
Project_Progress
Project_Report

Bảng chuẩn hóa 3NF.

4.1.3 Sơ đồ thực thể liên kết của toàn bộ CSDL:

25 | P a g e



×