NHẬP MÔN CÔNG NGHỆ PHẦN MỀM

Một phần của tài liệu Bài Giảng Nhập Môn Công Nghệ Phần Mềm Full (Trang 27 - 80)

Giảng viên: Đỗ Thị Thanh Tuyền Email: dothithanhtuyen@gmail.com

Nội dung môn học

n Tổng quan về Công nghệ phần mềm

n Xác định và mô hình hóa yêu cầu phần mềm n Thiết kế phần mềm

n Cài đặt phần mềm n Kiểm thử và bảo trì n Đồ án môn học

Yêu cầu phần mềm

n Khái niệm: Yêu cầu phần mềm là các công việc, các nghiệp vụ được hỗ trợ thực hiện trên máy tính với phần mềm.

n Ví dụ: Các yêu cầu của Phần mềm Quản lý cửa hàng:

ü Nhập hàng mới

ü Lập hóa đơn bán hàng ü Tra cứu hàng hóa

ü Lập báo cáo doanh thu trong tháng ü Lập báo cáo tồn kho trong tháng

Phân loại yêu cầu Phần mềm

n Yêu cầu nghiệp vụ:

ỉ Lưu trữ ỉ Tra cứu ỉ Tớnh toỏn ỉ Kết xuất

=> Đảm bo tính đúng đắn.

n Yêu cầu hệ thống:

ỉ Tớnh bảo mật ỉ Tớnh an toàn

Phân loại yêu cầu Phần mềm (tt)

n Yêu cầu chất lượng:

ỉ Tớnh tiến húa ỉ Tớnh tiện dụng ỉ Tớnh hiệu quả ỉ Tớnh tương thớch

Xác định yêu cầu và mô hình hóa yêu cầu

n Mục tiêu: Xác định các yêu cầu phần mềm và cách thức thực hiện chúng trong thế giới thực.

n Kết quả:

- Danh sách các yêu cầu phần mềm;

- Sơ đồ luồng dữ liệu cho từng yêu cầu phần mềm.

Các bước thực hiện Khảo sát

hiện trạng

Lập danh sách các yêu cầu phần mềm

Lập sơ đồ luồng dữ liệu

Khảo sát hiện trạng

Mục tiêu của Khảo sát hiện trạng là tìm hiểu về thế giới thực liên quan đến phần mềm.

Phần mềm Thế giới thực

Các hiện trạng cần khảo sát

ð  Hiện trạng nghiệp vụ ð  Hiện trạng tổ chức ð  Hiện trạng tin học

Cách thức thực hiện

ü  Phỏng vấn ü  Quan sát

ü  Dùng bảng câu hỏi

ü  Thu thập thông tin, tài liệu

Hiện trạng nghiệp vụ

n Lập danh sách các nghiệp vụ của từng bộ phận.

n Mô tả nghiệp vụ:

-  Tên công việc;

-  Biểu mẫu liên quan;

-  Qui định liên quan;

-  Người thực hiện;

-  Tần suất thực hiện;

-  Thời điểm thực hiện;

Hiện trạng tổ chức

n Sơ đồ tổ chức của các phòng ban, bộ phận.

n Chú trọng các bộ phận có giao tiếp đối tác bên ngoài.

Hiện trạng tin học

n Hệ thống phần cứng;

n Hệ thống phần mềm;

n Con người.

Lập danh sách các yêu cầu phần mềm

Yêu cầu Nghiệp vụ

Yêu cầu Chất lượng

Yêu cầu Hệ thống

Lập Sơ đồ luồng dữ liệu

n Khái niệm: Sơ đồ luồng dữ liệu (DFD-Data Flow Diagram) là sơ đồ biểu thị các thông tin liên quan đến việc thực hiện các nghiệp vụ trong thế giới thực bên trong máy tính.

n Mục tiêu: Mô hình hóa thế giới thực với các yêu cầu đã xác định.

n Kết quả:

-  Sơ đồ luồng dữ liệu của từng công việc;

-  Sơ đồ phối hợp giữa các công việc.

Danh sách các ký hiệu

Tên

Tên Tên

Tên Tên

Tên Tên

Tên

Người dùng/Thiết bị Khối xử lý

Luồng dữ liệu

Bộ nhớ phụ

Sơ đồ luồng dữ liệu tổng quát

Tên Tên

Thiết bị nhập Thiết bị xuất

Tên

D1 D6

D3 D4

D2 D5

n D1: Thông tin xuất phát từ người dùng

n D2: Thông tin xuất phát từ thiết bị nhập khác chuẩn

n D3: Thông tin xuất phát từ bộ nhớ phụ n D4: Thông tin ghi xuống bộ nhớ phụ

