23
NHP MÔN CÔNG NGHPHN MM Ging viên: Đỗ ThThanh Tuyn Email: [email protected]

NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

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

Giảng viên: Đỗ Thị Thanh Tuyền Email: [email protected]

Page 2: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

2 Nhập môn Công nghệ Phần mềm January 15

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

Page 3: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

3 Nhập môn Công nghệ Phần mềm January 15

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

Page 4: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

4 Nhập môn Công nghệ Phần mềm January 15

Thiết kế Hệ thống

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

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

Page 5: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

5 Nhập môn Công nghệ Phần mềm January 15

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.

Ø  Ảnh hưởng trực tiếp đến giai đoạn thiết kế.

Page 6: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

6 Nhập môn Công nghệ Phần mềm January 15

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.

Page 7: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

7 Nhập môn Công nghệ Phần mềm January 15

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

Page 8: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

8 Nhập môn Công nghệ Phần mềm January 15

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 điểm:

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

- Tốc độ xử lý.

Ø  Khuyết điểm:

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

- Không chia sẻ dữ liệu.

Page 9: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

9 Nhập môn Công nghệ Phần mềm January 15

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 điểm:

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

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

Ø  Khuyết điểm:

- Tốc độ xử lý.

- Chi phí triển khai.

Page 10: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

10 Nhập môn Công nghệ Phần mềm January 15

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

Page 11: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

11 Nhập môn Công nghệ Phần mềm January 15

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

Page 12: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

12 Nhập môn Công nghệ Phần mềm January 15

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:

+ Giao diện người dùng

Page 13: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

13 Nhập môn Công nghệ Phần mềm January 15

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 điểm: 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ý.

Page 14: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

14 Nhập môn Công nghệ Phần mềm January 15

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

Page 15: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

15 Nhập môn Công nghệ Phần mềm January 15

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 điểm:

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

Ø  Khuyết điểm:

- Khó lập trình và quản lý dữ liệu.

Page 16: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

16 Nhập môn Công nghệ Phần mềm January 15

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

Page 17: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

17 Nhập môn Công nghệ Phần mềm January 15

Đố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.

Page 18: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

18 Nhập môn Công nghệ Phần mềm January 15

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

Page 19: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

19 Nhập môn Công nghệ Phần mềm January 15

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.

Page 20: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

20 Nhập môn Công nghệ Phần mềm January 15

Ví dụ

Page 21: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

21 Nhập môn Công nghệ Phần mềm January 15

Ví dụ (tt)

Page 22: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

22 Nhập môn Công nghệ Phần mềm January 15

Ví dụ (tt)

Page 23: NHẬP MÔN CÔNG NGHỆ PHẦN MỀM - cse.hcmut.edu.vncse.hcmut.edu.vn/~hiep/CNPM/NMCNPM2014/Chuong 3.pdf · Tổng quan về Công nghệ phần mềm ! Xác định và mô hình

23 Nhập môn Công nghệ Phần mềm January 15

Q & A