Professional Documents
Culture Documents
CHƯƠNG 1
GIỚI THIỆU VỀ PHÂN TÍCH & THIẾT KẾ HỆ THỐNG
01/2023
1
NỘI DUNG
2
Dữ liệu (Data)
Data Information
Data Processing
Data store
Thông tin (Information)
Environment
Boundary
Feedback
Sub system 3
• Dữ liệu (Data)
• Clerical and service workers Nhân viên văn phòng & nhân viên
dịch vụ
• Technical and professional staff Nhân viên ký thuật & đội ngũ
nhân viên chuyên nghiệp
• Supervisors, middle managers, executive
managers người gim sát, quản lý cấp trung, giám đốc điều hành
• Customers
• Suppliers
• Partners đối tác
• Loại quyết định này có thể lập trình trên máy tính
để hỗ trợ ở mức tự động hóa cao.
Các loại quyết định
• Nhiều quyết định phi cấu trúc dựa vào cảm tính
và kinh nghiệm ứng xử của người ra quyết định,
cũng như tác động của môi trường xung quanh.
Các loại quyết định
• Các quyết định thường là phi cấu trúc hoặc bán cấu trúc.
• Thông tin đa số thu thập từ bên ngoài vuợt khỏi tầm kiểm
soát của công ty; thường là các thông tin dự báo thị
trường, đổi mới công nghệ, …
Quản trị viên cấp trung
• Thường vạch ra các kế hoạch trung hạn (vài tháng đến
một năm), mang tính chiến thuật (Tactical), nhằm đạt
được các mục tiêu kinh doanh đã hoạch định.
✓Ví dụ: phân phối nguồn tài nguyên trong công ty
• Các quyết định của cấp này thường là bán cấu trúc hoặc
có cấu trúc.
• Các thông tin thường thu thập từ bên trong hệ thống và
đôi khi cần một ít thông tin ngoài.
• Do thu thập từ bên trong hệ thống và tương lai gần, nên
các thông tin chắc chắn và cụ thể hơn.
Quản trị viên cấp thấp
• Liên quan đến các hoạt động hàng ngày của công ty.
• Thông tin hầu như có nguồn gốc từ bên trong công ty.
Đặc điểm thông tin ở cấp này là chi tiết và chắc chắn.
Nhân viên tác nghiệp, thừa hành
ES - DSS
chuyên gia, ra quyết định
TPS
xử lý giao dịch
Phân loại HTTT: TPS
• Hệ thống này không tồn tại độc lập mà thường bao hàm cả
hệ thống TPS, nó phân tích các dữ liệu từ hệ thống TPS
đưa lên
• VD: Hệ thống quản lý khách sạn, quản lý kho, …
Phân loại HTTT: DSS
❖ Hệ hỗ trợ ra quyết định (Decision Support System - DSS)
• Thu thập và sử dụng các kiến thức của các chuyên gia
chuyên ngành (domain expert) để giải quyết các vấn
đề phức tạp trong thực tế.
• Mục đích là phát triển một máy tính có trí thông minh
như con người, có khả năng phân tích suy diễn, …
Phân loại HTTT: GDSS
• Mục đích của HT cung cấp cho giám đốc khả năng
truy cập dễ dàng và tức thời thông tin có chọn lọc
(tình trạng hiện thời và xu hướng)
• Mục tiêu chính phải đạt được là hệ thống sau khi xây
dựng phải mang lại các lợi ích cho nơi sử dụng nó.
•…
Nhóm phân tích dự án
44
Chu kỳ phát triển hệ thống
SDLC - System Development Life Cycle
• Trước hết, căn nhà sẽ được phác họa bằng những ý tưởng cơ bản ban
đầu (→ khởi tạo)
• Các ý tưởng được chuyển thành bản vẽ, và được chỉnh sửa nhiều lần cho
đến khi chủ nhà đồng ý đã mô tả đúng những gì họ muốn (→ phân tích)
• Các bản vẽ được chuyển thành các bản thiết kế chi tiết trong xây dựng
(→ thiết kế)
• Căn nhà được xây dựng theo bản thiết kế (→ thi công)
• Thông thường sẽ có các điều chỉnh trong hoặc sau khi căn nhà đã hoàn
thành (→ vận hành và bảo trì)
Chu kỳ phát triển hệ thống (SDLC)
• Thiết kế (Design)
• Làm thế nào để hệ thống hoạt động? (How)
Xác lập mục tiêu, Xác định yêu cầu hệ thống Bảng yêu cầu hệ thống (System Request)
lợi ích của dự án
Phân tích khả thi Nghiên cứu tính khả thi về Báo cáo nghiên cứu khả thi (Feasibility
mặt: kỹ thuật, kinh tế và tổ Study)
chức
Xây dựng kế Xác định các công việc Bảng kế hoạch làm việc (Work Plan)
hoạch làm việc Ước lượng thời gian
Bố trí nhân sự Xây dựng kế hoạch về nhân Bảng kế hoạch nhân sự (Staffing Plan)
sự và các quy định của dự án Bảng quy định của dự án (Project Charter)
Điều khiển và chỉ Điều chỉnh ước tính ban đầu Biểu đồ GANTT,
đạo dự án Theo dõi các công việc Biểu đồ PERT/CPM
Điều phối dự án CASE tools
Quản lý phạm vi dự án Bảng đánh giá rủi ro
Giảm bớt rủi ro
Giai đoạn phân tích (Analysis)
Trả lời các câu hỏi What, Who, When, Where liên quan đến hệ thống?
Chọn lựa chiến Xác định cách phát triển hệ Chiến lược thiết kế
lược thiết kế thống (mua, tự xây dựng, …)
Thiết kế kiến trúc Thiết kế phần cứng, mạng, Tài liệu thiết kế kiến trúc hạ
kiến trúc ứng dụng tầng của hệ thống
Thiết kế giao diện Thiết kế input Tài liệu thiết kế giao diện
Thiết kế output
Thiết kế cơ sở dữ Thiết kế CSDL, chọn lựa hệ Tài liệu thiết kế CSDL
liệu quản trị CSDL, tối ưu hóa, …
Thiết kế chương Program structure chart Tài liệu đặc tả các chương
trình Program specifications trình sẽ được viết
Cài đặt Chọn lựa cách đưa hệ thống Kế hoạch chuyển đổi
vào vận hành Kế hoạch huấn luyện
• Các ngôn ngữ lập trình trực quan (visual) ngày càng mạnh mẽ
CASE tools
• Tất cả các thiết kế được lưu trữ trong một kho gọi
là CASE repository
CASE tools
REPOSITORY
Diagram Metadata
Form Procedure
Report logic
Integrated CASE
Mô hình thác nước (waterfall model)
Ưu và nhược
điểm của mô hình
này?
System
Construction
Prototype
• Trong mô hình này người ta phát triển thành nhiều
phiên bản (version) gọi là các bản mẫu (prototype).
• Mỗi phiên bản sẽ tập trung giải quyết một số yêu cầu
của người dùng, và các vấn đề phát sinh trong phiên
bản trước.
• Các nghiên cứu cho thấy thời gian có thể rút xuống
còn 45% so với mô hình thác nước.
• Đặc biệt thích hợp với các hệ thống mà quy trình
nghiệp vụ chưa thật ổn định.
Prototype
Prototype
• Một prototype phải có các đặc điểm:
• Làm việc được trên các dữ liệu thực
• Có thể phát triển thêm để tiến tới HT cuối cùng
• Tạo lập nhanh và ít tốn kém
• Dùng để kiểm chứng các giả định về các nhu cầu phải đáp
ứng, các lược đồ thiết kế và logic của chương trình.
65
Mô hình tăng trưởng (Incremental model)
• Sau khi mỗi phiên bản được đưa vào sử dụng, các
kết quả đánh giá sẽ được phản hồi và sử dụng để
lập kế hoạch cho chu trình con của phiên bản tiếp
theo.
• Trong các phiên bản tiếp theo, các chức năng của
hệ thống sẽ lần lượt được bổ sung dần vào.
Mô hình tăng trưởng (Incremental model)
• Sau khi mỗi phiên bản được đưa vào sử dụng, các
kết quả đánh giá sẽ được phản hồi và sử dụng để
lập kế hoạch cho chu trình con của phiên bản tiếp
theo.
• Trong các phiên bản tiếp theo, các chức năng của
hệ thống sẽ lần lượt được bổ sung dần vào.
Mô hình xoắn ốc (Spiral model)
Mô hình RUP (Rational Unified Process)
Sự ra đời của Agile
1990 2001 70
AGILE là gì?
Agile là một phương pháp phát triển phần mềm linh hoạt,
là một hướng tiếp cận cụ thể cho quản lý dự án phần mềm.
Nó gồm một quá trình làm việc tương tác và tích hợp để có
thể đưa sản phẩm đến tay người dùng càng nhanh càng
tốt.
71
Tuyên ngôn Agile
Chúng tôi đã phát hiện ra cách phát triển phần mềm tốt hơn
bằng cách thực hiện nó và giúp đỡ người khác thực hiện.
CỘNG TÁC VỚI KHÁCH HÀNG hơn là Đàm phán hợp đồng
PHẢN HỒI VỚI CÁC THAY ĐỔI hơn là Bám sát kế hoạch
Mặc dù các điều bên phải vẫn còn giá trị, nhưng chúng tôi
đánh giá cao hơn các mục ở bên trái.
72
Cá nhân và sự tương tác
➢ Tự tổ chức
➢ Tự quản lý
Đảm bảo môi trường thuận lợi tương tác giữa các cá nhân
73
Phần mềm chạy tốt
Tập trung chuyển giao sản phẩm ngay từ giai đoạn đầu tiên
74
Cộng tác với khách hàng
➢ Sản phẩm ?
75
Phản hồi với các thay đổi
➢ Công nghệ
➢ Nhân sự
➢ Deadline
Tập thích nghi thay đổi, feedback → giảm rủi ro, tối ưu hóa
76
SCRUM
79
Scrum Framework
80
The Sprint Lifecycle
81
Phân Biệt Agile, Scrum
82
Phân Biệt Waterfall & Scrum
83
Phân Biệt Waterfall & Scrum
84
Waterfall & Agile
Waterfall Agile
• Xác định được yêu cầu, không có • Có nhiều cơ hội thay đổi yêu cầu
thay đổi trong quá trình phát triển thường xuyên hơn
• Dễ quản lý, tuần tự và cứng nhắc • Linh hoạt, thay đổi bất kỳ
• Requiments định nghĩa một lần • Requiments có thể thay đổi
bởi các nhà phân tích kinh doanh thường xuyên
• SDLC: chi tiết không được thay • SDLC: chi tiết được thay đổi bất
đổi cứ lúc nào 85
Chọn Waterfall & Agile ???
Waterfall
• Dự án nhỏ, ngắn hạn
• Ít thay đổi về yêu cầu, không yêu cầu không rõ ràng
• Hiểu rõ yêu cầu dự án, kinh nghiệm với công nghệ
• Xác định hầu như không có rủi ro.
Agile
• Yêu cầu dự án chưa rõ ràng ngay từ đầu
• Mức độ rủi ro cao
• Khó lập kế hoạch dài hạn cho cả dự án
• Cần sự tham gia và tính tương tác của khách hàng
• Yêu cầu chức năng sẵn sàng thời gian ngắn.
86
ÔN TẬP
87
Q&A
88