Bài 1: Tổng quan về phân tích thiết kế hệ thống thông tin & Nguồn phần mềm

Hệ thống (system) là một tập quy trình nghiệp vụ liên quan đến nhau, các quy trình này kết hợp với nhau để thực hiện một mục đích cụ thể Ví dụ: Hệ thống tính lương lưu giữ thông tin về các lần thanh toán Hệ thống quản lý kho lưu giữ thông tin của các lần cung cấp Trong doanh nghiệp các hệ thống có thể tách biệt hoặc tương tác với nhau Hệ thống tồn không tồn tại một mình mà tương tác với môi trường của hệ thống. Đường biên phân tách hệ thống với môi trường của nó Hệ thống lấy đầu vào từ bên ngoài , xử lý và chuyển kết quả là đầu ra ra môi trường

pdf44 trang | Chia sẻ: lylyngoc | Lượt xem: 1695 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Bài 1: Tổng quan về phân tích thiết kế hệ thống thông tin & Nguồn phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Bài 1: Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm Tổng quan về phân tích thiết kế HTTT Hệ thống? PTTK HT? Chuyên gia phân tích HT? SDLC? Nguồn phần mềm Đánh giá phần mềm thương mại Tiêu chí lựa chọn Thu thập thông tin Thuê ngoài Sử dụng lại Mục tiêu bài học Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 2 Hệ thống (system) là một tập quy trình nghiệp vụ liên quan đến nhau, các quy trình này kết hợp với nhau để thực hiện một mục đích cụ thể Ví dụ: Hệ thống tính lương lưu giữ thông tin về các lần thanh toán Hệ thống quản lý kho lưu giữ thông tin của các lần cung cấp Trong doanh nghiệp các hệ thống có thể tách biệt hoặc tương tác với nhau Hệ thống tồn không tồn tại một mình mà tương tác với môi trường của hệ thống. Đường biên phân tách hệ thống với môi trường của nó Hệ thống lấy đầu vào từ bên ngoài , xử lý và chuyển kết quả là đầu ra ra môi trường Hệ thống là gì? Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 3 Các đặc tính của hệ thống Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 4 Ví dụ về hệ thống Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 5 Phân rã (Decomposition) Tách hệ thống lớn thành các hệ thống con nhỏ hơn, dễ quản lý hơn và dễ tìm hiểu, xây dựng hơn Những khái niệm quan trọng trong hệ thống Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 6 Tính đơn thể (Modularity) Là kết quả của quá trình phân rã Mức độ phụ thuộc (Coupling) Các hệ thống con phụ thuộc lẫn nhau Tính kết dính (Cohesion) Mỗi hệ thống thực hiện một chức năng riêng để dễ dàng lắp ráp với nhau Những khái niệm quan trọng trong hệ thống Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 7 Là quy trình để phát triển và bảo trì một ứng dụng hệ thống thông tin với mục đích nâng cao hiệu quả công việc Ứng dụng quản lý kho cho nhà sách để theo dõi số sách tồn kho của những cuốn bán chạy Ứng dụng quản lý lương theo dõi mức lương hiện tại của nhân viên Phân tích và thiết kế hệ thống là gì? Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 8 Các thành phần của ứng dụng HTTT Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 9 PTTK HT được thực hiện dựa vào quy trình công nghệ phần mềm Quy trình công nghệ phần mềm gồm phương pháp luận, công nghệ và công cụ Phân tích và thiết kế hệ thống là gì? Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 10 Phương pháp luận Trình tự của cách tiếp cận từng bước để phát triển sản phẩm cuối cùng là HTTT Kỹ thuật Trình tự mà người phân tích hệ thống theo để thực hiện các công việc như phỏng vấn người dùng để xác định yêu cầu, lập kế hoạch, vẽ biểu đồ… Công cụ Chương trình máy tính. Ví dụ như CASE (computer-aided software engineering) để thực hiện các kỹ thuật cụ thể một cách dễ dàng Phương pháp luận, Kỹ thuật, Công cụ tạo nên một cách tiếp cận có hệ thống để phân tích và thiết kế hệ thống Phân tích và thiết kế hệ thống là gì? Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 11 Đóng vai trò cốt lõi trong việc phát triển hệ thống Phân tích hệ thống là nghiên cứu các vấn đề trong tổ chức, đưa ra giải pháp để nâng cấp tổ chức Những kỹ năng cần thiết cho chuyên gia phân tích Phân tích Xác định vấn đề, phân tích và giải quyết vấn đề Công nghệ Hiểu tiềm năng và giới hạn công nghệ Quản lý Quản lý project, tài nguyên, rủi ro và thay đổi Giao tiếp Làm việc với các ptv (phân tích viên) khác, ltv (lập trình viên) và người dùng Chuyên gia phân tích hệ thống? Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 12 Phương pháp luận phổ biến để phân tích HTTT là sử dụng vòng đời phát triển của hệ thống (systems development life cycle – SDLC) Môn này sẽ PT&TK HT theo vòng đời phát triển hệ thống gồm 4 bước Phương pháp luận SDLC Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 13 Lựa chọn và lập kế hoạch Phân tích Thiết kế Triển khai và vận hành Mỗi pha có mục tiêu và sản phẩm cụ thể và được dùng là đầu vào của pha tiếp theo Phương pháp luận SDLC Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 14 Lựa chọn và lập kế hoạch dự án Lập ra danh sách dự án và lựa chọn dự án khả thi Lập kế hoạch cho dự án đó Phân tích Xác định yêu cầu chi tiết của hệ thống Đưa ra bản mô tả các giải pháp thiết kế sơ bộ khác nhau đáp ứng yêu cầu Nếu một trong các giải pháp được chọn thì ptv lập kế hoạch yêu cầu phần cứng và phần mềm cần thiết để xây dựng HT Các pha trong SDLC Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 15 Thiết kế Chuyển bản mô tả giải pháp thành đặc tả hệ thống logic và vật lý Kết quả: Bản đặc tả hệ thống vật lý Triển khai và vận hành Chuyển bản đặc tả vật lý thành hệ thống hoạt động, kiểm thử và đưa vào hoạt động Các pha trong SDLC Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 16 Phương pháp luận thiết kế mẫu Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 17 Ngoài cách sử dụng như một phương pháp luận độc lập, thiết kế mẫu còn có thể được kết hợp với SDLC Phần mềm hỗ trợ phát triển HTTT Có thể sử dụng trong suốt SDLC Công cụ CASE bao gồm: Công cụ để vẽ biểu đồ Tự động sinh báo cáo và GUI để dễ dàng tạo mẫu Công cụ phân tích tự động kiểm tra các đặc tả chưa hoàn chỉnh, thiếu nhất quán hoặc sai của biểu đồ, form và báo cáo Tính năng tự động tạo ra tài liệu kỹ thuật và hướng dẫn sử dụng người dùng Tính năng tự sinh mã Quá trình thiết kế mẫu dễ dàng Công cụ CASE Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 18 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 19 NGUỒN PHẦN MỀM Nguồn phần mềm Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 20 Sử dụng dịch vụ của cty cung cấp dịch vụ CNTT khi: Tổ chức thiếu tài nguyên để phát triển hệ thống tại chỗ Các phần mềm thương mại có sẵn trên thị trường không đáp ứng yêu cầu Nhà cung cấp dịch vụ sẽ phát triển ứng dụng phù hợp với yêu cầu của tổ chức và sử dụng trong nội bộ tổ chức đó Thuê chuyên gia tư vấn về lĩnh vực cần xây dựng Phát triển, lưu trữ và chạy ứng dụng Ngoài ra còn cung cấp các dịch vụ khác Công ty cung cấp dịch vụ CNTT Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 21 Sản phẩm chiếm thị trường khá lớn: từ các phần mềm thông dụng (office, kapersky…) đến các sản phần dùng cho một ngành công nghiệp cụ thể Gồm 2 loại phần mềm Turnkey – Không thể thay đổi để phù hợp với yêu cầu sử dụng Non-Turnkey – Có thể thay đổi Phần mềm thương mại có thể đáp ứng đến 70% nhu cầu của tổ chức Nhà cung cấp phần mềm thương mại Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 22 Phần mềm gồm nhiều mô-đun tích hợp với nhau Mỗi mô-đun thực hiện một chức năng nghiệp vụ riêng Kế toán, Phân phối, Sản xuất… Việc tích hợp tập trung vào quy trình hơn là chức năng Cho phép tổ chức tích hợp các quy trình nghiệp vụ thành một hệ thống duy nhất Các giao dịch thực hiện liền mạch Nhà cung cấp dịch vụ ERP SAP Oracle Hệ thống hoạch định nguồn tài nguyên doanh nghiệp (ERP) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 23 Ưu điểm CSDL duy nhất Bảo đảm cho dữ liệu được chính xác và nhất quán Giảm chi phí bảo trì Các mô-đun hoạt động mềm dẻo Có thể bổ sung thêm các mô-đun khác nếu cần thiết Các mô-đun bổ sung có thể tích hợp ngay lập tức vào hệ thống Nhược điểm Cài đặt phức tạp Phụ thuộc vào kinh nghiệm của tư vấn viên Thông thường tổ chức phải thay đổi quy trình nghiệp vụ để phù hợp với hệ thống Hệ thống hoạch định nguồn tài nguyên doanh nghiệp (ERP) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 24 Thuê hoặc mua quyền sử dụng phần mềm từ nhà cung cấp bên thứ ba Ứng dụng được chạy trên server Ứng dụng được truy cập thông qua Internet hoặc VPN Ứng dụng được cài đặt và bảo trì bởi nhà cung cấp dịch vụ Người dùng trả tiền sử dụng theo lần hoặc theo tháng Dịch vụ bao gồm cả phần cứng cũng như phần mềm Ví dụ: Google Apps Salesforce.com Điện toán đám mây (Cloud Computing) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 25 Dự đoán đến năm 2013, 12% các giao dịch điện tử sẽ được thực hiện bằng điện toán đám mây (lên đến 160 tỉ đô la) Vì sao sử dụng điện toán đám mây Không cần đến nhân viên IT nội bộ Truy cập đến ứng dụng dễ dàng, mọi nơi, mọi lúc Chi phí thấp Không tốn thời gian lắp đặt hệ thống Điện toán đám mây (Cloud Computing) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 26 Sử dụng miễn phí Bao gồm cả mã Được đóng góp bởi các thành viên yêu thích lập trình Một số ví dụ: Linux Firefox mySQL Phần mềm mã nguồn mở Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 27 Hệ thống hoàn chỉnh Hệ thống kết hợp Một số thành phần mua và một số thành phần phát triển tại chỗ Phát triển phần mềm tại chỗ (In-House Development) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 28 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 29 ĐÁNH GIÁ PHẦN MỀM THƯƠNG MẠI Giá cả So sánh với chi phí phát triển phần mềm tại chỗ Chức năng Khả năng hỗ trợ của nhà phân phối Độ tin cậy của nhà phân phối Tính mềm dẻo Dễ dàng tùy chỉnh Tài liệu Tài liệu hướng dẫn sử dụng và tài liệu kỹ thuật Thời gian đáp ứng Thời gian hệ thống hoàn thành tác vụ Dễ dàng cài đặt Tiêu chí lựa chọn Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 30 Thông tin từ nhà phân phối Tài liệu đi kèm sản phẩm Tài liệu tiếp thị kỹ thuật Hỏi thêm thông tin nhà phân phối Gửi yêu cầu đề xuất (request for proposal - RFP) cho nhà phân phối Chạy thử ứng dụng Bản hoàn chỉnh đã được cài đặt sẵn cho tổ chức khác Bản đề mô Thu thập phản hồi từ những người đã dùng Sử dụng dịch vụ kiểm thử phần mềm độc lập (independent software testing services) Thu thập thông tin Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 31 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 32 Nếu bạn đang cân nhắc giữa phần mềm khác nhau thì hãy thu thập thông tin theo các tiêu chí, đánh trọng số cho các tiêu chí để tìm được phần mềm phù hợp nhất Thuê ngoài là chuyển trách nhiệm phát triển và vận hành hệ thống thông tin cho công ty khác Ví dụ: Thuê công ty khác phát triển và chạy ứng dụng trên máy của họ (call center services, e-mail services, hay payroll.) Thuê công ty khác chạy ứng dụng trên máy tính của tổ chức Lợi ích của outsourcing Giảm chi phí Hưởng dịch vụ tốt Tập trung vào chiến lược của công ty Có thể xem xét đến việc thuê ngoài trong quá trình phân tích hệ thống Thuê ngoài (outsourcing) Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 33 Sử dụng các tài nguyên phần mềm đã được viết sẵn trong ứng dụng mới Thường sử dụng trong phát triển phần mềm hướng đối tượng và hướng thành phần Sử dụng lại đối tượng Nâng cao hiệu suất Giảm lỗi Giảm các công việc lặp lại Kế hoạch dùng lại phải phù hợp với chiến lược kinh doanh của công ty Sử dụng lại Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 34 Các cách tiếp cận Tái sử dụng tự do Tái sử dụng được khuyến khích Tái sử dụng có quản lý Tái sử dụng được thiết kế Sử dụng lại Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 35 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 36 TỔNG KẾT BÀI HỌC Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 37 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 38 Hệ thống (system) là một tập quy trình nghiệp vụ liên quan đến nhau, các quy trình này kết hợp với nhau để thực hiện một mục đích cụ thể PTTK HT là quy trình để phát triển và bảo trì một ứng dụng hệ thống thông tin với mục đích nâng cao hiệu quả công việc PTTK HT được thực hiện dựa vào quy trình công nghệ phần mềm Quy trình công nghệ phần mềm gồm phương pháp luận, công nghệ và công cụ Chuyên gia PT HT đóng vai trò cốt lõi trong việc phát triển hệ thống Tổng kết bài học Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 39 Có rất nhiều cách để có phần mềm Cần thu thập thông tin theo các tiêu chí, đánh trọng số cho các tiêu chí để tìm được phần mềm thương mại phù hợp nhất Thuê ngoài là chuyển trách nhiệm phát triển và vận hành hệ thống thông tin cho công ty khác Có thể xem xét đến việc thuê ngoài trong quá trình phân tích hệ thống Sử dụng lại giúp nâng cao hiệu suất, giảm lỗi, giảm công việc lặp lại Tổng kết bài học Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 40 Giới thiệu qua về 6 bài workshop Cách chấm điểm workshop Giới thiệu workshop Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 41 Công việc Phân nhóm 4-5 SV một nhóm Chọn nhóm trưởng Hướng dẫn chọn tổ chức tìm hiểu Bất kỳ tổ chức nào Không nhất thiết phải có HTTT sẵn có Có thể đến khảo sát tại tổ chức hoặc hỏi tại nhà (Xem Workshop 0) Giới thiệu workshop Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 42 Kết quả Danh sách nhóm và nhóm trưởng (Lý thuyết 1) Đăng ký tổ chức tìm hiểu (Lý thuyết 2) Tên tổ chức Mô tả sơ lược tổ chức Workshop 0 Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 43 HẾT BÀI !!! Tổng quan về phân tích thiết kế HTTT & Nguồn phần mềm 44