Các kỹ thuật để thu thập dữ liệu cho ứng dụng
Do mỗi giai đoạn phát triển hệ thống đều đòi hỏi có sự trao đổi giữa nhà phát triển và người dùng để nhận được thông tin có ích. Mỗi giai đoạn cần tìm kiếm một dải rộng các câu hỏi về ứng dụng. Khi phân tích tính khả thi, các câu hỏi tương đối rộng và tổng ...
Do mỗi giai đoạn phát triển hệ thống đều đòi hỏi có sự trao đổi giữa nhà phát triển và người dùng để nhận được thông tin có ích. Mỗi giai đoạn cần tìm kiếm một dải rộng các câu hỏi về ứng dụng. Khi phân tích tính khả thi, các câu hỏi tương đối rộng và tổng quát như: đâu là phạm vi của vấn đề, cách tốt nhất để tự động hoá là gì, công ty có cố gắng phát triển ứng dụng này không, công ty có thể hổ trợ việc phát triển ứng dụng không?...thì khi phân tích yêu cầu chúng ta tìm hiểu các thông tin liên quan ứng dụng là gì,như: các dữ liệu cần thiết là gì, các xử lý nào được tiến hành và các thông tin chi tiết liên quan?... Như vậy, làm thế nào để chúng ta thu thập đầy đủ các thông tin để phục vụ cho phát triển ứng dụng?
1 . Phỏng v ấn
Phỏng vấn là việc tập hợp một số lượng ít người - thường với một hoặc hai người - cho một thời gian cố định với một mục đích cụ thể. Trong quá trình phỏng vấn, các câu hỏi có thể được thay đổi. Bạn có thể đánh giá được cảm nhận của họ, động cơ và thói quen đối với các phòng ban, quá trình quản lý, ứng dụng hoặc các thực thể khác đáng chú ý. Kiểu phỏng vấn được xác định bởi kiểu thông tin yêu cầu. Phỏng vấn nên được dẫn dắt sao cho cả hai bên tham gia đều cảm thấy thoả mãn với kết quả. Được chuẩn bị kỹ đồng nghĩa là hiểu rõ người đang được phỏng vấn, do đó bạn không làm họ bối rối và bạn có thể có vài câu hỏi ban đầu được chuẩn bị cho dù không phải là tất cả.
Một phỏng vấn tốt có bắt đầu, đoạn giữa và kết thúc:
Lúc bắt đầu, bạn tự giới thiệu và đặt các câu hỏi đơn giản. Nên bắt đầu với các câu hỏi tổng quát và không đòi hỏi các trả lời về động cơ cá nhân. Hãy chú ý tới các câu trả lời để tìm ra đầu mối các câu hỏi khác và tính trung thực, thái độ của người được phỏng vấn.
Vào giữa buổi nên tập trung vào chủ đề. Hãy lấy mọi thông tin bạn cần lưu ý, sử dụng các kỹ thuật các bạn đã chọn ban đầu. Nếu xuất hiện một vài thông tin quan trọng, hãy hỏi xem bạn có thể được thảo luận nó sau này.
Vào lúc kết thúc, hãy tóm tắt tất cả các thứ bạn đã nghe và nói cho các phỏng vấn cái gì sẽ xảy ra tiếp. Bạn có thể ghi chép và đề nghị người được hỏi xem xét lại. Tốt nhất là trong thời gian khoảng 48 giờ và có sự chấp thuận của người dùng theo ngày xác định.
Phỏng vấn sử dụng hai kiểu câu hỏi:
Câu hỏi mở là câu hỏi cho nhiều câu trả lời khác nhau. Câu hỏi mở thích hợp cho các mô tả các chức năng ứng dụng hiện tại cũng như đang đề nghị và cho việc xác định cảm nhận ý kiến, và mong đợi về ứng dụng được đề ra. Một ví dụ là: “ Ông có thể nói cho tôi về...” “Ông nghĩ thế nào về...” “Ông có thể mô tả làm thế nào...”
Câu hỏi đóng là câu hỏi mà câu trả lời là “có” hoặc “không” hoặc một câu trả lời cụ thể. Các câu hỏi đóng tốt cho khai thác thông tin thực tế hoặc bắt người dùng tập trung vào phỏng vấn. Ví dụ cho câu hỏi đóng là: “Bạn có dùng các báo cáo hàng tháng không”. Các câu trả lời “Có” có thể được tiếp nối bởi các câu hỏi mở “Ông có thể giải thích...”
Các bước thườngđược tiến hành cho cuộcphỏng vấn
Tiến hành đặt cuộc hẹn phù hợp vớithời gian của phỏng vấn
Chuẩn bị tốt, tìm hiểukỹvề người đượcphỏng vấn
Đúng giờ
Có kế hoạch cho cuộc phỏng vấn
Giới thiệu bản thân và mục đích
Sửdụng câu hỏi mở để bắt đầu
Luôn chú ý vào trả lời
Có kế hoạch cho nội dung chính
Kết hợp câu hỏi đóng và mở
Luôn bám sát các trình bày và phát triển chi tiết
Luôncungcấpcácthôngtinphảnhồi,vídụ:“Chophéptôitrìnhbày lạiđiều ông vừa nói...”
Hạnchế ghi chép nếu thấy khôngtiện
Có kế hoạch kết thúc
Tóm tắt nội dung, yêu cầu hiệu chỉnh
Yêu cầu làm chínhxác, đánhgiá lại ghi chép
Cho biết ngày tháng họ sẽ nhận được báo cáo
Thống nhất lại ngày lấy lại bản hiệu chỉnh
Xácnhận lại lịch làmviệc
Các câu hỏi có thể được đưa ra theo kiểu cấu trúc hoặc phi cấu trúc.
Phỏng vấn có cấu trúc là phỏng vấn trong đó người phỏng vấn đã có danh mục các mục cần duyệt qua, các câu hỏi xác định và các thông tin cần biết xác định.
Phỏng vấn không cấu trúc là phỏng vấn được định hướng bởi câu trả lời. Các câu hỏi phần lớn là câu hỏi mở. Không có một kế hoạch ban đầu, do vậy người phỏng vấn biết các thông tin cần thiết sẽ dùng các câu trả lời từ các câu hỏi mở để phát triển mọi câu hỏi chi tiết hơn về chủ đề.
Phỏng vấn có cấu trúc thích hợp khi bạn biết về các thông tin cần thiết trước khi phỏng vấn. Ngược lại phỏng vấn không cấu trúc thích hợp khi bạn không đoán trước được chủ đề.
Các trường hợp điển hình của phỏng vấn là người khách hàng bắt đầu với phỏng vấn phi cấu trúc để cho bạn nhận thức về miền bài toán. Sau đó bài toán dần dần trở thành có cấu trúc và tập trung vào các thông tin bạn cần để hoàn chỉnh phân tích.
Các thuận lợi và khó khăn của phỏng vấn có cấu trúc và phỏng vấn không có cấu trúc được thể hiện như sau:
Một kỹ năng tốt là phát triển các sơ đồ như là một phần của tài liệu phỏng vấn. Khi bắt đầu lần phỏng vấn mới, bạn nên bàn bạc các sơ đồ và đưa cho họ bản ghi chép để họ có thể kiểm tra sau này. Bạn nhận ngay ý kiến phản hồi về tính chính xác của sơ đồ và hiểu biết của bạn về ứng dụng. Lợi ích của cách tiếp cận này thể hiện cả mặt kỹ năng và tâm lý. Từ khía cạnh kỹ thuật, bạn thường xuyên được kiểm tra lại các vấn đề bạn được nghe. Cho tới khi thời gian phân tích kết thúc, cả bạn và khách hàng đều tin chắc rằng quá trình xử lý ứng dụng là đúng và đầy đủ. Từ khía cạnh tâm lý, bạn làm tăng niềm tin của khách hàng vào khả năng phân tích bằng cách trình bày các hiểu biết của mình. Mỗi khi bạn cải thiện sơ đồ và đi sâu vào phân tích, bạn cũng làm tăng niềm tin của người sử dụng rằng bạn sẽ xây dựng được ứng dụng đáp ứng được nhu cầu của họ.
Các kết quả sử dụng người phỏng vấn nên luôn được trao đổi lại tới người được phỏng vấn trong một thời gian ngắn. Các người được phỏng vấn nên được báo cho một thời hạn đối với việc phỏng vấn. Tuy nhiên bạn có thể xin bố trí bổ sung phỏng vấn trong trường hợp còn nhiều điều cần hỏi hoặc còn nhiều người cần gặp.
Ưu điểm của phương pháp phỏng vấn:
Phỏng vấn thích hợp cho việc nhận các thông tin đảm bảo cả số lượng lẫn chất lượng:
Các kiểu thông tin định tính là các ý kiến, niềm tin, thói quen, chính sách, và mô tả.
Các kiểu về thông tin định lượng bao gồm tần suất, số lượng, định lượng các mục được dùng trong ứng dụng.
Nhược điểm của phương pháp phỏng vấn:
Phỏng vấn và các dạng khác của thu thập dữ liệu có thể làm bạn lạc lối, thiếu chính xác, hoặc thông tin không liên quan, không thích hợp.
Bạn cần học cách đọc ngôn ngữ cử chỉ và thói quen để quyết định được các điều cần thiết cho cùng một thông tin.
Đòi hỏi kỹ năng
Có thể có kết quả thiên vị
Đòi hỏi ba người để kiểm tra kết quả và thuờng không thích hợp với số lượng lớn người
Do vậy, khi sử dụng phương pháp phỏng vấn để thu thập dữ liệu, người phỏng vấn phải hiểu các hành động của người được phỏng vấn để có thể có các hành động tương ứng cho phù hợp. Sau đây là bảng tham khảo các hành vi của người được phỏng vấn và hoạt động tương ứng của người phỏng vấn.
2 . Họp nhóm
Họp nhóm là việc tập hợp ba hoặc nhiều hơn một số người cho một thời hạn nhất định để thảo luận một số chủ đề. Họp nhóm có thể vừa bổ sung và thay thế phỏng vấn. Nó bổ sung phỏng vấn bằng cách cho phép nhóm kiểm tra lại các kết quả phỏng vấn cá nhân. Nó có thể thay thế cho phỏng vấn bằng cách cung cấp một diễn đàn cho các người sử dụng cùng tìm ra các đòi hỏi và các giải pháp cho ứng dụng.
Họp nhóm cũng có thể làm lãng phí thời gian. Nói chung, họp nhóm càng lớn thì càng ít ý kiến nhất trí và thời gian quyết định càng kéo dài. Do vậy, nên có một kế hoạch ban đầu cho họp nhóm. Lịch trình nên được cung cấp trước cho các thành viên. Số lượng các chủ đề nên giữ ở mức độ 1 đến 5 và không mời những người không thích hợp để tránh lãng phí thời gian. Họp nhóm nên có một thời gian cố định và có điểm thống nhất cụ thể với các quyết định cần thiết, không nên kéo dài hơn 2 giờ để có thể đảm bảo được sự chú ý của thành viên. Họp nhóm phù hợp với việc đòi hỏi các tổng quát, tìm kiếm đồng lòng, và tiếp nhận cả thông tin chi tiết và thông tin tóm tắt.
Vậy, ưu điểm của phương pháp họp nhóm:
Có thể tạo ra quyết định,
Nhận được cả thông tin tổng hợp và chi tiết,
Phương pháp tốt cho các yêu cầu bên ngoài,
Tập hợp được nhiều người dùng liên quan,...
Nhược điểm của phương pháp họp nhóm:
Nếu số đại biểu nhiều sẽ tốn thời gian cho việc ra quyết định,
Tốn thời gian,
Các ngắt quảng làm phân tán sự chú ý,
Mời không đúng thành viên dẫn tới chậm có kết quả,
Dễ chuyển sang các chủ đề không liên quan như là chính trị, thể thao,...
3 . Quan sát
Quan sát là hoạt động có thể tiến hành thủ công hoặc tự động như sau:
+ Theo cách thủ công, người quan sát ngồi tại một chỗ và ghi chép các hoạt động, các bước xử lý công việc. Ghi chép hoặc băng ghi hình được dùng để phân tích cho các sự kiện, các mô tả động từ chính, hoặc các hoạt động chỉ rõ lý do, công việc hoặc các thông tin về công việc.
+Theo cách tự động, máy tính sẽ lưu giữ các chương trình thường trú, lưu lại vết của các chương trình được sử dụng, email và các hoạt động khác được xử lý bởi máy. Các file nhật ký của máy sẽ được phân tích để mô tả công việc.
Quan sát có các nhược điểm:
Thời gian của quan sát có thể không biểu diễn cho các công việc diễn ra thông thường,
Ý nghĩ là đang bị quan sát có thể làm thay đổi thói quen thường ngày của người bị quan sát,
Tốn thời gian.
Tuy nhiên, quan sát có các ưu điểm:
Kỹ sư phần mềm có thể nhận được sự hiểu biết tốt về môi trường công tác hiện tại và quá trình xử lý thông qua quan sát.
Kỹ sư phần mềm có thể tập trung vào vấn đề, mà không bị ảnh hưởng bởi người khác.
Các ngăn cách giữa kỹ sư phần mềm và các người được phỏng vấn sẽ được vượt qua bởi quan sát.
Để quan sát có hiệu quả, nên xác định cái gì sẽ được quan sát và xác định thời gian cần thiết cho việc quan sát. Đồng thời, hãy xin sự chấp thuận của cả người quản lý và cá nhân trước khi tiến hành quan sát.
4 . Ấn định công việc tạm thời
Với một công việc tạm thời, ta có được nhận thức đầy đủ hơn về các nhiệm vụ, đồng thời nó cung cấp cho ta kinh nghiệm thực tế. Đầu tiên, ta học các thuật ngữ và ngữ cảnh sử dụng nó. Thời gian tiến hành thường từ 2 tuần đến 1 tháng đủ dài để bạn có thể quen thuộc với phần lớn các công việc thông thường và các tình huống ngoại lệ nhưng không được quá dài để trở thành chuyên gia thực sự đối với công việc.
Công việc tạm thời cho ta cơ sở hình thức hoá các câu hỏi về các chức năng nào của phương pháp hiện thời của công việc sẽ được lưu giữ lại và cái nào sẽ bị loại trừ hoặc thay đổi. Nó cũng là cách thức để trả lời các câu hỏi không thể thực hiện được Bất lợi của công việc tạm thời là tốn thời gian và sự lựa chọn về thời gian có
thể làm tối thiểu hoá vấn đề. Thêm vào đó, người kỹ sư phần mềm có thể có thiên kiến về quá trình xử lý công việc, nội dung làm ảnh hưởng tới công việc thiết kế sau này.
5 . Đ i ều tra qua c âu hỏi
Điều tra qua câu hỏi là xây dựng các câu hỏi để phỏng vấn trên giấy hoặc máy tính. Các câu hỏi được dùng để nhận các thông tin từ số lượng lớn người sử dụng và thường ở dạng khả năng lựa chọn, người trả lời chỉ việc đánh dấu. Các mục câu hỏi, như là phỏng vấn, có thể là câu hỏi mở hoặc câu hỏi đóng nhưng không chỉ rõ tên, dẫn đến các câu trả lời trung thực hơn nhiều phỏng vấn.
Ưu điểm của phương pháp điều tra:
Các trả lời không cần biết tên nên quan điểm và cảm nhận thu được là trung thực,
Có thể tiến hành với nhiều người,
Thích hợp với các câu hỏi đóng và hữu hạn,
Phù hợp với công ty đa văn hoá và có thể tuỳ biến với quy ước địa phương,…
Hạn chế của phương pháp điều tra:
Khó thực hiện lại được,
Các câu hỏi không có trả lời có nghĩa là không thu được thông tin,
Các câu hỏi có thể khó hiểu,
Thực hiện và đánh giá có thể chậm,
Không thể thêm các thông tin khi đã tiến hành công việc,
Thông tin thu được hạn chế trong một phạm vi hẹp,
Chỉ dùng nó như một phương pháp bổ sung,...
6 . Xem xét tài liệu
Khái niệm tài liệu ám chỉ tới các cẩm nang, quy định, các thao tác chuẩn mà tổ chức cung cấp như là hướng dẫn cho các nhà quản lý và nhân viên.
Các tài liệu thực sự hữu ích cho các kỹ sư phần mềm để học về các lĩnh vực mà họ chưa từng có kinh nghiệm. Nó có thể hữu ích cho việc xác định các câu hỏi về quá trình thao tác và sản xuất. Tài liệu đưa ra các thông tin khách quan.
Tuy nhiên, các tài liệu không phải luôn nằm trong công ty, nó có thể là các ấn phẩm kỹ thuật, các báo cáo nghiên cứu,... nên khó cho việc tìm kiếm. Nó còn gây thành kiến và không không cung cấp để có thể nhận biết được quan điểm, động cơ,...
7 . Xem xét phần m ềm
Khi các ứng dụng cũ phải được thay thế các phần mềm mới, việc nghiên cứu các phần mềm đã tồn tại cung cấp cho chúng ta các thông tin về quá trình xử lý công việc hiện thời và các mở rộng có ràng buộc bởi thiết kế phần mềm.
Khuyết điểm chính của việc nhận thông tin từ quan sát phần mềm là tài liệu có thể không chính xác hoặc kịp thời. Thêm vào đó, thời gian có thể bị lãng phí nếu ứng dụng đang bị xoá bỏ.
Phỏng vấn và họp nhóm là phù hợp với mọi loại kiểu dữ liệu do đó chúng thường xuyên được sử dụng.
Quan sát chỉ cung cấp các định hướng thô về mặt độ lớn, nhưng bị hạn chế bởi thời gian. Bởi vì thông tin từ quan sát không có cấu trúc, một vài kỹ năng được dùng cho kỹ sư phần mềm để tạo nên cấu trúc phù hợp với các tình huống. Thông tin có thể không được đầy đủ.
Kỹ thuật đặt câu hỏi có thể hỏi các câu hỏi có cấu trúc. Nếu câu hỏi là mở thì độ đầy đủ có thể thấp. Mức độ nhập nhằng của kỹ thuật đặt câu hỏi nên thấp nhưng ngữ nghĩa câu hỏi có thể không được biên dịch bởi người trả lời. Câu hỏi về độ lớn tại phòng ban hoặc tổ chức thường không thích hợp. Các thông tin về độ lớn của giao dịch hoặc thời gian cho xử lý giao dịch cho các nhân viên nên nhận được các thông tin có nghĩa.
Làm việc tạm thời tương tự quan sát ở chỗ có mức độ không chắc chắn cao kết hợp với các thông tin nhận được. Các thông tin có khuynh hướng hiện tại, phi cấu trúc, và không đầy đủ phụ thuộc vào các thời kỳ công tác. Các nhập nhằng thay đổi từ mức thấp đến mức trung bình phụ thuộc mức độ công việc được tổ chức và định nghĩa tốt đến mức nào. Nội dung ngữ nghĩa có thể thay đổi phụ thuộc các định nghĩa dùng chung trong nhóm làm việc.
Tài liệu cung cấp các thông tin không đầy đủ, phi cấu trúc. Thời gian nghiên cứu thay đổi phụ thuộc vào tài liệu nằm bên trong hay bên ngoài công ty. Các tài liệu bên trong thường liên quan tới các thông tin cũ trong khi tài liệu bên ngoài thường hướng về thông tin hiện tại và tương lai. Các tài liệu bên ngoài mang tính phổ quát và thống nhất trong khi tài liệu bên trong thường thay đổi theo phòng ban.
Phần mềm cung cấp các thông tin cũ, đôi khi là hiện tại được cấu trúc bởi vì đã được tự động hoá. Mức độ nhập nhằng có thể từ thấp đến trung bình. Các thông tin về độ lớn có thể được biểu diễn nhưng nên có kiểm tra chéo khi sử dụng các phương pháp khác.
+ Hệ xử lý giao dịch và các ứng dụng hỏi đáp có thể dùng mọi kỹ thuật.
Họp nhóm và phỏng vấn có ưu thế vượt trội bởi vì chúng gợi ra một phạm vi rộng nhất các đáp ứng trong thời gian ngắn nhất.
Quan sát và ấn định công việc tạm thời hữu dụng cho việc nhận các thông tin nền tảng về vấn đề hiện thời, nhưng cần phải được sử dụng với chỉ định để không gây định kiến với thiết kế ứng dụng.
Các câu hỏi thích hợp với số lượng nhân viên tương đối lớn - lớn hơn 50 - và việc nhận ra các tính chất của người dùng đã xác định, ví dụ, yêu cầu đào tạo của người dùng trong khi phân tích các đặc tính của tổ chức. Nó yêu cầu về màn hình, ví dụ, các kiểu màu sắc khác nhau, các câu hỏi có thể thích hợp cho việc biểu diễn một tập nhỏ các lựa chọn cho người dùng.
+ Hệ hỗ trợ quyết định cũng được coi là có thể dùng cho mọi kỹ thuật, nhưng không phải mọi kỹ thuật đều thích hợp cho mọi tình huống. Hệ hỗ trợ quyết định nói chung được phát triển dành cho các công việc mang tính chất riêng rẽ. Do đó, quan sát hoặc làm việc cùng một hoặc hai người đại diện có thể dẫn tới cách nhìn thành kiến về yêu cầu ứng dụng. Đối với tài liệu là các báo cáo thống kê có thể phù hợp cung cấp cho các ví dụ của các kiểu phân tích cần thiết của hệ hỗ trợ quyết định. Các tài liệu khác, như là chính sách, thủ tục nói chung là không thích hợp. Đối với các hệ hỗ trợ quyết định mục đích chung cùng với số lượng lớn người dùng, các câu hỏi là cách thích hợp để xác định phạm vi của vấn đề và các kỹ thuật phân tích cần thiết cho hệ hỗ trợ quyết định. Các thông tin này có thể được bổ sung bởi phỏng vấn và họp nhóm để xác định thêm các chi tiết.
+ Hệ hỗ trợ quyết định theo nhóm thường xuyên là một hệ cho khách hàng xây dựng các gói phần mềm cung cấp các kiểu hỗ trợ khác nhau cho các họp nhóm tự động. Các kỹ sư phần mềm làm việc trên môi trường hỗ trợ quyết định theo nhóm cần biết các kiểu dữ liệu, số lượng người tham gia, cũng như các kiểu suy luận và kỹ thuật thống nhất ý kiến của nhóm.
Các khối hỗ trợ quyết định theo nhóm không phải là các kiến thức chung mà cũng không được sử dụng thường xuyên. Bạn có thể xây dựng một hệ hỗ trợ quyết định theo nhóm cho một người. Do đó, một thời gian đáng kể phải dùng để tìm ra thị trường, người bán, và các khối hệ hỗ trợ quyết định theo nhóm. Các tư liệu bên ngoài vể sản phẩm thích hợp cho các câu hỏi phát triển dẫn dắt tới các thông tin cần thiết. Sau khi kiến thức về thị trường đã được thu thập thì phỏng vấn và họp nhóm thích hợp cho xác định các yêu cầu đặc trưng và để xem xét lại với người dùng hệ hỗ trợ quyết định theo nhóm có thể làm và không làm cái gì. Các phương pháp khác có thể có giá trị hữu hạn. Ví dụ, quan sát có thể giúp kỹ sư phần mềm biết các công cụ sẽ làm việc thế nào. Các tài liệu bên trong cung cấp các thông tin về họp nhóm mà hệ hỗ trợ quyết định theo nhóm được chờ đợi sẽ cung cấp cũng có thể được dùng.
+ Hệ thông tin điều hành tương tự hệ hỗ trợ quyết định theo nhóm về sự khan hiếm và thiếu tổng quát về các thông tin - tri thức - liên quan. Hệ thông tin điều hành thường được xây dựng cho một nhóm người dùng tương đối ít nên không phù hợp với việc đặt câu hỏi. Hệ thông tin điều hành là môi trường khá chuyên biệt nên các tài liệu và phần mềm cũ không có giá trị nhiều. Quan sát không có tác dụng nhiều bởi vì việc thực hiện không thích hợp cho quan sát. Công việc tạm thời không dùng được vì bạn không thể làm việc được chỉ trong một hoặc hai tuần. Do vậy, các phương pháp phỏng vấn, họp nhóm, xem tài liệu là các kỹ thuật phù hợp nhất.