n D5: Thông tin đưa ra thiết bị xuất khác chuẩn

n D6: Thông tin trả về cho người dùng

***D (Data): là thông tin, không phải hành động.

Sơ đồ luồng dữ liệu tổng quát (tt)

Ví dụ

Lập thẻ Độc giả Thủ thư

Tb nhập Tb xuất

D1 D6

D3 D4

D2 D5

Sơ đồ luồng dữ liệu cho yêu cầu Lp th Độc gi trong đề tài Qun lý Thư vin:

Biểu mẫu và qui định liên quan:

n D1: Thông tin về Thẻ độc giả (Họ tên, Loại độc giả, Ngày sinh, Địa chỉ, Email, Ngày lập thẻ).

n D2: Không có

n D3: Danh sách các Loại độc giả, thời hạn thẻ, tuổi tối đa, tuổi tối thiểu.

n D4: D1 + Ngày hết hạn n D5: D4

n B1: Nhận D1 từ người dùng n B2: Kết nối cơ sở dữ liệu

n B3: Đọc D3 từ bộ nhớ phụ n B4: Kiểm tra Loại độc giả n B5: Tính tuổi độc giả

n B6: Kiểm tra qui định tuổi độc giả

Thuật toán

n B7: Nếu không thỏa qui định -> B11 n B8: Tính ngày hết hạn của thẻ

n B9: Lưu D4 xuống bộ nhớ phụ n B10: Xuất D5 ra máy in

n B11: Đóng kết nối cơ sở dữ liệu n B12: Kết thúc

Thuật toán (tt)

Q & A

NHẬP MÔN

CÔNG NGHỆ PHẦN MỀM

Giảng viên: Đỗ Thị Thanh Tuyền Email: dothithanhtuyen@gmail.com

Nội dung môn học

n Tổng quan về Công nghệ phần mềm

n Xác định và mô hình hóa yêu cầu phần mềm n Thiết kế phần mềm

n Cài đặt phần mềm n Kiểm thử và bảo trì n Đồ án môn học

Thiết kế phần mềm

n Thiết kế hệ thống n Thiết kế đối tượng n Thiết kế dữ liệu n Thiết kế giao diện

Thiết kế Hệ thống

n Kiến trúc hệ thống

n Các mô hình kiến trúc

Kiến trúc hệ thống

n Khái niệm:

Hệ thống được cấu tạo bởi các thành phần nào và mối liên hệ giữa các thành phần đó .

n Tầm quan trọng của kiến trúc:

ỉ  Ảnh hưởng hiệu quả hoạt động và an toàn hệ thống:

- Tốc độ xử lý - Tính chịu lỗi - Tính bảo mật

ỉ  Ảnh hưởng chi phớ triển khai, vận hành và bảo trỡ hệ thống.

Thiết kế kiến trúc

Các bước thực hiện:

- Phân rã hệ thống -> xác định các thành phần;

- Bố trí các thành phần;

- Thiết lập mối quan hệ giữa chúng.

Các mô hình kiến trúc

n Mô hình đơn lập.

n Mô hình phân tán:

ỉ  Mụ hỡnh Client-Server ỉ  Mụ hỡnh 3-Tiers

ỉ  Mụ hỡnh Peer-To-Peer

Các mô hình kiến trúc (tt)

n Mô hình đơn lập:

ỉ  Đặc điểm:

- Là một thể thống nhất.

- Các thành phần tự do tương tác.

ỉ  Ưu đim:

- Dễ lập trình và triển khai.

- Tốc độ xử lý.

ỉ  Khuyết đim:

- Khó bảo trì, nâng cấp.

Các mô hình kiến trúc (tt)

n  Mô hình Client-Server:

ỉ  Đặc điểm:

- Phân làm hai phân hệ Client và Server.

- Server cung cấp dịch vụ, Client sử dụng dịch vụ.

- Client gửi các yêu cầu đến Server.

ỉ  Ưu đim:

- Chia sẻ dữ liệu và đồng bộ.

- Dễ bảo trì, nâng cấp.

ỉ  Khuyết đim:

Các mô hình kiến trúc (tt)

n Mô hình Client-Server (tt) ỉ  Mụ hỡnh Thin-Client:

- Server = Dữ liệu + Xử lý - Client = Giao diện

ỉ  Mụ hỡnh Fat-Client:

- Server = Dữ liệu

- Client = Xử lý + Giao diện

Ví dụ Mô hình Client-Server

Các mô hình kiến trúc (tt)

n Mô hình 3-Tiers:

ỉ  Đặc điểm: phõn làm 3 phõn hệ - Data layer:

+ Dịch vụ dữ liệu + Data server

- Business layer:

+ Thư viện xử lý + Application server - Presentation layer:

