Tài liệu Object - Oriented analysis and design with uml 2.0 - Bài 01: Tổng quan về xây dựng phần mềm: *OBJECT-ORIENTED ANALYSIS AND DESIGN WITH UML 2.0Bé m«n C«ng nghƯ phÇn mỊmKHOA CƠNG NGHỆ THƠNG TINTRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘIBài 01: Tổng quan về XD phần mềm*Các đặc điểm của hệ thốngĐầu vào(Input)Đầu ra(Output)Giao diện(Interface)Thành phần(Component)Mơi trường(Environment)Phạm vi(Boundary)Liên kết(Interrelationship)*Ví dụ: Quy trình xử lý đơn hàngNhận đơn hàngKiểm tra trạng thái khách hàngKiểm tra tín dụng khách hàngNhập thơng tin về đơn hàngHồn thành xử lý đơn hàng Vịng đời phát triển hệ thống(Systems Development Life Cycle – SDLC)*Pha 1:Lập kế hoạchPha 2:Phân tích hệ thốngPha 4:Cài đặt KT HTPha 3:Thiết kế hệ thốngPha 5:Vận hành, bảo trìyêu cầu hệ thốngb/c khả thiTài liệu đặc tả yêu cầuTài liệu thiết kế hệ thốngHệ thống đã cài đặtLập kế hoạchGiải quyết các vấn đề, câu hỏiTại sao phải xây dựng HTTT ?Nhĩm dự án phát triển hệ thống thơng tin như thế nào?Các cơng việc cụ thểTìm hiểu dự án được bắt đầu và được đánh giá ban đầu như thế nàoXác định các vấn đề, cơ hội, mục tiêuPhân ...
44 trang |
Chia sẻ: Khủng Long | Lượt xem: 1378 | Lượt tải: 1
Bạn đang xem trước 20 trang mẫu tài liệu Object - Oriented analysis and design with uml 2.0 - Bài 01: Tổng quan về xây dựng phần mềm, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
*OBJECT-ORIENTED ANALYSIS AND DESIGN WITH UML 2.0Bé m«n C«ng nghƯ phÇn mỊmKHOA CƠNG NGHỆ THƠNG TINTRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘIBài 01: Tổng quan về XD phần mềm*Các đặc điểm của hệ thốngĐầu vào(Input)Đầu ra(Output)Giao diện(Interface)Thành phần(Component)Mơi trường(Environment)Phạm vi(Boundary)Liên kết(Interrelationship)*Ví dụ: Quy trình xử lý đơn hàngNhận đơn hàngKiểm tra trạng thái khách hàngKiểm tra tín dụng khách hàngNhập thơng tin về đơn hàngHồn thành xử lý đơn hàng Vịng đời phát triển hệ thống(Systems Development Life Cycle – SDLC)*Pha 1:Lập kế hoạchPha 2:Phân tích hệ thốngPha 4:Cài đặt KT HTPha 3:Thiết kế hệ thốngPha 5:Vận hành, bảo trìyêu cầu hệ thốngb/c khả thiTài liệu đặc tả yêu cầuTài liệu thiết kế hệ thốngHệ thống đã cài đặtLập kế hoạchGiải quyết các vấn đề, câu hỏiTại sao phải xây dựng HTTT ?Nhĩm dự án phát triển hệ thống thơng tin như thế nào?Các cơng việc cụ thểTìm hiểu dự án được bắt đầu và được đánh giá ban đầu như thế nàoXác định các vấn đề, cơ hội, mục tiêuPhân tích SWOT (Strength – Weakness – Opportunity – Threat) *Phân tích hệ thốngGiải quyết các vấn đề, câu hỏiAi sẽ sử dụng hệ thống?Hệ thống sẽ thực hiện gì, khi nào, ở đâu?Các cơng việc cụ thểPhân tích chiến lược: phân tích hiện trạng, phương pháp sử dụng Thu thập yêu cầu: mơ hình hĩa và phân tích các yêu cầuĐề xuất mơ hình hệ thống*Thiết kế hệ thốngGiải quyết các vấn đề, câu hỏiHệ thống sẽ hoạt động như thế nào (phần cứng, phần mềm, mạng, giao diện người dùng, modun chương trình, CSDL, tệp, )Các cơng việc cụ thểChiến lược thực hiệnKiến trúc hệ thống: phần cứng, phần mềm, mạngThiết kế dữ liệuThiết kế chương trìnhThiết kế giao diện*Cài đặt hệ thốngGiải quyết các vấn đề, câu hỏiLập trình, kiểm thửCác cơng việc cụ thểPhát triển ứng dụng: lập trình, kiểm thử, lập tài liệu cho các modun chương trìnhCài đặt và đánh giá Xây dựng kế hoạch hỗ trợ và bảo trì hệ thống**Phân bổ chi phí cho các hoạt động*Sử dụng tài nguyên Khối lượng tài nguyên sử dụngPhát triển hệ thốngThời gianKiểm thửhệ thốngCập nhật thay đổi nhỏThay đổi lớn trong nghiệp vụ và cơng nghệMột số phương pháp phát triển HTPhương pháp ~ một cách thực hiện chu trình phát triển hệ thống3 nhĩm phương phápCác phương pháp hướng quy trình Tập trung định nghĩa các hoạt động gắn với hệ thốngMơ hình hĩa các quy trình với luồng vào/raCác phương pháp hướng dữ liệuTập trung định nghĩa nội dung dữ liệu lưu trữMơ hình hĩa dữ liệuCác phương pháp hướng đối tượngCân bằng giưa dữ liệu và quy trình UML là một ngơn ngữ mơ hình hĩa**Một số kiểu phát triển hệ thống Phân tích thiết kế cĩ cấu trúc (Structured Design)Chu trình thác nướcChu trình tăng trưởng / chu trình song songPhát triển nhanh ứng dụng (Rapid Application Development - RAD)Chu trình xoắn ốcLàm bản mẫuHướng lập trình ứng dụng (Agile Development)eXtreme-Programming based*Mơ hình phát triển thác nước(Waterfall Development Model)*Mơ hình phát triển song song (Parallel Development Model)Phương pháp phát triển nhanh ƯDThực hiện phát triển từng phần hệ thống với mục đích chuyển giao cho người dùng sớmCần sử dụng các kỹ thuật và cơng cụ để tăng tốc quá trình phân tích, thiết kế và cài đặt (vd: CASE – computer-aided software engineering)**Mơ hình phát triển xoắn ốc(Spiral Development Model)*Làm bản mẫu(prototyping-based)Phương pháp phát triển linh hoạt (Agile Development)Tập trung vào bước của chu trình phát triển và hạn chế việc sử dụng mơ hình hĩa, xây dựng tài liệu của các bước trung gianPhát triển ứng dụng đơn giản, lăp đi lặp lạiSử dụng eXtreme Programming (XP) **eXtreme-Programming -basedTrao đổi thơng tin (communication)Đơn giản (simplicity)Phản hồi (feedback)Thế mạnh (courage)Đặc điểmTương tác liên tụcThiết kế đơn giản, sử dụng các nguyên lý và dạng thức thiết kế chungNhĩm làm việc: người lập trình, khách hàng, người quản trị - khách hàng trực diện*Các nhiệm vụ phân tíchPhân tích nghiệp vụPhân tích các yêu cầu nghiệp vụ và vai trị của hệ thống trong việc thực hiện các yêu cầu nghiệp vụ nàyĐưa ra các quy trình nghiệp vụ “mới” và các chính sáchPhân tích hệ thốngXác định cơng nghệ sử dụngThiết kế các quy trình nghiệp vụ đề xuất và HTTT theo quy chuẩn**Phân tích và thiết kế hệ thốngMục đíchXác định các vấn đề, các cơ hội, các mục tiêuPhân tích các dịng thơng tin vào/ra Sử dụng máy tính để xử lý tự động các thơng tinYêu cầuMơ hình hĩa quy trình nghiệp vụXây dựngBản tĩm lược nghiệp vụMơ hình nghiệp vụQuá trình nghiệp vụCác phương thức khảo sátPhỏng vấn (Interviews)JAD – Joint Application DesignBản câu hỏi (Questionnaires)Phân tích tài liệu (Document Analysis)Quan sát (Observation)*Phỏng vấnMục đích:Hiểu được nghiệp vụ thực hiện và ý kiến của những người đang thực hiệnNắm bắt được hiện trạng hệ thốngNắm bắt được mục tiêu, tổ chức nhân sự và các yêu cầu đối với hệ thốngCác bước cơ bảnXác định mục tiêu phỏng vấn & lựa chọn người để phỏng vấnThiết kế câu hỏi phỏng vấnChuẩn bị cho cuộc phỏng vấnTiến hành phỏng vấnLập tài liệu và đánh giá cuộc phỏng vấn*Lựa chọn người để phỏng vấnMục tiêu của phỏng vấnXác định các lĩnh vực cần tìm hiểuLiệt kê các sự kiện muốn thu thậpĐặt được các ý tưởng, các đề nghị và các ý kiếnChọn người để phỏng vấnDựa trên những thơng tin cần thu thậpCĩ vai trị khác nhau: người thực hiện trực tiếp, người quản lýBám sát cơ cấu tổ chức *Chiến lược đặt câu hỏi*Xác định và phân tích yêu cầuXác định hệ thống phải làm gìyêu cầu chức năng và yêu cầu phi chức năng3 kỹ thuật phân tích yêu cầu: BPA, BPI và BPRGiá trị thực tếChi phí thực hiệnRủi ro5 kỹ thuật thu thập yêu cầuPhỏng vấn, JAD, bản câu hỏi, xem xét tài liệu, quan sátCần lựa chọn và phối hợp các kỹ thuật phù hợp*Vịng đời phát triển hệ thống(Systems Development Life Cycle – SDLC)*Pha 1:Lập kế hoạchPha 2:Phân tích hệ thốngPha 4:Cài đặt hệ thốngPha 3:Thiết kế hệ thốngPha 5:Vận hành, bảo trìyêu cầu hệ thốngb/c khả thiTài liệu đặc tả yêu cầuTài liệu thiết kế hệ thốngHệ thống đã cài đặtNhiệm vụ cụ thể của pha PTHTXác định yêu cầuPhân tích yêu cầuMơ hình hĩa dữ liệu và nghiệp vụChuyển sang thiết kế hệ thống*Yêu cầu là gì ?Gồm những chức năng hệ thống phải thực hiệnGồm những đặc điểm hệ thống phải cĩTập trung vào nghiệp vụ của người dùngCĩ thể thay đổi trong quá trình phát triển hệ thống (qua các pha khác nhau)*Phân loại Yêu cầu chức năng (Functional Requirements)Quy trình hệ thống phải thực hiệnThơng tin hệ thống phải lưu trữ và xử lýYêu cầu phi chức năng (Nonfunctional Requirements)Về vận hànhVề hiệu năngVề an tồn bảo mậtVề thĩi quen, tập tục, các ràng buộc, *5 loại yêu cầuXuất (output)Nhập (input)Các quá trình (process)Hiệu suất (performance)Điều khiển (control)*Tài liệu hĩaTài liệu đặc tả yêu cầuVăn bản liệt kê danh sách các yêu cầuCác đặc điểm, tính chất cần cĩXác định phạm vi hệ thốngNhững gì thuộc hệ thống Những gì khơng thuộc hệ thống*Xác định yêu cầuHiểu hệ thống hiện tại Xác định các thay đổi mong muốn thực hiệnXác định hệ thống cần xây dựngPhát hiện các yêu cầu cần cĩ trong hệ thống mớiBusiness Process Automation (BPA) Thích hợp với những thay đổi nhỏBusiness Process Improvement (BPI) Thích hợp với thay đổi trung bìnhBusiness Process Reengineering (BPR) Thích hợp với thay đổi lớn*Tự động hĩa quy trình nghiệp vụ (BPA)Giúp hoạt động của người dùng trở nên hiệu quả hơn (efficiency) *Xác định các khả năng cải thiện hệ thống hiện tại Phân tích vấn đềPhỏng vấn người dùng Xác định các vấn đề Tìm giải phápPhân tích nguyên nhânĐặt giả thiết về lý do vấn đề tồn tạiTìm hiểu các vấn đề ẩn sauVí dụ*Cải thiện quy trình nghiệp vụ (BPI)Giúp quy trình xử lý trở nên hiệu quả hơn (efficiency & effectiveness) *Phân tích về thời gianTính tốn thời gian cần cho mỗi bước xử lýTính tốn thời gian cần cho tồn bộ quy trìnhSo sánh 2 chỉ số thời gian chênh lệch càng lớn thì khả năng cải thiện càng caoGiải pháp tiềm năngNhĩm/tích hợp các bước xử lý giảm số lượng các bước xử lý trong quy trìnhSong song hĩa thay đổi quy trình để tăng các bước cĩ thể xử lý song song*Phân tích về chi phí thực hiệnTính tốn chi phí thực hiện mỗi bước xử lýXem xét cả chi phí trực tiếp và chi phí gián tiếpTập trung vảo việc giảm chi phí cho các bước cĩ chi phí cao*BenchmarkingTìm hiểu cách thực hiện cùng 1 nghiệp vụ của các tổ chức khác nhauĐề xuất các thay đổi trong quy trình nghiệp vụ*Phân tích kết quảXem xét những kết quả (outcome) mong muốn từ phía khách hàngXem xét những “dịch vụ” đem lại cho khách hàng*Phân tích cơng nghệTìm hiểu các cơng nghệ liên quanPhân tích về khả năng áp dụng các cơng nghệ trong quy trình nghiệp vụ yêu cầuPhân tích về lợi ích của việc áp dụng các cơng nghệ này trong nghiệp vụ yêu cầu *Loại bỏ các xử lý “dư thừa”Xem xét ảnh hưởng của từng xử lý đối với hệ thốngCĩ thể loại bỏ một (bước) xử lý nào khơng?Kiểm tra các khả năng cĩ thể*So sánh các kỹ thuậtGiá trị thực tế (đối với tổ chức sử dụng, khai thác)Chi phí dự ánMức độ chi tiết của phân tíchRủi ro*
Các file đính kèm theo tài liệu này:
- tailieu.ppt