Loạt bài kĩ nghệ phần mềm thực hành

69 362 0
Loạt bài kĩ nghệ phần mềm thực hành

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài 1: Lịch sử máy tính Chào mừng các bạn tới với môn Nhập môn về Kĩ nghệ phần mềm. Bạn đang sắp học môn này bởi vì bạn quan tâm tới Kĩ nghệ phần mềm và muốn theo đuổi nghề trong việc phát triển và quản lí phần mềm. Đây là một chọn lựa nghề nghiệp tốt vì xu hướng toàn cầu chỉ ra rằng có sự khan hiếm trầm trọng về kĩ sư phần mềm – Những người biết cách xây dựng sản phẩm phần mềm đáp ứng các yêu cầu của khách hàng về chất lượng, thời gian. Đây là buổi học đầu tiên trong “Loạt bài kĩ nghệ phần mềm thực hành,” một chương trình học và dạy duy nhất của Đại học Carnegie Mellon. Trong buổi này, bạn sẽ được giới thiệu với đa dạng chủ đề đang được thực hiện trong hầu hết các công ti toàn cầu, bạn sẽ có khả năng học Kĩ nghệ phần mềm tất cả là gì, loại kĩ năng nào bạn sẽ cần phát triển, cũng như lĩnh vực nào là đáng quan tâm nhất với bạn. Vì đây là buổi đầu tiên bạn sẽ được giới thiệu cho nhiều chủ đề ở mức rất cao để cho bạn có thể hiểu hoàn cảnh, vấn đề và các khái niệm chủ yếu; các chi tiết sẽ được bao quát sâu hơn trong các buổi kế tiếp. Mọi bài đều được ghi hình và đặt trực tuyến cho bạn xem trước khi dự lớp. Vì mọi bài đều trong tiếng Anh, bạn nên xem bài trước rồi dự phiên lên lớp “sống”. Phần trong lớp theo tiếng nước bạn sẽ có giảng viên trợ giúp để làm sáng tỏ, thảo luận, hỏi và trả lời. Điều quan trọng là theo bài trực tuyến cũng như bạn ở trong lớp "sống" để cho bạn có thể quen thuộc với các khái niệm và thuật ngữ tiếng Anh. Bạn sẽ cần những kĩ năng ngôn ngữ này đề làm việc quốc tế. Bạn không nên hỏi các câu hỏi về bài tập về nhà, công việc tổ, và bài kiểm tra nếu như bạn còn chưa xem bài hàng tuần. Chính sách của Carnegie Mellon là sinh viên chịu trách nhiệm xem video bài trước và hoàn thành bài đọc, trước khi tới lớp. Để thành công trong lớp này, bạn sẽ cần có kỉ luật và phát triển thói quen nghiên cứu trước. Là kĩ sư phần mềm tương lai, tri thức và kĩ năng của bạn là mấu chốt cho nghề nghiệp và thăng tiến của bạn trong tổ chức, cho nên chúng ta hãy bắt đầu và chúc bạn học tập may mắn. Nội dung bài giảng 1. Tại sao chúng ta cần nghiên cứu máy tính? Trả lời: Ngày nay, máy tính chi phối mọi khía cạnh của cuộc sống hàng ngày và phần mềm là nhân tổ chủ chốt trong chế tạo, ngân hàng, du lịch, truyền thông, quốc phòng, y tế, nghiên cứu, chính phủ, giáo dục, giải trí, luật pháp, v.v. Đòi hỏi về những người có kĩ năng về máy tính đang là nhu cầu cao. Theo dự báo của chính phủ Mĩ cho các năm 2005 tới 2015, các kĩ năng liên quan tới kĩ nghệ phần mềm và máy tính là nghề nghiệp tăng trưởng nhanh nhất với lương cao nhất. Dựa trên nghiên cứu này, nhu cầu toàn cầu về phần mềm sẽ tiếp tục tăng có ý nghĩa và tạo ra sự khan hiếm toàn cầu quãng 3 triệu kĩ sư phần mềm đến năm 2010. 2. Tại sao chúng ta nghiên cứu Kĩ nghệ phần mềm chứ không phải là Khoa học máy tính? Trả lời: Viện các kĩ sư điện và điện tử (IEEE) định nghĩa kĩ nghệ phần mềm là “việc áp dụng cách tiếp cận hệ thống, có kỉ luật, định lượng được vào việc phát triển, vận hành, và bảo trì phần mềm.” Hệ thống phần mềm là cái phức tạp nhất mà con người đã từng tạo ra. Để thiết kế và xây dựng chúng, người ta cần tuân theo các qui trình và thủ tục điển hình của các bộ môn kĩ nghệ khác. Thứ nhất, các yêu cầu cần được xác định cẩn thận. Thế rồi kiến trúc của hệ thống phần mềm cần được phát triển. Một khi các yêu cầu và kiến trúc được xác định, người ta có thể bắt đầu phát triển chương trình. Chương trình này cần trắc nghiệm, kiểm nghiệm và kiểm thử. Các kĩ năng của Kĩ nghệ phần mềm đòi hỏi việc huấn luyện có ý nghĩa về mọi khía cạnh của phát triển phần mềm, từ khái niệm bắt đầu cho tới việc cho về hưu phần mềm. Khoa học máy tính phần lớn hội tụ vào lí thuyết cấu trúc dữ liệu, thao tác dữ liệu và thuật toán với mục đích mã hoá và kiểm thử. Từ khía cạnh này, Khoa học máy tính chỉ là một tập con của Kĩ nghệ phần mềm. 3) Tại sao máy tính và phần mềm trở nên quan trọng thế? Trả lời: Môi trường làm việc toàn cầu mang tính cạnh tranh mãnh liệt. Mọi doanh nghiệp đều chịu sức ép cực lớn để tồn tại bằng việc phản ứng với những điều sau: Thay đổi nhân khẩu (toàn cầu hoá, phân bố con người, mua, bán và cạnh tranh toàn cầu) Tính linh hoạt công ti (hợp nhất, thu nhận, liên minh đa dạng, v.v.) Kiểm soát chi phí (chứa và giảm chi tiêu) Chất lượng sản phẩm và dịch vụ Tri thức & kĩ năng (công nghệ mới, kĩ năng mới v.v ) Qui định (Nhiều ràng buộc, qui tắc, qui định của chính phủ v.v ) Toàn cầu hoá là quá trình tương tác và tích hợp giữa con người, công ti, và chính phủ của các quốc gia khác nhau. Nó mở ra thị trường mới cả nội địa và quốc tế và có tác động có ý nghĩa lên môi trường kinh doanh khắp thế giới. Thế giới đang thay đổi, doanh nghiệp đang thay đổi, và công nghệ đang thay đổi. Giữ nhịp cùng với những thay đổi này là một phần của việc có hiệu quả như một công ti toàn cầu. Công ti toàn cầu là công ti làm kinh doanh toàn cầu - nơi doanh nghiệp được cộng tác và tích hợp trên cơ sở toàn cầu với các tài nguyên dùng chung trên cơ sở toàn cầu, truy nhập vào những thị trường có khối lượng cao nhất và sinh lời bằng những sản phẩm chất lượng cao nhất với chi phí thấp nhất. Để làm điều này, công ti cần dùng máy tính và phần mềm để tự động qui trình, giảm chi phí và tạo ra ưu thế cạnh tranh. Công ti phải đánh giá đối thủ cạnh tranh để tìm ra cái gì là cần thiết để đạt tới ưu thế tối đa. Bài đọc thêm: Xem tài liệu đọc thêm cho bài này. 1. L1_MIS_1_History_Computer.pdf 3. L1_The_US_Software_Industry.pdf Sinh viên phải hoàn thành tài liệu đọc thêm trước khi lên lớp và sẵn sàng tham gia vào thảo luận trên lớp. Sinh viên được khuyến khích xem bài video và trở nên quen thuộc với các khái niệm và định nghĩa tổng quan. Bài tập về nhà và hướng dẫn trả lời: Không có bài tập về nhà cho buổi học thứ nhất. Câu hỏi kiểm tra và hướng dẫn trả lời: Không có bài kiểm tra cho buổi học thứ nhất. Vật phẩm bài giảng : Không. Bài 2: Phần cứng và phần mềm Bài này hội tụ vào các chức năng cơ sở của máy tính (phần cứng và phần mềm). Bằng việc dự bài học (cả trực tuyến và dự lớp “sống”), bạn sẽ hiểu các đơn vị chức năng cơ bản của máy tính, cách chúng khớp với nhau và điều chúng làm. Bạn sẽ có khả năng nhận diện các kiểu chính và dùng các hệ thống máy tính lớn, mini, vi tính và nêu đại cương các công nghệ chính và dùng các thiết bị ngoại vi để đưa vào, đưa ra và lưu giữ. Bạn cần biết và có khả năng nhận diện các cấu phần và chức năng của hệ thống máy tính, cũng như mô tả xu hướng trong hệ thống máy tính. Là người kĩ sư phần mềm tương lai, bạn phải có khả năng nhận diện các kiểu ứng dụng phần mềm, giải thích mục đích của hệ thống phần mềm; và nêu đại cương các chức năng của hệ điều hành, ứng dụng phần mềm, công cụ phần mềm và ngôn ngữ. Bạn cũng cần biết về internet và ứng dụng phần mềm của nó. Tất cả những khái niệm này sẽ giúp hướng dẫn bạn trong các bài sau và các môn học khi bạn tiến bộ dần qua chương trình này. Chúng tôi khuyến khích bạn tham gia vào thảo luận trên lớp bao quát các chủ đề mà có thể hay không là một phần của bài. Mục đích của thảo luận trên lớp là để mở rộng hơn tri thức của bạn và tạo điều kiện cho việc tự dạy giữa sinh viên và giảng viên của khoa. Bạn càng dồn nhiều thời gian và nỗ lực vào lớp, bạn sẽ càng học nhiều hơn, và bạn càng thu được nhiều tri thức, kĩ năng và tri thức của bạn càng tốt sẽ xác định ra bạn có thể đi xa đến đâu trong việc theo đuổi nghề nghiệp về kĩ nghệ phần mềm. Bạn cần biết rằng tất cả máy tính - từ máy lớn tới máy cầm tay, đều có cùng tổ chức chức năng. Bốn đơn vị chức năng là: CPU, bộ nhớ ngoài, đơn vị đưa vào và đơn vị đưa ra. Bạn phải có khả năng hiểu máy vi tính (PC) với bộ vi xử lí và có khả năng thảo luận việc nổi lên của Intel và Microsoft và cách họ đi tới thống trị thị trường bộ vi xử lí. Bạn nên có khả năng nhận ra tất cả các đơn vị nhớ ngoài và trong, thiết bị đưa vào và thiết bị đưa ra. Bạn không cần hiểu chi tiết về cấu phần máy tính như được dạy trong các giáo trình khoa học máy tính hay kĩ nghệ máy tính với định hướng phần cứng. Chủ đề chính của môn này là cung cấp tri thức rộng về kĩ nghệ phần mềm bao quát hầu hết "Cái gì" chứ không "Thế nào". Cũng giống như bạn không cần biết cách mọi bộ phận của chiếc xe vận hành trước khi bạn học lái xe. Trong thảo luận trên lớp, bạn phải có khả năng đưa ra những ví dụ về cấu phần của máy tính (CPU, bộ nhớ, internet, thiết bị truyền thông, phần mềm, phần cứng, mạng v.v.) và thảo luận điều gì xảy ra nếu những hệ thống chủ chốt này hỏng? (Chẳng hạn, vi rút máy tính làm sập một nửa doanh nghiệp ở Mĩ năm 2004, và việc hỏng máy tính ở hệ thống điều khiển sân bay sẽ làm cắt bỏ nhiều chuyến bay, với việc chậm trễ tốn kém cho hãng hàng không vài triệu đô la). Nội dung Hệ thống máy tính là gì? Trả lời: Hệ thống máy tính bao gồm phần cứng và phần mềm hệ thống cộng tác để cho chạy chương trình ứng dụng. Thông tin được lưu giữ trong máy tính thế nào? Trả lời: Thông tin bên trong máy tính được biểu diễn như nhóm các mã nhị phân (Bits) được diễn giải theo những cách khác nhau, tuỳ thuộc vào ngữ cảnh. Ứng dụng làm việc với máy tính thế nào? Trả lời: Ứng dụng hay chương trình được dịch bởi chương trình khác thành các dạng khác, bắt đầu như văn bản ASCII rồi được trình biên dịch và trình móc nối dịch thành tệp thực hiện được dạng nhị phân. Bên trong máy tính làm việc thế nào? Trả lời: CPU hay bộ xử lí đọc và diễn giải các lệnh nhị phân được lưu trong bộ nhớ chính. Máy tính để hầu hết thời gian cho việc sao dữ liệu giữa bộ nhớ, thiết vị đưa vào và đưa ra (I/O) và thanh ghi của CPU, và thiết bị nhớ. Bài đọc thêm: 1. L2_How_PC_works.pdf 2. L2_Personal_Computer.pdf Bạn phải hoàn thành việc đọc tài liệu thêm trước khi lên lớp và sẵn sàng để tham gia vào thảo luận trên lớp. Bài tập về nhà và hướng dẫn trả lời: Không có bài tập về nhà cho bài này; Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai). Sinh viên phải nộp câu trả lời trên lớp để chứng tỏ rằng họ hiểu các khái niệm cơ bản về phần cứng và phần mềm. Vật phẩm bài giảng: Không. Bài 3: Kĩ nghệ phần mềm Kĩ nghệ phần mềm là rất đáng làm ngày nay, nổi lên như lĩnh vực phát triển nhanh nhất và là nghề có nhu cầu rất lớn ngày nay trong mọi công việc phần mềm. Thách thức trí tuệ của Kĩ nghệ phần mềm là có ý nghĩa bởi vì trong lĩnh vực này, bạn bao giờ cũng bị thách thức phải là tốt nhất trong số những người ưu tú của ngành công nghiệp phần mềm. Kĩ nghệ phần mềm là ứng dụng cách tiếp cận có hệ thống, có kỉ luật, định lượng được vào việc phát triển, vận hành, và bảo trì phần mềm. Nó bao gồm các kĩ thuật và thủ tục, thường được điều chỉnh bởi qui trình phát triển phần mềm, với mục đích cải tiến sự tin cậy và tính bảo trì của hệ thống phần mềm. Những người có tài năng là yếu tố quan trọng nhất trong bất kì tổ chức phần mềm nào. Bước đầu tiên của công ti phần mềm là thuê người giỏi nhất đang sẵn có. Ứng cử viên càng nhiều kinh nghiệm càng tốt. Những người chỉ có thể viết một ngôn ngữ lập trình, nhưng không biết cách phối hợp các hoạt động, kiến trúc hệ thống, hay thiết kế giải pháp, làm nảy sinh nhiều mảnh việc thiếu. Lịch sử của phát triển phần mềm là một trong những lịch sử phức tạp và tăng qui mô. Ban đầu phần mềm được phát triển bởi vài cá nhân, tạo ra vài chương trình nhỏ. Ngày nay phần mềm không còn chỉ là chương trình nhỏ, mà là sản phẩm lớn chứa vài triệu dòng mã lệnh đòi hỏi công việc được phối hợp của nhiều tổ. Các công ti phần mềm thành công đã học được rằng họ tất cả đều cần những công nhân có kỉ luật, có cấu trúc, người có thể thực hiện những nhiệm vụ mới này. Ngày nay trong thế giới đã phát triển, người lập trình đang bị thay thế bởi người kĩ sư phần mềm. Trong môn học này, bạn sẽ được giới thiệu cho vào chủ đề trong Kĩ nghệ phần mềm, hội tụ vào độ lớn mà hầu hết vấn đề phần mềm đều có tương hỗ với nhau. Chìa khoá trung tâm cho bộ môn Kĩ nghệ phần mềm là quản lí dự án phần mềm và qui trình phần mềm. Quản lí dự án phần mềm sẽ được dạy chi tiết hơn trong môn học kế sau, sẽ bao quát các miền mức cao, hội tụ vào qui trình phần mềm và mọi miền hỗ trợ của Kĩ nghệ phần mềm. Qui trình phần mềm là tập các công cụ, phương pháp, và thực hành chúng ta dùng để tạo ra sản phẩm phần mềm. Mục tiêu của quản lí qui trình phần mềm là để tạo ra sản phẩm tương ứng theo kế hoạch trong khi đồng thời hỗ trợ cho dự án để tạo ra sản phẩm có phẩm chất tốt hơn và không có lỗi. Chúng tôi khuyến khích bạn đọc nhiều hơn về qui trình phần mềm và tham gia vào thảo luận trên lớp. Điều này sẽ giúp cải tiến khả năng của bạn để lãnh đạo, để làm việc trong tổ và xây dựng có hiệu quả niềm tin của bạn khi bạn tiến qua những môn học này. Kĩ nghệ phần mềm là việc áp dụng cách tiếp cận có hệ thống, có kỉ luật, định lượng được vào việc phát triển, vận hành và bảo trì phần mềm. Nó bao quát các kĩ thuật và thủ tục, thường được điều chỉnh bởi qui trình phát triển phần mềm, với mục đích cải tiến sự tin cậy và tính bảo trì của hệ thống phần mềm. Theo cảnh quan kĩ nghệ phần mềm, khoa học máy tính, kĩ nghệ máy tính, và hệ thông tin nghiệp vụ (Tin học) tất cả đều là các lĩnh vực hỗ trợ. Việc tổ hợp những bộ môn này và sự hội tụ vào các ứng dụng thực hành sẽ dẫn tới một loại sinh viên tốt nghiệp khác hơn so với những người tốt nghiệp từ các chương trình lí thuyết ngày nay. Thuật ngữ “kĩ nghệ phần mềm” đã được F.L. Bauer tạo ra trong Hội nghị Kĩ nghệ phần mềm NATO năm 1968 tại đó ông ấy mô tả bộ môn kĩ nghệ bao gồm tri thức, công cụ và phương pháp để lấy yêu cầu, kiến trúc, thiết kế, xây dựng, kiểm thử, và bảo trì phần mềm. Ngày nay, các kĩ sư phần mềm phải có khả năng chứng tỏ năng lực phân tích, thiết kế, trắc nghiệm, kiểm nghiệm, và bảo trì hệ thống phần mềm bằng việc dùng các qui trình, mô hình, và cách đo thích hợp trong phát triển phần mềm. Họ cũng được trông đợi có những kĩ năng tổ và trao đổi cần thiết để hoạt động trong môi trường phát triển phần mềm. Phần mềm đã trở thành yếu tố chủ yếu trong tiến hoá của hệ thống dựa trên máy tính hay hệ thông tin. Trong bốn mươi năm qua, phần mềm đã tiến hoá từ một lĩnh vực chuyên môn hoá dành cho các nhà khoa học và nghiên cứu, thành ngành công nghiệp kiểm soát hầu hết mọi thứ chúng ta làm ngày nay. Tuy nhiên, khía cạnh “lập trình” của những năm đầu (Khoa học máy tính, Tin học) đã tạo ra một tập các vấn đề vẫn còn tồn tại tới ngày nay. Ý định của kĩ nghệ phần mềm là cung cấp cách tiếp cận mới tới giải quyết vấn đề bằng việc dùng hệ thống dựa trên máy tính cho một cái nhìn toàn bộ về qui trình phát triển nảy sinh trong các sản phẩm chất lượng cao hơn đáp ứng cho trông đợi của người dùng. Có sự khác biệt căn bản giữa người lập trình và người kĩ sư phần mềm. Người này hội tụ vào khía cạnh thực hiện (lập trình), trong khi người kia bao quát toàn bộ vòng đời phát triển từ quan niệm khởi đầu cho tới sản xuất và bảo trì cuối cùng. Những thay đổi đã xảy ra một cách toàn cầu nơi "tốc độ" bây giờ là qui tắc chính, làm khó khăn cho hệ thống giáo dục truyền thống theo kịp với thay đổi công nghệ và nhu cầu công nghiệp. Tiến hoá của phát triển phần mềm là một trong những tiến hoá tăng thường xuyên về qui mô và tốc độ. Hai mươi năm trước đây, vài người có thể xây dựng những chương trình nhỏ không khó khăn gì. Nhưng trong vài năm lại đây công việc này đã tăng lên, đòi hỏi sự trưởng thành của các tổ hàng trăm người, rồi tới vài tổ cỡ vài trăm người để đáp ứng nhu cầu xây dựng sản phẩm phần mềm cuối cùng, có tới hàng trăm triệu dòng mã lệnh. Đây là lí do tại sao khái niệm về người lập trình không còn có tác dụng và phải bị thay thế bằng cách tiếp cận có kỉ luật tới việc xây dựng phần mềm. Nội dung 1. Tại sao chúng ta cần nghiên cứu Kĩ nghệ phần mềm thay cho Khoa học máy tính? 2. Tại sao chúng ta cần hội tụ vào qui trình phần mềm? 3. Các khái niệm chủ yếu của kĩ nghệ phần mềm là gì? 4. Tại sao chúng ta cần công việc tổ? Bài đọc thêm: 1. L3_Why Software Is So Bad.pdf 2. L3_Future_of_IT_profession.pdf 3. L3_Software_Engineering_Needs.pdf 4. L3_Software Engineering Degree Programs.pdf 5. L3_Software Engineering Issues.pdf Bạn phải hoàn thành việc đọc tài liệu thêm trước khi lên lớp và sẵn sàng để tham gia vào thảo luận trên lớp. Bài tập về nhà: Viết bài báo ngắn (2 – 3 trang) dựa trên kịch bản sau: Khi phần mềm trở nên quan trọng hơn, rủi ro cho doanh nghiệp do chương trình lỗi trở thành mối quan tâm ngày càng tăng. Hãy xây dựng một kịch bản hiện thực để lỗi của chương trình có thể gây tai hại đáng kể cho doanh nghiệp. Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai). Sinh viên phải nộp câu trả lời trên lớp để chứng tỏ rằng họ hiểu các khái niệm cơ bản về phần cứng và phần mềm. Vật phẩm bài giảng: Không. Nhập môn Kĩ nghệ phần mềm - Bài 4: Qui trình phần mềm Bài 4: Qui trình phần mềm Trong bài này, bạn sẽ được giới thiệu với khái niệm về qui trình phần mềm. Qui trình phần mềm là tập các công cụ, phương pháp, và thực hành chúng ta dùng để tạo ra sản phẩm mềm. Các mục tiêu của quản lí qui trình phần mềm là để tạo ra sản phẩm tương ứng theo kế hoạch trong khi đồng thời hỗ trợ cho dự án để tạo ra sản phẩm với phẩm chất tốt hơn, không có lỗi. Trong bài này, bạn sẽ học về qui trình phần mềm như một khuôn khổ hay bản lộ trình để giúp hướng dẫn kĩ sư phần mềm phát triển phần mềm một cách nhất quán và hiệu quả. Khái niệm chủ yếu của qui trình được dựa trên nguyên tắc: Chất lượng của sản phẩm phần mềm bị cai quản bởi chất lượng của qui trình được dùng để xây dựng và bảo trì nó. Để nâng cao chất lượng của sản phẩm, người ta phải cải tiến chất lượng của qui trình tạo nên sản phẩm. Trong phát triển phần mềm được dẫn lái theo qui trình, bạn bắt đầu bằng việc xác định qui trình phát triển cho một dự án đang phát triển, dựa trên các qui trình thành công đã được chứng minh từ kinh nghiệm trước. Sau khi qui trình đã được xác định, người kĩ sư phần mềm phải được huấn luyện để tuân theo qui trình đã được xác định này. Khi bạn thực hiện qui trình này, người quản lí có thể điều phối và đo việc thực hiện để đảm bảo rằng qui trình được tuân theo và kết quả đáp ứng yêu cầu chất lượng mong muốn. Bằng việc có cách đo, lỗi có thể được tìm ra. Khi điều này xuất hiện, qui trình được sửa đổi để chữa lỗi hay nâng cao nó, và nó được cài đặt lại và được dùng cho phát triển phần mềm. Phần tử cơ bản của qui trình có thể được tổ chức bằng việc dùng đặc tả ETVX (Entry, Task, Verification, và Exit). Kí pháp đơn giản này là công cụ mạnh có thể giúp bạn hiểu qui trình phần mềm và làm cho bạn có khả năng xác định bất kì qui trình nào bạn muốn. Hãy để thời gian để hiểu kí pháp đơn giản này và thực hành nó trên nhiều qui trình mà bạn có thể tìm thấy. (E) Tiêu chí đi vào - nói tới các yêu cầu tối thiểu để bắt đầu qui trình. (T) Nhiệm vụ qui trình - nói tới nhiệm vụ cần được hoàn thành. (V) Trắc nghiệm qui trình - nói tới cách trắc nghiệm rằng nhiệm vụ đã được hoàn thành theo cách chúng đáng phải vậy, với kết quả mong muốn. (X) Tiêu chí đi ra - nói tới các yêu cầu tối thiểu để rởi bỏ hay ra khỏi qui trình. Trong thế giới cạnh tranh toàn cầu này, mọi công ti phần mềm đều muốn chuyển giao sản phẩm, nhanh hơn và rẻ hơn nhưng họ cũng thấy rằng phần mềm đang ngày một lớn hơn và phức tạp hơn. Để thành công, các công ti phải có khả năng quản lí và kiểm soát môi trường phát triển phức tạp này bằng cách áp dụng bộ môn của Kĩ nghệ phần mềm và hội tụ vào qui trình phần mềm. Chế tạo từ lâu đã thừa nhận tầm quan trọng của của tính hiệu quả và hiệu lực qui trình. Qui trình giúp lực lượng lao động của công ti đáp ứng mục đích nghiệp vụ bằng việc giúp cho họ làm việc thông minh hơn với sự nhất quán được cải thiện. Để kiểm soát thực sự công việc phức tạp và chất lượng, mọi người đều phải quản lí kế hoạch chi tiết và chính xác. [...]... hỏi sau: Mô hình phần mềm nào sẽ là hiệu quả nhất trong một dự án phần mềm lớn và phức tạp? Thảo luận ưu và nhược điểm của từng mô hình qui trình Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai) Bài 7: Dự án phần mềm Trong bài này, bạn sẽ học khái niệm quan trọng nhất trong Kĩ nghệ phần mềm: quản lí dự án phần mềm Nêu lưu ý rằng quản lí dự án phần mềm KHÔNG phải... Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai) Bài 9: Phát triển yêu cầu phần mềm Trong bài này, các bạn sẽ học một trong những bộ môn Kĩ nghệ phần mềm mấu chốt: phát triển yêu cầu Phát triển yêu cầu phần mềm là một phần của dự án trong đó nhu cầu của khách hàng được thu thập và được dịch thành đặc tả về điều hệ thống phải thực hiện Các dự án phần mềm thành... nghiệp phần mềm ngày nay đang phải đương đầu và dùng qui trình như kỉ luật trung tâm của Kĩ nghệ phần mềm 1) 2) 3) 4) 5) “Tại sao nhiều dự án phần mềm thất bại?” Cái gì là bằng chứng rằng phần mềm đang ngày càng lớn hơn và phức tạp hơn? Tại sao chất lượng phần mềm lại quan trọng thế? “Tại sao chúng ta hội tụ vào qui trình phần mềm? “Tại sao con người là quan trọng trong qui trình phần mềm? Bài đọc... hình thích hợp để áp dụng cho dự án Kĩ nghệ phần mềm là bộ môn tích hợp qui trình, phương pháp và công cụ cho việc phát triển sản phẩm phần mềm Sai lầm thông thường mọi người hay tạo ra liên quan tới phần mềm là giả định rằng phần lớn việc phát triển phần mềm là lập trình Thực tế, lập trình chỉ là một phần của qui trình phát triển phần mềm Ngày nay, phát triển phần mềm bao gồm nhiều bước và qui trình... Process.pdf Bài tập về nhà và hướng dẫn trả lời Viết một bài báo ngắn (2 -3 trang) giải thích tại sao công nhân có kĩ năng (Kĩ sư phần mềm) là quan trọng trong phát triển phần mềm? Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai) Vật phẩm bài giảng: Không Bài 5: Qui trình được xác định Bài này hội tụ vào qui trình được xác định, tập các qui trình đã được chứng tỏ thành... chuyển phần mềm lên nền mới, hay thích ứng phần mềm với công nghệ mới Mặc dầu dường như là phần mềm nên được chấm dứt sau chuyển giao, điều này là không đúng Mọi sản phẩm phần mềm thành công đều tiến hoá theo thời gian để đáp ứng nhu cầu thay đổi của khách hàng Có vài mô hình qui trình khác nhau cho Kĩ nghệ phần mềm; mỗi mô hình đều có điểm mạnh và điểm yếu riêng Mô hình qui trình được chọn bởi người kĩ. .. thành nên nhiều trong các hành vi của bạn Tuy nhiên không giống như những hiểm nguy của việc sống hàng ngày, rủi ro trong Kĩ nghệ phần mềm không được dạy kĩ trong nhiều đại học và thường chỉ được học khi sinh viên tham gia vào lực lượng lao động Chương trình Kĩ nghệ phần mềm nhận diện một số ví dụ điển hình về các mục rủi ro phần mềm: • • • • • • Khan hiếm người Lịch biểu và ngân sách không hiện thực. .. bài 2 tổ cần trình bày danh sách kiểm cho lớp Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai) Bài 10: Quản lí cấu hình phần mềm Trong bài này bạn sẽ học về Quản lí cấu hình phần mềm Software Configuration Management (SCM), một bộ môn mấu chốt của Kĩ nghệ phần mềm Quản lí cấu hình phần mềm có thể được định nghĩa như qui trình quản lí để thiết lập và duy trì sự nhất... kiểm điểm công việc của tổ khác về tính đầy đủ và đúng đắn Có 2 bài kiểm tra trên lớp (một bài kiểm tra đa chọn lựa và một bài kiểm tra đúng/sai) Vật phẩm bài giảng: Không Bài 6: Mô hình qui trình Qui trình phát triển phần mềm là một cấu trúc áp lên việc phát triển sản phẩm phần mềm Nó có thể được gọi là vòng đời phần mềm hay qui trình phần mềm Có vài mô hình cho các qui trình như vậy, mỗi mô hình mô... trong công nghiệp phần mền; những doanh nghiệp phát triển phần mềm sở hữu riêng như Microsoft, Oracle, Cisco và những doanh nghiệp phát triển phần mềm nguồn mở Phát triển phần mềm sở hữu riêng thì đắt và có bao hàm việc cấp phép phần mềm và phải bảo vệ phần mềm khỏi sao chép trộm Thu hồi tài chính chính về nguồn mở tới từ việc bán dịch vụ, như huấn luyện và hỗ trợ, thay vì bản thân phần mềm Nhiều người . lớp để chứng tỏ rằng họ hiểu các khái niệm cơ bản về phần cứng và phần mềm. Vật phẩm bài giảng: Không. Bài 3: Kĩ nghệ phần mềm Kĩ nghệ phần mềm là rất đáng làm ngày nay, nổi lên như lĩnh vực phát triển. - Bài 4: Qui trình phần mềm Bài 4: Qui trình phần mềm Trong bài này, bạn sẽ được giới thiệu với khái niệm về qui trình phần mềm. Qui trình phần mềm là tập các công cụ, phương pháp, và thực hành. một bài kiểm tra đúng/sai). Bài 7: Dự án phần mềm Trong bài này, bạn sẽ học khái niệm quan trọng nhất trong Kĩ nghệ phần mềm: quản lí dự án phần mềm. Nêu lưu ý rằng quản lí dự án phần mềm

Ngày đăng: 18/10/2014, 11:07

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan