Câu 1: Định nghĩa phần mềm? kể tên các loại hệ thống phần mềm, ví dụ. Phần mềm là tập hợp các chương trình, các file cấu hình (giúp cái đặt và tích hợp các chức năng), file đính kèm( file cho người dùng cuối), file cho người bảo trì, phát triển phẩn mềm (file tài liệu đặc tả, phân tích thiết kế…), website hỗ trợ. các loại hệ thống phần mềm:+ phần mềm đại trà : sản xuất cho mọi đối tượng (thường là những phần mềm phổ biến, chuyên cho máy tính) vd như Micosoft office, unikey…+ phần mềm theo đơn đặt hàng: tùy mục đích sử dụng mà sản xuất ra các phần mềm khác nhau.(có thể cho các doanh nghiệp, cho cơ quan nhà nước, cho cửa hang…)Câu 2: Các đặc trưng của phần mềm? Các thuộc tính của phần mềm kỹ nghệ tốt. Đặc trưng của phần mềm: + quy trình tạo ra phần mềm: Phần mềm đc tạo ra hoàn toàn mới, không có tiền lệ trước và chỉ được tạo ra một lần duy nhất.+ phần mềm không bị hao mòn: Phần mềm không hao hụt theo thời gian.+ tạo ra phần mềm không dựa trên các thành phần có sẵn: ( phần lớn mỗi phần mềm khi được tạo ra dựa trên đơn đặt hang, theo mục đich sử dụng của người dùng chứ ít khi phần mềm đc lắp đặt dựa trên những thành phần có sẵn) Thuộc tính của phần mềm kỹ nghệ tốt:+ Có thể bảo trì được(khả năng bảo trì): phần mềm có tuổi thọ dài vì vậy phải xây dựng và lập tư liệu sao cho có thể bổ sung thêm những chức năng mới, dễ dàng sửa đổi, mà chi phí tốn ít nhất+ Đáng tin cậy: phần mềm phải thực hiện được những yêu cấu của khách hang, không sai sót.+ có hiệu quả: phần mềm chiếm ít không gian bộ nhớ.+ khả dụng(khả năng chấp nhận): hệ thống phải có giao diện người sử dụng thích hợp, phù hợp vs khả năng và kiến thức của người sử dụng (dễ đọc, dễ hiểu, nhớ lâu) đáp ứng đc những trình độ sử dụng khác nhau.+ giá cả là yếu tố xem xét 1 phần mềm có kỹ nghệ tốt nhưng bảo trì được là thuộc tính chủ yếu vì chi phí cho sản phẩm phần mềm chủ yếu là giai đoạn đã được đưa vào sử dụng.Câu 3: Định nghĩa CNPM? Các yếu tố phương pháp, công cụ, và thủ tục trong quy trình kỹ nghệ được hiểu như thế nào? Định nghĩa CNPM: là những quy tắc công nghệ có liên quan tới tất cả các khía cạnh của quy trình sản xuất phần mềm : Sx ntn? Đánh giá, đảm bảo chất lượng quản lý ra sao…. Phương pháp trong quy trình kỹ nghệ: Đưa ra cách làm về mặt kỹ thuật để xây dựng phần mềm.+đặc tả:xác định yêu càu hệ thống làm gì(what)+ phát triển: xấy dựng, thiết kế, mã hóa(how, build)+ kiểm thử: kiểm tra lỗi trước khi sử dụng.+ vận hành và bảo trì: bảo trì, sửa chữa, nâng cấp. công cụ trong quy trình kỹ nghệ: Cung cấp sự hõ trợ tự động hoặc bán tự động cho các phương pháp. Ngày nay có rất nhiều công cụ hỗ trợ cho từng phương pháp. Khi công cụ được tích hợp đến mức các thông tin công cụ này có thể được dùng cho các công cụ khác thì hệ thống hỗ trợ cho công nghệ phần mềm được thiết lập. thủ tục trong quy trình kỹ nghệ: các công cụ và phương pháp được liên kết với nhau thông qua các thủ tục để phần mềm này có thể được sử dụng hợp lý và đúng hạn trọng phát triển phần mềm. Các vấn đề liên quan tới lập kế hoạch, quản lý chất lượng, tiến độ, chi phí, mua bán sản phẩm đều có những thủ tục rõ ràng.Câu 4: Mô hình vòng đời cổ điển (mô hình thác nước) gồm những bước nào? Ưu nhược điểm của mô hình này. Mô hình: Các bước trong mô hình:B1: Xác định yêu cầu: Lấy thông tin yêu cầu mục đích của khách hàng, Hệ thống xây dựng để làm gì, (trả lời cho câu hỏi what)B2: Thiết kế : + thiết kế cấu trúc dữ liệu + thiết kế cấu trúc phần mềm + biểu diễn giao diện và thuật toán.B3: Cài đặt và kiểm thử: Kiểm thử từng modun chức năng nhỏ trong hệ thống, kiểm tra các câu lệnh…B4: Tích hợp, kiểm thử hệ thống: tích hợp các chức năng, modun riêng biệt thành một khối thống nhất sau đó Kiểm thử để phát hiện lỗi từ đó sửa chữa mang lại kết quả như mong muốn. B5:Vận hành và bảo trì: đưa sản phẩm cho khách hàng, trong quá trình người dùng sử dụng nếu phát hiện thêm lỗi thì cần mang tới nơi sản xuất để bảo trì lại. Ưu điểm của mô hình: + dễ quản lý : vì các giai đoạn đươc thực hiện tách biệt+ xác định được chi phí cho từng giai đoạn rõ ràng.+ dễ thẩm tra, đánh giá, mang tính tự nhiên. Nhược điểm của mô hình:+ vì phải thực hiện tuần tự nên nếu trong quy trình xảy ra lỗi thì sẽ phải quay lại làm từ bước bị lỗi cho tới hết các bước sau, + mối quan hệ giữa các giai đoạn không được thể hiện.+ hệ thống phải được kết thúc ở từng giai đoạn, do vậy rất khó thực hiện đày đủ các yêu cầu của khách hàng.+ mô hình đòi hỏi, yêu cầu đầy đủ , chính xác thông tin từ khách hàng.+ khách hàng cần phải kiên nhẫn. Câu 5: Mô hình làm bản mẫu (mô hình tiến triển) hoạt động như thế nào? Ưu nhược điểm của mô hình này. mô hình này hoạt động dựa trên ý tưởng xây dựng một bản mẫu thử ban đầu và đưa cho người sử dụng xem xét, sau đó tinh chỉnh mẫu thử qua nhiều phiên bản cho tới khi thỏa mãn yêu cầu của người sử dụng thì dừng. Có hai phương pháp để xây dựng mô hình bản mẫu:+ Phát triển thăm dò: làm việc với khách hàng và đưa ra hệ thống cuối cùng từ những đặc tả sơ bộ ban đầu. Phương pháp này thường bắt đầu với những yêu cầu đã được tìm hiểu rõ ràng và sau đó bổ sung những đặc điểm mới được đề xuất bởi hệ thống. Cuối cùng khi các yêu cầu của người sử dụng đã được thỏa mãn thì cũng là lúc đã xây dựng xong hệ thống.+ Loại bỏ mẫu thử: mục đích tìm hiểu các yêu cầu của hệ thống. Ban đầu với những yêu cầu không rõ ràng, ít thông tin. Các mẫu thử được xây dựng và chuyển giao tới người dùng, từ đó ta có thể phân loại những yêu cầu nào là cần thiết, những yêu cầu nào không cần thiết và loại bỏ. Mô hình: Ưu điểm của mô hình: + Hoạt động nào cũng có sự tham gia của người dùng nên sản phẩm cuối cùng mang tính khách quan thỏa mãn yêu cầu thiết kế.+ cho phép thay đổi yêu cầu, khuyến khích người sử dụng tham gia trong suốt chu kì dự án.+ các hoạt động xảy ra đồng thời, hoạt động này bổ sung cho hoạt động kia.+ Có thể tái sử dụng mẫu. Nhược điểm của mô hình: + Cấu trúc nghèo nàn, thiếu tầm nhìn của toàn hệ thống, + yêu cầu những kỹ năng đặc biệt để có thể tạo ra mẫu thử nhanh,+ người phát triển thường hay thỏa hiệp với khách hàng để có mẫu thử nhanh.Câu 6: Mô hình xoắn ốc hoạt động như thế nào? Ưu nhược điểm của mô hình.(tự vẽ mô hình) Ưu điểm: + Là cách tiếp cận hiện thực để phát triển phần mềm và các hệ thống lớn. PHần mềm được phát triển theo sự tiến hóa. Khách hàng và nhà phát triển hiểu nhau tốt hơn, các rủi ro sẽ được giảm sau mỗi lần tiến hóa. Nhược điểm:+ khả năng thuyết phục khách hàng để giảm thiểu tính rủi ro trong quá trình phát triển.+ mô hình này thực sự chưa quen thuộc vs các nhà đầu tư so với các mô hình khác.Câu 7: Lý do phải quản lý dự án? Mục tiêu quản lý dự án là gì? Nhiệm vụ của người quản lý dự án? Lý do phải quản lý dự án:Các dự án thường : + Không hoàn thành đúng thời hạn+ Chi phí XD vượt quá dự toán.+ Chất lượng ko đảm bảo Mục tiêu quản lý dự án: Hoàn thành các công việc của dự án đúng thời hạn, các yêu cầu về kỹ thuật, chất lượng cần được đáp ứng. Dự án phải hoàn thành trong phạm vi ngân sách dự án được cho phép. Nhiệm vụ của người quản lý dự án: + Xác định các công việc+ ước lượng chi phí dự án.+ Lựa chọn, đánh giá nguồn lực+ lập kế hoạch và lịch trình.+ triển khai và kiểm soát lịch trình dự án+ viết báo cáo và trình bày
Câu 1: Định nghĩa phần mềm? kể tên loại hệ thống phần mềm, ví dụ - Phần mềm tập hợp chương trình, file cấu hình (giúp đặt tích hợp chức năng), file đính kèm( file cho ng ười dùng cuối), file cho người bảo trì, phát triển phẩn mềm (file tài liệu đặc tả, phân tích thiết kế…), website hỗ trợ - loại hệ thống phần mềm: + phần mềm đại trà : sản xuất cho đối tượng (th ường phần mềm phổ biến, chuyên cho máy tính) vd nh Micosoft office, unikey… + phần mềm theo đơn đặt hàng: tùy mục đích sử dụng mà sản xuất phần mềm khác nhau.(có thể cho doanh nghiệp, cho c quan nhà nước, cho cửa hang…) Câu 2: Các đặc trưng phần mềm? Các thuộc tính c phần mềm kỹ nghệ tốt - Đặc trưng phần mềm: + quy trình tạo phần mềm: Phần mềm đc tạo hồn tồn mới, khơng có tiền lệ trước tạo lần + phần mềm khơng bị hao mịn: Phần mềm không hao h ụt theo thời gian + tạo phần mềm không dựa thành phần có sẵn: ( phần lớn phần mềm tạo dựa đơn đặt hang, theo mục đich sử dụng người dùng phần mềm đc lắp đ ặt d ựa thành phần có sẵn) - Thuộc tính phần mềm kỹ nghệ tốt: + Có thể bảo trì được(khả bảo trì): phần mềm có tu ổi th ọ dài phải xây dựng lập t liệu cho bổ sung thêm chức mới, dễ dàng sửa đổi, mà chi phí tốn nh ất + Đáng tin cậy: phần mềm phải thực nh ững u cấu khách hang, khơng sai sót + có hiệu quả: phần mềm chiếm khơng gian nhớ + khả dụng(khả chấp nhận): hệ thống phải có giao diện người sử dụng thích hợp, phù hợp vs khả kiến th ức ng ười sử dụng (dễ đọc, dễ hiểu, nhớ lâu) đáp ứng đc tr ình độ sử dụng khác + giá yếu tố xem xét phần mềm có kỹ nghệ tốt nh ưng bảo trì thuộc tính chủ yếu chi phí cho sản ph ẩm ph ần m ềm ch ủ yếu giai đoạn đưa vào sử dụng Câu 3: Định nghĩa CNPM? Các yếu tố phương pháp, công c ụ, thủ tục quy trình kỹ nghệ hiểu nào? - Định nghĩa CNPM: quy tắc cơng ngh ệ có liên quan t ới t ất c ả khía cạnh quy trình sản xuất phần mềm : Sx ntn? Đánh giá, đảm bảo chất lượng quản lý sao… - Phương pháp quy trình kỹ nghệ: Đưa cách làm mặt kỹ thuật để xây dựng phần mềm +đặc tả:xác định yêu càu hệ thống làm gì(what) + phát triển: xấy dựng, thiết kế, mã hóa(how, build) + kiểm thử: kiểm tra lỗi trước sử dụng + vận hành bảo trì: bảo trì, sửa chữa, nâng cấp - cơng cụ quy trình kỹ nghệ: Cung cấp hõ trợ tự động ho ặc bán tự động cho phương pháp Ngày có nhiều cơng c ụ h ỗ tr ợ cho phương pháp Khi cơng cụ tích hợp đến mức thơng tin cơng cụ dùng cho cơng cụ khác th ì hệ thống hỗ trợ cho công nghệ phần mềm thiết lập - thủ tục quy trình kỹ nghệ: cơng cụ ph ương pháp liên kết với thông qua thủ tục để phần mềm có th ể đ ược sử dụng hợp lý hạn trọng phát triển phần mềm Các vấn đ ề liên quan tới lập kế hoạch, quản lý chất lượng, tiến độ, chi phí, mua bán sản phẩm có thủ tục rõ ràng Câu 4: Mơ hình vịng đời cổ điển (mơ hình thác n ước) gồm bước nào? Ưu nhược điểm mơ hình - Mơ hình: - Các bước mơ hình: B1: Xác định u cầu: Lấy thơng tin u cầu mục đích khách hàng, Hệ thống xây dựng để làm gì, (trả lời cho câu hỏi what) B2: Thiết kế : + thiết kế cấu trúc liệu + thiết kế cấu trúc phần mềm + biểu diễn giao diện thuật toán B3: Cài đặt kiểm thử: Kiểm thử modun chức nh ỏ h ệ thống, kiểm tra câu lệnh… B4: Tích hợp, kiểm thử hệ thống: tích hợp chức năng, modun riêng biệt thành khối thống sau Kiểm thử để phát lỗi từ sửa chữa mang lại kết mong muốn B5:Vận hành bảo trì: đưa sản phẩm cho khách hàng, trình người dùng sử dụng phát thêm lỗi th ì cần mang tới nơi sản xuất để bảo trì lại - Ưu điểm mơ hình: + dễ quản lý : giai đoạn đươc thực tách biệt + xác định chi phí cho giai đoạn rõ ràng + dễ thẩm tra, đánh giá, mang tính tự nhiên - Nhược điểm mơ hình: + phải thực nên quy trình xảy lỗi phải quay lại làm từ bước bị lỗi hết bước sau, + mối quan hệ giai đoạn không th ể + hệ thống phải kết thúc giai đoạn, khó thực đày đủ yêu cầu khách hàng + mơ hình địi hỏi, u cầu đầy đủ , xác thơng tin t khách hàng + khách hàng cần phải kiên nhẫn Câu 5: Mơ hình làm mẫu (mơ hình tiến triển) hoạt động nào? Ưu nhược điểm mô hình - mơ hình hoạt động dựa ý t ưởng xây dựng mẫu thử ban đầu đưa cho người sử dụng xem xét, sau tinh chỉnh mẫu th qua nhiều phiên thỏa m ãn yêu cầu người sử dụng dừng - Có hai phương pháp để xây dựng mơ hình mẫu: + Phát triển thăm dò: làm việc với khách hàng đưa hệ thống cuối từ đặc tả sơ ban đầu Phương pháp th ường bắt đầu với yêu cầu tìm hiểu rõ ràng sau bổ sung đặc điểm đề xuất hệ thống Cuối yêu cầu người sử dụng thỏa mãn lúc xây dựng xong hệ thống + Loại bỏ mẫu thử: mục đích tìm hiểu u cầu h ệ th ống Ban đầu với yêu cầu khơng rõ ràng, thơng tin Các m ẫu th xây dựng chuyển giao tới người dùng, từ ta phân loại yêu cầu cần thiết, yêu cầu không c ần thi ết loại bỏ.- Mơ hình: - Ưu điểm mơ hình: + Hoạt động có tham gia người dùng nên sản phẩm cuối mang tính khách quan thỏa mãn yêu cầu thiết kế + cho phép thay đổi yêu cầu, khuyến khích ng ười sử dụng tham gia suốt chu kì dự án + hoạt động xảy đồng thời, hoạt động bổ sung cho hoạt động + Có thể tái sử dụng mẫu - Nhược điểm mơ hình: + Cấu trúc nghèo nàn, thiếu tầm nhìn tồn hệ thống, + u cầu kỹ đặc biệt để tạo m ẫu th nhanh, + người phát triển thường hay thỏa hiệp với khách hàng để có mẫu thử nhanh Câu 6: Mơ hình xoắn ốc hoạt động nào? Ưu nhược điểm mơ hình (tự vẽ mơ hình) - Ưu điểm: + Là cách tiếp cận thực để phát triển phần mềm h ệ thống lớn PHần mềm phát triển theo tiến hóa Khách hàng nhà phát triển hiểu tốt hơn, rủi ro giảm sau lần tiến hóa - Nhược điểm: + khả thuyết phục khách hàng để giảm thiểu tính rủi ro trình phát triển + mơ hình thực chưa quen thuộc vs nhà đầu tư so với mơ hình khác Câu 7: Lý phải quản lý dự án? Mục tiêu quản lý d ự án gì? Nhiệm vụ người quản lý dự án? - Lý phải quản lý dự án:Các dự án th ường : + Khơng hồn thành thời hạn + Chi phí XD vượt q dự tốn + Chất lượng ko đảm bảo - Mục tiêu quản lý dự án: Hồn thành cơng việc dự án th ời hạn, yêu cầu kỹ thuật, chất lượng cần đáp ứng Dự án phải hoàn thành phạm vi ngân sách dự án cho phép - Nhiệm vụ người quản lý dự án: + Xác định cơng việc + ước lượng chi phí dự án + Lựa chọn, đánh giá nguồn lực + lập kế hoạch lịch trình + triển khai kiểm sốt lịch trình dự án + viết báo cáo trình bày + Tổng kết, đánh giá Câu 8: Trình bày phương pháp thu thập liệu Đánh giá ưu nhược điểm chúng Trong thực tế thu thập li ệu, sử dụng phương pháp nào? * phương pháp thu thập thông tin: phương pháp vấn: việc tập hợp sớ lượng người thời gian cố định với mục đích cụ thể - vấn tốt vấn có bắt đầu nội dung kết thúc - vấn có kiểu câu hỏi: + câu hỏi mở: hỏi cho nhiều câu trả lời khác + Câu hỏi đóng: câu hỏi cho dạng trả lời có khơng? + kỹ sư phần mềm có thẻ nhận hiểu biết tốt mơi trường cơng tác quy trình xử lý thông qua quan sát + kỹ sư phần mềm tập trung vào phần mềm mà lại bị ảnh hưởng người khác + ngăn cách kỹ sư pm người khác vượt qua có quan sát tốt - Nhược điểm: + thời gian quan sát không biểu diễn cho công vi ệc di ễn thông thường + ý nghĩ bị quan sát làm thay đổi thói quen th ường c người bị quan sát ấn định công việc tạm thời - với cơng việc tạm thời ta nhận đầy đủ thơng tin nhiệm vụ, đồng thời cung cấp cho ta kinh nghiệm thực tế THời gian tiến hành công việc thường từ tới tuần.Thời gian vừa đủ để làm quen với công việc tình ngoai lệ xảy - Ưu điểm: có khoảng thời gian học việc trước bước vào d ự án thực tế - Nhược điểm: + tốn thời gian học việc ^^ + kỹ sư pm thiếu kiên trì làm ảnh hưởg đến công việc thiết kế Điều tra qua câu hỏi - xây dựng câu hỏi máy tính giấy để phóng vấn, câu hỏi dùng để lấy thông tin từ số lượng lớn, người sử dụng có nhi ều kh ả lựa chọn cho câu hỏi với đáp án cho tr ước (câu h ỏi có th ể dạng mở đóng) - Ưu điểm phương pháp: + câu trả lời trung thực + tiến hành với nhiều người vào thời điểm + thích hợp cho câu hỏi đóng hữu hạn + phù hợp với công ty đa văn hóa có th ể tùy bi ến v ới quy ước địa phương - Nhược điểm: + khó thực lại câu hỏi đưa phiếu + câu hỏi khó hiểu + không thêm thông tin cần thiết dẫn đến thơng tin thu bị hạn chế + câu hỏi đưa khơng nhận câu trả lời - mát thông tin Xem xét tài liệu - Nghiên cứu cẩm nang, quy định, thao tác chuẩn mà tổ ch ức cung cấp - Ưu điểm: kỹ sư phần mềm học trau dồi kỹ từ nh ững người có kinh nghiệm đúc kết lại đc trước - Nhược điểm: Thời gian tìm thơng tin cần thiết lâu, khó tìm Xem xét phần mềm - ứng dụng cũ đc thay ứng dụng mới, nghiên cứu phần m ềm cung cấp thơng tin q trình xử lý cơng vi ệc hienj t ại mở rộng có ràng buộc - Ưu điểm: có sẵn phần mềm để tìm hiểu nên không tốn thời gian xây dựng lại từ đầu - Nhược điểm: + thông tin thu đc từ phần mềm mập mờ, ko xác (do ph ải tự suy đốn q trình nghiên cứu phần mềm) + lãng phí thời gian phần mềm bị xóa bỏ Câu 9: Các khó khăn kiểm thử? Trình bày chi ến l ược kiểm thử - khó khăn kiểm thử: + liên quan tới tiến trình phát triển phần mềm gồm nhiều giai đoạn: đầu giai đoạn đầu vào giai đoạn tiếp theo, từ dó dẫn đến mát thông tin phát đc lỗi tiềm tang sửa chúng + liên quan tới người: thiếu đào tạo, tâm lý dễ bị ảnh h ưởng tiến hành kiểm thử trọng vào vai trị kiểm thử + liên quan tới kỹ thuật : không tồn thuật tốn tổng hợp, tổng qt chứng minh đắn hoàn toàn ch ương trình Kỹ thuật kiểm thử cịn thủ cơng nên phát lỗi cịn bị h ạn chế - Các chiến lược kiểm thử : kiểm thử hộp đen : - kiểm thử phân hạch miền tương đương(cân bằng) + mục đích : tối thiểu trường hợp kiểm thử vs mức kiểm trac ho trước Các mục liệu chia thành nhóm dũ li ệu có vai trị cân nhau, nhóm đại diện cho tập liệu + nguyên tắc : cách kiểm thử triệt để mục tập hợp, chấp nhận tất mục tương đ ương khác c tập hợp đc kiêm tra cách chi tiết, gi ảm tổng s ố trường hợp kiểm thử + bước kiểm thử B1 : xác định lớp tương đương.Các lớp tương đương đc định nghĩa sau : - đầu vào xác định miền l ơp hợp lệ lớp không hợp lệ xác định - điều kiện vào địi hỏi giá trị xác định l ớp h ợp lệ lớp không hợp lệ xác định - điều kiện vào thành viên tập hợp l ớp hợp lệ lớp không hợp lệ xác định - điều kiện vào boolean lớp h ợp lệ l ớp không hợp lệ xác định B2 : lớp tương đương xác định đc test case - Kiểm thử giá trị biên : + giá trị nhỏ + gần kề giá trị nhỏ + giá trị lớn + gần kề giá trị lớn + giá trị kiểm thử hộp trắng - kiểm thử phải kiểm tra mã nguồn ch ương trình để kiểm thử hay tìm đầu giúp cho việc kiểm thử Dựa vào ta thấy để xác định xác lỗi - kiểm thử hộp trắng yêu cầu người tester phải có kinh nghiệm kiểm thử - giao tiếp - đảm bảo đường thông tin vào - liệu cục - đảm bảo toàn v ẹn d ữ li ệu - điều kiện – đảm bảo đơn vị chạy biên - đường thực – đường thực phải qua lần - ngoại tệ Bộ kiểm thử - kỹ thuật kiểm tra kiểm thử hộp trắng : + kiểm thử dựa đồ thị luồng điều khiển + kiểm thử dựa đồ thị luồng liệu + kiểm thử đột biến Câu 10 Những ý sử dụng màu thi ết kế giao di ện Giới hạn số lượng màu sử dụng không nên lạm dụng việc sử dụng màu - Thay đổi màu thay đổi trạng thái hệ thống - Sử dụng màu để hỗ trợ cho nhiệm vụ mà người sử dụng cố gắng thực - Sử dụng màu cách thống cẩn thận - Cẩn thận sử dụng cặp màu Khi người sử dụng tương tác với hệ thống, xảy lỗi hệ thống phải thơng báo cho người sử dụng biết lỗi xảy có chuyện xảy với hệ thống Do đó, thiết kế thơng báo lỗi vơ quan trọng Nếu thơng báo lỗi nghèo nàn làm cho người sử dụng từ chối chấp nhận hệ thống Vì vậy, thơng báo lỗi nên ngắn gọn, xúc tích, thống có cấu trúc Việc thiết kế thông báo lỗi nên dựa vào kỹ kinh nghiệm người sử dụng Câu 11 : Đặc điểm người sử dụng thiết kế giao diện Nguyên tắc việc biểu diễn thông tin - Đặc điểm sử dụng thiết kế giao diện + khả nhớ tức thời người bị hạn chế : người nhớ khoảng loại thông tin, n ếu lượng thông tin càn nhớ nhiều dẫn đến viecj không nhớ hết dẫn đến bị lỗi xảy + Người sử dụng gâ lỗi : người sd gây lỗi hệ thống đưa nhiều thơng báo khơng thích hợp gây áp l ực cho ng ười s dụng xảy nhiều lỗi + người sử dụng khác : Có nhiều đối tượng sử dụng khả sử dụng đối tượng khác ng ười thi ết k ế không nên thiết kế giao diện phù hợp vs khả họ + Người sử dụng thích loại tương tác khác - nguyên tắc biểu diễn thông tin : + Sự quen thuộc người dùng : giao diện xây dựng thuật ngữ khái niệm mà người sử dụng hiểu đc khái niệm kỹ thuật (chuyện ngành) hợp + thống : hệ thông nên hiển thị mức thống thích VD : câu lệnh menu có định dạng + tối thiểu hóa bất ngờ : xử lý yêu cầu theo cách biết trước người sử dụng đốn thao tác yêu cầu dạng tương tự + khả phục hồi : hệ thống nên cung cấp số khả phục hồi bị lỗi từ người sử dụng, người sử dụng phục hồi từ bước bị lỗi + hướng dẫn người sử dụng : phần mềm cần có file hướng dẫn dành cho người dùng(trợ giúp off, trợ giúp online) + tính đa dạng : hỗ trợ nhiều loại tương tác cho nhiều đối tượng người sử dụng khác Ngồi cịn có ngun tắc vận hành phần m ềm, l ựa ch ọn menu, ngôn ngữ lệnh, ngôn ngữ tự nhiên, điền vào mẫu biểu, … - biểu diễn thơng tin : Có hai loại thông tin cần biểu diễn : + Thông tin tĩnh: khởi tạo đầu phiên Nó khơng thay đổi suốt phiên dạng số dạng văn + Thông tin động: thay đổi phiên sử dụng thay đổi phải người sử dụng quan sát - Các nhân tố ảnh hưởng tới việc hiển thị thơng tin: + Người sử dụng thích hiển thị phần thông tin hay quan h ệ liệu? + Giá trị thông tin thay đổi nhanh nào? Sự thay đ ổi có cần phải thể hay không? + Người sử dụng có phải thực hành động để đáp ứng với thay đổi khơng? + Có phải giao diện vận hành trực tiếp không? + Thông tin dạng văn hay dạng số? Các giá trị quan h ệ có quan trọng khơng? + Biểu diễn digital hay analogue? Câu 12: Những công việc cần có kỹ s phần mềm? Các kỹ kỹ sư phần mềm - Những công việc kỹ sư phần mềm : nghiên cứu thiết kế phát triển trì thống phàn mềm Lập trình hệ thống phần mềm cho máy tính - Kỹ người kỹ sư phần mềm : + có lực làm việc + có khả làm việc theo nhóm hiệu + có kiên trì cần mẫm + phải hiểu biết ngơn ngữ lập trình + hiểu biết phương pháo luận ngơn ngữ lập trình Câu 13 : Nêu phương pháp lập trình ? ngun tắc việc lựa chọn ngơn ngữ lập trình - phương pháp lập trình : + Lập trình có cấu trúc : chia chương trình lớn thành chương trình để quản lý Các ngơn ngữ có cấu trúc : pascal, C, matlab + lập trình hướng đối tượng : Chương trình = {các đối tượng} Đối tượng = hành vi + thuộc tính Ngơn ngữ hướng đối tượng : java, C#, C+, VB, VB net… + phương pháp lập trình tuyến tính : asembly + phương pháp lập trình logic : prolog + phương pháp lập trình hướng lát cắt :AspectJ - nguyên tắc việc lựa chọn ngôn ngữ lập trình: + tảng (nền tảng mà ch ương trình chạy): VD chương trình viết C chạy hệ điều hành windown, linux yêu cầu trình biên dịch tang chương trình chạy khác Nếu dùng java mà byte đc tạo đủ để chạy ch ương trình b ất kỳ môi trường làm việc cài đặt máy ảo java + tính co giãn ngơn ngữ: dễ dàng thêm bớt tính m ới ngơn ngữ chương trình có VD thêm hàm m ới, thêm thư viện + thời gian đưa sản phẩm: thời gian cần đ ể đ ưa ch ương trình vào vận hành, mã code tích hợp thành sản phẩm + hiệu năng: + cộng đồng khả hỗ trợ Câu 14: Tiêu chuẩn lựa chọn ngôn ngữ l ập trình phát tri ển dự án phần mềm - Căn vào yêu cầu khách hàng - dựa vào chất lượng chương trình dịch: ngơn ngừ chương trình dịch thường dùng (java), java biên dịch lần chạy nhiều máy - dựa vào công cụ hỗ trợ phát triển phần mềm - dựa vào phân tích thiết kế hệ thống - dựa vào lĩnh vực ứng dụng: + ứng dụng nhúng: C, Asembly + ứng dụng quản lý: VB, VB net, java + ứng dụng hệ chuyên gia: prolog + ứng dụng mạng: java, net + ứng dụng website: PHP, ASP Câu 15: CASE (computer aided software engineering) gì? - Case thường sử dụng để hỗ trợ hoạt động quy tr ình xây dựng phần mềm - CASE chia làm loại: + upper CASE: hỗ trợ hoạt động đặc tả yêu cầu, t.kế + lower CASE: công cụ hỗ trợ hoạt động sau lập trình g ỡ rối, kiểm thử Câu 16: So sánh ph ương pháp phân tích hướng đối tượng hướng chức ( làm muốn kẻ bảng tự kẻ bảng nhé, t ngại trình bày bảng nên phân biệt ) - phương pháp hướng đối tượng: + hệ thống thành lập tập hợp đối tượng gắn k ết d ựa giao diện định nghĩa + xác định lớp đối tượng, thuộc tính ph ương thức + ưu điểm: đối tượng đc gắn kết lỏng nên thay đổi cách cài đ ặt chúng khơng ảnh hưởng đến đối tượng khác đối tượng phản ánh thực tế giới thực rãi ngơn ngữ lập trình hướng đối tượng sử dụng rộng + nhược điểm: giao diện thực thể thay đổi phức tạp gây khó khăn khó biểu diễn thực thể đối tượng - phân tích hướng chức năng: + hệ thống phân loại thành modul chức năng, nhận d ữ liệu sau chuẩn hóa thành kết + mơ hình luồng liệu liệu xử lý liệu đầu vào tạo liệu đầu Mỗi bước quy trình giống phép biến đ ổi + Ưu điểm: hỗ trợ việc sử dụng lại biến đổi phù hợp với suy nghĩ người, liên quan liệu xử lý theo luồng có đầu vào đầu thêm xử lý khác vào hệ thống dễ dàng Dễ th ực xử lý song song tuần tư + nhược điểm: cần phải có định dạng chung cho d liệu để xử lý tốt bới biến đổi Các hệ thống tương tác khó viết theo mơ hình luồng liệu Câu 17: Liệt kê kỹ thuật kiểm thử So sánh kiểm thử h ộp đen kiểm thử hộp trắng Kiểm thử đơn vị kiểm thử hộp đen hay hộp trắng Tại sao? - kiểm thử tĩnh: - kiểm thử động: (cân =) + kiểm thử hộp đen: kiểm thử phân hạch miền tương đương kiểm th giá tr ị biên khiển) + kiểm thử hộp trắng ( kiểm thử dựa vào đồ thị luồng điều phủ tất đỉnh phủ cung phủ định phủ lộ trình + kiểm thử tiến trình phát triển phần mềm kiểm thử đơn vị kiểm thử tích hợp kiểm thử chức kiểm thử hệ thống kiểm thử tích hợp hệ thống kiểm thử thực thi - So sánh kiểm thử hộp đen kiểm thử hộp trắng Hộp đen Hộp trắng - kiểm thử hộp đen dựa vào đặc tả chương trình, tìm lỗi, cxây dựng liệu thử trước mã hóa, lập trình Thường phát lỗi đặc tả yêu câu, thiết kế - kiểm thử hộp trắng yêu cầu ng ười kỹ sư phải kiểm tra mã nguồn chương trình để kiểm thử hay tìm đầu mối giúp cho cơng việc kiểm thử - dễ dàng thực hiện, chi phí thấp - xác định xác số lỗi - nhiên can thiệp sâu vào mã nguồn nên có ý kiến chủ quan tester - người kiểm thử phải có kinh nghiệm lập trình - khó thực hiện, chi phí cao - Kiểm thử đơn vị kiểm thử hộp trắng kiểm thử đơn vị đ ược tiến hành cho đơn vị mà nhỏ nh hàm, modul, thủ tục(procedure), lớp(class), hay phương thức(method) Câu 18: Các thuộc tính dự án Các hoạt động quản lý dự án - Các thuộc tính dự án: + dự án có mục đích kết rõ ràng + thời gian tồn dự án có tính hữu hạn + sản phẩm, kết dự án có tính hữu hạn + dự án có nhiều bên liên quan + dự án thường mang tính ko chắn + mơi trường tổ chức thực nhỏ lớn - hoạt động dự án: + xác định cơng việc + ước lượng chi phí nguồn lực + lựa chọn đánh giá nguồn lực + lập kế hoạch lịch trình + triển khai kiểm sốt lịch trình dự án + viết báo cáo, trình bày + tổng kết đánh giá Câu 20: Phân biệt yêu cầu chức năng, phi chức năng, yêu c ầu mi ền ứng dụng Cho ví dụ Yêu cầu Đặc điểm chức Y/c phi chức Y/c miền ứng dụng - mô tả hệ thống - không đề cập làm trực tiếp tới - Mơ tả chức chức cụ hệ năng, dịch vụ thể cách chi tiết thống - xác định từ miền ứng dụng hệ thống phản ánh thuộc - thường định tính, ràng buộc nghĩa thuộc miền ứng tính độ tin dụng cậy, thời gian - y/c miền đáp ứng, ứng dụng khơng ràng buộc hệ thỏa mãn có thơng khả thể hệ thống t/bị không làm việc vào ra, giao sử diện… Một số yêu cầu Một số yêu cầu Một số y/c phi vấn đề chức : chức - chức tính liên quan đến quy trình xd hệ tốn thống - chức lưu Y/c phi chức trữ xuất - chức tìm y/c người kiếm dùng, ngân sách, - chức sách tổ backup chức hệ thống - chức đa y/c phi chức người dùng phân - chức đa loại theo sơ đồ sau :(gồm phương tiện… yêu cầu sản phẩm, tổ chức, yêu cầu ngoài) dụng khơng mục đích Một số vấn đề liên quan : - khả hiểu - không ẩn ý: (sơ đồ tự xử nhá, ngại chả buồn vẽ đâu nhà ^^) Ví dụ tốn - cập nhật : quản lý hệ Thơng tin khách thống bán hàng hàng, sản phẩm, đơn hàng… - in ấn : Hóa đơn, báo cáo… - Thống kê : danh sách khách hàng, danh sách sản phẩm, hàng tồn kho… - có hợp đồng bên thỏa thuận yêu cầu sản phẩm - ngôn ngữ , giao diện phần mềm dễ hiểu, đại đa số người - phần mềm sử hiểu dụng phải có sử dụng hiệu khả - khơng dùng bảo trì ngơn ngữ chun nâng cấp ngành để làm ng - có cán sử dùng khó chuyển giao hiểu hỗ trợ phần - tìm kiếm : theo mềm xảy lỗi tên sản phẩm… - trợ giúp - truy cập môi trường mạng ... kỹ s phần mềm? Các kỹ kỹ sư phần mềm - Những công việc kỹ sư phần mềm : nghiên cứu thiết kế phát triển trì thống phàn mềm Lập trình hệ thống phần mềm cho máy tính - Kỹ người kỹ sư phần mềm :... trợ cho công nghệ phần mềm thiết lập - thủ tục quy trình kỹ nghệ: cơng cụ ph ương pháp liên kết với thông qua thủ tục để phần mềm có th ể đ ược sử dụng hợp lý hạn trọng phát triển phần mềm Các... phân tích để mô tả công việc - Ưu điểm: + kỹ sư phần mềm có thẻ nhận hiểu biết tốt mơi trường cơng tác quy trình xử lý thông qua quan sát + kỹ sư phần mềm tập trung vào phần mềm mà lại bị ảnh