1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài Tập Lớn Phát triển phần mềm hướng cấu phần

62 1,2K 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 62
Dung lượng 3,79 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sau khi kết thúc môn học “Phát triển phần mềm hướng cấu phần”, với vốn kiến thức đã tích lũy được trong quá trình học và thực hành, nhóm em thực hiện đề tài :“Xây dựng chương trình quản lý điểm sinh viên theo hệ thống tín chỉ ”.

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN

1 Lê Tuấn Anh

2 Phạm Gia Khánh

3 Đào Sỹ Nam Anh

Hà Nội – tháng 12 năm 2016

Trang 2

MỤC LỤC

CHƯƠNG 1: GIỚI THIỆU SƠ BỘ VỀ ĐỀ TÀI 9

1 Tên đề tài 9

2 Lý do chọn đề tài 9

3 Mục tiêu – mục đích 9

4 Bố cục của đề tài 10

5 Phương pháp thực hiện 10

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 11

2.1 Mô tả bài toán 11

2.2 Các giải pháp công nghệ 12

2.2.1 .NET framework là gì ? 12

2.2.2 Kiến trúc NET Framework 15

2.2.3 Ngôn ngữ C# 21

2.2.4 Microsoft SQL server 2008 23

2.2.5 Linq to SQL 23

2.3 Giới thiệu về COP 24

2.3.1 Kiến trúc của hướng cấu phần 24

CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ 25

3.1 Xác định yêu cầu của chương trình 25

3.2 Tác nhân của hệ thống 25

3.3 Các ca sử dụng của hệ thống 25

3.4 Biểu đồ ca sử dụng 27

3.4.1 Biểu đồ ca sử dụng chính 27

Trang 3

3.4.3 Biểu đồ ca sử dụng quản trị hệ thống 29

3.5 Đặc tả ca sử dụng 29

3.5.1 Ca sử dụng “Đăng nhập” 30

3.5.2 Ca sử dụng quản lý điểm 32

3.5.3 Ca sử dụng QuanLyMonHoc 33

3.5.4 Ca sử dụng QuanLyLop 36

3.5.5 Ca sử dụng quản lý SinhVien 38

3.5.6 Ca sử dụng QuanLyHocKy 40

3.5.7 Ca sử dụng bảng điểm chi tiết 42

3.6 Lược đồ trình tự chi tiết 43

CHƯƠNG 4: THIẾT KẾ XÂY DỰNG 49

4.1 Kiến trúc tổng quan 49

4.1.1 Phân tích hệ thống phía bên Người quản trị 50

4.1.2 Phân tích hệ thống phía Giáo viên 50

4.2 Xây dựng các Module 50

4.2.1 Module đăng nhập 51

4.2.2 Module tìm kiếm 51

4.3 Giới thiệu sản phẩm 52

KẾT LUẬN 57

1 Kết quả đạt được 57

2 Một số đề xuất hướng phát triển 57

TÀI LIỆU THAM KHẢO 58

Trang 4

DANH MỤC BẢNG

Bảng 3.1: Các tác nhân của hệ thống 30

Bảng 3.2: Các ca sử dụng của hệ thống 31

Bảng 3.3: Đặc tả ca sử dụng Đăng nhập 35

Bảng 3.6.1: Bảng CSDL DangNhap 50

Bảng 3.6.2: Bảng CSDL DiemHP 51

Bảng 3.6.3: Bảng CSDL HocKy 51

Bảng 3.6.4: Bảng CSDL Lop 51

Bảng 3.6.5: Bảng CSDL MonHP 52

Bảng 3.6.6: Bảng CSDL SinhVien 52

Bảng 3.6.7: Bảng CSDL TacGia 53

Bảng 3.6.8: Bảng CSDL ThongTinHeThong 53

Trang 5

DANH MỤC HÌNH ẢNH

Hình 3.1: Biểu đồ ca sử dụng chính 28

Hình 3.4.1: Biểu đồ hoạt động của ca sử dụng Đăng nhập 32

Hình 3.4.2: Biểu đồ lớp tham gia ca sử dụng Đăng nhập 32

Hình 3.4.3: Biểu đồ trình tự của ca sử dụng xem sản phẩm 32

Hình 3.5.1: Biểu đồ hoạt động của ca sử dụng sửa điểm 34

Hình 3.6.1: Biểu đồ hoạt động của ca sử dụng quản lý sản phẩm 35

Hình 4.1: Sơ đồ kiến trúc tổng quát 50

Hình 4.2: Module đăng nhập 52

Hình 4.3: Module tìm kiếm 53

Hình 4.4: Giao diện chính của chương trình 55

Hình 4.5: Giao diện quản lý lớp, quản lý sinh viên 56

Hình 4.6: Giao diện quản lý học kỳ, môn học phần 56

Hình 4.7: Giao diện bảng điểm chi tiết của sinh viên 57

Hình 4.8: Giao diện quản lý thông tin hệ thống 57

Trang 6

LỜI CẢM ƠN

