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

thực hành về triển khai hệ thống

7 8 0

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

THÔNG TIN TÀI LIỆU

Nội dung

thẻ thư viện theo lớp, thông tin về thẻ thư viện gồm (Mã độc giả, họ tên, lớp, ngày sinh, giới tính), khi đó thủ thư thực hiện nhập thông tin về thẻ thư viện vào hệ thống và in thẻ thư[r]

(1)

Bài tập thực hành 06:

THỰC HÀNH VỀ TRIỂN KHAI HỆ THỐNG

Mục tiêu

 Ánh xạ tài liệu phân tích thiết kế thành triển khai hệ thống

 Ánh xạ thành phần thành gói hệ thống

 Ánh xạ Node thành subSystem

 Cài đặt lớp xử lý thực UC hệ thống, dựa vào biểu đồ lớp

thiết kế cho UC, biểu đồ tuần tự, biểu đồ triển khai

Bài tập 1: Mô tả chức yêu cầu HỆ THỐNG QUẢN LÝ THƯ VIỆN Xây dựng hệ thống quản lý thư viện cho trường Đại học gồm hoạt động quản lý thông tin sách, quản lý thông tin độc giả, quản lý hoạt động mượn trả sách:

 Sinh Viên trường muốn mượn sách thư viện trước tiên phải đăng ký làm

thẻ thư viện theo lớp, thông tin thẻ thư viện gồm (Mã độc giả, họ tên, lớp, ngày sinh, giới tính), thủ thư thực nhập thông tin thẻ thư viện vào hệ thống in thẻ thư viện giao cho sinh viên, thông tin thẻ thư viện có sai sót hệ thống cho phép thủ thư sửa, độc giả bị loại bỏ khỏi thư viện hệ thống cho phép xóa thẻ thư viện

 Các sách thư viện quản lý thông tin theo đầu sách, đầu sách

trong thư viện có nhiều khác Thông tin đầu sách gồm (Mã đầu sách, tên đầu sách, nhà xuất bản, số trang, kích thước, tác giả, số lượng sách), thông tin đầu sách gồm (mã đầu, mã sách, tình trạng, ngaynhap) Khi thư viện nhập sách thủ thư có nhiệm vụ nhập thơng tin sách vào thư viện, thơng tin sách có thay đổi loại bỏ khỏi thư viện, thủ thư thực sửa thơng tin sách xóa sách

 Thư viện quản lý đầu sách theo chuyên ngành, đầu sách phân thành

các chuyên ngành khác Thông tin chuyên ngành gồm (Mã chuyên ngành, tên chuyên ngành, mô tả)

 Mỗi độc giả lần mượn mượn sách, độc giả muốn

(2)

 Khi độc giả trả sách thủ thư thực chức trả sách để ghi nhận tình trạng trả sách cho phiếu mượn

 Định kỳ thủ thư phải làm báo cáo thống kê gửi lên lãnh đạo thư viện báo cáo

gồm: Thông tin đầu sách cho mượn nhiều nhất, thông tin độc giả chưa trả sách

 Để quản lý người dùng hệ thống, thư viện có nhân viên đóng người quản trị

vai trị làm Nhân viên có quyền quản lý thơng tin người dùng hệ thống Khi có nhân viên thư viện người quản trị cập nhật thông tin thủ thư vào hệ thống, tạo tài khoản cấp quyền cho nhân viên thư viện Khi thông tin nhân viên thư viện có sai sót loại bỏ khỏi hệ thống người quản trị sửa xóa thơng tin nhân viên thư viện khỏi hệ thống

 Người dùng hệ thống phải đăng nhập trước thực

Yêu cầu: Sử dụng ngôn ngữ lập trình C# viết mã lệnh triển khai cho UC QuanLySach Hướng dẫn thực hiện:

Phân tích:

 Sau phân tích xong UC phân rã UC QuanLySach, gộp tất lớp

của UC phân rã vào biểu đồ

 Căn vào biểu đồ triển khai, xây dựng lớp gói bị phụ thuộc trước

 Với lớp khai báo đối tượng sử dụng, xây dựng phương thức

 Xây dựng mã lệnh dựa vào biểu đồ biểu đồ hoạt động UC, phương

thức

(3)

Chúng ta thấy lớp Entity ánh xạ thành lớp tương tác với DataBase thực hành động tương tác với sở liệu

Do tất lớp tương tác với DataBase thực thi thao tác kết nối, thêm, sửa, xóa với sở liệu nên nghiệp vụ tách thành lớp Cls_Data chuyên thực thao tác với CSDl Và lớp đảm nhận thực thao tác liệu gọi phương thức lớp

Như mã lệnh ứng dụng để thực UC QuanLySach UC phân rã Thêm đầu sách sau:

a) Lớp DataHelper: Được dùng chung, gồm phương thức chung thao tác với Database

Namespace QuanLyThuVien.DataAccess {

class DataHelper {

DataSet DS = new DataSet(); static string ChuoiKetNoi; SqlConnection con;

public DataHelper(string SeverName, string DataName,

string UserName, string Pw) {

ChuoiKetNoi = "server=" + SeverName + "; database=" + DataName + "; Uid= " + UserName + "; pwd=" + Pw; con = new SqlConnection(ChuoiKetNoi);

}

public DataHelper(string chuoiketnoi) {

ChuoiKetNoi = chuoiketnoi;

con = new SqlConnection(chuoiketnoi); }

public DataHelper() { }

public DataHelper(string SeverName, string DataName) {

ChuoiKetNoi = "server=" + SeverName + "; database=" + DataName + ";Integrated security=SSPI"; //"data source= " + SeverName + "; Initial Catalog=" + DataName + "; Integrated security=SSPI";

(4)

public DataTable FillDataTable(string strSQL) {

SqlDataAdapter DA = new SqlDataAdapter(strSQL,

ChuoiKetNoi); DataTable dt = new DataTable();

DA.Fill(dt); return dt; }

/// <summary>

/// Dùng để cập nhật liệu từ bảng DataSet lên Cơ sở liệu /// </summary>

/// <param name="tenbang1"> Bảng sở liệu</param> /// <param name="tenbang2"> Bảng DataSet</param>

public void UpdateFromDataTableToDataBase(string tenBangDB, DataTable dt) {

//try //{

SqlDataAdapter da = new SqlDataAdapter("Select * from " + tenBangDB, ChuoiKetNoi);

SqlCommandBuilder cb = new SqlCommandBuilder(da); da.Update(dt);

//}

//catch (Exception ex) //{

// throw new Exception(ex.Message); //}

}

public void InsertRowtable(DataTable dt, params object[] Value) {

// Tạo dịng có cấu trúc giống bảng DataRow dr = dt.NewRow();

try {

for (int i = 0; i < Value.Length; i++) {

dr[i] = Value[i]; // Gán giá trị cho trường }

}

(5)

}

dt.Rows.Add(dr); }

/// <summary>

/// Sử dụng để xóa dịng bảng DataSet /// </summary>

/// <param name="TableName">Tên bảng</param>

/// <param name="dieukien">Điều kiện dịng cần xóa</param> public Boolean DeleteRowTable(DataTable dt, string dieukien)

{

try {

DataView dv = new DataView(dt); dv.RowFilter = dieukien;

dv.AllowDelete = true; int i = 0;

bool kt = false;

while (i < dv.ToTable().Rows.Count) {

dv[i].Delete(); // Tại tăng số i kt = true;

}

return kt; }

catch (Exception ex) {

throw new Exception(ex.Message); }

}

public void UpdateRowTable(DataTable dt, string dieukien, params object[]

field_GiaTri) {

DataView dv = new DataView(dt); dv.RowFilter = dieukien;

for (int i = 0; i < dv.ToTable().Rows.Count; i++) {

for (int j = 0; j < field_GiaTri.Length; j += 2) {

dv[i][field_GiaTri[j].ToString()] = field_GiaTri[j + 1]; }

(6)

} }

}

b) Cài đặt lớp ChuyenNganh

namespace QuanLyThuVien.DataAccess {

class ChuyenNganhDL {

DataTable ChuyenNganh;

DataHelper dt = new DataAccess.DataHelper(); public DataTable LayChuyenNganh()

{

ChuyenNganh = dt.FillDataTable("Select * from ChuyenNganh"); ChuyenNganh;

} }

}

c) Cài đặt lớp Ctr_QuanLySach

namespace QuanLyThuVien.Bussiness {

class Ctr_QuanLySach {

ChuyenNganhDL cn = new DataAccess.ChuyenNganhDL(); public DataTable LayChuyenNganh()

{

return cn.LayChuyenNganh(); }

} }

d) Cài đặt lớp Frm_QuanlySach

namespace QuanLyThuVien.Bound {

public partial class frmQuanLySach : Form {

Ctr_QuanLySach ql = new Ctr_QuanLySach(); public frmQuanLySach()

(7)

}

private void frmQuanLySach_Load(object sender, EventArgs e) {

cboChuyenNganh.DataSource = ql.LayChuyenNganh(); cboChuyenNganh.DisplayMember = "TenChuyenNganh"; cboChuyenNganh.ValueMember = "ChuyenNganhID"; dataGridView1.DataSource =

ql.LayDauSach(cboChuyenNganh.SelectedValue.ToString()); }

} }

Bài tập tự làm

1. Hoàn thiện mã lệnh cho lớp DauSachDL, SachDL

2. Hoàn thiện mã lệnh lớp Ctr_QuanLySach, Frm_QuanLySach

3. Hoàn thành mã lệnh cho UC khác

Ngày đăng: 04/04/2021, 07:04

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w