UBND TỈNH QUẢNG NAM
TRƯỜNG ĐẠI HỌC QUẢNG NAM
KHOA CÔNG NGHỆ THÔNG TIN
----------
KHANVILAY XAYAVONG
XÂY DỰNG PHẦN MỀM QUẢN LÝ ĐIỂM SINH VIÊN
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC
Quảng Nam, tháng 5 năm 2019
UBND TỈNH QUẢNG NAM
TRƯỜNG ĐẠI HỌC QUẢNG NAM
KHOA CÔNG NGHỆ THÔNG TIN
----------
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Tên đề tài:
XÂY DỰNG PHẦN MỀM QUẢN LÝ ĐIỂM SINH VIÊN
Sinh viên thực hiện
KHANVILAY XAYAVONG
MSSV: 2115031033
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
KHÓA 2015 – 2019
Cán bộ hướng dẫn
ThS. Hồ Hữu Linh
Quảng Nam, tháng 5 năm 2019
LỜI CẢM ƠN
Lời đầu tiên, em xin gởi lời cảm ơn chân thành đến giáo viên hướng dẫn
Th.S.Hồ Hữu Linh. Trong suốt thời gian học và làm đồ án tốt nghiệp, cô đã dành rất
nhiều thời gian quý báu để bận tình hướng dẫn, định hướng cho em trong việc nghiên
cứu và thực hiện đề tài.
Em xin gởi lời cảm ơn Khoa Công Nghệ Thông Tin Trường Đại Học Quảng
Nam đã tạo điều kiện thuận lợi và môi trường học tập tốt xuyên suốt trong quá trình
chúng em học tập tại trường.
Đồng thời, em cũng xin cảm ơn quý thầy cô giáo Trường Đại Học Quảng Nam
đã truyền đạt những kiến thức cần thiết và những kinh nghiệm quý báu cho em trong
suốt thời gian 4 năm trên giảng đường để em có thể thực hiện tốt đề tài này.
Trong quá trình thực hiện đề tài, do kiến thức và thời gian còn hạn chế nên khơng
tránh khỏi những sai sót. Vì vậy em mong q thầy, cơ thơng cảm và góp ý để em có thể
hồn thiện đề tài. Những lời góp ý đó giúp em có thể tránh được những sai lầm sau này.
Em xin chân thành cảm ơn!
MỤC LỤC
MỤC LỤC BẢNG...........................................................................................................1
MỤC LỤC HÌNH ............................................................................................................2
PHẦN 1: MỞ ĐẦU .........................................................................................................1
1.1 Lý do chọn đề tài .......................................................................................................1
1.2 Mục tiêu của đề tài ....................................................................................................1
1.3 Đối tượng và phạm vi nghiên cứu .............................................................................1
1.4 Phương pháp nghiên cứu ...........................................................................................1
1.5 Lịch sử nghiên cứu ....................................................................................................2
1.6 Đóng góp của đề tài:..................................................................................................2
1.7 Cấu trúc đề tài............................................................................................................2
PHẦN 2: NỘI DUNG .....................................................................................................3
CHƯƠNG 1: CƠ SƠ LÝ THUYẾT VÀ KHẢO SÁT BÀI TOÁN QUẢN LÍ ĐIỂM ...3
1.1. Sơ lược lập trình .Net ...............................................................................................3
1.1.1 .NET Servers ..........................................................................................................3
1.1.2 .NET Framework ....................................................................................................4
1.2. Tổng quan SQL Server .............................................................................................5
1.2.1 Giới Thiệu SQL Server .............................................................................................5
1.2.2 Cài Ðặt SQL Server (Installation)...............................................................................6
1.2.3 Lịch sử ra đời SQL Server và các phiên bản................................................................6
1.2.4 Các thành cơ bản trong SQL Server............................................................................7
1.3. Tổng quan về công nghệ phần mềm.........................................................................9
1.3.1 Khái niệm................................................................................................................9
1.3.2 Phân loại ...............................................................................................................10
1.3.3 Kiến trúc phần mềm .............................................................................................10
1.3.4 Chất lượng của phần mềm....................................................................................11
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ CHƯƠNG TRÌNH QUẢN LÝ ĐIỂM
SINH VIÊN ...................................................................................................................14
2.1 Khảo sát hiện trạng và xác lập đề tài.......................................................................14
2.1.1 Khảo sát hệ thống .................................................................................................14
2.1.2 Phân tích hiện trạng hệ thống ...............................................................................18
2.2 Phân tích và đặc tả yêu cầu......................................................................................19
2.2.1 Cơ cấu tổ chức. .....................................................................................................19
2.2.2 Yêu cầu chức năng của phần mềm .......................................................................19
2.2.3 Phân tích những chức năng của hệ thống phần mềm ...........................................19
2.3 Thiết kế hệ thống .....................................................................................................21
2.3.1. Phân rã thiết kế ....................................................................................................21
2.3.1.1 Thiết kế cơ sơ dữ liệu cho phần mềm................................................................22
2.3.1.2 Tạo lập cơ sơ dữ liệu .........................................................................................28
2.3.2. Thiết kế giao diện người dùng.............................................................................31
CHƯƠNG 3: CÀI ĐẶT CHƯƠNG TRÌNH VÀ KẾT QUẢ........................................33
3.1 Giao diện đăng nhập ................................................................................................33
3.2 Giao diện chính của chương trình ...........................................................................33
3.3 Giao diện quản lý Quản lý .......................................................................................34
3.4 Giao diện thống kê...................................................................................................37
3.5 Giao diện Học ..........................................................................................................40
3.6 Giao diện Tìm kiếm .................................................................................................40
1. Kết luận......................................................................................................................43
2. Kiến nghị ...................................................................................................................43
PHẦN 4: TÀI LIỆU THAM KHẢO .............................................................................44
MỤC LỤC BẢNG
Bảng 1. 1: Bảng đăng nhập.......................................................................................................29
Bảng 1. 2: Bảng Điểm .............................................................................................................. 29
Bảng 1. 3: Bảng sinh viên.........................................................................................................29
Bảng 1. 4: Bảng Lớp.................................................................................................................30
Bảng 1. 5: Bảng môn học ......................................................................................................... 30
Bảng 1. 6: Bảng giáo viên ........................................................................................................ 30
Bảng 1. 7: Bảng học kỳ ............................................................................................................ 31
MỤC LỤC HÌNH
Hình 1. 1: Các thành phần chính SQL Server .............................................................7
Hình 2. 1: Sơ đồ quan hệ ER .....................................................................................28
Hình 2. 2: Mơ hình quan hệ .......................................................................................31
Hình 3. 1: Hình giao diện đăng nhập .........................................................................33
Hình 3. 2: Hình giao diện của chương trình ..............................................................33
Hình 3. 3: Hình giao diện cập nhật giáo viên ............................................................34
Hình 3. 4: Hình giao diện mơn học............................................................................35
Hình 3. 5: Hình giao diện học kỳ...............................................................................35
Hình 3. 6: Hình giao diện cập nhật lớp......................................................................36
Hình 3. 7: Hình giao diện cập nhật sinh viên ............................................................36
Hình 3. 8: Hình giao diện thống kê sinh viên ............................................................37
Hình 3. 9: Hình giao diên thống kê mơn học.............................................................37
Hình 3. 10: Hình giao diện thống kê học kỳ..............................................................38
Hình 3. 11: Hình giao diện thống kê lớp ...................................................................38
Hình 3. 12: Hình giao diện thống kê giáo viên..........................................................39
Hình 3. 13: Hình giao diện thống kê điềm.................................................................39
Hình 3. 14: Hình giao diện nhập điêm học ................................................................40
Hình 3. 15: Hình giao diện tìm kiếm sinh viên..........................................................40
Hình 3. 16: Hình giao diện tìm kiếm giáo viên .........................................................41
Hình 3. 17: Hình giao diện tìm kiếm mơn học ..........................................................41
Hình 3. 18: Hình giao diện tìm kiếm lớp ...................................................................42
PHẦN 1: MỞ ĐẦU
1.1 Lý do chọn đề tài
Ngày nay, công nghệ thơng tin đã có những bước phát triển mạnh mẽ. Máy tính
khơng cịn là một phương tiện mà đang ngày càng trở thành một cơng cụ làm việc, giải
trí thơng dụng của con người mọi lúc mọi nơi. Đặc biệt là công nghệ thông tin được áp
dụng trên mọi lĩnh vực kinh tế, chính trị, xã hội. Ứng dụng cơng nghệ thơng tin và tin
học hóa được xem là một trong yếu tố mang tính quyết định trong hoạt động. Nó đóng
vai trị hết sức quan trọng và có thể tạo nên bước đột phá mạnh mẽ. Bên cạnh đó, với
người lập trình thì Cơng nghệ .NET ra đời đã giúp cho việc xây dựng các ứng dụng trở
nên dễ dàng hơn.
Trong khóa luận này tơi nghiên cứu về cơng nghệ .Net để xây dựng ứng dụng
trên máy tính hệ điều hành Windows nhằm bổ sung kiến thức chuyên ngành còn
chưa vững, học tập cách xây dựng phần mềm phục vụ cho công việc tương lai, đặc
biệt tôi chọn đề tài “Xây dựng phần mềm quản lý điểm sinh viên” làm đề tài khóa
luận của mình.
1.2 Mục tiêu của đề tài
- Nắm vững các kiến thức về lý thuyết công nghệ phần mềm
- Tìm hiểu mơ hình lập trình .Net.
- Tìm hiểu qui trình xây dựng phần mềm
- Triển khai phân tích ứng dụng quản lý điểm sinh viên
1.3 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu của đề tài là lý thuyết về công nghệ phần mềm, qui trình
xây dựng một phần mềm.
- Phạm vi nghiên cứu của đề tài được giới hạn trong các nội dung sau: về mặt lý
thuyết, đó là cơng nghệ phần mềm. Về thực tế, phân tích quản lý điểm sinh viên.
1.4 Phương pháp nghiên cứu
- Tìm kiếm tài liệu liên quan đến công nghệ phần mềm.
- Chọn những công cụ cần thiết cho việc phân tích quản lý điểm sinh viên.
- Phương pháp nghiên cứu lí thuyết.
-Sử dụng phương pháp thu thập thơng tin phân tích và tổng hợp.
1
1.5 Lịch sử nghiên cứu
- Nội dung này được xây dựng thành học phần trong chương trình học. Tuy nhiên,
đây là nội dung khó với mong muốn bổ sung kiến thức của bản thân nên tơi lựa chọn
đề tài này để thực hiện.
1.6 Đóng góp của đề tài:
- Cung cấp kiến thức về công nghệ phần mềm.
- Cung cấp kiến thức về qui trình xây dựng phần mềm.
- Với đề tài này tôi mong muốn chia sẻ kiến thức và cung cấp một tài liệu tham
khảo cho các bạn sinh viên Lào đang học công nghệ thông tin.
1.7 Cấu trúc đề tài
Với đề tài này, phần nội dung khóa luận gồm 3 chương sau:
Chương 1: Cơ sở lý thuyết và khảo sát bài toán quản lí điểm.
Chương 2: Phân tích và thiết kế chương trình quản lý điểm sinh viên
Chương 3: Cài đặt chương trinh và kết quả
2
PHẦN 2: NỘI DUNG
CHƯƠNG 1: CƠ SƠ LÝ THUYẾT VÀ KHẢO SÁT BÀI TỐN QUẢN LÍ ĐIỂM
1.1. Sơ lược lập trình .Net
NET là tầng trung gian giữa các ứng dụng (applications) và hệ điều hành (OS).
Tầng .NET cung cấp mọi dịch vụ cơ bản giúp ta tạo các cơng dụng mà ứng dụng
(application) địi hỏi, giống như hệ điều hành cung cấp các dịch vụ cơ bản cho ứng
dụng (application), tỷ như: đọc hay viết các tập tin (files) vào dĩa cứng (hard drive), ...
Tầng này bao gồm 1 bộ các ứng dụng (application) và hệ điều hành gọi là .NET
Servers. Như vậy, .NET gần như là một bộ sưu tập(collection) các nhu liệu và khái
niệm kết hợp trộn lẫn nhau làm việc nhằm tạo giải đáp các vấn đề liên quan đến
thương nghiệp của ta. Trong đó:
• Tập hợp các đối tượng (objects) được gọi là .NET Framework và
• Tập hợp các dịch vụ yểm trợ mọi ngơn ngữ lập trình .NET gọi là Common
Laguage Runtime (CLR).
Hãy quan sát thành phần cơ bản của .NET:
User Applications
.NET Framework
.NET Servers
.NET Devices
Hardware Components
1.1.1 .NET Servers
Mục tiêu chính của .NET là giúp ta giảm thiểu tối đa công việc thiết kế hệ
thống tin học phân tán (distributed system). Đa số cơng việc lập trình phức tạp đòi hỏi
đều được thực hiện ở hậu phương (back end) trong các máy cung cấp dịch vụ
(servers). Microsoft đã đáp ứng với bộ sưu tập '.NET Enterprise Servers', bộ này
chuyên trị và yểm trợ mọi đặc tính (features) hậu phương cần có cho một hệ thống tin
học phân tán (distributed system).
Bộ sưu tập '.NET Enterprise Servers' bao gồm:
• Server Operationg Systems: MS Windows Server, Advanced Server và Data
Center Server
3
• Clustering và Load Balancing Systems: MS Application Center, MS Cluster
Server
• Database System: MS SQL Server
• E-Mail System: MS Exchange Server
• Data-transformation engine trên cơ sở XML: MS Biz Talk Server
• Accessing Legacy Systems: Host Integration Server
Tất cả các máy server này cung cấp mọi dịch vụ cần thiết cho các ứng dụng
(application) về .NET và là nền tảng xây dựng hệ thống Tin Học cho mọi dự án lập
trình.
1.1.2 .NET Framework
Đối với Visual Basic.NET (VB.NET), tất cả mọi thứ đều thay đổi tận gốc rễ.
Một trong những thành phần quan trọng của .NET là .NET Framework. Đây là nền
tảng cho mọi công cụ phát triển các ứng dụng (application)
.NET Framework bao gồm:
• Mơi trường vận hành nền (Base Runtime Environment)
• Bộ sưu tập nền các loại đối tượng (a set of foundation classes)
Môi trường vận hành nền (Base Runtime Environment) hoạt động giống như
hệ điều hành cung cấp các dịch vụ trung gian giữa ứng dụng (application) và các thành
phần phức tạp của hệ thống. Bộ sưu tập nền các loại đối tượng (a set of foundation
classes) bao gồm 1 số lớn các công dụng đã soạn và kiểm tra trước, tỷ như: giao lưu
với hệ thống tập tin (file system access) hay ngay cả các quy ước về mạng (Internet
protocols), ... nhằm giảm thiểu gánh nặng lập trình cho các chun gia Tin Học. Do
đó, việc tìm hiểu .NET Framework giúp ta lập trình dễ dàng hơn vì hầu như mọi công
dụng đều đã được yểm trợ.
Ta xem .NET Framework như là một tầng công dụng trừu tượng cung cấp
dịch vụ trên hệ điều hành.
Để mọi ngôn ngữ lập trình sử dụng được các dịch vụ cung cấp bởi .NET
Framework, Microsoft tạo ra 1 tiêu chuẩn chung cho ngơn ngữ lập trình gọi là
Common Language Specifications (CLS). Tiêu chuẩn này giúp các chương trình biên
dịch (compilers) làm việc hữu hiệu. Microsoft sáng chế ra Visual Basic.NET
(VB.NET), Visual C++.NET và C# (đọc là C Sharp) cho nền .NET Framework và
4
cũng không quên phổ biến rộng rãi CLS trong Công Nghệ Tin Học giúp các ngơn ngữ
lập trình khác làm việc trong nền .NET, tỷ như: COBOL.NET, Smalltalk.NET.
1.2. Tổng quan SQL Server
1.2.1 Giới Thiệu SQL Server
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database
Management System (RDBMS) ) sử dụng câu lệnh SQL (Transaction-SQL) để trao
đổi dữ liệu giữa máy Client và máy cài SQL Server. Một RDBMS bao gồm databases,
database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau
trong RDBMS.
SQL Server được tối ưu để có thể chạy trên mơi trường cơ sở dữ liệu rất lớn
(Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho
hàng ngàn user. SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft
Internet Information Server (IIS), E-Commerce Server, Proxy Server….
Một vài ấn bản SQL Server:
Enterprise : chứa tất cả cá đặc điểm nổi bật của SQL Server, bao gồm nhân bộ
máy cơ sở dữ liệu và các dịch vụ đi kèm cùng với các công cụ cho tạo và quản lý phân
cụm SQL Server. Nó có thể quản lý các CSDL lớn tới 524 petabytes và đánh địa chỉ
12 terabytes bộ nhớ và hỗ trợ tới 640 bộ vi xử lý(các core của cpu)
Standard : Rất thích hợp cho các cơng ty vừa và nhỏ vì giá thành rẻ hơn nhiều
so với Enterprise Edition, nhưng lại bị giới hạn một số chức năng cao cấp (advanced
features) khác, edition này có thể chạy tốt trên hệ thống lên đến 4 CPU và 2 GB RAM.
Developer : Có đầy đủ các tính năng của Enterprise Edition nhưng được chế tạo
đặc biệt như giới hạn số lượng người kết nối vào Server cùng một lúc….Ðây là phiên
bản sử dụng cho phát triển và kiểm tra ứng dụng. Phiên bản này phù hợp cho các cá
nhân, tổ chức xây dựng và kiểm tra ứng dụng
Workgroup: ấn bản SQL Server Workgroup bao gồm chức năng lõi cơ sở dữ
liệu nhưng không có các dịch vụ đi kèm. Chú ý phiên bản này khơng cịn tồn tại ở
SQL Server 2012.
Express : SQL Server Express dễ sử dụng và quản trị cơ sở dữ liệu đơn giản.
Được tích hợp với Microsoft Visual Studio, nên dễ dàng để phát triển các ứng dụng dữ
liệu, an toàn trong lưu trữ, và nhanh chóng triển khai. SQL Server Express là phiên
bản miễn phí, khơng giới hạn về số cơ ở dữ liệu hoặc người sử dụng, nhưng nó chỉ
5
dùng cho 1 bộ vi xử lý với 1 GB bộ nhớ và 10 GB file cơ sở dữ liệu. SQL Server
Express là lựa chọn tốt cho những người dùng chỉ cần một phiên bản SQL Server 2005
nhỏ gọn, dùng trên máy chủ có cấu hình thấp, những nhà phát triển ứng dụng khơng
chun hay những người u thích xây dựng các ứng dụng nhỏ.
1.2.2 Cài Ðặt SQL Server (Installation)
Các bạn cần có phiên bản Developer Edition và ít nhất là 64 MB RAM, 500
MB hard disk để có thể cài SQL Server. Bạn có thể cài trên Windows Server hay
Windows 10, Windows 8, Windows 7, Windows XP …
Các bước cài đặt khơng q khó khăn với các phiên bản SQL Server khác nhau, bạn có
thể xem lại bài Hướng dẫn cài đặt SQL Server 2008. Khi cài đặt bạn cần lưu ý các
điểm sau:
Ở màn hình thứ hai bạn chọn Install Database Server. Sau khi install xong SQL
Server bạn có thể install thêm Analysis Service nếu bạn thích.
Ở màn hình Installation Definition bạn chọn Server and Client Tools.
Sau đó bạn nên chọn kiểu Custom và chọn tất cả các bộ phận của SQL Server.
Ngoài ra nên chọn các giá trị mặc định (default)
Ở màn hình Authentication Mode nhớ chọn Mixed Model. Lưu ý vì SQL
Server có thể dùng chung chế độ bảo mật (security) với hệ điều hành Windows và
cũng có thể dùng chế độ bảo mật riêng của nó. Trong Production Server người ta
thường dùng Windows Authetication vì độ an tồn cao hơn và dễ dàng cho người quản
lý mạng và cả cho người sử dụng. Nghĩa là một khi bạn được chấp nhận
(authenticated) kết nối vào domain thì bạn có quyền truy cập dữ liệu (access data)
trong SQL Server. Tuy nhiên ta nên chọn Mixed Mode để dễ dàng cho việc học tập.
Sau khi install bạn sẽ thấy một icon nằm ở góc phải bên dưới màn hình, đây
chính là Service Manager. Bạn có thể Start, Stop các SQL Server services dễ dàng
bằng cách double-click vào icon này.
1.2.3 Lịch sử ra đời SQL Server và các phiên bản
Phiên bản đầu tiên của Microsoft SQL Server ra đời đầu tiên vào năm 1989 cho
các hệ điều hành chạy 16 bít với SQL Server phiên bản 1.0 và tiếp tục phát triển cho
tới ngày nay.
SQL Server của Microsoft được thị trường chấp nhận rộng rãi kể từ version 6.5.
Sau đó Microsoft đã cải tiến và hầu như viết lại một engine mới cho SQL Server 7.0.
6
Cho nên có thể nói từ version 6.5 lên version 7.0 là một bước nhảy vọt. Có một số đặc
tính của SQL Server 7.0 khơng tương thích với version 6.5. Trong khi đó từ Version
7.0 lên version 8.0 (SQL Server 2000) thì những cải tiến chủ yếu là mở rộng các tính
năng về web và làm cho SQL Server 2000 đáng tin cậy hơn.
Một điểm đặc biệt đáng lưu ý ở phiên bản 2000 là Multiple-Instance. Tức là bạn
có thể cài dặt phiên bản 2000 chung với các phiên bản trước mà không cần phải gỡ
chúng. Nghĩa là bạn có thể chạy song song version 6.5 hoặc 7.0 với phiên bản 2000
trên cùng một máy (điều này không thể xảy ra với các phiên bản trước đây). Khi đó
phiên bản cũ trên máy bạn là Default Instance còn phiên bản 2000 mới vừa cài sẽ
là Named Instance.
Từ tháng 10 năm 2016, các phiên bản sau được Microsoft hỗ trợ:
SQL Server 2008 R2
SQL Server 2012
SQL Server 2014
SQL Server 2016
Phiên bản hiện tại là Microsoft SQL Server 2016, xuất bản vào ngày 1/6/2016.
SQL Server 2016 chỉ hỗ trợ cho các bộ vi xử lý 64 bít.
1.2.4 Các thành cơ bản trong SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting
Services, Notification Services, Integration Services, Full Text Search Service…. Các
thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho
việc lưu trữ và phân tích dữ liệu một cách dễ dàng.
Hình 1. 1: Các thành phần chính SQL Server
7
Database Engine
– Cái lõi của SQL Server:
Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng
table và support tất cả các kiểu kết nối (data connection) thông dụng của Microsoft
như
ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity
(ODBC).
Ngồi ra nó cịn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụng thêm các
tài nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệ điều hành khi một
user log off.
Replication
– Cơ chế tạo bản sao (Replica):
Giả sử bạn có một database dùng để chứa dữ liệu được các ứng dụng thường
xuyên cập nhật. Một ngày đẹp trời bạn muốn có một cái database giống y hệt như thế
trên một server khác để chạy báo cáo (report database) (cách làm này thường dùng để
tránh ảnh hưởng đến performance của server chính). Vấn đề là report server của bạn
cũng cần phải được cập nhật thường xuyên để đảm bảo tính chính xác của các báo cáo.
Bạn không thể dùng cơ chế back up and restore trong trường hợp này. Thế thì bạn phải
làm sao? Lúc đó cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho
dữ liệu ở 2 database được đồng bộ (synchronized). Replication sẽ được bàn kỹ trong
bài 12
Integration Services (DTS)
– Integration Services là một tập hợp các cơng cụ đồ họa và các đối tượng lập
trình cho việc di chuyển, sao chép và chuyển đổi dữ liệu.
Nếu bạn làm việc trong một cơng ty lớn trong đó data được chứa trong nhiều nơi
khác nhau và ở các dạng khác nhau cụ thể như chứa trong Oracle, DB2 (của IBM),
SQL Server, Microsoft Access….Bạn chắc chắn sẽ có nhu cầu di chuyển data giữa các
server này (migrate hay transfer) và không chỉ di chuyển bạn cịn muốn định dạng
(format) nó trước khi lưu vào database khác, khi đó bạn sẽ thấy DTS giúp bạn giải
quyết công việc trên dễ dàng.
Analysis Services
– Một dịch vụ phân tích dữ liệu rất hay của Microsoft
8
Dữ liệu (Data) chứa trong database sẽ chẳng có ý nghĩa gì nhiều nếu như bạn
không thể lấy được những thông tin (Information) bổ ích từ đó. Do đó Microsoft cung
cấp cho bạn một cơng cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và
hiệu quả bằng cách dùng khái niệm hình khối nhiều chiều (multi-dimension cubes) và
kỹ thuật “khai phá dữ liệu” (data mining).
Notification Services
Dịch vụ thông báo Notification Services là nền tảng cho sự phát triển và triển
khai các ứng dụng tạo và gửi thông báo. Notification Services có thể gửi thơng báo
theo địch thời đến hàng ngàn người đăng ký sử dụng nhiều loại thiết bị khác nhau.
Reporting Services
Reporting Services bao gồm các thành phần server và client cho việc tạo, quản lý
và triển khai các báo cáo. Reporting Services cũng là nền tảng cho việc phát triển và
xây dựng các ứng dụng báo cáo.
Full Text Search Service
Dịch vụ SQL Server Full Text Search là một dịch vụ đặc biệt cho đánh chỉ mục
và truy vấn cho dữ liệu văn bản không cấu trúc được lưu trữ trong các CSDL SQL
Server. Đánh chỉ mục với Full Text Search có thể dduwowcj tạo trên bất kỳ cột dựa
trên dữ liệu văn bản. Nó sẽ rất hiệu quả cho việc tìm các sử dụng tốn tử LIKE trong
SQL với trường hợp tìm văn bản.
Service Broker
Được sử dụng bên trong mỗi Instance, là mơi trường lập trình cho việc các ứng
dụng nhảy qua các Instance. Service Broker giao tiếp qua giao thức TCP/IP và cho
phép các component khác nhau có thể được đồng bộ cùng nhau theo hướng trao đổi
các message. Service Broker chạy như một phần của bộ máy cơ sở dữ liệu, cung cấp
một nền tảng truyền message tin cậy và theo hàng đợi cho các ứng dụng SQL Server.
1.3. Tổng quan về công nghệ phần mềm
1.3.1 Khái niệm
Phần mềm là chương trình máy tính và các tài liệu liên quan đến một phần mềm
tốt là phần mềm cung cấp các chức năng, hiệu năng yêu cầu cho người sử dụng. Nó có
thể sử dụng được, đáng tin cậy và có thể bảo trì.
Cơng nghệ phần mềm là ngành kỹ thuật liên quan đến tất cả các khía cạnh sản
xuất phần mềm. Các hoạt động nền tảng của công nghệ phần mềm là đặc tả phần mềm,
phát triển phần mềm, kiểm nghiệm phần mềm, và tiến hóa phần mềm.
9
Công nghệ phần mềm là sự thiết lập và sử dụng các nguyên tắc khoa học nhằm
mục đích tạo ra các phần mềm một cách kinh tế mà các phần mềm đó hoạt động hiệu
quả và tin cậy trên các máy tính
Là các quy trình đúng kỷ luật và có định lượng được áp dụng cho sự phát triển,
thực thi và bảo trì các hệ thống thiên về phần mềm
Tập trung vào quy trình, sự đo lường, sản phẩm, tính đúng thời gian và chất
lượng
1.3.2 Phân loại
Phần mềm hệ thống là những phần mềm đảm nhận cơng việc tích hợp và điều
khiển các thiết bị phần cứng đồng thời tạo ra môi trường thuận lợi để các phần mềm
khác và người sử dụng có thể thao tác trên đó như một khối thống nhất mà không cần
phải quan tâm đến những chi tiết kỹ thuật phức tạp bên dưới như cách thức trao đổi dữ
liệu giữa bộ nhớ chính và đĩa, cách hiển thị văn bản lên màn hình
Phần mềm ứng dụng là những phần mềm được dùng để thực hiện một công việc
xác định nào đó. Phần mềm ứng dụng có thể chỉ gồm một chương trình đơn giản như
chương trình xem ảnh, hoặc một nhóm các chương trình cùng tương tác với nhau để
thực hiện một cơng việc nào đó như chương trình xử lý bản tính, chương trình xử lý
văn bản, ...
1.3.3 Kiến trúc phần mềm
Sau khi đã có các khái niêm cơ bản nhất về phần mềm, tiếp sau đây chúng ta sẽ
đi sâu vào tìm hiểu cấu trúc chi tiết các cấu trúc chi tiết các thành phần bên trong phần
mềm. Phần mềm bao gồm 3 thành phần:
Thành phần giao tiếp (giao diện)
Cho phép tiếp nhận các yêu cầu về việc muốn thực hiện và cung cấp các dữ liệu
nguồn liên quan đến cơng việc đó hoặc từ các thiết bị thu thập dữ liệu (cân, đo nhiệt
độ, tế bào quang học, …)
Cho phép trình bày các kết quả của việc thực hiện các yêu cầu cho người dùng
(kết quả của cơng việc khi thực hiện trên máy tính) hoặc điều khiển hoạt động các thiết
bị điều khiển (đóng mở cửa, bật mở máy…)
Một cách tổng quát thành phần giao tiếp là hệ thống các hàm chuyên về việc
nhập/xuất dữ liệu (hàm nhập/xuất) cùng với hình thức trình bày và tổ chức lưu trữ dữ
10
liệu tương ứng, mục tiêu chính của các hàm này là đưa dữ liệu từ thế giới bên ngoài
phần mềm vào bên trong hoặc ngược lại.
Trong phạm vi giáo trình này chỉ giới hạn xét đến giao tiếp với người sử dụng
phần mềm và khi đó có tên gọi cụ thể hơn là thành phần giao diện.
Thành phần dữ liệu
Cho phép lưu trữ lại (hàm ghi) các kết quả đã xử lý (việc mượn sách đã được
kiểm tra hợp lệ, bảng lương tháng đã được tính) trên bộ nhớ phụ với tổ chức lưu trữ
được xác định trước (tập tin có cấu trúc, tập tin nhị phân, cơ sở dữ liệu).
Cho phép truy xuất lại (hàm đọc) các dữ liệu đã lưu trữ phục vụ cho các hàm xử
lý tương ứng.
Một cách tổng quát thành phần dữ liệu là hệ thống các hàm chuyên về đọc ghi dữ
liệu (hàm đọc/ghi) cùng với mơ hình tổ chức dữ liệu tương ứng. Mục tiêu chính của
các hàm này là chuyển đổi dữ liệu giữa bộ nhớ chính và bộ nhớ phụ.
Thành phần xử lý
Kiểm tra tính hợp lệ của các dữ liệu nguồn được cung cấp từ người dùng theo các
quy trình ràng buộc trong thế giới thực (chỉ cho mượn tối đa 3 quyển sách, mỗi lớp
học có tối đa 50 học sinh, …)
Tiến hành xử lý cho ra kết quả mong đợi theo quy định tính tốn có sẵn trong thế
giới thực (quy tắc tính tiền phạt khi trả sách trễ, quy tắc tính tiền điện, quy tắc trả góp
khi mua nhà…) hoặc theo thuật giải tự đề xuất (xếp thời khóa biểu tự động, nén
ảnh…)
1.3.4 Chất lượng của phần mềm
Tính đúng đắn
Tính đúng đắn của phần mềm được thể hiện ở chổ đó thực hiện đầy đủ và chính
xác các yêu cầu của người dùng. Tính đúng đắn ở đây cần phải hiểu theo nghĩa rộng là
chương trình cần phải thực hiện được trong cả những trường hợp mà dữ liệu đầu vào là
không hợp lệ.
Ví dụ, nếu một trong số các chức năng của phần mềm là sắp xếp một tập tin có số
lượng mẫu tin tùy ý theo một cột tùy ý theo chiều tăng hoặc giảm thì những trường
hợp sau là vi phạm tính đúng đắn của chương trình:
- Không thể thực hiện được (treo máy) khi tập tin rỗng (khơng có mẫu tin nào).
- Không thể thực hiện hoặc thực hiện nhưng cho kết quả sai khi các mẫu tin có
11
hơn 100 cột hoặc có quá nhiều mẫu tin.
- Không thể thực hiện hoặc cho kết quả sai khi các cột có chiều dài lớn hơn 125
bytes.
- Không thể sắp xếp theo chiều tăng dần.Tính đúng đắn của một sản phẩm phần
mềm được xác minh qua các căn cứ sau đây:
- Tính đúng đắn của thuật toán.
- Tính tương đương của chương trình với thuật tốn. Thuật tốn có thể đúng
nhưng chương trình lập ra khơng tương đương với thuật toán nên khi thực hiện sẽ cho
kết quả sai.
- Tính đúng đắn của chương trình có thể được chứng minh trực tiếp trong văn
bản của chương trình.
- Tính đúng đắn cũng có thể được khẳng định dần qua việc kiểm thử, việc áp
dụng chương trình trong một khoảng thời gian dài trên diện rộng và với tần suất sử
dụng cao.
Tính tiến hóa
Cho phép người dùng có thể khai báo các thay đổi về qui định với phần mềm tùy
theo các thay đổi trong thế giới thực liên quan (thay qui định về số sách mượn tối đa,
công thức tính tiền phạt, cơng thức tính tiền điện…)
Sản phẩm có thể mở rộng, tăng cường về mặt chức năng một cách dễ dàng.
Tính hiệu quả
Tính hiệu quả của một phần mềm được xác định qua các tiêu chuẩn sau:
- Hiệu quả kinh tế hoặc ý nghĩa, giá trị thu được do áp dụng phần mềm đó.
- Tốc độ xử lý của phần mềm (v) tính bằng tỉ lệ giữa khối lượng đối tượng cần
phải xử lý (m) và tổng thời gian (t) cần thiết để xử lý các đối tượng đó. Sử dụng tối ưu
tài nguyên của máy tính (CPU, bộ nhớ…)
Tính tiện dụng
Sản phẩm phải tính đến những yếu tố tâm lý sau đây của người dùng:
- Dễ học, có giao diện trực quan tự nhiên.
- Dễ thao tác
Tính tương thích
Trao đổi dữ liệu với các phần mềm khác có liên quan (nhận danh mục sách từ tập
tin Excel, gửi báo cáo tổng kết năm học đến phần mềm WinFax.
12
- Giao tiếp nội bộ
- Giao tiếp bên ngồi
Tính tái sử dụng
Sản phẩm phần mềm có thể áp dụng cho nhiều lĩnh vực theo nhiều chế độ làm
việc khác nhau.
- Các phần mềm cùng lớp
- Các phần mềm khác lớp
13