Nhập môn công nghệ phần mềm - Bài tập tuần 4: Quản lý dự án phần mềm & Lập trình với giao diện đồ họa người dùng (GUI)
Bạn đang xem tài liệu "Nhập môn công nghệ phần mềm - Bài tập tuần 4: Quản lý dự án phần mềm & Lập trình với giao diện đồ họa người dùng (GUI)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- nhap_mon_cong_nghe_phan_mem_bai_tap_tuan_4_quan_ly_du_an_pha.pdf
Nội dung text: Nhập môn công nghệ phần mềm - Bài tập tuần 4: Quản lý dự án phần mềm & Lập trình với giao diện đồ họa người dùng (GUI)
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm Bài tập tuần 04 Quản lý dự án phần mềm & Lập trình với giao diện đồ hoạ người dùng (GUI) Mục tiêu - Thực hiện các bài tập (câu hỏi) về nội dung Quản lý dự án phần mềm - Phân rã các chức năng đã xác định thành các nhiệm vụ (task) để xây dựng một kế hoạch dự án phần mềm đơn giản - Lập trình với giao diện đồ hoạ người dùng: o Làm quen với mô hình MVC các thành phần giao diện người dùng o Thiết kế giao diện GUI trên công cụ Netbeans o Viết mã xử lý sự kiện Đánh giá - Hoàn thành các bài tập về nội dung Quản lý dự án phần mềm, cơ bản nắm được nguyên lý, quy trình và các kỹ năng / kỹ thuật trong quản lý dự án - Các nhóm sinh viên xây dựng được biểu đồ Cấu trúc phân chia công việc (Work Breakdown Structure - WBS) - Hoàn thành bài thực hành lập trình với giao diện đồ hoạ người dùng Phần I: Bài 1.1 a) Dự án kết thúc khi? (chọn nhiều) 1. Thiếu kinh phí 2. Hết kinh phí trước thời hạn (Kết thúc thất bại) 3. Không khả thi 4. Quá hạn dự kiến (có làm tiếp cũng không có ý nghĩa gì) 5. Hoàn thành mục tiêu đề ra, nghiệm thu (kết thúc tốt đẹp) trước thời hạn 6. Người quản lý kém b) Một dự án phát triển phầm mềm là thành công khi? 1. Sản phẩm đáp ứng yêu cầu chất lượng 2. Không vượt quá kinh phí dự kiến 3. Hoàn thành trong thời gian dự kiến 4. Tất cả các phương án trên Software Engineering Department - SoICT/HUST Trang 1 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm c) là một yếu tố không biết trước mà khi nó xảy ra thì có thể ảnh hưởng tiêu cực hoặc tích cực đến việc hoàn thành các mục tiêu của dự án. 1. Rủi ro dự án 2. Lập kế hoạch dự án 3. Quản lý nhân sự 4. Yêu cầu người dùng Bài 1.2 a) Chúng ta thấy rằng các hệ thống phần mềm lớn, phức tạp thường được phát triển bởi rất nhiều cá nhân, rất ít người có được bức tranh toàn cảnh về toàn bộ dự án. Vậy, đối với một người làm công, tham gia vào một dự án mà không biết về toàn bộ chức năng của dự án đó thì có hợp lý không? Vì sao? b) Nếu không áp dụng các mô hình vòng đời phần mềm thì có phát triển được phần mềm không? Tại sao? c) Trong phương pháp Agile, việc luôn có đại diện của khác hàng trong nhóm phát triển thì có ưu điểm gì? Phần II: Xây dựng biểu đồ WBS • WBS là một phân rã phân cấp (hierarchical decomposition) của toàn bộ phạm vi công việc sẽ được nhóm dự án thực hiện để hoàn thành các mục tiêu của dự án và tạo ra các sản phẩm bàn giao được yêu cầu. • Các thành phần phân rã ở mức cuối cùng – mức lá nên thoả mãn các tiêu chí: o Tình trạng / tính hoàn tất của công việc có thể đo được hoặc có sản phẩm cụ thể o Thời gian, tài nguyên / chi phí có thể ước lượng được o Thời gian hoàn thành công việc trong giới hạn o Công việc được phân công độc lập (nghĩa là công việc không bị ngừng giữa chừng để chờ kết quả của công việc khác) - Ví dụ: Software Engineering Department - SoICT/HUST Trang 2 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm a) Yêu cầu: Nhóm sinh viên thảo luận và xây dựng WBS đối với dự án phát triển phần mềm trong bài tập môn học. Có thể phân tích theo các chức năng nghiệp vụ hoặc theo các pha trong quá trình phát triển. Trên cơ sở biểu đồ WBS phía trên hãy xây dựng một bản kế hoạch đơn giản như sau: Công việc Thời gian (số giờ làm việc) Số người 1. Công việc 1 1.1 Công việc 1.1 1.2 Công việc 1.2 2. Công việc 2 2.1 Công việc 2.1 2.2 Công việc 2.2 b) Yêu cầu: Xây dựng một bảng quản lý đơn giản các rủi ro với dự án phát triển phần mềm trong bài tập môn học. Ví dụ: Công việc / Xác định rủi ro Quản lý rủi ro Hoạt động Mối nguy Rủi ro Mức độ Chiến lược Biện pháp Mua hàng Hàng bị hư hại khi Không có Trung Giảm thiểu Xây dựng tồn vận chuyển nguyên liệu sản bình kho tối thiểu xuất Software Engineering Department - SoICT/HUST Trang 3 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm (Mức độ có thể đánh giá theo: thấp / trung bình / cao) (Chiến lược có thể lựa chọn: Giảm thiểu rủi ro / Chuyển rủi ro / Loại bỏ rủi ro) Phần III: Thực hành lập trình giao diện đồ hoạ người dùng GUI Background: Model – View – Controller (MVC) là một khuôn mẫu kiến trúc phần mềm. Mẫu thiết kế này cho phép phân tách giữa logic ứng dụng và giao diện người dùng. MVC giúp cho người phát triển phần mềm cô lập các xử lý nghiệp vụ và giao diện người dùng một cách rõ ràng hơn. Phần mềm phát triển theo mẫu MVC tạo nhiều thuận lợi cho việc bảo trì. MVC chia một ứng dụng thành ba phần tương tác được với nhau để tách biệt giữa cách thức mà thông tin được xử lý nội hàm và phần thông tin được trình bày và tiếp nhận từ phía người dùng: • model thành phần dữ liệu của chương trình • view bao gồm các thành phần của giao diện người dùng • controller quản lý sự trao đổi giữa dữ liệu và các xử lý nghiệp vụ trong các thao tác liên quan đến mô hình Bước 1: Khởi động Netbeans -> File -> New Project • Chọn Java trong mục Categories và Java Desktop • Nhấn Next Software Engineering Department - SoICT/HUST Trang 4 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm Bước 2: Tạo JFrame Form - Nhấn chuột phải Project -> chọn New -> chọn JFrame Form -> nhập LoginUI tại Class Name -> chọn Finish - Netbeans cung cấp các điều khiển UI trong cửa sổ Palette, kéo thả các điều khiển này vào khung thiết kế để xây dựng giao diện cho ứng dụng - Trong bài tập này chúng ta sẽ thiết kế một form đăng nhập đơn giản: Software Engineering Department - SoICT/HUST Trang 5 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm - Chú ý đặt tên các điều khiển cho phù hợp để viết mã xử lý dữ liệu trong form. Trong giao diện này có 3 điều khiển: 2 ô textbox và một button. txtUserName, txtPasswd và btnLogin Bước 3: Đăng ký sự kiện - Nhấn chuột phải vào nút Login -> chọn Events -> chọn Action -> chọn actionPerformed - Viết code để xử lý sự kiện - Xây dựng phương thức login() kết nối cơ sở dữ liệu và kiểm tra đăng nhập Software Engineering Department - SoICT/HUST Trang 6 / 7
- Introduction to Software Engineering - Nhập môn Công nghệ phần mềm - Bổ sung thêm xử lý khi nhấn phím Enter cũng kiểm tra đăng nhập: Chạy thử chương trình và kiểm tra kết quả. Nội dung bài tập tự làm • Thực hành xây dựng chương trình java với giao diện đồ hoạ: Liệt kê danh sách người dùng sau khi đăng nhập thành công: HẾT Software Engineering Department - SoICT/HUST Trang 7 / 7