v1.0011107212 3MỤC TIÊU Giải thích mục đích và các giai đoạn khác nhau của chu kỳ phát triển hệ thốngSDLC; Giải thích sự khác biệt giữa mô hình công cụ kỹ thuật và phương pháp học; Mô tả
Trang 1v1.0011107212 1
BÀI 2 CÁC PHƯƠNG PHÁP LUẬN VỀ PHÁT TRIỂN HỆ THỐNG THÔNG TIN
Giảng viên: ThS Thạc Bình Cường
TÌNH HUỐNG DẪN NHẬP
• Một công ty xuất nhập khẩu các thiết bị y tế Hàng quý công ty cần thống kê
và lưu trữ các vận đơn và thanh toán với khách hàng và nhà cung cấp;
• Hãy sử dụng lý thuyết phân tích hệ thống để phân tích và lập kế hoạch cho
Trang 2v1.0011107212 3
MỤC TIÊU
Giải thích mục đích và các giai đoạn khác nhau của chu kỳ phát triển hệ thống(SDLC);
Giải thích sự khác biệt giữa mô hình công cụ kỹ thuật và phương pháp học;
Mô tả cả hai phương pháp tiếp cận tổng thể để phát triển các hệ thông tin:Phương pháp truyền thống và phương pháp hướng đối tượng;
Mô tả một loạt thay đổi của chu trình phát triển hệ thống (SDLC);
Mô tả những đặc điểm nổi bật của xu hướng ngày nay trong phát triển hệthống: mô hình xoắn ốc, lập trình cao cấp (XP), quy trình thống nhất (UP) và
mô hình năng động;
Giải thích cách sử dụng các công cụ tự động trong phát triển hệ thống
NỘI DUNG
Khái niệm về sự phát triển hệ thống thông tin;
Vòng đời của các giai đoạn phát triển hệ thống;
Các phương pháp tiếp cận của phân tích thiết kế:
• Phương pháp Merise hướng dữ liệu;
• Phương pháp phân tích cấu trúc;
• Phương pháp hướng đối tượng;
Trang 3 Tiếp cận truyền thống: Phát triển hệ thống có cấu trúc và kĩ thuật thông tin;
Tiếp cận hướng đối tượng: Yêu cầu cách tiếp cận khác nhau để phân tích, thiết
Đem lại sản phẩm hoặc kết quả như mong muốn;
Đây có thể là một khối lượng công việc lớn mất nhiều công sức và thờigian hoặc có thể là một dự án nhỏ trong một tháng
• Dự án phát triển thành công:
Đưa ra một kế hoạch chi tiết để thực hiện theo;
Các nhiệm vụ và các hoạt động thực hiện có khoa học và phương pháp;
Tạo ra hệ thống đáng tin cậy, bền vững và hiệu quả cao
Trang 4v1.0011107212 7
3 CÁC GIAI ĐOẠN CHU KỲ PHÁT TRIỂN HỆ THỐNG (SDLC)
• Lập kế hoạch: Khởi tạo, đảm bảo tính khả thi, lập biểu kế hoạch, đạt được sự chấpthuận đối với kế hoạch;
• Phân tích: Hiểu được những yêu cầu cần thiết trong kinh doanh và xử lý;
• Thiết kế: Xác định được hệ giải pháp dựa trên những yêu cầu và các lệnh phân tích;
• Hoàn thiện: Xây dựng, kiểm tra, đào tạo người sử dụng và cài đặt hệ thống mới;
• Hỗ trợ: Đảm bảo hoạt động và cải tiến hệ thống
• Đội dự án tìm hiểu, nắm rõ vấn đề và những yêu cầu giải pháp (phân tích);
• Giải pháp được cụ thể hóa thành chi tiết (thiết kế);
• Xây dựng và cài đặt hệ thống giải quyết vấn đề (hoàn thiện);
• Sử dụng, duy trì và nâng cao hệ thống để đem lại lợi ích mong muốn (hỗ trợ)
3.1 GIAI ĐOẠN LÊN KẾ HOẠCH SDLC
• Xác định được phạm vi và vấn đề kinh doanh;
• Đưa ra chi tiết lịch biểu dự án;
• Xác nhận tính khả thi của dự án: Tính kinh tế, tính tổ chức, kỹ thuật, nguồn lực
và thời gian;
• Tìm người cho dự án (quản lý nhân lực);
• Triển khai dự án Tuyên bố chính thức
Trang 5v1.0011107212 9
3.2 GIAI ĐOẠN PHÂN TÍCH SDLC
• Thu thập thông tin để tìm hiểu về problem domain;
• Xác định yêu cầu cho hệ thống;
• Xây dựng những khuôn mẫu để phát hiện yêu cầu;
• Ưu tiên các yêu cầu;
• Đưa ra kết quả và đánh giá các khả năng;
• Duyệt lại các đề xuất thay đổi với ban quản lý
3.3 GIAI ĐOẠN THIẾT KẾ SDLC
• Thiết kế và tổ hợp mạng;
• Thiết kế kiến trúc ứng dụng;
• Thiết kế các giao diện người sử dụng;
• Thiết kế các giao diện hệ thống;
• Thiết kế và tổ hợp CSDL;
• Đặt khuôn mẫu cho các chi tiết thiết kế;
• Thiết kế và tổ hợp các điều khiển hệ thống;
Trang 6v1.0011107212 11
3.4 GIAI ĐOẠN HOÀN THIỆN SDLC
• Xây dựng các thành phần phần mềm;
• Xác nhận và thử nghiệm;
• Chuyển đổi dữ liệu;
• Đào tạo người sử dụng và dẫn chứng hệ thống bằng tài liệu;
• Cài đặt hệ thống
3.5 GIAI ĐOẠN HỖ TRỢ SDLC
• Duy trì hệ thống: Các sửa chữa nhỏ, thay thế, và cập nhật;
• Nâng cấp hệ thống:
Những nâng cấp hoặc thay đổi nhỏ nhằm mở rộng khả năng của hệ thống;
Việc nâng cấp lớn hơn có thể yêu cầu thành một dự án phát triển riêng
• Hỗ trợ người sử dụng: Có đội ngũ hỗ trợ hoặc tổ đặc trách
Trang 7v1.0011107212 13
4 LẬP BIỂU CHO CÁC GIAI ĐOẠN DỰ PHÁT TRIỂN HTTT
• Phương pháp tiếp cận kiểu thác nước – mỗi giai đoạn nằm trong giai đoạn kế tiếp:
Trước khi phân tích cần xác định đặc tính kế hoạch;
Trước khi thiết kế cần ổn định những đặc tính phân tích;
Sau khi trải qua mỗi bậc chu trình, không quay lại bậc trước đó
• Các giai đoạn gối nhau (đồng quy):
Thác nước không thực tế, không hoàn hảo;
Phương pháp gối nhau có thể hiệu quả hơn thác nước
• Sự lặp lại – các hoạt động lặp lại:
Mỗi lặp lại cải tiến kết quả trước đó;
Phương pháp tiếp cận không ai thành công ngay từ lần đầu;
Có một loạt các dự án nhỏ đối với mỗi lặp lại
• Ví dụ: Phác đồ, phác thảo, kết quả đã chỉnh sửa;
• Ví dụ: Bản thiết kế nhà, phần khung, ngôi nhà đã hoàn tất
4.1 PHƯƠNG PHÁP TIẾP CẬN THEO KIỂU THÁC NƯỚC CHO SDLC
Xác định đặc tính
kế hoạch
Ổn định những đặc tính phân tích
Hệ thống sau khi hoàn thiện mang đặc tính đã xác định
Lập kế hoạch
Phân tích
Thiết kế
Hoàn thiện
Trang 8v1.0011107212 15
4.2 CHỒNG LỚP CÁC THAO TÁC PHÁT TRIỂN CÁC HỆ THỐNG
Hoàn thành các thành phần chính dự án
Trong đó:
Lập dự án Nhiệm vụ quản lý dự án bổ sung
Phân tích Phân tích thêm
Thiết kế Thiết kế thêm
Triển khai
Hỗ trợ
4.3 VÒNG LẶP CÁC GIAI ĐOẠN CHU KỲ
Hoàn thiện Thiết kế
Thiết kế hơn thêm Phân tích
hơn thêm
Trang 9v1.0011107212 17
5 CÁC PHƯƠNG PHÁP HỌC VÀ CÁC MÔ HÌNH
• Các phương pháp học:
Các hướng dẫn toàn diện cần theo để từng hoạt động SDLC;
Tập hợp các mô hình, công cụ, và phương pháp kỹ thuật
Trang 10 Có thể là những hướng dẫn từng bước hay chỉ là sự chỉ dẫn khái quát.
5.3 MỘT SỐ CÔNG CỤ ĐÃ SỬ DỤNG TRONG PHÁT TRIỂN HỆ THỐNG
Trang 11v1.0011107212 21
5.4 MỘT SỐ KỸ THUẬT ĐÃ SỬ DỤNG TRONG PHÁT TRIỂN HỆ THỐNG
• Kỹ thuật lập kế hoạch chiến lược;
• Kỹ thuật quản lý dự án;
• Kỹ thuật phỏng vấn người dùng;
• Kỹ thuật lập mô hình dữ liệu;
• Kỹ thuật thiết kế CSDL quan hệ;
• Kỹ thuật phân tích cấu trúc;
• Kỹ thuật thiết kế cấu trúc;
• Kỹ thuật lập trình cấu trúc;
• Kỹ thuật kiểm tra phần mềm;
• Kỹ thuật thiết kế và phân tích hướng đối tượng
5.5 MỐI QUAN HỆ GIỮA CÁC THÀNH PHẦN CỦA MỘT
PHƯƠNG PHÁP HỌC
Kỹ thuật Mô hình
Công cụ
Phương pháp
Trang 12v1.0011107212 23
6 HAI PHƯƠNG PHÁP TIẾP CẬN ĐỂ PHÁT TRIỂN HỆ THỐNG
• Phương pháp tiếp cận truyền thống:
Còn gọi là phát triển hệ thống cấu trúc;
Kỹ thuật thiết kế và phân tích cấu trúc (SADT)
• Lập trình cấu trúc:
Cải tạo chất lượng trình máy tính;
Cho phép những nhà lập trình khác đọc và thay đổi một cách dễ dàng;
Mỗi mô-đun lập trình có một điểm bắt đầu và một điểm kết thúc;
3 cơ cấu lập trình (liên tiếp, lệnh, sự lặp lại)
6.1 BA CƠ CẤU LẬP TRÌNH CẤU TRÚC
Trang 13v1.0011107212 25
6.2 LẬP TRÌNH TỪ TRÊN XUỐNG HAY LẬP TRÌNH LẮP RÁP
• Chia các trình phức tạp thành từng bậc của các mô-đun;
• Mô-đun ở trên cùng điều chỉnh bằng các môđun ở cấp thấp hơn;
• Lập trình lắp ráp: Tương tự lập trình từ trên xuống;
• Một trình liên kết các trình khác để hoạt động cùng nhau là một hệ thống đơn
Môđun điều khiển
• Chức năng chính của các mô đun lập trình:
Không chặt – là môđun độc lập với các
môđun khác;
Có tính kết hợp cao – là môđun có
Trang 14v1.0011107212 27
7 PHÂN TÍCH CẤU TRÚC
• Xác định được hệ thống cần làm gì (những yêu cầu xử lý);
• Xác định được hệ dữ liệu cần lưu và sử dụng (yêu cầu dữ liệu);
• Xác định được input và output;
• Xác định cách các chức năng cùng phối hợp để hoàn tất các nhiệm vụ;
• Các lưu đồ dữ liệu và các sơ đồ quan hệ thực thể biểu diễn kết quả
phân tích cấu trúc
7.1 TẠO LƯU ĐỒ DỮ LIỆU SỬ DỤNG KỸ THUẬT PHÂN TÍCH CẤU TRÚC
Trang 15v1.0011107212 29
7.2 TẠO SƠ ĐỒ QUAN HỆ THỰC THỂ (ERD) SỬ DỤNG KỸ THUẬT PHÂN TÍCH CẤU TRÚC
7.3 TỪ PHÂN TÍCH CẤU TRÚC TỚI THIẾT KẾ VÀ LẬP TRÌNH CẤU TRÚC
Phân tích cấu trúc hiện đại
Lập trình cấu trúc
Trang 16v1.0011107212 31
8 CẢI TIẾN THÔNG TIN ĐỂ PHÁT TRIỂN HỆ THỐNG
• Cải tiến để phát triển cấu trúc;
• Phương pháp học tập trung vào kế hoạch chiến lược, làm mô hình dữ liệu và các công
8.1 PHƯƠNG PHÁP TIẾP CẬN HƯỚNG ĐỐI TƯỢNG
• Xem hệ thông tin là tập hợp những đối tượng tương tác làm việc cùng nhau đểhoàn thành nhiệm vụ:
Đối tượng - Những thứ trong hệ máy tính có thể trả lời được các thông tin;
Không xác định được quy trình, chương trình, thực thể dữ liệu hay các file chỉ là các đối tượng;
-• Phân tích hướng đối tượng (OOA):
Xác định các kiểu đối tượng làm việc của hệ thống;
Biểu diễn cách đối tượng hỗ trợ người sử dụng hoàn thành nhiệm vụ
Trang 17số sêri 19874
Đối tượng sản phẩm: ghế tựa êm,
bổ xung mình vào đặt hàng này
Susan Franks, bổ xung mình vào là khách hàng của đơn đặt hàng này
8.2 PHƯƠNG PHÁP TIẾP CẬN HƯỚNG ĐỐI TƯỢNG (tiếp theo)
• Thiết kế hướng đối tượng (OOD):
Xác định các kiểu đối tượng cần giao dịch với con người và các thiết bịtrong hệ thống;
Biểu diễn các đối tượng tương tác để hoàn tất nhiệm vụ;
Cải tiến từng kiểu đối tượng để triển khai với ngôn ngữ cụ thể trong môitrường khác
• Lập trình hướng đối tượng (OOP): Viết các bản tường trình trong ngôn ngữ lậptrình để xác định nhiệm vụ từng đối tượng;
• Lợi ích của phân tích hướng đối tượng bao gồm tính tự nhiên và tái sử dụng
Trang 18v1.0011107212 35
8.3 TẠO MỚI SƠ ĐỒ LỚP TRONG QUÁ TRÌNH PHÂN TÍCH
HƯỚNG ĐỐI TƯỢNG
9 CÁC DẠNG KHÁC NHAU CỦA SDLC
• Nhiều biến thiên của SDLC được thực hiện: Dù là kiểu biến thiên nào thì cácnhiệm vụ như nhau;
• Dựa trên biến thiên của tên các giai đoạn: SDLC so với IE so với UP;
• Dựa trên sự tập trung vào con người: Thiết kế lấy người sử dụng làm trungtâm, thiết kế thành phần tham gia;
• Dựa trên tốc độ phát triển:
Phát triển ứng dụng nhanh (RAD);
Giữ nguyên mẫu
Trang 19v1.0011107212 37
CÁC CHU KỲ VỚI NHỮNG TÊN KHÁC BIỆT CHO CÁC GIAI ĐOẠN
Giai đoạn đầu
SDLC
Kĩ thuật thông tin Quy trình
thống nhất (UP)
SDLC với tên hoạt động cho các giai đoạn
Giai đoạn khởi đầu
Tổ chức dự án và nghiên cứu tính khả thi Nghiên cứu và phân tích hệ thống hiện hành.
Mô hình hoá và dành ưu tiên yêu cầu chức năng.
kĩ thuật
Giai đoạn soạn thảo kỹ
Đưa ra các thay thế và đề xuất giải pháp tối ưu.
Thiết kế hệ thống Có phần mềm và phần cứng cần.
Giai đoạn
hỗ trợ
Xem lại và bảo trì
Hoàn thiện
Giai đoạn chuyển giao
Xây dựng và kiểm tra hệ thống mới Cài đặt và vận hành hệ thống mới.
10 XU HƯỚNG PHÁT TRIỂN HIỆN NAY
Mô hình xoắn ốc:
• Phương pháp tiếp cận tương tác cao;
• Làm việc quanh các giai đoạn (thiết kế phân tích, xây dựng, thử nghiệm, tổ hợp cùngthành phần nguyên mẫu trước đó) trong một xoắn ốc cho tới khi dự án hoàn tất;
• Kế hoạch khởi tạo là chỉ phân tích đủ để xây dựng khuôn mẫu ban đầu;
• Mỗi lặp lại trong mô hình xoắn ốc đem lại rủi ro lớn
Trang 20• Phương pháp tiếp cận phát triển hướng đối tượng;
• Do IBM/Rational đưa ra: Booch, Rumbaugh, Jacobson;
• Ngôn ngữ làm mô hình hợp nhất (UML) đã sử dụng ngôn ngữ cơ bản để làm mô hình;
• UML có thể được sử dụng với bất kỳ phương pháp học OO nào;
• UP xác định 4 giai đoạn chu kỳ: Giai đoạn khởi đầu, giai đoạn soạn thảo chi tiết, xâydựng, chuyển tiếp
• Củng cố 6 cách thực hiện hiệu quả nhất:
Trang 21v1.0011107212 41
13 LÀM MÔ HÌNH ĐỘNG
• Lai của XP và UP (Scott Ambler) có nhiều mô hình hơn XP, ít dẫn chứng hơn UP;
• Làm mô hình tương và có lời:
Ứng dụng các mô hình đúng;
Song song tạo mới một vài mô hình;
Mô hình trong các gia số nhỏ
• Nhóm làm việc:
Thu hút sự tham gia các cổ đông;
Khuyến khích chủ sở hữu chung;
Làm mô hình những nội dung khác và trưng bày mô hình một cách đại chúng
• Sự đơn giản:
Sử dụng nội dung đơn giản;
Mô tả đơn giản các mô hình;
Sử dụng công cụ làm mô hình đơn giản nhất
• Tính hiệu lực:
Xem xét khả năng thử nghiệm;
Chứng minh mô hình đúng bằng mã số
14 CÁC CÔNG CỤ HỖ TRỢ PHÁT TRIỂN HỆ THỐNG
• Kỹ thuật hệ thống hỗ trợ máy tính (CASE):
Các công cụ tự động cải tạo tốc độ và chất lượng công việc phát triển hệ thống;
Chứa CSDL thông tin về hệ thống gọi là kho dữ liệu
• CASE trên - hỗ trợ cho việc phân tích và thiết kế;
• CASE dưới - hỗ trợ cho việc hoàn tất;
• ICASE - tổ hợp các công cụ CASE
Trang 22Công cụ tạo mẫu Công cụ
truy vấn và bộ tạo báo cáo
Bộ tạo mã
Bộ tạo thiết kế
Kho công
cụ CASE
Giúp người sử dụng tối ưu hóa bằng quá trình thiết kế hiệu quả
TÓM LƯỢC CUỐI BÀI
• Các giai đoạn SDLC gồm lập kế hoạch dự án, phân tích, thiết kế, hoàn thiện
• SDLC ban đầu là phương pháp tiếp cận kiểu thác nước;
• Hầu hết các SDLC sử dụng tính lặp lại qua các giai đoạn;
• Mục tiêu phát triển ứng dụng nhanh (RAD) là đẩy nhanh phát triển;
• Những xu hướng thời nay gồm: Mô hình xoắn ốc, lập trình cao (XP), quytrình hợp nhất (UP) và làm mô hình động;
• Các công cụ CASE được thiết kế để giúp các chuyên gia phân tích hoànthành nhiệm vụ