Bài tập lớn là môn học đánh khả năng làm việc theo nhóm của sinh viên,cũngnhư tạo cho sinh viên tạo cho sinh viên tính tự lập đánh dấu sự trưởng thành của mộtsinh viên, và khả năng làm việc dựa vào hướng dẫn của giáo viên, tạo điều kiện chosinh viên nghiên cứu Khóa luận tốt nghiệp Kỹ sư sau này và là sự chuyển tiếp trongquá trình phấn đấu, học tập và rèn luyện của một sinh viên để trở thành một Kỹ sưCông nghệ thông tin Quá trình làm đồ án quá trình học tập, tích lũy và kiểm tra lạikiến thức đã học và đem những kiến thức đó áp dụng vào thực tế

Em xin chân thành cảm ơn thầy Nguyễn Thái Cường Thầy đã trực tiếp hướngdẫn nhóm em làm Bài Tập Lớn này Trong quá trình thực hiện Bài Tập Lớn, thầy đãtận tình định hướng, hướng dẫn và giúp đỡ nhóm em giải quyết các khó khăn trongquá trình thực hiện bài tập lớn

Lời cuối cùng, nhóm em xin chân thành cảm ơn thầy Chúc thầy và toàn thể giađình sức khỏe và thành đạt

Hà Nội, tháng 12 năm 2016.

Trang 7

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Hà Nội, ngày … tháng … năm 2016

Giáo viên hướng dẫn Thạc Sĩ: NGUYỄN THÁI CƯỜNG

Trang 8

LỜI NÓI ĐẦU

Sau khi kết thúc môn học “Phát triển phần mềm hướng cấu phần”, với vốn kiếnthức đã tích lũy được trong quá trình học và thực hành, nhóm em thực hiện đềtài :“Xây dựng chương trình quản lý điểm sinh viên theo hệ thống tín chỉ ”

Với sự hứng thú và đam mê môn học em không ngừng tìm tòi sáng tạo thêm cáimới, cái hay đưa vào đề tài của mình, và hoàn thiệt đề tài một cách tối ưu và tốt nhất

Đó cũng là những kinh nghiêm cho các thành viên trong nhóm, để vẫn dụng trongcuộc sống và rèn luyện bản thân cho ngày mai lập nghiệp

Nhóm em xin gửi lời cảm ơn đến thầy giáo Nguyễn Thái Cường, thầy đã tậntình chỉ bảo và có những bài giải hay để em hoàn thành tốt đề tài của mình Trong quátrình thực hiện đề tài không tránh khỏi việc vẫn có nhiều sai sót, khuyết điểm Vì thế

em hy vọng nhận được sự đánh giá và đóng góp nhiệt tình từ phía thầy cô và các bạn

để bài của nhóm em được hoàn thiện hơn

Nhóm 8 chúng em xin chân thành cảm ơn!

Trang 9

CHƯƠNG 1: GIỚI THIỆU SƠ BỘ VỀ ĐỀ TÀI

1 Tên đề tài

Xây dựng chương trình quản lý điểm sinh viên theo hệ thống tín chỉ

2 Lý do chọn đề tài

Hiện nay, ngành Công nghệ thông tin đã có những bước phát triển nhanh chóng

về ứng dụng của nó trong mọi lĩnh vực trong cuộc sống trên phạm vi toàn thế giới nóichung và việt nam nói riêng Công nghệ thông tin là một phần không thể thiếu củacuộc sống văn minh, góp phần đẩy mạnh công cuộc công nghiệp hóa hiện đại hóa đấtnước Việc ứng dụng những thành quả của khoa học công nghệ vào trong đời sống,trong công tác là hết sức thiết yếu Ứng dụng của công nghệ thông tin kết hợp vớitruyền thông hóa được xem là một trong những yếu tố mang tính quyết định trong hoạtđộng của công ty, các tổ chức… nó đóng vai trò quan trọng và không thể thiếu Côngnghệ thông tin và truyền thông hóa góp phần làm thay đổi suy nghĩ, lối mòn tư duycủa mỗi con người, nó giúp con người năng động hơn, kết nối nhanh hơn ở mọi lúcmọi nơi làm tăng mức độ hiệu quả, năng suất của công việc

Trước đây để có thể quản lý kết quản học tập của sinh viên phòng quản lý củanhà trường phải in rất nhiều học bạ, mất rất nhiều thời gian và chi phí chưa kể mộttrường đại học đông sinh viên như trường “Đại Học Công Nghiệp” Để phục vụ chonhu cầu quản lý tốt kết quả học tập của sinh viên vừa đáp ứng được yêu cầu của nhà

trường Nhóm 8 chúng em đã quyết định thực hiện đề tài: “Xây dựng chương trình

quản lý điểm theo hệ thống tín chỉ ”

3 Mục tiêu – mục đích

 Mục tiêu

 Xây dựng được bộ cơ sở dữ liệu chính xác, cập nhật, ổn định

 Giao diện chương trình: bắt mắt với người dùng, thiết kế đầy đủ 1

số chức năng:

- Quản lý lớp học

- Quản lý môn học

Trang 10

- Quản lý học kỳ

- Quản lý thông tin sinh viên

- Quản lý điểm cho sinh viên

Nội dung chính chia làm 3 chương:

 CHƯƠNG I : Giới thiệu sơ bộ về đề tài

 CHƯƠNG II: Cơ sở lý thuyết

 CHƯƠNG III: Phân tích thiết kế hệ thống

 CHƯƠNG IV: Thiết kế xây dựng hệ thống

Trang 11

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1.Mô tả bài toán

Một sinh viên khi mới vào trường sẽ được nhập thông tin cá nhân vào hệthống các thông tin gồm: Mã sinh viên, họ và tên, giới tính, ngày sinh, nơisinh và dân tộc

Vào đầu khóa học sinh viên sẽ được đăng ký các lớp học tại trang:

dttc.haui.edu.vn

Với mỗi lớp sẽ lưu trữ các thông tin về mã lớp và tên lớp

Tiêu chuẩn xếp loại học lực theo học kỳ và theo khóa học:

 Điểm trung bình trung tích lũy đạt dưới 2.0

Điểm trung bình trung tích lũy là điểm trung bình có trọng số của các họcphần đạt điểm A,B,C hoặc D mà sinh viên đã tích lũy được,tính từ đầu khóahọc cho tới thời điểm được xem xét vào kết thúc mỗi học kỳ

Sau mỗi học kỳ, sinh viên bị buộc thôi học nếu rơi vào một trong các trườnghợp sau:

a) Có điểm trung bình chung học kỳ đạt dưới 0,80 đối với học kỳ đầu của khóa học; đạt dưới 1,00 đối với các học kỳ tiếp theo hoặc đạt dưới 1,10 đối với 2học kỳ liên tiếp;

b) Có điểm trung bình chung tích lũy đạt dưới 1,20 đối với sinh viên nămthứ nhất; dưới 1,40 đối với sinh viên năm thứ hai; dưới 1,60 đối với sinhviên năm thứ ba hoặc dưới 1,80 đối với sinh viên các năm tiếp theo vàcuối khoá;

c) Vượt quá thời gian tối đa được phép học tại trường quy định tại khoản 3Điều 6 của Quy chế này;

Trang 12

d) Bị kỷ luật lần thứ hai vì lý do đi thi hộ hoặc nhờ người thi hộ theo quyđịnh tại khoản 2 Điều 29 của Quy chế này hoặc bị kỷ luật ở mức xoá tênkhỏi danh sách sinh viên của trường.

Trang 13

2.2.Các giải pháp công nghệ

2.2.1 .NET framework là gì ?

.NET Framework của Microsoft là một nền tảng lập trình tập hợp các thư viện

lập trình có thể được cài thêm hoặc đã có sẵn trong các hệ điều hành Windows

Nó cung cấp những giải pháp thiết yếu cho những yêu cầu thông thường của các chương trình điện toán như lập trình giao diện người dùng, truy cập dữ liệu,kết nối cơ sở dữ liệu, ứng dụng web, các giải thuật số học và giao tiếp mạng

Ngoài ra, NET Framework quản lý việc thực thi các chương trình được viết dựa trên NET Frameworkdo đó người dùng cần phải cài NET

Framework để có thể chạy các chương trình được viết trên nền NET.

Chẳng hạn, để thiết kế một trò chơi đua xe, nếu không có bộ Framework

chuyên dụng cho game, người lập trình game phải tự tạo ra: khung xe, bánh xe, người, đường đi, cây, biển báo rồi mới tính đến chuyện “lắp ghép” chúng lại với nhau để tạo ra không gian cho game; trong khi cũng với dạng trò chơi này, nhưng nếu dùng bộ Framework có sẵn đã được phát triển thì người lập trình viên chỉ cần viết các lệnh để lấy chúng ra từ Framework và ghép chúng lại.Không phải mọi ngôn ngữ lập trình đều khai thác được Framework, muốn sử dụng các “vật liệu” trong bộ Framework, đòi hỏi người lập trình viên phải dùng các ngôn ngữ lập trình có hỗ trợ công nghệ NET như VB.NET, C#.NET, ASP.NET

Framework có 2 thành phần chính là:

1 Common Language Runtime (CLR)

Trang 14

CLR là thành phần kết nối giữa các phần khác trong NET Framework với

hệ điều hành CLR là chương trình viết bằng NET, không được biên dịch

ra mã máy mà nó được dịch ra một ngôn ngữ trung gian Microsoft

Intermediate Language (MSIL) Khi chạy chương trình, CLR sẽ dịch MSIL

ra mã máy để thực thi các tính năng, đảm bảo ứng dụng không chiếm dụng

và sử dụng tràn lan tài nguyên của hệ thống Nó cũng không cho phép các lệnh nguy hiểm được thi hành Các chức năng này được thực thi bởi các

thành phần bên trong CLR như Class loader, Just In Time

compiler, Garbage collector, Exception handler, COM

marshaller, Security engine, …

Trong các phiên bản hệ điều hành Windows mới như XP.Net và Windows

2003, CLR được gắn kèm với hệ điều hành Điều này đảm bảo ứng dụng viết ra trên máy tính của bạn sẽ chạy trên các máy tính khác mà không cần cài đặt

Trang 15

NET Framework class library cung cấp thư viện lập trình như cho ứng dụng, cơ sở dữ liệu, dịch vụ web

Base class library – thư viện các lớp cơ sở

Đây là thư viện các lớp cơ bản nhất, được dùng trong khi lập trình hay bản

thân những người xây dựng NET Framework cũng phải dùng nó để xây

dựng các lớp cao hơn Ví dụ các lớp trong thư viện này

là String, Interger, Exception, …

ADO.NET và XLM

Bộ thư viện này gồm các lớp dùng để xử lý dữ liệu ADO.NET thay

thế ADO để trong việc thao tác với các dữ liệu thông thường Các lớp đối tượng XML được cung cấp để bạn xử lý các dữ liệu theo định dạng

mới : XML Các ví dụ cho bộ thư viện này

là SqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter,

ASP.NET

Ứng dụng Web xây dựng bằng ASP.NET tận dụng được toàn bộ khả năng của NET Framework Bên cạnh đó là một phong cách lập trình mới mà Microsoft đặt cho nó một tên gọi là code behind Đây là cách mà lập trình viên xây dựng các ứng dụng Windows based thường sử dụng – giao diện

và lệnh được tách tiêng Tuy nhiên, nếu bạn đã từng quen với việc lập trình ứng dụng web, đây là việc mà bạn giải phóng khỏi các lệnh HTML

Sự xuất hiện của ASP.NET làm cân xứng giữa quá trình xây dựng ứng dụng trên Windows và Web ASP.Net cung cấp một bộ các Server

Control để lập trình viên bắt sự kiện và xử lý dữ liệu của ứng dụng như

đang làm việc với ứng dụng của Windows Nó cũng cho phép bạn chuyển một ứng dụng trước đây viết chỉ chạy trên Windows thành một ứng dụng Web khá dễ dàng Ví dụ cho các lớp trong thư viện này

là WebControl, HTML Control, …

Trang 16

Web services

Web services là các dịch vụ được cung cấp qua Web (hay Internet) Dịch

vụ được coi là Web service không nhằm vào người dùng mà nhằm vào người xây dựng phần mềm Web services có thể dùng để cung cấp các dữ

liệu hay một chức năng tính toán

Trang 17

2.2.2 Kiến trúc NET Framework

.NET Framework bao gồm 2 phần chính là Common Language

Runtime (CLR) và Base Class Libraries (BCL), nhưng trên thực tế thì BCL bao gồm ASP.NET và Windows Forms, nên một số tài liệu đã giới thiệu NET Framework bao gồm ba phần là bộ thực thi ngôn ngữ chung (Common

Language Runtime), các lớp lập trình hợp nhất hay còn gọi là các thư viện lớp

cơ sở (Base Class Libraries) và một phiên bản cấu thành của Microsoft Active Server Pages gọi là Microsoftđ ASP.NET Một trong các thành phần này đều

có vai trò cực kỳ quan trọng trong việc phát triển các dịch vụ và các ứng

dụng NET

Common Language Runtime (gọi tắt là bộ thực thi) được xây dựng trên các

dịch vụ hệ điều hành Nó chịu trách nhiệm thực hiện các ứng dụng và đảm bảo các phần liên quan đến ứng dụng đều được đáp ứng như quản lí bộ nhớ, an ninhbảo mật, tích hợp ngôn ngữ v.v Bộ thực thi bao gồm nhiều dịch vụ hỗ trợ phát triển và triển khai ứng dụng cũng như cải thiện tính đáng tin cậy của ứng dụng Tuy vậy, những nhà phát triển trên thực tế không tương tác với CLR Họ sử dụng một tập các thư viện lớp cơ sở được xây dựng bên trên bộ thực thi này

thông qua các ngôn ngữ lập trình Như là một phần của các lớp cơ sở, NET Framework còn cung cấp một mô hình lập trình ứng dụng Web ASP.NET và

Windows Forms (để xây dựng các ứng dụng trên Windows)

Riêng ASP.NET cung cấp các thành phần và các dịch vụ ở mức cao hơn nhằm

mục đích phát triển các dịch vụ và các ứng dụng Web XML

Trang 18

Common Language Runtime

Như các bạn đã biết, các ngôn ngữ lập trình khác nhau đều cung cấp

một runtime (bộ thực thi) và NET Framework không phải là một ngoại lệ

Tuy vậy bạn sẽ thấy bộ runtime này là khá đặc biệt so với phần lớn

các runtime chúng ta vẫn sử dụng.

Common Language Runtime trong NET Framework quản lý sự thực hiện

mã và cung cấp sự truy cập vào nhiều loại dịch vụ giúp cho quá trình phát

triển được dễ dàng hơn CLR đã được phát triển ở tầm cao hơn so với các

runtime trước đây như VB-runtime chẳng hạn, bởi nó đạt được những khả nǎng như tích hợp các ngôn ngữ, bảo mật truy cập mã, quản lý thời gian sống của đối tượng và hỗ trợ gỡ lỗi

Trang 19

Mã được biên dịch và hướng tới CLR có tên "managed code" "Managed code" cung cấp siêu dữ liệu (metadata) cần thiết cho CLR để cung cấp các

dịch vụ hỗ trợ đa ngôn ngữ, bảo mật mã, quản lý thời gian sống của đối tượng

và quản lý bộ nhớ

Biên dịch mã quản lý (managed code)

.NET Framework đòi hỏi bạn phải sử dụng một trình biên dịch ngôn ngữ

"nhắm" vào CLR như trình biên dịch Visual Basic NET, C# NET, C+

+ NET hay JScript NET của Microsoft Chú ý rằng có nhiều trình biên dịch của đối tác thứ ba có trên thị trường như COBOL và Perl

Sau khi sử dụng một trong các trình biên dịch ngôn ngữ, mã của bạn được biên dịch sang Microsoft Intermediate Language (MSIL hay đơn giản

IL) IL là một tập các lệnh độc lập CPU có thể được chuyển đổi dễ dàng sang

"native code" Siêu dữ liệu cũng được chứa bên trong IL

IL độc lập với CPU có nghĩa mã IL không đáng tin cậy trên máy tính đặc thù

sinh ra nó Nói cách khác, nó có thể được chuyển từ một máy này sang một máy khác (miễn là máy tính hỗ trợ NET Framework) mà không gặp bất cứ khó khǎn nào Sau IL, mã mà bạn bắt đầu với nó sẽ được biên dịch bởi trình biên dịch JIT (Just-In-Time) tới mã máy hay "native code" IL chứa đựng mọi thứ cần thiết để làm điều này như nạp các chỉ lệnh và gọi các hàm (call

methods) và một số các thao tác khác

Trình biên dịch JIT

.NET Framework chứa đựng một hay nhiều trình biên dịch JIT có thể biên

dịch mã IL của bạn ra mã máy hay mã cho CPU cụ thể Điều đó được thực hiện khi ứng dụng chạy lần đầu tiên

Trang 20

Bạn hãy chú ý quá trình này khi bạn xây dựng trang ASP.NET đầu tiên của mình Sau khi bạn xây dựng một trang ASP.NET bất kỳ, bạn biên dịch trang này sang IL Khi sử dụng trình duyệt và gọi trang bằng cách gõ URL của nó

vào thanh địa chỉ, bạn chú ý một sự tạm dừng không đáng kể khoảng vài giây

Trên thực tế nó đang gọi mã IL và chuyển nó với một trình biên dịch JIT để

để biên dịch sang mã máy Điều đó chỉ xảy ra lần đầu khi một ai đó yêu cầu trang này Sau lần đầu, bạn có thể gõ F5 để "refresh" lại trạng này và trang được thực hiện ngay lập tức Trang đã được chuyển đổi sang mã máy và bây

giờ được lưu giữ trong bộ nhớ CLR biết rằng trình biên dịch JIT đã biên dịch

trang Chính vì thế, nó nhận được đầu ra của trang từ bộ nhớ Nếu về sau bạn

làm một sự thay đổi trang ASP.NET của bạn, hãy biên dịch lại, sau đó chạy trang lần nữa, CLR phát hiện ra có sự thay đổi file gốc Nó sử dụng trình biên dịch JIT một lần nữa để biên dịch mã IL sang mã máy.

Trình biên dịch JIT đảm bảo, trong quá trình biên dịch sang mã máy, mã được an toàn kiểu (type safe) Điều đó có nghĩa những đối tượng luôn tách rời

và chúng không cố ý làm hỏng một đối tượng khác

Các Assembly

Trong các ứng dụng bạn xây dựng bên trong NET Framework,

các assembly luôn đóng một vai trò quan trọng Các assembly có thể được hiểu như các khối hợp nhất (building block) của các ứng dụng của bạn Nếu thiếu một assembly liên quan, mã sẽ không thể biên dịch được từ IL Khi bạn đang sử dụng trình biên dịch để biên dịch mã từ mã được quản lý (managed code) sang mã máy, trình biên dịch JIT sẽ tìm kiếm mã IL được cất giữ trong một file PE cùng "assembly manifest" (bản kê khai assembly) có liên quan

Cứ mỗi lần bạn tạo một ứng dụng Web Form hay Windows Form trong NET, thực tế bạn đang tạo ra một assembly Cứ mỗi ứng dụng trong các ứng dụng này có chứa tối thiểu một assembly.

Trang 21

Trong Windows DNA, nơi các DLL và EXE là những "khối hợp nhất"

(building block) của các ứng dụng, trong NET, nó là assembly được sử dụng

như một cơ sở cho các ứng dụng

Trong Windows DNA và COM, có những trường hợp được tham chiếu đến như DLL hell Các thành phần COM nói chung được thiết kế để chỉ có một phiên bản của thành phần COM này trên một máy tính tại bất kỳ thời gian đã cho nào Bởi vì đặc tả COM không bao gồm cả thông tin phụ thuộc trong một định nghĩa kiểu của thành phần Với NET, điều đó bây giờ có thể có nhiều phiên bản của các component, hay các assembly, chạy trên cùng một server cạnh nhau Một ứng dụng sẽ luôn luôn tìm kiếm assembly xây dựng nó.

Khi một ứng dụng được bắt đầu trong NET, ứng dụng sẽ tìm kiếm

một assembly trong thư mục cài đặt Các assembly được lưu giữ trong một thư mục cài đặt được trỏ đến đến các private assembly Nếu ứng dụng không tìm ra assembly trong thư mục cài đặt, ứng dụng sẽ quay ra GAC (Global Assembly Cache) để tìm chúng.

Cấu trúc của một assembly:

Các assembly chứa mã được thực hiện bởi Common Language Runtime Cái được lớn nhất của assembly là chúng "tự mô tả" (self-describing) Tất cả những chi tiết về assembly được cất giữ bên trong bản thân assembly đó Trong Windows DNA, COM cất giữ tất cả dữ liệu "tự mô tả" của nó trong

nơi đăng ký (registry) của server, và như vậy việc cài đặt cũng như loại bỏ cácthành phần COM có nghĩa dừng hoạt động (shutting down) IIS Bởi vì một assembly NET cất giữ thông tin này bên trong bản thân nó, nó có thể thực hiện chức nǎng XCOPY Cài đặt một assembly cũng đơn giản như copy nó và điều đó là không cần thiết để dừng hay bắt đầu IIS trong nó đang hoạt động.Các assembly được tạo ra bởi các phần sau :

Bản kê khai assembly (Assembly manifest)

Kiểu siêu dữ liệu (Type metadata)

Trang 22

Mã MSIL (Microsoft Intermediate Language code)

Assembly manifest là nơi các chi tiết của assembly được cất giữ Còn assembly được cất giữ bên trong bản thân DLL hay EXE

Các assembly có thể là những file assembly đơn hay nhiều file, và bởi vậy assembly các assembly manifest được cất giữ trong assembly hay trong một file rời assembly manifest cũng cất giữ số phiên bản

của assembly để đảm bảo rằng ứng dụng luôn luôn được sử dụng đúng phiên bản Khi bạn có nhiều phiên bản của một assembly trên cùng một

máy tính, điều đó là rất quan trọng để gán nhãn chúng thật cẩn thận, như

vậy CLR biết được phiên bản nào đang được sử dụng.

Các số phiên bản trong các assembly được xây dựng theo các cách sau: Kiểu siêu dữ liệu (Type metadata) đã được hiểu như "dữ liệu về dữ

liệu" (data about data) Siêu dữ liệu này chứa thông tin trên những kiểu đượcđưa ra bởi assembly như thông tin cho phép bảo mật, thông tin về giao diện

và lớp và các thông tin về assembly khác

Garbage collection (gom rác)

NET Framework là một môi trường "gom rác" "Gom rác" là quá

trình của sự phát hiện khi các đối tượng không còn được sử dụng và tự động phá hủy các đối tượng này, như vậy bộ nhớ được giải phóng

"Gom rác" không phải là một khái niệm mới Nó đã được sử dụng trong các ngôn ngữ khác từ khá lâu rồi Trong thực tế, Java đã có một hệ thống "gom rác" đúng chỗ Các ngôn ngữ khác như C++ không có "gom rác" Những nhà phát triển C++ được yêu cầu rất cẩn thận khi hủy bỏ một đối tượng và giải phóng bộ nhớ Điều đó dẫn đến một số vấn đề thiếu hụt bộ nhớ Nếu nhà phát triển quên giải phóng các đối tượng từ ứng dụng, việc cấp phát bộ nhớ của ứng dụng ngày càng tǎng, đôi khi là rất đáng kể Việc giải phóng các đối tượng quá

Trang 23

Trong NET, bộ "gom rác" cho phép bạn khi làm việc mà không phải

theo dõi mã cho những đối tượng không cần thiết và phá hủy chúng bộ "gom rác" sẽ chú ý tất cả những điều này cho bạn "Gom rác" không xảy ra ngay lập tức, nhưng thay vào đó bộ "gom rác" thỉnh thoảng sẽ "vun đống" để xác định những đối tượng nào sẽ phải phá hủy Hệ thống mới này hoàn toàn miễn trách nhiệm cho người phát triển luôn phải tìm cách để sử dụng cũng như giải phóng

bộ nhớ

Với bộ "gom rác" mới này, bạn có thể điều khiển những khía cạnh nhất định của những hàm của nó, như nó làm việc "sau hậu trường" trong ứng dụng của bạn Trong SDK documentation, tìm lớp System.GC để có thêm thông tin

Base Class Libraries

Thư viện các lớp cơ sở NET Framework cung cấp một tập các lớp

("APIs"), hướng đối tượng, có thứ bậc và có thể mở rộng và chúng được sử dụng bởi bất cứ ngôn ngữ lập trình nào Như vậy, tất cả các ngôn ngữ từ Jscript cho tới C++ trở nên bình đẳng, và các nhà phát triển có thể tự do lựa chọn ngôn ngữ mà họ vẫn quen dùng

Tập các lớp, các kiểu giá trị và giao diện này được tổ chức bằng một hệ

thống các Namespace (xem định nghĩa phần dưới) Bảng 1 dưới đây đưa ra một