Các mô hình kiến trúc (tt)

n Mô hình 3-Tiers (tt) ỉ  Đặc điểm (tt)

-  Tương tác theo quy tắc “Thang máy”: không tương tác vượt tầng.

ỉ  Ưu khuyết đim: tương tự mụ hỡnh Client-Server.

*** X lý được chia nh và dùng chung.

n Mô hình đa tầng:

-  Mở rộng mô hình 3-Tiers -  Phân làm nhiều tầng xử lý.

Ví dụ Mô hình 3-Tiers

Các mô hình kiến trúc (tt)

n Mô hình Peer-to-Peer:

ỉ  Đặc điểm:

- Là mô hình phân tán, triển khai trên nhiều máy (nút).

- Các nút tương tác được với nhau, mỗi nút đóng vai Client – Server.

- Chia sẻ dữ liệu và xử lý.

ỉ  Ưu đim:

- Dễ triển khai, không cần server trung tâm.

- Không gian lưu trữ và khả năng xử lý dàn trải.

Thiết kế Đối tượng

n Đối tượng

n Phân loại đối tượng

n Các bước thiết kế đối tượng

Đối tượng

n Đối tượng = Dữ liệu + Xử lý Dữ liệu ó Thuộc tính Xử lý ó Phương thức

n Đối tượng là thể hiện cụ thể của lớp đối tượng.

Phân loại đối tượng

n Đối tượng nghiệp vụ: business/domain object Dữ liệu + xử lý nghiệp vụ

n Đối tượng hệ thống: system object Dữ liệu + xử lý hỗ trợ

n Đối tượng giao diện người dùng: UI object Dữ liệu + xử lý tương tác người dùng

Các bước thiết kế đối tượng

n Xây dựng kịch bản tương tác ban đầu.

n Xác định đối tượng dựa trên các tương tác của kịch bản ban đầu.

n Chi tiết hoá kịch bản ban đầu có sự tham gia của các đối tượng đã xác định:

ỉ  Phõn tớch cỏc tương tỏc thành cỏc xử lý.

ỉ  Đối tượng nhận xử lý sẽ chứa cỏc phương thức tương ứng với các xử lý này.

Ví dụ

Ví dụ (tt)

Ví dụ (tt)

Q & A

NHẬP MÔN

CÔNG NGHỆ PHẦN MỀM

Giảng viên: Đỗ Thị Thanh Tuyền Email: dothithanhtuyen@gmail.com

Nội dung môn học

n Tổng quan về Công nghệ phần mềm

n Xác định và mô hình hóa yêu cầu phần mềm n Thiết kế phần mềm: - Thiết kế DỮ LIỆU n Cài đặt phần mềm

n Kiểm thử và bảo trì n Đồ án môn học

Thiết kế dữ liệu

n  Mục tiêu của việc thiết kế dữ liệu là nhằm mô tả cách thức tổ chức lưu trữ dữ liệu của phần mềm bên trong máy tính.

n  Kết quả của quá trình thiết kế dữ liệu là xây dựng được sơ đồ Logic.

n  Khi thiết kế dữ liệu, ta quan tâm đến ba vấn đề sau:

ỉ  Thiết kế dữ liệu với tớnh đỳng đắn ỉ  Thiết kế dữ liệu với tớnh tiến húa

ỉ  Thiết kế dữ liệu với yờu cầu hiệu quả về mặt truy suất và

Tên Table

Sơ đồ Logic

n  Bao gồm các bảng dữ liệu và mối quan hệ giữa chúng.

n  Các ký hiệu:

Bảng dữ liệu Liên kết

A

Sơ đồ Logic (tt)

n  Các ký hiệu (tt):

ð  Một phần tử của bảng A xác định duy nhất một phần tử của bảng B

ð  Ngược lại, một phần tử của bảng B có thể tương ứng với một hoặc nhiều phần tử của bảng A

ð  Bảng A chứa thuộc tính khóa của bảng B (là khóa ngoại của bảng A và là khóa chính của bảng B).

B

Sơ đồ Logic (tt)

ð  Nếu quan hệ giữa A và B là quan hệ 1-1 thì có thể gộp hai table A và B lại thành 1 table duy nhất chứa tất cả thuộc tính của A và B.

Quan h 1-n không làm được vic này.

ð  Nếu quan hệ giữa A và B là quan hệ n-n:

Tách quan hệ này thành 2 quan hệ 1-n bằng cách thêm vào 1 table trung gian chứa khóa chính của

Ví dụ Quan hệ n-n

Một phần của tài liệu Bài Giảng Nhập Môn Công Nghệ Phần Mềm Full (Trang 27 - 80)

Tải bản đầy đủ (PDF)

(155 trang)