công nghệ phần mềm nguyễn văn hiệp chương1 tổng quan ve công nghệ phần mềm sinhvienzone com

19 65 0
công nghệ phần mềm nguyễn văn hiệp chương1 tổng quan ve công nghệ phần mềm sinhvienzone com

Đ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

Chương Tổng quan công nghệ phần mềm ne C om 1.1 Máy tính số cơng dụng 1.2 Chương trình máy tính 1.3 Các mục tiêu yếu việc xây dựng phần mềm 1.4 Các hoạt ₫ộng chức phát triển phần mềm 1.5 Qui trình phát triển phần mềm 1.6 Công nghệ phần mềm 1.7 Kết chương Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Các thiết bị cụ thể hóa : Con người thơng minh ₫ộng vật khác nhiều Trong sống, họ ₫ã chế tạo ngày nhiều công cụ, thiết bị ₫ể hỗ trợ hoạt ₫ộng Các cơng cụ, thiết bị người chế tạo ngày tinh vi, phức tạp thực nhiều công việc trước ₫ây Mỗi công cụ, thiết bị thường thực ₫ược vài công việc cụ thể ₫ó Thí dụ, chổi ₫ể qt, radio ₫ể bắt nghe ₫ài audio Ta gọi thiết bị thiết bị cụ thể hóa Khuyết ₫iểm thiết bị cụ thể hóa thiết bị giải công việc Trong sống, ta cần thực nhiều cơng việc, ₫ó ta phải chế tạo nhiều thiết bị việc dấu hiệu chấm dứt… Si ‰ Vi I Máy tính số cơng dụng ‰ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide https://fb.com/sinhvienzonevn I Máy tính số cơng dụng Thiết bị tổng qt hóa - Máy tính số (digital computer) : thiết bị, thay thực vài chức cụ thể, sát với nhu cầu ₫ời thường người, thực số hữu hạn chức (tập lệnh), lệnh sơ khai chưa giải trực tiếp ₫ược nhu cầu ₫ời thường người Cơ chế thực lệnh tự ₫ộng, bắt ₫ầu từ lệnh ₫ược ₫ịnh ₫ó lệnh cho ₫ến lệnh cuối Danh sách lệnh ₫ược thực ₫ược gọi chương trình ne C om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Bất kỳ cơng việc (bài tốn) ngồi ₫ời ₫ược chia thành trình tự nhiều cơng việc nhỏ Trình tự cơng việc nhỏ ₫ược gọi giải thuật giải cơng việc ngồi ₫ời Mỗi cơng việc nhỏ ₫ược chia nhỏ phức tạp, ⇒ cơng việc ngồi ₫ời ₫ược miêu tả trình tự lệnh máy (chương trình ngơn ngữ máy) Ưu ₫iểm máy tính số ta cần chế tạo lần, theo thời gian ta nhờ chạy phần mềm khác ₫ể thực toán khác Si ‰ Vi I Máy tính số cơng dụng ‰ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide https://fb.com/sinhvienzonevn I Máy tính số cơng dụng ‰ ne C om ‰ Vấn ₫ề mấu chốt việc dùng máy tính giải cơng việc ngồi ₫ời lập trình (₫ược hiểu nơm na qui trình xác ₫ịnh trình tự ₫úng lệnh máy ₫ể thực cơng việc) Cho ₫ến nay, lập trình cơng việc người (với trợ giúp ngày nhiều máy tính) Với cơng nghệ phần cứng nay, ta chế tạo máy tính mà tập lệnh máy sơ khai, lệnh máy thực cơng việc nhỏ ₫ơn giản ⇒ cơng việc ngồi ₫ời thường tương ₫ương với trình tự lớn (hàng triệu) lệnh máy ⇒ Lập trình ngơn ngữ máy phức tạp, tốn nhiều thời gian, công sức, kết khó bảo trì, phát triển Mơn : Nhập mơn Cơng nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Ta muốn có máy luận lý với tập lệnh (₫ược ₫ặc tả ngơn ngữ lập trình) cao cấp gần gủi với người Ta thường thực máy máy vật lý + chương trình dịch Có loại chương trình dịch : trình biên dịch (compiler) trình thơng dịch (interpreter) Gọi ngơn ngữ máy vật lý N0 Trình biên dịch ngôn ngữ N1 sang ngôn ngữ N0 nhận ₫ầu vào chương trình ₫ược viết ngơn ngữ N1, phân tích lệnh N1 chuyển thành danh sách lệnh ngơn ngữ N0 có chức tương ₫ương Để viết chương trình dịch từ ngơn ngữ N1 sang N0 dễ dàng, ₫ộ phức tạp lệnh ngôn ngữ N1 không cao so với lệnh ngơn ngữ N0 Si ‰ Vi I Máy tính số công dụng ‰ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide https://fb.com/sinhvienzonevn I Máy tính số cơng dụng ‰ ne C ‰ Sau có máy luận lý hiểu ₫ược ngơn ngữ luận lý N1, ta ₫ịnh nghĩa thực máy luận lý N2 theo cách tiếp tục ₫ến ta có máy luận lý hiểu ₫ược ngôn ngữ Nm gần gũi với người, dễ dàng miêu tả giải thuật tốn cần giải Nhưng qui trình chưa có ₫iểm dừng, với yêu cầu ngày cao kiến thức ngày nhiều, người ta tiếp tục ₫ịnh nghĩa ngôn ngữ với tập lệnh ngày gần gũi với người ₫ể miêu tả giải thuật dễ dàng, gọn nhẹ sáng Hiện nay, ta thường viết phần mềm ngôn ngữ cấp cao Java, C# om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Chương trình máy tính giải thuật cụ thể ₫ể giải cơng việc ngồi ₫ời mà cơng việc giải thuật ₫ược miêu tả lệnh máy cụ thể Chương trình máy tính chương trình ngơn ngữ máy, chạy trực tiếp CPU phần cứng máy Chương trình máy tính chương trình ngơn ngữ cấp cao C, C++, C#, Java,… Trong trường hợp ta phải dùng chương trình dịch chương trình ngơn ngữ máy có hành vi tương ₫ương trước nhờ CPU máy tính chạy trực tiếp Đối với ứng dụng lớn phức tạp, ta nên chọn ngơn ngữ cấp cao ₫ể xây dựng Si ‰ Vi II Chương trình máy tính — Phần mềm ‰ ‰ ‰ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide https://fb.com/sinhvienzonevn II Phần mềm - FAQ Phần mềm ? Chương trình máy tính tài liệu kết hợp Phần mềm ₫ược viết theo yêu cầu cá nhân hay theo thị trường tổng quát Phần mềm tốt có tính chất ? Nó phải cung cấp chức ₫ộ hiệu hoạt ₫ộng theo yêu cầu, phải dễ bảo trì, sử dụng, hiệu chỉnh nâng ấp Công nghệ phần mềm ? Lĩnh vực kỹ thuật liên quan ₫ến hoạt ₫ộng viết phần mềm om Các hoạt ₫ộng kỹ thuật Đặc tả yêu cầu, phát triển phần mềm, kiểm ₫ịnh ₫ể viết phần mềm gì? phần mềm, trì tiến triển phần mềm Khoa học máy tính tập trung lý thuyết thơng tin tảng, công nghệ phần mềm liên quan ₫ến thực tiển phát triển phân phối phần mềm hữu dụng ne C Sự khác biệt công nghệ phần mềm khoa học máy tính ? Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 Vi II Phần mềm - FAQ Si nh Sự khác biệt công nghệ phần mềm kỹ thuật hệ thống ? Kỹ thuật hệ thống thiên lĩnh vực phát triển hệ thống dựa máy tính phần cứng, phần mềm; công nghệ phần mềm phần kỹ thuật hệ thống Những thách thức Phần mềm cần viết ngày ₫a dạng phức công nghệ phần mềm tạp hơn, user muốn phần mềm ₫ược phân phối ? ngày sớm phải có ₫ộ tin cậy cao Chi phí phát triển phần mềm ? Khoảng 60% phát triển, 40% kiểm thử Đối với phần mềm cá nhân hóa, chi phí tiến triển phần mềm vượt xa chi phí viết phần mềm lần ₫ầu Phương pháp kỹ thuật phát triển phần mềm tốt ? Phụ thuộc vào tính chất phần mềm mà phương pháp kỹ thuật thích hợp Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 10 https://fb.com/sinhvienzonevn II Phần mềm - FAQ Nhờ web, ta dùng nhiều dịch vụ phần mềm có sẵn, ta dễ dàng phát triển hệ thống phân tán dựa vào dịch vụ Việc phát triển hệ thống dựa vào Web dẫn ₫ến nhiều tiến quan trọng ngơn ngữ lập trình ₫ộ sử dụng lại phần mềm ne C om 10 Web có ảnh hưởng ₫ến cơng nghệ phần mềm ? Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 11 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Tùy vào góc nhìn mà ta phân loại phần mềm Thí dụ, dựa vào cách thức hoạt ₫ộng phần mềm ₫ối với người dùng ta phân phần mềm loại sau : ƒ Phần mềm ₫ại chúng : ₫ược viết bán cho khách hàng muốn dùng chúng Thí dụ phần mềm ₫ồ họa PhotoShop, tool quản lý dự án, phần mềm CAD… ƒ Phần mềm cá nhân hóa : ₫ược viết cho khách hàng ₫ặc biệt, riêng lẻ theo yêu cầu riêng họ Thí dụ hệ thống ₫iều khiển nhúng, phần mềm ₫iều khiển không lưu, phần mềm kiểm sốt giao thơng Si ‰ Vi II Phần mềm — Phân loại Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 12 https://fb.com/sinhvienzonevn II Phần mềm — Phân loại Nếu dựa vào khả thay ₫ổi hành vi phần mềm ₫ối với người dùng ta phân phần mềm loại sau : ƒ Phần mềm cụ thể hóa hóa : ln cung cấp tính hành vi cố ₫ịnh, cho dù ₫ược chạy lần thứ ƒ Phần mềm tổng quát hóa : thay ₫ổi tính hành vi theo thời gian theo yêu cầu người dùng Thí dụ MS Word phần mềm soạn thảo văn bản, user cá nhân hóa theo thời gian ₫ể biến thành ứng dụng có chức ne C om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 13 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Nếu dựa vào tài ngun mà phân mềm dùng ta phân phần mềm loại sau : ƒ Phần mềm chạy máy ₫ơn : dùng tài nguyên máy qua trình hoạt ₫ộng ƒ Phần mềm mạng hay phân tán : dùng nhiều tài nguyên nhiều máy khác ₫ể hoạt ₫ộng Si ‰ Vi II Phần mềm — Phân loại Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 14 https://fb.com/sinhvienzonevn II Phần mềm — Phân loại Nếu dựa vào lĩnh vực xử lý ta có loại phần mềm sau : ƒ Hệ ₫iều hành : phần mềm quản lý tài nguyên cấp thấp (thường phần cứng), che dấu tính chất vật lý chúng (thường khó hiểu sử dụng), cung cấp lại interface sử dụng chúng với lợi ₫iểm an toàn, tin cậy, thân thiện, hiệu ₫ộc lập với tính chất vật lý tài nguyên ₫ược sử dụng Người ta gọi HĐH máy ảo (máy luận lý) ƒ Chương trình dịch : dịch file mã nguồn sang dạng mã máy tương ₫ương (thường ₫ược link lại thành file khả thi *.exe) Mỗi lần chạy ứng dụng, ta kích hoạt file khả thi ne C om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 15 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 Ứng dụng văn phòng : Cho phép người dùng thực số chức thông thường liên quan ₫ến văn phòng Microsoft Office ứng dụng văn phòng ₫ược sử dụng phổ biến Open Office ứng dụng văn phòng mã nguồn mở yếu thiếu ổn ₫ịnh hơn) Ứng dụng nghiệp vụ & Database server : Ứng dụng nghiệp vụ thực yêu cầu nghiệp vụ quan, ₫ơn vị quản lý nhân viên, quản lý tài sản, quản lý ₫iểm, quản lý bệnh nhân bệnh án, Trong hầu hết ứng dụng nghiệp vụ, liệu cần lưu trữ xử lý lớn Vấn ₫ề lưu trữ quản lý liệu lớn cho qn, an tồn tin cậy, ₫òi hỏi nhiều kiến thức chuyên sâu nhiều thời gian công sức thực Database server giải phóng người lập trình khỏi công việc liên quan ₫ến database Si nh ƒ Vi II Phần mềm — Phân loại ƒ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập mơn Cơng nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 16 https://fb.com/sinhvienzonevn II Phần mềm — Phân loại Biên tập & chơi multimedia : Multimedia liệu ₫a phương tiện văn bản, hình ảnh, âm thanh, film, Dữ liệu ₫a phương tiện giúp người dùng thích thú nghiên cứu vấn ₫ề ₫ó Các ứng dụng biên tập liệu ₫a phương tiện cho phép ta xây dựng, thêm/bớt/hiệu chỉnh thông tin file ₫a phương tiện tương ứng Thí dụ trình Photoshop cho ta xử lý ảnh tĩnh, SoundGold cho phép ta xử lý âm thanh, Photo Premiere cho ta biên tập film Các ứng dụng chơi multimedia cho phép người dùng tham khảo file multimedia ₫ã có Thí dụ trình Window Multimedia Player Microsoft cho ta chơi hầu hết ₫ịnh dạng file multimedia khác từ ảnh tĩnh, âm hay film File multimedia cần chơi nằm máy ₫ơn hay server multimedia ₫ó mạng Internet ne C om ƒ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 17 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 Game : Game (ứng dụng trò chơi) ứng dụng dễ lơi người dùng Có thể loại game phổ biến : game hành ₫ộng game trí tuệ Các ứng dụng mạng Internet : Thường ứng dụng mạng dùng mơ hình hoạt ₫ộng client/server, module ₫óng vai trò server, client Module server quản lý tài nguyên liên quan máy ₫ang chạy cung cấp dịch vụ truy xuất tài nguyên cho module máy khác Module client chạy máy người dùng, cung cấp giao tiếp sử dụng thân thiện, dễ dàng, an toàn, Các module server/client cửa ứng dụng mạng thường tuân thủ giao thức xác ₫ịnh ₫ó Giao thức (protocol) tập thông báo request/reply ₫ịnh dạng cụ thể thông báo mà client/server gởi/nhận cho Si nh ƒ Vi II Phần mềm — Phân loại ƒ Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 18 https://fb.com/sinhvienzonevn II Phần mềm — Phân loại Các ứng dụng CAD (Computer-Aided Design) : Giúp người thiết kế xây dựng/hiệu chỉnh thiết kế trực tiếp máy tính với giám sát/kiểm soát/trợ giúp ngày nhiều phần mềm, nhờ ₫ó ta có nhanh ₫ược thiết kế ₫úng ₫ắn, khoa học, bản, Bản vẽ ₫ược phân tích tự ₫ộng ₫ể xác ₫ịnh số thông tin cần thiết CAD ₫ược dùng ₫ể thiết kế chi tiết khí, mạch ₫iện tử, tàu thủy, xe hơi, nhà cửa, quần áo,… Một số phần mềm tiêu biểu: OrCAD, AutoCAD,… ne C om ƒ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 19 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 Vi II Phần mềm — Phân loại Ứng dụng CAM (Computer-Aided Manufacture) : Phần mềm dùng máy tính hỗ trợ q trình sản xuất chế tạo linh kiện/thiết bị Một số dạng CAM Robot công nghiệp, CNC, CAD/CAM, hệ thống ₫iều khiển Robot công nghiệp thay người việc thực công việc cụ thể xác ₫ịnh Robot có thành phần : tay máy, ₫iều khiển cung cấp lượng Robot có khả cảm nhận môi trường xung quanh (nhờ sensor) ₫áp ứng kịp thời với thay ₫ổi trạng thái môi trường CNC (Computer numerical control) ₫ược sử dụng rộng rãi thiết bị máy, ₫iều khiển hoạt ₫ộng máy dựa chương trình viết sẵn Mạch vi xử lý thu thập thông tin liên quan (thông qua mạch D/A), dựa thơng tin thu thập ₫ược, ₫iều khiển thiết bị máy thay ₫ổi hành vi theo tác ₫ộng Môn : Nhập môn Công nghệ phần mềm Khoa Khoa họcbên & Kỹ thuật Máy tính ngồi Si nh ƒ Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Chương : Tổng quan công nghệ phần mềm Slide 20 https://fb.com/sinhvienzonevn II Phần mềm — Phân loại Ứng dụng nhúng (embedded apllications) : Là ứng dụng ₫ược cài ₫ặt vào thiết bị cụ thể có trang bị máy tính số với tài nguyên hạn chế Nhiệm vụ ứng dụng nhúng ₫iều khiển trình hoạt ₫ộng thiết bị Thí dụ chương trình ₫iều khiển máy in laser, máy vẽ, máy photocopy, máy giặt, ne C om ƒ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 21 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 Mơ hình hóa & mơ : Mơ hình hóa ₫ược dùng ₫ể xem xét, phân tích lên kế hoạch cho cơng việc phức tạp Mơ hình hóa thường dùng cơng thức tốn học ₫ể mơ tả cơng việc hay q trình phức tạp Ví dụ : s = 0.5 at2 với s quảng ₫ường ₫i ₫ược, a gia tốc t thời gian Mơ dùng máy tính ₫ể mơ hình hóa xem xét hệ thống : Kiểm tra, An tồn, Dự ₫ốn, Nhanh chóng linh hoạt Thường phần mềm mơ hình hóa & mơ ₫ược sử dụng nhiều lĩnh vực Giao thông, Xã hội học, Dự ₫oán thời tiế, Thủy lực học, Sinh học, Giáo dục học, Mơ hình chiều Si nh ƒ Vi II Phần mềm — Phân loại Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 22 https://fb.com/sinhvienzonevn III Các mục tiêu việc phát triển phần mềm ‰ ne C om ‰ Hiện nay, phần mềm thường phải có nhiều tính hữu dụng dễ dàng sử dụng Do ₫ó ₫ộ phức tạp thường cao, phần mềm ₫ược dùng lâu dài qua nhiều hệ user, trình dùng phần mềm cần ₫ược nâng cấp hiệu chỉnh theo yêu cầu phát sinh Ta dùng thuật ngữ “phát triển phần mềm” (software development) ₫ể tất hoạt ₫ộng giúp phần mềm tồn phát triển theo thời gian Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 23 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Chi phí “phát triển phần mềm” : ƒ Thường lớn chiếm phần lớn chi phí xây dựng trì hệ thống tính tốn, cao nhiều so với chi phí trang bị phần cứng ƒ Chi phí trì tính hữu dụng phần mềm theo thời gian sử dụng thường cao so với chi phí xây dựng phiên ₫ầu tiên phần mềm Si ‰ Vi III Các mục tiêu việc phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 24 https://fb.com/sinhvienzonevn III Các mục tiêu việc phát triển phần mềm Phát triển phần mềm cần ₫ạt mục tiêu sau ₫ây : ƒ Phần mềm phải thực ₫úng ₫ủ chức ₫ề (tính ₫úng ₫ắn tin cậy phần mềm) Đây yêu cầu chức ƒ Mỗi chức phải thực cách hiệu quả, tin cậy thời gian qui ₫ịnh… Đây yêu cầu phi chức ƒ Tốn chi phí thấp nhất, thời gian nhanh ₫ể có phần mềm chạy ₫ược, dùng ₫ược ƒ Ít cần thay ₫ổi theo thời gian yêu cầu phát sinh (₫ể hạn chế chi phí nâng cấp, hiệu chỉnh) Nếu có cần thay ₫ổi -> tối thiểu chi phí hiệu chỉnh, nâng cấp ƒ Nếu cần thay ₫ổi, nâng cấp phần mềm hành phải hỗ trợ tối ₫a cho việc thay ₫ổi, nâng cấp -> tối thiểu chi phí hiệu chỉnh, nâng cấp ne C om ‰ Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 25 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Việc phát triển phần mềm ₫ược tiến hành theo nhiều chu kỳ, chu kỳ ta phải thực hoạt ₫ộng chức sau ₫ây : Si ‰ Vi IV Các hoạt ₫ộng chức ⊂ phát triển phần mềm Nắm bắt yêu cầu Requirements Phân tích yêu cầu Analysis Thiết kế Design Lập tài liệu cho kết (dùng ngôn ngữ ₫ặc dụng) Hiện thực Implementation Kiểm thử Test Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập mơn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 26 https://fb.com/sinhvienzonevn IV Các hoạt ₫ộng chức ⊂ phát triển phần mềm Nắm bắt yêu cầu (Requirements) : Nhiệm vụ workflow xác ₫ịnh xác, rõ ràng ₫ầy ₫ủ thơng tin sau liên quan ₫ến chương trình : ƒ chức chương trình cần ₫áp ứng, chức cần xác ₫ịnh rõ phục vụ cho ai, họ cung cấp thơng tin dạng cho phần mềm, phần mềm xuất kết dạng nào… ƒ chương trình tương tác với thành phần : loại người nào, phần mềm nào, thiết bị nào, ne C om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 27 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Phân tích u cầu (Analysis) : Nhiệm vụ workflow phát họa sơ lược cách giải chức chương trình Thường ta dựa vào phương pháp phân tích từ xuống : ƒ Nội dung phương pháp xét xem, muốn giải vấn ₫ề ₫ó cần phải làm cơng việc nhỏ Mỗi cơng việc nhỏ tìm ₫ược lại ₫ược phân thành công việc nhỏ nữa, cho ₫ến công việc phải làm cơng việc thật ₫ơn giản, thực dễ dàng ƒ Thí dụ việc học lấy kỹ sư CNTT khoa CNTT ĐHBK TP.HCM bao gồm công việc nhỏ học học kỳ từ tới 9, học học kỳ i học n mơn học học kỳ ₫ó, học mơn học học m chương mơn ₫ó, Si ‰ Vi IV Các hoạt ₫ộng chức ⊂ phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 28 https://fb.com/sinhvienzonevn IV Các hoạt ₫ộng chức ⊂ phát triển phần mềm ‰ ne C ‰ Thiết kế (Design) : Nhiệm vụ workflow chi tiết hóa cách giải chức chương trình ₫ến mức ₫ộ dễ dàng viết code có Nếu người làm, ta lặp thiết kế chức theo thứ tự xác ₫ịnh Hiện thực (Implementation) : Nhiệm vụ workflow dịch thiết kế chi tiết thành mã nguồn ngơn ngữ lập trình xác ₫ịnh, từ ₫ó dịch mã máy ₫ể tạo thành chương trình khả thi chạy máy tính Nếu người làm, ta lặp thực chức thiết kế (hay phần nhỏ chức năng) theo thứ tự xác ₫ịnh Kiểm thử (Testing) : Nhiệm vụ workflow kiểm tra thử nghiệm chương trình thực thi xem có lỗi khơng, có lỗi cụ thể nằm lệnh nào, bị lỗi sữa lỗi Nếu người làm, ta lặp kiểm thử hàm chức theo thứ tự xác ₫ịnh om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 29 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Lập tài liệu cho hoạt ₫ộng chức : Thực workflow tạo nhiều kết quả, ta phải quản lý, bảo trì kết theo thời gian nhằm phục vụ cho việc nghiên cứu, hiệu chỉnh, nâng cấp phầm mềm sau Một việc quản lý, bảo trì kết tạo ₫ược lập tài liệu Ta phải dùng ngơn ngữ thích hợp ₫ể lập tài liệu cho kết cho việc quản lý, bảo trì, chuyển giao phần mềm ₫ược dễ dàng, tin cậy hiệu Hiện nay, ngơn ngữ mơ hình UML (Unified Modeling Language) ₫ược sử dụng phổ biến ₫ể ₫ặc tả, quản lý tài liệu trình phát triển phần mềm Si ‰ Vi IV Các hoạt ₫ộng chức ⊂ phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập mơn Cơng nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 30 https://fb.com/sinhvienzonevn V Qui trình phát triển phần mềm ‰ om ‰ C ‰ Nói nơm na trình tự cơng việc mà ta phải tuân thủ thực ₫ể xây dựng trì phần mềm hữu dụng theo thời gian Có nhiều qui trình phát triển phần mềm khác ₫ã ₫ược ₫ề nghị sử dụng Mỗi qui trình có ưu, nhược ₫iểm riêng thích hợp loại phần mềm cụ thể Cho dù dùng qui trình phát triển phần mềm phải thực hoạt ₫ộng chức ₫ã ₫ược giới thiệu slide trước, có ₫ều cách thức thời ₫iểm thực chúng mà Các hoạt ₫ộng chức phải làm nắm bắt yêu cầu phần mềm, phân tích yêu cầu, thiết kế (kiến trúc chi tiết), thực, kiểm thử chuyển giao cho user Mơ hình qui trình phát triển phần mềm diễn tả trừu tượng qui trình ₫ó theo vài góc nhìn xác ₫ịnh ne ‰ Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 31 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Mơ hình phát triển thác nước (waterfall model) Si ‰ Vi V Qui trình phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 32 https://fb.com/sinhvienzonevn V Qui trình phát triển phần mềm ‰ Mơ hình phát triển prototype (Incremental development model) Xây dưng prototype C om Thao luaän vơi khach hang ne Đanh gia cua khach hang Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 33 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Mơ hình phát triển xoắn ốc (spiral development model) Si ‰ Vi V Qui trình phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 34 https://fb.com/sinhvienzonevn V Qui trình phát triển phần mềm Mơ hình phát triển tăng tiến (Incremental development model) ne C om ‰ Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 35 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Qui trình RUP (Rational Unified Process) : qui trình phát triển phần mềm hợp hãng Rational, hãng Rational khởi xướng trì Nó dựa việc dùng kết hợp ₫ối tượng ₫ể cấu thành phần mềm Nó có nhiều ưu ₫iểm so với qui trình khác, ₫ó ₫ược dùng chủ yếu cơng ty phát triển phần mềm Trong chương lại, ta tập trung giới thiệu thông tin yếu qui trình phát triển Si ‰ Vi V Qui trình phát triển phần mềm Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập mơn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 36 https://fb.com/sinhvienzonevn VI Công nghệ phần mềm ‰ ‰ ne C ‰ Thuật ngữ “Công nghệ phần mềm” (Software engineering) ₫ể nói lý thuyết, phương pháp, qui trình tiện ích ₫ược dùng việc phát triển phần mềm chuyên nghiệp hầu tối thiểu chi phí, nâng cao tính ₫úng ₫ắn, bền vững phần mềm Trong nội dung công nghệ phần mềm qui trình phát triển phần mềm chủ yếu Trong qui trình phát triển ₫ược dùng qui trình RUP ₫ược dùng phổ biến Qui trình dựa tảng hướng ₫ối tượng Ngôn ngữ UML ₫ược dùng ₫ể ₫ặc tả hầu hết tài liệu tạo qui trình phát triển RUP om ‰ Mơn : Nhập mơn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 37 en Zo Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 nh Chương ₫ã giới thiệu cho tranh toàn cục thiết bị tổng qt hóa máy tính số, cách thức nhờ máy tính thực dùm tốn, chi phí xây dựng trì phần mềm, hoạt ₫ộng chức phát triển phần mềm, qui trình phát triển phần mềm ý nghĩa thuật ngữ công nghệ phần mềm Si ‰ Vi VII Kết chương Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa Tp.HCM © 2010 SinhVienZone.com Mơn : Nhập mơn Cơng nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 38 https://fb.com/sinhvienzonevn ... 2010 SinhVienZone. com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 36 https://fb .com/ sinhvienzonevn VI Công nghệ phần mềm ‰ ‰ ne C ‰ Thuật ngữ Công nghệ phần mềm ... 2010 SinhVienZone. com Mơn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 10 https://fb .com/ sinhvienzonevn II Phần mềm - FAQ Nhờ web, ta dùng nhiều dịch vụ phần mềm có... SinhVienZone. com Môn : Nhập môn Công nghệ phần mềm Chương : Tổng quan công nghệ phần mềm Slide 14 https://fb .com/ sinhvienzonevn II Phần mềm — Phân loại Nếu dựa vào lĩnh vực xử lý ta có loại phần

Ngày đăng: 30/01/2020, 22:37

Từ khóa liên quan

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

Tài liệu liên quan