mô tả chi tiết những Namespace có sẵn trong NET Framework Một điều rất quan trọng là chúng ta không chỉ giới hạn ở các Namespace này Bạn có thể tự

tạo ra Namespace và sử dụng chúng trong ứng dụng của bạn hay cũng có thể sử

dụng các Namespace của đối tác thứ ba đang có đầy trên thị trường Một ví dụ

cho trường hợp này là Namespace System.Data.Oracle.

2.2.3 Ngôn ngữ C#

C# là một ngôn ngữ lập trình đơn giản, hiện đại, mục đích tổng quát, hướng đốitượng được phát triển bởi Microsoft và được phê chuẩn bởi European ComputerManufacturers Association (ECMA) và International Standards Organization (ISO)

Trang 24

C# được phát triển bởi Anders Hejlsberg và team của ông trong khi pháttriển Net Framework.

C# được thiết kế cho Common Language Infrastructure (CLI), mà gồmExecutable Code và Runtime Environment, cho phép chúng ta sử dụng các ngôn ngữhigh-level đa dạng trên các nền tảng và cấu trúc máy tính khác nhau

Dưới đây là các lý do làm C# là ngôn ngữ lập trình chuyên nghiệp được sử dụng rộngrãi:

 Nó là một ngôn ngữ lập trình hiện đại, mục đích tổng quát

 Nó là hướng đối tượng

 Nó dễ dàng để học

 Nó là một ngôn ngữ được cấu trúc

 Nó tạo các chương trình hiệu quả

 Nó có thể được biên dịch trên nhiều nền tảng máy tính khác nhau

 Nó là một phần của Net Framework

Dưới đây là các đặc điểm quan trọng của C#:

 Điều kiện Boolean

 Tự động dọn rác bởi Garbage-Collector (GC)

 Thư viện chuẩn (Standard Library)

 Assembly

 Property và sự kiện (Event)

 Delegate Quản lý sự kiện

 Dễ dàng để sử dụng Generic

Trang 25

 Đa luồng dễ dàng (Multithreading)

 LINQ và Lambda Expression

 Tích hợp với Windows

2.2.4 Microsoft SQL server 2008

SQL Server 2008 là một hệ quản trị cơ sở dữ liệu (Relational Database

Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQL Server computer 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 2008 đượ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 chohàng ngàn user SQL Server 2008 có thể hoạt động kết hợp tốt với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server SQL Server 2008 được cấu tạo bởi nhiều thành phần như Relational Database Engine, Analysis Service và English Query 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ộtcách dễ dàng

2.2.5 Linq to SQL

 Với SQLExpress để truy vấn dữ liệu ta phải dùng đến các câu lệnh - Query kháphức tạp Hơn nữa để sử dụng trong ứng dụng C# lại thêm 1 tầng phức tạp nữa

với các câu lệnh: dùng ConnectionStringkhởi tạo kết nối tới DataBase, tự khai

báo các biến để chạy 1 lệnh - command, rồi còn phải tính toán đầu ra của câulệnh Thật là quá phức tạp nếu như ta có 1 chương trình "khủng"

 Vậy làm sao để giải quyết vấn đề này?

Framework có tên gọi là LINQ(Language Integrated Query), đây là thư viện mở

rộng cho các ngôn ngữ lập trình C# và Visual Basic.NET (có thể mở rộng cho các

Trang 26

ngôn ngữ khác) cung cấp khả năng truy vấn trực tiếp dữ liệu Object, CSDL và XML.

LINQ là một tập hợp các thành phần mở rộng cho phép viết các câu truy vấn dữliệu ngay trong một ngôn ngữ lập trình, như C# hoặc VB.NET Khi tạo một đối tượng LINQ thì Visual Studio sẽ tự động sinh ra các lớp có các thành phần tương ứng với CSDL của chúng ta Khi muốn truy vấn, làm việc với CSDL ta chỉ việc gọi

và truy xuất các hàm, thủ tục tương ứng của LINQ mà không cần quan tâm đến cáccâu lệnh SQL thông thường

Tóm lại LINQ ra đời để giảm công sức cho những quá trình đơn giản và

“chung chung” trước đây

Điểm mạnh (chưa chắc về độ mạnh, nhưng hay) của LINQ là “viết truy vấn cho rất nhiều các đối tượng dữ liệu” Từ CSDL, XML Data Object … thậm chí là viết truy vấn cho một biến mảng đã tạo ra trước đó Vì vậy mới có các khái niệm LinQ to SQL, LinQ to XML, …

Tuy nhiên so với mô hình Entity (Entity Framework), LINQ có yếu điểm là chậm và thiếu nhất quán (hiện đại tất phải hại điện)

LINQ có từ bản NET 3.5, vậy nên tối thiểu chương trình của bạn phải chạy trên nền tảng này

Visual Studio 2008, hoặc các phiên bản Express của nó là các bộ công cụphát triển tiêu biểu cho ứng dụng dùng LINQ

1.

2.3.Giới thiệu về COP

2.3.1 Kiến trúc của hướng cấu phần

