Đặt vấn đề Ở Việt Nam hiện nay, có rất nhiều công ty đang sử dụng một trong các quy trình phần mềm của phƣơng pháp linh hoạt (agile method) sản xuất phần mềm. Các phƣơng pháp linh hoạt điển hình đƣợc áp dụng ở Việt Nạm hiện này là Scrum và eXtreme Programming. Đây là hai phƣơng pháp truyền thống của phƣơng pháp linh hoạt. Và hiện nay cộng đồng phát triển phần mềm sử dụng phƣơng pháp linh hoạt đang hƣớng tới một số phƣơng pháp phát triển phần mềm mới hơn nhƣ Crystal, Dynamic Systems Development, Feature-Driven Development và thêm nữa là phƣơng pháp Kanban.
Kanban dịch từ tiếng Nhật có nghĩa là thẻ thông tin [9]. Còn đúng chính xác thuật ngữ chuyên môn của môn "Quản lý công học" và kinh tế học thì phải là "Phƣơng pháp quản lý Kanban " (Kanban method ). Đây là một thuật ngữ bắt nguồn từ công ty chế tạo xe hơi Toyota. Nói đến công ty Toyota thì ngoài vấn đề kỹ thuật đặc sắc của họ phải nói đến phƣơng pháp quản lý rất hiệu quả của họ mà ngƣời Nhật gọi là "Phƣơng thức quản lý Toyota", một phƣơng thức quản lý xí nghiệp thông minh tạo đòn bẩy phát triển kinh tế của Nhật bản và là tiêu chuẩn quản lý xí nghiệp của các tập đoàn sản xuất lớn của Nhật hiện tại.
Phƣơng thức quản lý Toyota gồm có 2 trụ cột đó là "Phƣơng thức quản lý KANBAN" và "Tự động hóa" [9]. Phƣơng pháp Kanban tại Toyota là 1 phƣơng tiện báo có nhu cầu, mô ̣t phiế u yêu cầ u có khổ giấ y cỡ A6, trong đó có ghi điạ điể m lấ y hàng, điạ điể m nhâ ̣n hàng, tên và mã số chi tiế t hoă ̣c sản phẩm cầ n có, số “Kanban”, tổ ng số phiế u “Kanban”, ngày xuấ t phiế u, lô ̣ trình và số lƣơ ̣ng chi tiế t đƣơ ̣c xế p trong mô ̣t thùng chƣ́a. Vì vậy, trong khi hệ thống Kanban là một khái niệm tƣơng đối mới trong công nghệ thông tin, nó đã đƣợc sử dụng cách đây hơn 50 năm trong hệ thống sản xuất Tinh gọn (Lean production systems) ở Toyota. Việc sử dụng Kanban trong phần mềm đƣợc đi tiên phong bởi David Anderson, ngƣời mà đã có sự phối hợp chặt chẽ với Don Reinertsen, đã nỗ lực mở rộng các hiều biết về sản xuất Tinh gọn và sử dụng Kanban để trực quan và tối ƣu hóa quy trình làm việc (workflow) trong phát triển, bảo trì và các hoạt động của công nghệ thông tin.
Với sự tập trung nhất quán vào dòng chảy (flow) và bối cảnh (context), Kanban cung cấp một cách tiếp cận ít quy tắc cho Phƣơng pháp linh hoạt và trở thành một phần mở rộng phổ biến cho các phƣơng pháp truyền thống của phƣơng pháp linh hoạt nhƣ Scrum và XP.2 Hƣớng tiếp cận của đề tài 7 (LUAN.dau TIEU LUAN MOI download : skknchat@gmail.dau Đề tài sẽ tập trung vào việc nghiên cứu ứng dụng quy trình phần mềm Kanban và áp dụng phát triển phần mềm quản lý con dấu – phần mềm quản lý công tác nghiệp vụ của ngành Công an. Trong quá trình làm việc tại Văn phòng Công an tỉnh Tuyên Quang tôi đã tham gia phát triển một số dự án phần mềm với quy mô từ nhỏ tới trung bình với vai trò ngƣời phát triển. Dự án đầu tiên là Hệ thống quản lý Vũ khí và Công cụ hỗ trợ trên địa bàn tỉnh Tuyên Quang. Khách hàng là Phòng quản lý Hành chính Công an Tỉnh Tuyên Quang.
Dự án bắt đầu năm 2008 và kết thúc năm 2010, nhƣng đến nay Khách hàng sử dụng vẫn bị khiếm khuyết và đƣơc bảo trì nhiều lần. Dự án thứ hai là Hệ thống Quản lý Vật liệu nổ trên địa bàn tỉnh Tuyên Quang. Khách hàng là phòng Phòng cháy chữa cháy Công an tỉnh Tuyên Quang. Dự án này đã không đƣợc áp dụng vào thực tế do quy trình quản lý và quy trình nghiệp vụ của phòng ban thay đổi, do đó các chức năng phần mềm không còn phù hợp nữa.
Dự án thứ ba là Hệ thống Quản lý vi phạm An toàn giao thông. Khách hàng là phòng Cảnh sát Giao thông Công an tỉnh Tuyên Quang. Đây là một dự án mức trung bình, với mục tiêu là xây dựng hệ thống xử phạt vi phạm hành chính an toàn giao thông đƣờng bộ. Dự án này đƣợc triển khai thực tế từ đầu năm 2012, đến này đã bảo trì 3 lần.
Qua một số dự án đã triển khai, theo tôi các dự án này chƣa thành công. Còn nhiều vấn đề tồn tại trong việc phát triển phần mềm cũng nhƣ việc phân phối phần mềm tới ngƣời sử dụng. Và nguyên nhân chính dẫn đến dự án không thành công nằm ở phía ngƣời quản lý và ngƣời phát triển dự án. Ngƣời quản lý không đƣa ra đƣợc một quy trình làm việc hợp lý nhƣ: - Hệ thống làm việc quá tải dẫn đến chất lƣợng sản phẩm thấp.
Khi nhu cầu làm việc và lƣu lƣợng công việc không cần bằng, có thể tạo ra một số tắc nghẽn trong hệ thống, để kịp đƣa ra sản phẩm đúng tiến độ, một số tắc nghẽn có thể bị bỏ qua hoặc đƣợc giải quyết không triệt để dẫn đến chất lƣợng của phần mềm thấp. - Các chính sách làm việc không rõ ràng dẫn đến các rủi ro trong hệ thống nhƣ: công việc bị tắc nghẽn, việc phát triển bị phụ thuộc vào ngƣời phát triển. Một hệ thống sản xuất phần mềm bao gồm nhiều nhóm làm việc. Sản phẩm cuối cùng đƣợc tạo ra bởi sự kết hợp đồng bộ các phần công việc của mỗi nhóm.
Để các phần công việc của mỗi nhóm là đồng bộ thì phải có các chính sách rõ ràng cho mỗi nhóm và mỗi giai đoạn của quy trình sản xuất. Khi có sự thay đổi về nhân sự, việc phát triển tiếp công việc sẽ không bị phụ thuộc vào ngƣời trƣớc đó, hệ thống sẽ không bị tắc nghẽn vì lý do này.dau TIEU LUAN MOI download : skknchat@gmail.dau - Không đƣa ra đƣợc các dự đoán cho quy trình làm việc ảnh hƣởng đến thời hạn phát hành. Tạo niềm tin với khách hàng là rất quan trọng. Khách hàng luôn muốn chúng ta đƣa ra lời hứa về thời gian phát hành sản phẩm, và thời gian này phải là ngắn nhất có thể.
Vì vậy một quy trình làm việc tốt thì có thể đƣa ra đƣợc các dự báo nhƣ: điểm tắc nghẽn, điểm cần ƣu tiên, và thời gian có thể hoàn thành xong một hạng mục công viêc. Từ các dự bào này ngƣời quản lý có thể dự đoán đƣợc thời gian phát hành sản phẩm cho khách hàng. - Quy trình làm việc không trực quan làm cho các bên liên quan nhƣ khách hàng, chủ sở hữu sản phẩm, ngƣời phát triển… phối hợp với nhau không tốt. Trong quá trình làm việc, ngƣời quản lý luôn phải biết nhân viên của mình có đang làm việc hiệu quả không, các thành viên luôn phải kết hợp làm việc cùng nhau.
Và khách hàng luôn muốn biết sản phẩm có đúng nhƣ yêu cầu của mình không. Khi quy trình làm việc luôn đƣợc nhìn thấy trƣớc măt (giả sử đƣợc ghi rõ trên một tấm bảng), thì tất cả mọi ngƣời có thể nhìn thấy ai đang làm việc gì, việc đó đang ở vị trì nào trong giai đoạn phát triển, chỗ nào bị tắc nghẽn. Có thể rút ra đƣợc một số kinh nghiệm khi triển khai các dự án trên là: - Việc liên hệ với khách hàng thƣờng xuyên là điều rất quan trọng, bởi khách hàng là ngƣời am hiểu nghiệp vụ nhất, đồng thời họ biết những gì mà phần mềm phải đáp ứng. Ngoài ra khách hàng đóng vai trò quan trọng trong việc kiểm thử phần mềm, phát hiện lỗi cũng nhƣ các chức năng không phù hợp.
- Việc quản lý dự án phải đƣợc chú trọng. Để làm đƣợc điều này, ngƣời quản lý cần có kinh nghiệm, khả năng lập kế hoạch tốt và nhanh nhạy trong việc xử lý các tình huống. - Cần phải có một quy trình phát triển phần mềm hiệu quả. Quy trình tốt sẽ làm tăng khả năng làm việc của các thành viên trong nhóm, chuẩn hóa các tài liệu, từ đó giảm bớt các tác động tiêu cực khi đội ngũ phát triển thay đổi.
Từ việc rút ra các điều trên, trong một dự án mà chúng tôi đang triển khai, tôi quyết định thử nghiệm đƣa nhóm làm việc của mình vào một quy trình làm việc hoàn toàn mới bằng cách áp dụng phƣơng pháp linh hoạt, mà cụ thể là phƣơng pháp Kanban vào hệ thống phân phối phần mềm của chúng tôi. Do đó đề tài sẽ tiếp cận theo hƣớng nghiên cứu quy trình phần mềm Kanban và áp dụng phát triển phần mềm quản lý con dấu. Đây là phần mềm quản lý việc cấp và sử dụng con dấu trên toàn bộ địa bàn của tỉnh Tuyên Quang. Công tác quản lý con dấu của các cơ quan nhà nƣớc, tổ chức chính trị, tổ chức chính trị - xã hội, tổ chức xã hội - nghề nghiệp, hội quần chúng, tổ chức kinh tế, đơn vị vũ trang, cơ quan, tổ chức nƣớc ngoài v.v, đƣợc lực lƣợng chuyên trách của Công an tiến hành bằng phƣơng pháp thủ công.
Hệ thống hồ sơ này tuy đƣợc rà soát, bổ sung 9 (LUAN.dau TIEU LUAN MOI download : skknchat@gmail.dau thƣờng xuyên nhƣng qua quá trình công tác số lƣợng các hồ sơ, sổ sách này trải qua nhiều thời kỳ, nhiều cán bộ theo dõi quản lý cho nên việc tìm kiếm các hồ sơ, ghi nhận các thông tin về con dấu gây mất rất nhiều thời gian, độ chính xác chƣa cao. Trong thực tế công tác luôn có những yêu cầu đặt ra đối với công tác quản lý con dấu nhƣ: - Tra cứu tìm kiếm thông tin về toàn bộ hồ sơ hoặc thông tin của một con dấu cụ thể; - Thống kê xem cơ quan, tổ chức có bao nhiêu con dấu, đã huỷ, đổi bao nhiêu lần; vấn đề cấp phép sử dụng cho các con dấu; - Báo cáo, so sánh số liệu về con dấu của các cơ quan, tổ chức theo các mốc thời gian khác nhau; - Xem trực tiếp trích yếu các các mẫu dấu trong hồ sơ lƣu trữ. - Vị trí hồ sơ con dấu của cơ quan tổ chức nằm ở đâu trong kho hồ sơ (phục vụ việc tra cứu trực tiếp). - Con dấu tại thời điểm sử dụng đã đã hết hạn hay chƣa (có trƣờng hợp dấu đã hết hạn, đổi nhƣng không làm thủ tục huỷ theo quy định mà vẫn sử dụng).
- Truy nguyên nhanh mẫu dấu đang sử dụng có phải là con dấu đã đƣợc phép sử dụng hay chƣa.