Bài 1: Giới thiệu về công nghệ phần mềm
lượt xem 133
download
Nội dung: Phần mềm, Công nghệ phần mềm, Tiến trình phần mềm. Phần mềm (PM): Các nội dung chính: Phần mềm là gì, Các thành phần của PM, Vai trò của PM, Đặc trưng của PM, Phân loại PM, Tiến hóa và thách thức.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài 1: Giới thiệu về công nghệ phần mềm
- BÀI 1 GIỚI THIỆU VỀ CÔNG NGHỆ PHẦN MỀM
- Nội dung Phần mềm Công nghệ phần mềm Tiến trình phần mềm © 2008 by Vinh Trong Le 2/41
- I. Phần mềm (PM) Các nội dung chính Phần mềm là gì Các thành phần của PM Vai trò của PM Đặc trưng của PM Phân loại PM Tiến hóa và thách thức © 2008 by Vinh Trong Le 3/41
- Phần mềm là gì? Khái niệm và định nghĩa Lệnh (chỉ thị) instructions: Máy tính thực hiện một thao tác. Chương trình (program): Một chuỗi các lệnh nhằm thực hiện một tác vụ cụ thể. Dữ liệu: Thông tin “thô”> cần xử lý > Thông tin hữu ích. Phần mềm: Một hay nhiều chương trình để xử lý dữ liệu. Nói một cách khác: “Phần mềm là tập các lệnh để chỉ cho máy tính biết xử lý dữ liệu như thế nào.” Hoặc: “Phần mềm chạy > dữ liệu được xử lý.” © 2008 by Vinh Trong Le 4/41
- Các thành phần của PM Chương trình máy tính Mã nguồn Mã máy Các cấu trúc dữ liệu Cấu trúc làm việc (Bộ nhớ trong) Cấu trúc lưu trữ (Bộ nhớ ngoài) Tài liệu Hướng dẫn sử dụng
- Vai trò PM PM: Linh hồn của các hệ thống máy tính Nền tảng trong mọi hoạt động của xã hội ngày nay Sự phụ thuộc của các nền kinh tế Thu chi từ PM chiếm đáng kể trong GNP; ví dụ: Năm 2006, Ấn độ xuất khẩu hơn 30 tỷ USD; thế giới có > 7 triệu kỹ sư CNTT và tạo ra 600 tỷ USD/năm; Thế giới chi phí cho phần mềm trong năm 2000 khoảng 770 tỷ USD. Phần mềm sai hỏng > kinh tế sẽ bị tổn thất: Yahoo mất vài chục tỷ đô la trong những năm qua Tạo nên sự khác biệt giữa các tổ chức: Phong cách làm việc và năng suất lao động Càng nhiều hệ thống cần phần mềm trợ giúp Ứng dụng PM có mặt ở mọi nơi, mọi lĩnh vực kinh tế, khoa học, quân sự, … © 2008 by Vinh Trong Le 6/41
- Đặc trưng của PM Không mòn cũ, nhưng thoái hóa theo thời gian: Môi trường, nhu cầu thay đổi > ko sử dụng Không lắp ráp từ mẫu sẵn có: Ko có danh mục cho trước Sản phẩn đặt hàng theo yêu cầu riêng Phức tạp, khó hiểu và vô hình Hệ thống logic khó hiểu: liên kết logic ko nhìn thấy > phải tư duy trừu tượng Không nhìn thấy: ko phải là vật thể vật lý © 2008 by Vinh Trong Le 7/41
- Đặc trưng của PM (tiếp) Thay đổi là bản chất Theo thế giới thực để đáp ứng nghiệp vụ, nhu cầu con người. Thay đổi theo môi trường: phần cứng Cần phát triển theo nhóm Quy mô lớn Thời gian © 2008 by Vinh Trong Le 8/41
- Phân loại phần mềm Hai cách phân loại chính: Theo chức năng thực hiện Theo lĩnh vực ứng dụng Phân loại theo chức năng Phần mềm hệ thống: Hệ điều hành, tiện ích tổ chức tệp… Phần mềm nghiệp vụ: Trợ giúp các hoạt động nghiệp vụ Sản phẩm theo đơn đặt hàng: Hệ thống TT quản lý (thư viện, kế toán…) Sản phẩm dùng chung: Office Phần mềm công cụ: Trợ giúp các quá trình phát triển phần mềm (ngôn ngữ lập trình, quản lý dự án …) © 2008 by Vinh Trong Le 9/41
- Phân loại phần mềm Phân loại theo lĩnh vực ứng dụng: Phần mềm hệ thống: Phục vụ cho các PM khác, tương tác với phần cứng, phục vụ nhiều người dùng Phần mềm thời gian thực: Thu thập, xử lý các dữ liệu thời gian thực (dùng điều khiển các hệ thống tự động) Phần mềm nghiệp vụ: Xử lý các thông tin nghiệp vụ nghiệp vụ Phần mềm khoa học kỹ thuật: Mô phỏng vật lý… Phần mềm nhúng: phụ thuộc vào các thiết bị và thực hiện chức năng bị hạn chế. © 2008 by Vinh Trong Le 10/41
- Sự tiến hóa của PM Phần mềm tiến hóa theo phần cứng bao gồm cả quy mô, sự phức tạp, tốc độ Sự tiến hóa của PM có thể chia làm 4 giai đoạn: GĐ 1: 1950> 1960 Chương trình nhỏ, tính toán chuyên dụng Xử lý số và xử lý theo lô (batch) Ngôn ngữ: Mã máy, hợp ngữ Tiêu chí đánh giá: Nhanh, kích cỡ của bài toán GĐ 2: > giữa 1970s Sản phẩm đa nhiệm, đa người dùng Xử lý số, ký tự, theo lô và thời gian thực © 2008 by Vinh Trong Le 11/41
- Sự tiến hóa của PM Ngôn ngữ có cấu trúc Tiêu chí đánh giá: Nhanh, kích cỡ bài toán, số lượng người dùng. GĐ 3: > 1990 Phần mềm cá nhân, mạng, hệ thống lớn và chia sẻ được Xử lý số, ký tự, multimedia; theo lô, thời gian thực, phân tán và song song Ngôn ngữ: bậc cao, hướng đối tượng Tiêu chí đánh giá: Tiện dụng, tin cậy và dễ bảo trì. GĐ 4: 1900> nay Phần mềm lớn, hướng người dùng Ngôn ngữ: hướng đối tượng và trực quan (Visual) Tiêu chí đánh giá: Tiện dụng, tin cậy và dễ bảo trì. © 2008 by Vinh Trong Le 12/41
- Tiêu chi PM tốt PM tốt được nhìn nhận từ 2 phía Người dùng: Đủ chức năng nghiệp vụ Dễ sử dụng, thông minh Tin cậy, an toàn Nhà phát triển Dễ bảo trì Dễ nâng cấp mở rộng © 2008 by Vinh Trong Le 13/41
- Khó khăn và thách thức Thống kê: 16% DA đúng lịch, trong ngân sách, sản phẩm chất lượng 31% DA bị dừng 53% DA vượt ngân sách, quá hạn, ít tính năng Công nghiệp PM: Ngành khổng lồ Chi phí cho PM: 770 tỷ USD / Năm Lý do: Năng lực máy tính tăng nhanh Thế giới thay đổi nhanh về nghiệp vụ và CN Ham muốn của người dùng © 2008 by Vinh Trong Le 14/41
- Khó khăn và thách thức (tiếp) > cần tiến hóa PM Công nghệ: Cần có các công nghệ, công cụ hiện đại để phát triển PM Quản lý: Cần có các phương pháp (CMMCapability Maturity Model ; CMMICapability Maturity Model Integration ) © 2008 by Vinh Trong Le 15/41
- II. Công nghệ PM Các nội dung chính: Các định nghĩa Lịch sử phát triển CNPM Các yếu tố cơ bản Các bước chung nhất phát triển PM © 2008 by Vinh Trong Le 16/41
- Các định nghĩa về CNPM Công nghệ phần mềm (Software Engineering: SE) Bauer (1969): SE là thiết lập và sử dụng các nguyên lý công nghệ đúng đắn để được PM 1 cách kinh tế, vừa tin cậy vừa làm việc hiệu quả trên các máy thực Sommerville (1995): SE là nguyên lý công nghệ liên quan đến tất cả các mặt lý thuyết, phương pháp và công cụ của PM. Pressman (1995): SE là bộ môn tích hợp cả qui trình, các phương pháp, các công cụ để phát triển PM máy tính 3 mặt cơ bản của SE Quy trình (thủ tục) Phương pháp Công cụ © 2008 by Vinh Trong Le 17/41
- Lịch sử của SE Bắt đầu (1970s): Các phương pháp lập trình và cấu trúc dữ liệu Tính modul Sơ đồ khối và topdown Lập trình có cấu trúc Chia chương trình thành các modul Trừu tượng hóa dữ liệu Tăng trưởng (nửa đầu 1980s) Phương pháp phát triển hệ thống: CSDL, phân tích thiết kế hướng cấu trúc Các bộ công cụ phát triển: Trợ giúp phân tích thiết kế, các ngôn ngữ bậc cao Bắt đầu quan tâm đến quản lý: Độ đo phần mềm © 2008 by Vinh Trong Le 18/41
- Lịch sử của SE (tiếp) Phát triển (Từ giữa 1980s) Hoàn thiện công nghệ cấu trúc Phát triển công nghệ đối tượng: Kho dữ liệu, đa phương tiện, định hướng sử dụng lại (thành phần, mẫu, framework) Phát triển các mô hình quản lý: Chuẩn quản lý được công nhận (CMM IS900003) Tổng hợp: SE Là quá trình công nghệ tích hợp Quá trình Phương pháp Công cụ Để tạo ra được PM hiệu quả với các điều kiện cho trước © 2008 by Vinh Trong Le 19/41
- Các yếu tố cơ bản Quá trình: Xác định trình tự các công việc cần thực hiện Xác định các tài liệu, sản phẩm cần bàn giao và cách thức thực hiện Định ra các mốc thời gian (milestones) và sản phẩm đưa ra Phương pháp: Cách làm cụ thể để xây dựng PM; thường mỗi công đoạn có một phương pháp riêng Phân tích: xác định, đặc tả yêu cầu Thiết kế: đặc tả kiến trúc, giao diện, dữ liệu, thủ tục Lập trình Kiểm thử Quản lý dự án Công cụ: Computer Aided Software Engineering (CASE) © 2008 by Vinh Trong Le 20/41
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Giới thiệu về cấu trúc dữ liệu và giải thuật - Bài 1 - Lê Sỹ Vinh
37 p | 291 | 123
-
Bài giảng Lập trình cơ bản bài 1: Giới thiệu chung về CNTT
49 p | 401 | 73
-
MS PowerPoint - Bài 1: Giới thiệu về MS PowerPoint 2003
6 p | 237 | 72
-
Giới thiệu về ICT
6 p | 213 | 52
-
Bài giảng Công nghệ phần mềm - Chương 1: Tổng quan về công nghệ phần mềm
27 p | 122 | 16
-
Bài giảng Nhập môn tin học - Chương 1: Giới thiệu về tin học
45 p | 129 | 12
-
Bài giảng Bộ môn Công nghệ phần mềm - Bài 1: Giới thiệu chung về Công nghệ phần mềm
45 p | 88 | 11
-
Bài giảng Chương 1: Giới thiệu chung về Công nghệ thông tin
118 p | 127 | 11
-
Bài giảng Ngôn ngữ lập trình C - Chương 1: Giới thiệu ngôn ngữ C
4 p | 104 | 8
-
Bài giảng Giới thiệu ngành Công nghệ thông tin: Bài 1 - Giới thiệu tổng quan về CNTT và các ngành trong UIT
20 p | 30 | 7
-
BÀI 1http://www.dayhoctructuyen.com/file.php/158/b1_files/b01.htmBÀI 1: GIỚI THIỆU VỀ
3 p | 84 | 5
-
Giới thiệu về AppLocker – Phần 4
7 p | 112 | 5
-
Bài giảng Tin học cơ sở: Bài 1 - ĐH Bách Khoa
60 p | 84 | 4
-
Bài giảng Nhập môn Công nghệ thông tin 1: Giới thiệu về hệ điều hành
38 p | 40 | 4
-
Bài giảng ngôn ngữ C#: Bài 1 - Chử Đức Hoàng
36 p | 31 | 4
-
Bài giảng Mạng máy tính: Chương 1 - Giới thiệu mạng máy tính
33 p | 90 | 4
-
Thư tín di động trong Exchange 2003 (Phần 1): Giới thiệu về công nghệ DirectPush của Microsoft
10 p | 58 | 3
-
Bài giảng Nhập môn về lập trình - Chương 1: Giới thiệu về máy tính và lập trình
30 p | 56 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn