Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 84 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
84
Dung lượng
2,91 MB
Nội dung
ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN o0o PHÁT TRIỂN PHẦN MỀM THEO CẤU PHẦN ĐỀ TÀI: Xây dựng chương trình quản lý sinh viên phòng Lab trung tâm đào tạo vào phát triển nguồn nhân lực Viettel ICT hướng cấu phần Giảng viên HD : Nguyễn Thái Cường Lớp : ĐH KTPM2 – K7 Nhóm thực : Nhóm 13 Thành viên : Nguyễn Thị Hợp Nguyễn Hữu Trượng Chu Văn Công Hà Nội, tháng 12 - 2015 Lời nói đầu Ngày Công nghệ thông tin trở thành phần tất yếu sống người Việc áp dụng phần mềm tin học vào lĩnh vực giúp nâng cao tính hiệu xác công việc, tiết kiệm thời gian giảm bớt mệt nhọc cho người khiến hệ thống công việc hoạt động nhịp nhàng Nhu cầu thực tế xã hội đòi hỏi người phải động sáng tạo để tạo ngày nhiều sản phẩm cho xã hội Đối với công ty lớn việc quản lý vô quan trọng Vì việc tin học hóa khâu quản lý giúp ích nhiều việc phát triển công ty đồng thời giúp việc quản lý hiệu quả, khoa học Tập đoàn viễn thông quân đội Viettel tập đoàn hàng đầu Việt Nam Hầu hết khâu quản lý tập đoàn tin học hóa Phòng Lab phòng làm việc sinh viên mở nên việc tin học hóa chưa tiến hành Việc quản lý tiến hành giấy tờ file excel nên gặp nhiều khó khăn Vì việc xây dựng chương trình quản lý sinh viên vô cần thiết Đề tài quản lý sinh viên đề tài mới, thị trường có nhiều phần mềm có chức tương tự Tuy nhiên với đặc thù đơn vị chương trình quản sinh viên có đặc điểm khác Chương trình quản lý sinh viên xây dựng J2EE sử dụng hệ quản trị sở liệu mysql Phần mềm giúp trung tâm đào tạo phát triển nguồn nhân lực Viettel ICT quản lý sinh viên, điểm danh, đăng kí khóa học/open day giúp việc tìm kiếm không thời gian mà hiệu tính xác cao Chương trình xây dựng hướng cấu phần để linh hoạt hiệu việc xây dựng, sử dụng Chương trình hướng cấu phần nên thuận lợi việc tái sử dụng code việc phát triển hệ thống version sau Để tối ưu hóa trình xây dựng chương trình chúng em có áp dụng design patterns vào thiết kế Tuy cố gắng thời gian kinh nghiệm hạn chế nên chương trình tránh khỏi sai xót Chúng em mong thầy cô bạn góp ý để chương trình hoàn thiện Em xin chân thành cảm ơn giúp đỡ tận tình thầy Nguyễn Thái Cường – Đại học Công nghiệp Hà Nội thời gian qua để giúp em hoàn thành dự án Mục lục Chương I: Tổng quan lập trình hướng cấu phần I Kiến thức tổng quan cấu phần Khái niệm lập trình hướng cấu phần Lập trình hướng cấu phần (component object programing - COP) kiểu lập trình có xu hướng chia hệ thống phần mềm thành thành phần giữ chức khác (mỗi thành phần gọi phận hợp thành) mà kết hợp lại ta thu hệ thống phần mềm hoàn chỉnh Với lập trình hướng cấu phần, chương trình xây dựng cách lắp ráp thành phần phần mềm sử dụng lại, khối tự chứa mã máy (hay gọi khối thành phần thực hiện) Các thành phần gồm thành phần giao diện, kết nối COP nẩy sinh xuất phát từ thực tế thứ có cấu trúc tạo nên từ thành phần khác Điển công nghiệp tự động, hệ thống cấu tạo từ thành phần Ví dụ, để phát triển ô tô phức tạp Ô tô = {Các thành phần ghép nối}; Các thành phần cấu tạo nên ô tô thuộc nhiều loại khác nhau, kích cỡ khác nhau, chức khác nhau, sản xuất nhà sản xuất khác Các thành phần giới hạn từ ốc vít nhỏ đến hệ thống phức tạp động cơ, truyền phát nhanh Trong công nghiệp phần mềm Sản phẩm làm tay chủ yếu Điều dẫn đến tính sản phẩm thấp, chất lượng không đảm bảo, khó tái sử dụng Trong công nghệ phần cứng Mọi sản phẩm tạo dựa phương pháp hướng cấu phần Thực tế cho thấy công nghiệp phát triển nhanh, thu nhiều lợi nhuận Đây lý COP lại quan trọng COP sử dụng nhiều khái niệm OOP (lập trình hướng đối tượng) hai phương pháp độc lập COP phát triển phần mềm cách lắp ráp thành phần OOP nhấn mạnh đến lớp đối tượng COP nhấn mạnh giao diện kết cấu, OOP nhấn mạnh cài đặt viết mã COP không cần biết kiến thức cách thức thành phần cài đặt giao diện chúng, xem thành phần hộp đen (không bị ảnh hưởng thay đổi cài đặt giao diện thành phần), quan tâm đến đầu vào, đầu ra, chức nhiệm vụ hộp đen Ví dụ: Ốc vít dùng để làm gì, làm để sử dụng mà không cần biết làm nào, sử dụng công cụ COP lắp ráp thành phần thông qua giao diện thành phần Sự khác phương pháp lập trình OOP COP bảng sau: COP OOP COP phát triển phần mềm cách lắp OOP nhấn mạnh cài đặt lớp đối ráp thành phần tượng OOP nhấn mạnh đối tượng/lớp COP nhấn mạnh giao diện kết cấu OOP hỗ trợ bao bọc, thừa kế, đa xạ chưa đạt mục đích kế thừa xâm phạm bao bọc, đối tượng lớp không tự vận hành COP kỹ thuật đóng gói phân tán OOP kỹ thuật cài đặt COP hỗ trợ sử dụng lại mức cao OOP hỗ trợ sử dụng lại mức thấp COP nguyên tắc viết OOP bị giới hạn ngôn ngữ OO ngôn ngữ lập trình OOP gồm đối tượng phụ thuộc chặt chẽ COP gồm thành phần gắn kết lỏng vào đối tượng khác qua giao diện kế lẻo thừa (Cha thay đổi, thay đổi theo) COP có thành phần hạt nhân từ lớn OOP gồm đối tượng đơn vị đến nhỏ kiến trúc COP hỗ trợ đa giao diện thiết kế OOP không cung cấp quan hệ rõ ràng hướng giao diện giao diện lớp lớp cha Hình 1:Sự khác cop oop Các ngôn ngữ sử dụng lập trình hướng cấu phần: Visual Basic, Delphi, C#, Java… Tóm lại: Kỹ nghệ phần mềm dựa cấu phần – CBSE (Component Based Software Engineering) gồm hoạt động: o COA (Component Oriented Analysis): Phân tích hướng cấu phần o COD (Component Oriented Design): Thiết kế hướng cấu phần o COP (Component Oriented Programming): Lập trình hướng cấu phần o COM (Component Oriented Management): Quản lý hướng cấu phần Từ cách nhìn tiến trình kỹ nghệ, thành phần phân làm dạng khác nhau: Thành phần đặc tả: Biểu diễn đặc tả đơn vị phần mềm, mô tả tập hành vi đối tượng thành phần Thành phần giao diện: Định nghĩa tập hành vi yêu cầu đối tượng thành phần Thành phần cài đặt: Có thể vận hành độc lập (điều nghĩa độc lập với thành phần khác Nó có nhiều phụ thuộc với thành phần khác) Thành phần cài đặt: Thành phần mã thực thi Thành phần đối tượng: Lớp, gói, CBSE mô hình cho việc phát triển hệ thống phần mềm lớn như: Các ứng dụng phân tán cho doanh nghiệp Các ứng dụng Web – N Tier Các dịch vụ Web (Web Services) Có thể dùng công nghệ Java như: EJB: Enterprise Java Bean, COM: Component Object Model, DCOM: Distributed Component Object Model , CORBA: Hoặc công công nghệ NET Microsoft để phát triển hệ thống phần mềm theo mô hình Ưu điểm COP • Trinh phục phức tạp • Quản lý thay đổi • Tái sử dụng • Lập trình viên chia sẻ với thành phần xây dựng cho nhiều người khác dùng chung • Khi cần, lập trình viên lắp ghép thành phần có sẵn khác để tạo thành chương trình có chức khác Tất cần dựa công nghệ lắp ghép thành phần, tiết kiệm nhiều công sức lập trình Nguyên tắc hướng cấu phần Từ “ cấu phần” dùng ngành công nghiệp máy tính thời gian dài Có điều thực tế, khái niệm cấu phần xuất xung quanh từ trước máy tính đời Một người xây dựng nhà sử dụng cấu phần từ ngành công nghiệp khác để tạo nên nhà Các nhà sản xuất ô tô sử dụng nhiều cấu phần từ ngành công nghiệp khác để tạo xe Trong ngành công nghiệp phần cứng máy tính, kỹ sư thiết kế phần cứng từ đầu cho sản phẩm Chip vi xử lý, chip nhớ, bo mạch, card mạng thứ có sẵn cho việc xây dựng hệ thống máy tính lớn mạnh mẽ Mặc dù có nhiều định nghĩa khác phần mềm hướng cấu phần, nguyên tắc phần mềm cấu phần cũ từ định nghĩa khác [Allen 1997; Garlan 2000; Liskov 2000; Luck 2000; Wang 2000, 2002] Các nguyên tắc công nghệ phần mềm hướng cấu phần nói chung lập trình hướng cấu phần nói riêng • Nguyên tắc 1: cách phân tích thành phần đại diện trừu tượng Chiến lược hiệu để giải vấn đề lớn phức tạp khoa học máy tính "phân chia xử lý" Một ý tưởng phát triển phần mềm hướng cấu phần tạo module phần mềm mà tự khép kín có khả độc lập triển khai Do nhà phát triển phần mềm khác làm việc thành phần độc lập khác mà không cần phải giao tiếp với nhiều, thành phần làm việc liền mạch với Ngoài ra, giai đoạn trì phần mềm, thay đổi số thành phần mà không ảnh hưởng đến tất thành phần khác Khi phân tách hệ thống, phân tách yếu tố thành thành phần riêng biệt số cách sau: - Mỗi thành phần mức chi tiết - Mỗi thành phần giải cách độc lập - Các triển khai thành phần tích hợp để đáp ứng yêu cầu ban đầu hệ thống Sự trừu tượng cách để phân chia sản phẩm cách thay đổi mức chi tiết xem xét.Các thành phần phần mềm cố gắng che giấu số chi tiết để cung cấp thông tin cần thiết cho khách hàng thông qua giao diện họ.Chiến lược trừu tượng hóa sau phân chia thành kiểu điển hình trình phát triển phần mềm.Sự phân chia sử dụng để phân mảnh phần mềm thành thành phần mà kết hợp với nhằm giải vấn đề đặt ra.Sự trừu tượng hỗ trợ đưa lựa chọn tốt cho thành phần Khoa học máy tính trải qua trừu tượng hóa khác Thủ tục trừu tượng cho phép phân chia vấn đề thành đơn vị chức độc lập Dữ liệu trừu tượng kiểu liệu gói gọn đối tượng với tập hợp hoạt động đặc trưng cho hành vi đối tượng Cuốn sách xem xét đến loại thứ ba trừu tượng: trừu tượng thành phần, mức độ trừu tượng cao điều kiện phần mở rộng thông tin hữu ích đóng gói • Nguyên tắc 2: Có thể dùng lại nên đạt trình độ khác Phần mềm tồn nhiều hình thức khác suốt trình kỹ phát triển phần mềm.Tại mô hình giai đoạn phân tích, đặc tả yêu cầu xem hình thức phần mềm.Trong giai đoạn thiết kế, thiết kế kiến trúc thiết kế chi tiết tài liệu phần phần mềm Mã nguồn giai đoạn thực thực thi triển khai code đến khách hàng phần mềm chắn Do đó, phần mềm dùng lại, bao gồm việc tái sử dụng sản phẩm phần mềm định dạng khác Như thảo luận nhanh Chương 1, có năm hình thức thành phần phần mềm, cụ thể là: thành phần đặc tả, thành phần giao diện, thành phần thực hiện, thành phần cài đặt, thành phần đối tượng Mỗi hình thức thành phần phần mềm tái sử dụng giai đoạn khác vòng đời phần mềm • Nguyên tắc 3: Phát triển phần mềm hướng cấu phần tăng độ tin cậy phần mềm Với tiến nhanh chóng phần cứng máy tính, độ tin cậy cao, mạnh mẽ, rẻ phần cứng có sẵn cho ứng dụng khác Độ tin cậy hệ thống tính toán chủ yếu dựa vào tin cậy phận phần mềm Phát triển phần mềm hướng cấu phần lập trình hướng thành phần cung cấp cách có hệ thống để đạt hệ thống đáng tin cậy Do trừu tượng thành phần hệ thống tích hợp thành phần, dễ dàng nhiều để xác nhận yêu cầu quan trọng xác minh an toàn cho hệ thống hướng thành phần Mặt khác, thành phần tái sử dụng thường kiểm nghiệm qua trình xác nhận sử dụng thực tế thời gian dài, đó, chất lượng yên tâm • Nguyên tắc 4: Phát triển phần mềm hướng cấu phần tăng suất phần mềm Phần mềm hướng cấu phần xây dựng cách lắp ráp tái sử dụng thành phần có phát triển từ đầu lần - tái sử dụng thay làm Quá trình nhanh nhiều so với việc phát triển ứng dụng từ đầu hầu hết trường hợp • Nguyên tắc 5: Phát triển phần mềm hướng cấu phần thúc đẩy tiêu chuẩn phần mềm Như Clemens Czyperski mô tả [Clemens 2003], thị phần để phát triển, thành phần tiêu chuẩn phải đặt chỗ Tiêu chuẩn sử dụng để tạo thỏa thuận chi tiết kỹ thuật giao diện vững chắc, tạo điều kiện cho hiệu thành phần, đảm bảo COP mô hình lập trình mới, "plug-and-play" trở thành thực phát triển phần mềm thành phần phần cứng Tại COP quan trọng Hàng trăm năm qua, ngành công nghiệp áp dụng tiêu chuẩn thành phần công cụ lắp ráp hợp lý để tăng tốc độ phát triển sản phẩm phức tạp Đây cách mạng Công nghiệp, làm thay đổi đáng kể chất sản xuất, nơi mà máy móc nước nguồn lượng khác thay cho sức người động vật, nơi công nhân chưa có tay nghề thay công nhân lành nghề, sản phẩm lớn làm lắp ráp máy thay cho sản phẩm làm tay Tuy nhiên riêng ngành công nghiệp phần mềm, sản phẩm chủ yếu sản phẩm làm thủ công Năng suất làm việc thấp, chất lượng công việc không đảm bảo dự án chủ yếu bị dừng lại Hiện tượng gọi “Cuộc khủng hoảng phần mềm” Cũng phát triển công nghệ phần cứng, chi phí phát triển ứng dụng cho máy tính chủ yếu phần mềm Vấn đề quan trọng ngành công nghệ phần mềm làm để tạo phần mềm chất lượng hiệu Xây dựng thành thành phần kỹ sư phần mềm nhìn nhận công nghệ quan trọng để giải “Cuộc khủng hoảng phần mềm” Cuộc cách mạng công nghiệp phần mềm xuất dựa công nghệ phần mềm hướng thành phần Có số lý để giải thích COP ( Component Oriented Programming) lại quan trọng COP cung cấp mức độ trừu tượng cao Hiện có số lượng lớn thành phần, thư viện hỗ trợ tái sử dụng việc phát triển ứng dụng cho lĩnh vực khác Và mục tiêu COP : Giải phức tạp, quản lý thay đổi, tái sử dụng Giải phức tạp Chúng ta sống giới phức tạp thời đại bùng nổ thông tin Theo nhóm nghiên cứu trường đại học Berkeley năm 2000, “Thế giới sản xuất từ đến hai exabytes ( exabytes = 1018bytes) thông tin năm, khoảng 250 MB cho người đàn ông, người phụ nữ đứa trẻ trái đất Như khoa học máy tính, kích thước độ phức tạm tăng lên đáng kể (j) Profile – lý lịch (k) Project – dự án (l) Shift – ca (m) Shiftchange – đổi bù ca (n) Student – học sinh (o) Subject – môn học (p) Timetable – lịch học (q) Trainee – học viên (r) User – người dùng Giao diện chương trình - Login - Màn hình cho sinh viên - Màn hình cho quản lý IV Cấu phần hệ thống Sơ đồ cấu phần hệ thống Giao diện Các thành phần css, jquery, plugin, images sử dụng lại nhiều lần giao diện nên tách thành file riêng để sử dụng lại tiện lợi hiệu Sử dụng thư viện boostrap để làm giao diện nhanh đẹp MVC Hệ thống xây dựng theo mô hình MVC tách riêng thành phần model, view, controller Lớp kết nối Mỗi lần truy xuất sở liệu cần kết nối đến database lần cần kết nối lại viết lại câu lệnh kết nối lần tốn công giảm hiệu hệ thống Giải pháp: Kết nối xây dựng thành lớp riêng để sử dụng lại đồng thời sử dụng design patterns để quản lý kết nối tránh tạo kết nối nhiều lần giảm hiệu hệ thống Thao tác thêm, sửa, xóa, tìm kiếm Tất trang web quản lý thao tác bao gồm thêm, sửa, xóa đồng nghĩa với việc lần thực thao tác phải viết lại code lần tốn thời gian công sức Giải pháp: Xuất phát từ yêu cầu thêm, sửa, xóa tách thành cấu phần riêng Lớp nào, trang cần sử dụng gọi cấu phần truyền vào tham số để thực thao tác mong muốn Thao tác import, export từ excel Cũng thao tác thêm, sửa, xóa thao tác import, export sử dụng nhiều nơi Giải pháp: Tách import export thành cấu phần riêng để gọi sử dụng lại Thư viện J2EE J2EE hỗ trợ nhiều thư viện để người sử dụng dễ dàng việc xây dựng website Đó cấu phần xây dựng sẵn hỗ trợ công việc định để người dùng gọi sử dụng cách dễ dàng Trong chương trình sử dụng thư viện J2EE như: struts, jdbc, thư viện để import, export file excel,… Chương III: Cài đặt chương trình I Công nghệ sử dụng Chương trình xây dựng J2EE sử dụng struts2 framework với cấu trúc MVC Hệ quản trị sở liệu MYSQL Áp dụng design patterns vào thiết kế cài đặt chương trình Sử dụng Subversion để quản lý source code II Các mẫu design patterns sử dụng chương trình Singleton Áp dụng singleton vào class kết nối chương trình để đảm bảo kết nối khởi tạo lần nhằm tăng hiệu hệ thống Façade Face sử dụng để che dấu phức tạp hệ thống cung cấp giao diện để người dùng truy cập vào hệ thống Mẫu áp dụng tất module Proxy Hệ thống xây dựng theo mô hình MVC lớp action đại diện cho lớp implement nhằm bổ sung phương thức cho lớp implement trước thực phương thức Iterator Sử dụng để duyệt liệu mà không cần quan tâm đến kiểu liệu Áp dụng để đọc hiển thị liệu lên giao diện Observer Observer cho phép đối tượng lắng nghe phản ứng có thông báo từ đối tượng khác Tức đối tượng gửi thông báo, đối tượng lắng nghe phản ứng lại với thông báo Áp dụng thêm xóa học viên hệ thống tự đông thêm xóa tài khoản cho học viên thêm học viên vào dự án status học viên tự động chuyển sang làm đồ án Command Mẫu Command đóng gói yêu cầu đối tượng, làm cho truyền tham số, lưu trữ history list thao tác theo cách thức khác Áp dụng đóng gói phương thức thêm, sửa, xóa, lấy liệu, search, import, export thành đối tượng đối tượng sử dụng chung III Cài đặt cấu phần hệ thống Giao diện - Tách riêng file css, jquery, plugin, images để tất giao diện khác cần dùng sử dụng chung Sử dụng thư viện boostrap để làm giao diện nhanh đẹp MVC - Hệ thống xây dựng theo mô hình MVC tách riêng thành phần model, view, contronler Lớp kết nối - Kết nối xây dựng thành lớp riêng để sử dụng lại - Có lớp kết nối tùy ý người dùng sử dụng Có thể thay lớp kết nối bình thường lớp sử dụng file config Thao tác thêm, sửa, xóa, tìm kiếm - Tất trang web quản lý thao tác bao gồm thêm, sửa, xóa đồng nghĩa với việc lần thực thao tác phải viết lại code lần tốn thời gian công sức Xuất phát từ yêu cầu thêm, sửa, xóa tách thành cấu phần riêng Lớp nào, trang cần sử dụng gọi cấu phần truyền vào tham số để thực thao tác mong muốn Thao tác import, export từ excel - Cũng thao tác thêm, sửa, xóa thao tác import, export sử dụng nhiều nơi nên tách thành cấu phần riêng Thư viện J2EE - Sử dụng thư viện J2EE để hỗ trợ xây dựng chương trình như: struts, jdbc, thư viện để import, export file excel,… Chương IV: Tổng kết, hướng phát triển tài liệu tham khảo I Tổng kết Đứng trước xu hướng phát triển nhanh mạnh công nghệ thông tin giới công nghệ thông tin nước nhà, tin học hóa quản lý vô quan trọng thiết Nó giúp cho quan doanh nghiệp giải công việc cách nhanh chóng sai sót Những ứng dụng sở liệu giải vấn đề thiết nêu Phát triển phần mềm hướng cấu phần phương pháp hay hiệu Nó giúp tái sử dụng code hỗ trợ cho phát triển phần mềm version sau Tuy cố gắng thời gian kinh nghiệm chưa có nhiều nên nội dung tìm hiểu chương trình không tránh khỏi sai xót định Kính mong thầy cô bạn đóng góp ý kiến để nội dung hoàn thiện Chúng em xin chân thành cảm ơn II Hướng phát triển Ở version sau website sẽ: - Hoàn thiện chức xây dựng Thêm chức cho phép sinh viên nộp hồ sơ vào Lab online qua mạng Phục hồi liệu lưu III Tài liệu tham khảo http://thuvienhoctap.net/labd.aspx?lid=808 http://123doc.org/document/2425154-phat-trien-phan-mem-theo-huong-cauphan.htm http://voer.edu.vn/m/gioi-thieu-lap-trinh-huong-thanh-phan/48272631 Software architecture design patterns in Java – Partha Kuchana Design patterns elements of reusable object – oriented software produced by KenvinZhang http://laptrinh.vn/d/4346-design-pattern-la-gi-huong-dan-design-pattern.html http://www.tutorialspoint.com/design_pattern/design_pattern_overview.htm https://www.youtube.com/playlist? list=PLlSyE2TKmdTS9ebF9L4NOL5ucgWYozXxb [...]... kích thước và độ phức tạp của hệ thống phần mềm tăng lên, việc xác định và quản lý phù hợp các mối liên hệ giữa các thành phần của hệ thống sẽ trở thành trọng tâm COP cung cấp một giải pháp quản lý để đối phó với sự phức tạp của phần mềm, sự thay đổi liên tục của hệ thống và các vấn đề về tái sử dụng phần mềm COP là mô hình thực tế để phát triển hệ thống phần mềm lớn Ví dụ như các doanh nghiệp có quy... hiệu quả để thực hiện theo các nguyên tắc cơ bản kỹ thuật phần mềm nhằm đối phó với các thay đổi : lên kế hoạch cho sự thay đổi, thiết kế cho sự thay đổi và xây dựng các thay đổi Phần mềm sẽ dễ dàng thích ứng với những yêu cầu mới và các thay đổi mới Các kỹ sư phần mềm đã đi đến thống nhất rằng cách tốt nhất để đối phó với các thay đổi liên tục là xây dựng hệ thống ra các thành phần để có thể tái sử... nghĩa là phần source code của một thành phần phần mềm được cung cấp, được nghiên cứu, tái sử dụng, điều chỉnh hoặc sửa đổi Tái sử dụng hộp đen được dựa trên nguyên tắc ẩn thông tin Các giao diện cụ thể cho các dịch vụ người dùng có thể yêu cầu từ một thành phần Các thành phần cung cấp việc thực hiện các giao dịch mà khách hàng thao tác Miễn là các giao diện này không thay đổi, các thành phần có thể... ngành công nghệ phần mềm Các yêu cầu người dùng thay đổi, thay đổi thông số kỹ thuật, thay đổi nhân sự, thay đổi công nghệ, thay đổi ngân sách và còn nhiều nguyên nhân thay đổi khác Một trong những nguyên tắc cơ bản của kỹ thuật phần mềm là để nhấn mạnh tầm quan trọng của quản lý các thay đổi Điều quan trọng cần nhấn mạnh trong kiến trúc và thiết kế của phần mềm phụ thuộc giữa vào các thành phần và việc... dụng phù hợp với một tiêu chuẩn và kiến trúc plug-in Tái sử dụng Một phần mềm phải cho phép tái sử dụng thiết kế và thực hiện một việc gì đó và phải được sử dụng lại trong những hoàn cảnh khác nhau Điều này sẽ làm tăng năng suất làm việc, cải thiện chất lượng phần mềm vv… Có nhiều cấp độ khác nhau trong việc tái sử dụng phần mềm Ví dụ : + Sao chép mã nguồn – Đây là cấp thấp nhất của việc tái sử dụng... 1 Phát biểu bài toán Hiện nay việc quản lý sinh viên hàng ngày của CBCNV tại Trung tâm đào tạo và phát triển người nhân lực Viettel ICT đang gặp nhiều khó khăn do phải thực hiện thủ công và không có công cụ để quản lý, theo dõi lịch học theo kế hoạch cũng như thời gian làm việc thực tế của từng sinh viên Căn cứ trên thực tế thực hiện công việc cũng như chỉ đạo của ban lãnh đạo Trung tâm đào tạo và phát. .. thước của phần mềm theo thời gian Bảng trên cho thấy sự so sánh của một số hệ điều hành về kích thước của chúng Ký tự đầu tiên là tên phiên bản , thứ hai là kích thước của mã nguồn (1KB=1000 bytes, 1MB = 1000000 bytes) Sự so sánh trong mỗi cột có ý nghĩa thực sự, trong khi giữa các cột không cho thấy nhiều ý nghĩa Và thật may mắn, COP cũng cấp một cách hiệu quả để đối phó với sự phức tạp của phần mềm :... nếu cấu trúc bên trong các lớp thư viện này thay đổi Ví dụ, trong một ngôn ngữ hướng đối tượng (OOP) như C++ hay Java, các lớp thư viện được kết hợp thực hiện với các lớp cơ sở Những thay đổi bất kỳ trong các lớp cơ sở sẽ phá vỡ kết cấu các lớp thư viện Hơn nữa mức độ tái sử dụng trong ngôn ngữ cụ thể, không thể tái sử dụng trên các ngôn ngữ khác COP hỗ trợ cấp độ cao nhất của việc tái sử dụng phần mềm. .. Đăng nhâp Báo cáo thống kê Quản lý dự án 3 Mối quan hệ giữa usecase với actor STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Usecase - Xem thời khóa biểu - Tra cứu - Đổi mật khẩu - Đăng nhập - Đăng ký khóa học/openday/phỏng vấn - Quản lý thành viên - Cấp lại mật khẩu - Quản lý điểm danh - Quản lý sinh viên - Quản lý học viên - Quản lý khóa học - Quản lý Openday/phỏng vấn - Tra cứu - Đăng nhâp - Báo cáo thống... trên thực tế thực hiện công việc cũng như chỉ đạo của ban lãnh đạo Trung tâm đào tạo và phát triển người nhân lực Viettel ICT, bài toán đặt ra hướng tới tin học hóa các nghiệp vụ đang thực hiện thủ công để giải quyết những khó khăn trong công tác quản lý tiến độ công việc cá nhân tại Trung tâm đào tạo và phát triển người nhân lực Viettel ICT: - Tin học hóa quá trình điểm danh - Tin học hóa quy trình ... khác phần mềm hướng cấu phần, nguyên tắc phần mềm cấu phần cũ từ định nghĩa khác [Allen 1997; Garlan 2000; Liskov 2000; Luck 2000; Wang 2000, 2002] Các nguyên tắc công nghệ phần mềm hướng cấu phần. .. trường hợp • Nguyên tắc 5: Phát triển phần mềm hướng cấu phần thúc đẩy tiêu chuẩn phần mềm Như Clemens Czyperski mô tả [Clemens 2003], thị phần để phát triển, thành phần tiêu chuẩn phải đặt chỗ... nghệ phần cứng, chi phí phát triển ứng dụng cho máy tính chủ yếu phần mềm Vấn đề quan trọng ngành công nghệ phần mềm làm để tạo phần mềm chất lượng hiệu Xây dựng thành thành phần kỹ sư phần mềm