Nền tảng phát triển phần mềm là hướng thành phần

Phát triển phầm mềm hướng cấu phần COP Component-Oriented

Programming là quy trình xây dựng phần mềm từ những khối có sẵn và tái xử dụng,

giúp phần mềm giảm bớt độ phức tạp, và kích thước của phần mềm

Đặc tính của phát triển phầm mềm hướng thành phần

 Là cho phép chương trình được xây dựng từ các thành phần phần mềm xây dựng sẵn, trong đó có thể tái sử dụng , các khối độc lập với nhau

 Các thành phần phải được xác định trường theo tiêu chuẩn bao gồm: giao diện, kết nối, phiên bản và triển khai

Trang 27

 COP phát triển phần mêm theo hướng lấp ráp các thành phần, COP nhấnmạnh vào các giao diện và thành phần.

COP là một loại lập trình giao diện dựa trên khách hàng

Trang 28

CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH QUẢN

LÝ ĐIỂM THEO TÍN CHỈ

3.1.Xác định yêu cầu của chương trình

Chương trình cần đạt đạt được những yêu cầu sau:

 Giao diện thân thiện dễ sử dụng

 Nhập thông tin sinh viên khi mới vào khoa

 Phân lớp sinh viên vào đầu khóa học

 Nhập điểm cho sinh viên

 Tính điểm trung bình môn, trung bình học kỳ và trung bình trung tích lũy theo hệ thống tín chỉ hiện nay

 Thống kê danh sách sinh viên theo từng môn học,từng lớp học

 Tìm kiếm sinh viên

 Xếp loại tốt nghiệp cho từng sinh viên

3.2.Tác nhân của hệ thống

Giáo viên

Là những người có tài khoản trong cơ sở

dữ liệu và tham gia vào việc thiết lậpthông tin và cập nhật điểm cho sinh viên

Trang 29

 Quản lý thông tin sinh viên

 Quản lý điểm sinh viên

Quản trị hệ thống

Đăng nhậpTìm kiếm sinh viênQuản lý lớp họcQuản lý môn họcQuản lý thông tin sinh viênQuản lý điểm sinh viênQuản lý học kỳ

Quản lý hệ thống

Bảng 3.2: Các ca sử dụng của hệ thống

Trang 30

3.4 Biểu đồ ca sử dụng

3.4.1 Biểu đồ ca sử dụng chính

Hình 3.1: Biểu đồ ca sử dụng chính

Trang 31

3.4.2 Biểu đồ ca sử dụng giáo viên

Hình 3.2: Biểu đồ ca sử dụng giáo viên

Ngày đăng: 13/12/2016, 18:20

HÌNH ẢNH LIÊN QUAN

Bảng 3.2: Các ca sử dụng của hệ thống - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Bảng 3.2 Các ca sử dụng của hệ thống (Trang 29)
Hình 3.1: Biểu đồ ca sử dụng chính - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.1 Biểu đồ ca sử dụng chính (Trang 30)
Hình 3.2: Biểu đồ ca sử dụng giáo viên - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.2 Biểu đồ ca sử dụng giáo viên (Trang 31)
Hình 3.3: Biểu đồ ca sử dụng quản trị hệ thống - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.3 Biểu đồ ca sử dụng quản trị hệ thống (Trang 32)
Hình 3.4.2: Biểu đồ lớp tham gia ca sử dụng Đăng nhập - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.4.2 Biểu đồ lớp tham gia ca sử dụng Đăng nhập (Trang 34)
Hình 3.5.1: Biểu đồ hoạt động của ca sử dụng sửa điểm - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.5.1 Biểu đồ hoạt động của ca sử dụng sửa điểm (Trang 36)
Hình 3.6.1: Biểu đồ hoạt động của ca sử dụng quản lý sản phẩm - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 3.6.1 Biểu đồ hoạt động của ca sử dụng quản lý sản phẩm (Trang 37)
Bảng 3.6.1: Bảng CSDL DangNhap - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Bảng 3.6.1 Bảng CSDL DangNhap (Trang 48)
3.6.5. Bảng cơ sở dữ liệu - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
3.6.5. Bảng cơ sở dữ liệu (Trang 48)
Bảng 3.6.2: Bảng CSDL DiemHP - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Bảng 3.6.2 Bảng CSDL DiemHP (Trang 49)
Hình 4.1: Sơ đồ kiến trúc tổng quát - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 4.1 Sơ đồ kiến trúc tổng quát (Trang 53)
Hình 4.2: Module đăng nhập - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 4.2 Module đăng nhập (Trang 55)
Hình 4.4: Giao diện chính của chương trình - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 4.4 Giao diện chính của chương trình (Trang 58)
Hình 4.6: Giao diện quản lý học kỳ, môn học phần - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 4.6 Giao diện quản lý học kỳ, môn học phần (Trang 59)
Hình 4.7: Giao diện bảng điểm chi tiết của sinh viên - Bài Tập Lớn Phát triển phần mềm hướng cấu phần
Hình 4.7 Giao diện bảng điểm chi tiết của sinh viên (Trang 60)

TỪ KHÓA LIÊN QUAN

w