1. Trang chủ
  2. » Công Nghệ Thông Tin

giới thiệu tổng quan về công nghệ phần mềm

23 770 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Giới thiệu tổng quan về công nghệ phần mềm
Tác giả Ian Sommerville
Trường học University of Cambridge
Chuyên ngành Kỹ thuật phần mềm
Thể loại Bài giảng
Năm xuất bản 2006
Thành phố Cambridge
Định dạng
Số trang 23
Dung lượng 1,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu về công nghệ phần mềm và giải thích về tầm quan trọng của nó Đưa ra một số câu hỏi cơ bản về công nghệ phần mềm Trình bày thêm về vấn đề đạo đức nghề nghiệp liên quan tới lĩnh vực công nghệ phần mềm

Trang 1

Giới thiệu tổng quan về công nghệ phần mềm

Trang 2

 Trình bày thêm về vấn đề đạo đức nghề nghiệp

liên quan tới lĩnh vực công nghệ phần mềm

Trang 3

Topics covered

 Những câu hỏi cơ bản trong lĩnh vực CNPM

 Trách nhiệm và đạo đức nghề nghiệp của người

làm IT

Trang 4

Software engineering

 Hầu hết các lĩnh vực kinh tế của các quốc gia phát triển

đều phụ thuộc vào phần mềm

 Ngày càng có nhiều hệ thống được phần mềm điều khiển

 Công nghệ phần mềm liên quan tới các lý thuyết,

phương thức và các công cụ để phát triển phần mềm chuyên nghiệp

 Đầu tư hiệu quả vào phần mềm rất có ý nghĩa đối với

tổng sản lượng quốc gia (GDP) đối với các nước phát triển

Trang 5

Chi phí phần mềm

 Chi phí phần mềm chiếm phần lớn chi phí của

các hệ thống máy tính Chi phí cho phần mềm ngày càng lớn hơn chi phí phần cứng

 Chi phí bảo trì ngày càng nhiều hơn chi phí phát

triển Đối với các hệ thống có thời gian sống dài, chi phí bảo trì có thể lớn gấp vài lần chi phí phát triển

 Kỹ nghệ phần mềm liên quan tới việc phát triển

phần mềm với chi phí hợp lý

Trang 6

Những câu hỏi trong lĩnh vực CNPM

Trang 7

Những câu hỏi trong lĩnh vực CNPM

Trang 8

Phần mềm là gì?

 Các chương trình máy tính kết hợp với các tài liệu như: yêu cầu

phần mềm, các mô hình thiết kế và hướng dẫn sử dụng

 Các sản phẩm phần mềm có thể được phát triển cho từng

khách hàng cụ thể hoặc phát triển cho thị trường dùng chung

 Các sản phẩm phần mềm có thể là

• Generic – phần mềm được phát triển cho một nhiều đối tượng khách

hàng khác nhau (Excel, word )

• Bespoke (custom) phát triển cho một khách hàng cụ thể theo mô tả của

họ

 Phần mềm mới có thể được tạo ra bằng việc phát triển một

chương trình mới, cấu hình các hệ thống phần mềm chung hoặc tái sử dụng phần mềm đã có

Trang 9

Kỹ nghệ phần mềm là gì?

 Kỹ nghệ phần mềm là những kỹ nghệ cơ bản

liên quan tới tất cả các khía cạnh của việc sản xuất phần mềm

và cách tiếp cận đã được chuẩn hóa, kết hợp với việc sử dụng các công cụ và kỹ thuật hợp lý để giải quyết, phát triển phần mềm dưới những

ràng buộc và nguồn tài nguyên có thể

Trang 10

Sự khác nhau giữa kỹ nghệ phần mềm và

khoa học máy tính

 Khoa học máy tính liên quan tới những nguyên

lý và phương pháp; CNPM liên quan tới các thực

tế phát triển và bàn giao các sản phẩm phần mềm hữu ích

 Những kiến thức về khoa học máy tính là cần

thiết cho những kỹ sư phần mềm, giống như những hiểu biết về vật lý cho các kỹ sư điện

Trang 11

Sự khác nhau giữa CNPM

và kỹ nghệ hệ thống

 Kỹ nghệ hệ thống liên quan tới tất cả các khía

cạnh của việc phát triển các hệ thống dựa trên máy tính, bao gồm phần cứng, phần mềm và tiến trình công nghệ CNPM là một phần của tiến trình này, liên quan tới việc phát triển cơ sở hạ tầng phần mềm, điều khiển, ứng dụng và CSDL trong hệ thống

 Các kỹ sư hệ thống liên quan tới việc đặc tả hệ

thống, thiết kế kiến trúc, tích hợp và phát triển

Trang 12

Tiến trình phần mềm là gì?

 Một tập hợp các hoạt động với mục tiêu phát triển hoặc

cải tiến phần mềm

 Các hoạt động chung trong tiến trình phần mềm là:

• Đặc tả - hệ thống phải làm gì và những ràng buộc trong việc

phát triển

• Phát triển – sản xuất hệ thống phần mềm

• Kiểm thử (validation)- kiểm tra xem phần mềm có đáp ứng

được những mong muốn của khách hàng

• Cải tiến (Evolution) – thay đổi phần mềm để đáp ứng được

những yêu cầu thay đổi

Trang 13

Mô hình tiến trình phần mềm là gì?

 Một cách trình diễn đơn giản một tiến trình phần mềm

 Một số ví dụ về mô hình tiến trình phần mềm

• Workflow perspective - sequence of activities;

• Data-flow perspective - information flow;

• Role/action perspective - who does what.

 Các mô hình tiến trình chung

• Waterfall;

• Iterative development;

• Component-based software engineering.

Trang 14

Chi phí của kỹ nghệ phần mềm

 Gần 60% chi phí cho việc phát triển phần mềm,

40% chi phí cho kiểm thử phần mềm Đối với phần mềm riêng, chi phí cho việc cải tiến sản phẩm còn nhiều hơn chi phí phát triển

 Chi phí khác nhau phụ thuộc và các kiểu phát

triển hệ thống và các yêu cầu thuộc tính của hệ thống, chẳng hạn như tính hiệu năng và độ tin cậy

 Sự phân phối chi phí của các giai đoạn phụ

thuộc vào mô hình phát triển được sử dụng

Trang 15

Activity cost distributionWaterfall model

Iterative development

Component-based software eng ineering

Development and evolution costs for long-lifetime syst ems

Specification Design Development Integration and testing

0

Trang 16

Product development costs

Specification Development System testing

0

Trang 17

Mô hình kỹ nghệ phần mềm là gì?

 Các cách tiếp cậu cấp trúc hóa để phát triển phần mềm

bao gồm: các mô hình hệ thống, các định nghĩa, quy tắc, các hướng dẫn thiết kế và các tiến trình đã được chứng minh qua thực tiễn

 Biểu diễn mô hình

• Các cách biểu diễn các mô hình dạng hình học

Trang 18

CASE (Computer-Aided Software

• Các công cụ hỗ trợ những hoạt động trong giai đoạn đầu của

tiến trình phần mềm, chẳng hạn như đặc tả hoặc thiết kế

 Lower-CASE

• Các công cụ hỗ trợ cho các hoạt động ở giai đoạn cuối của tiến

trình phần mềm, chẳng hạn như lập trình, gỡ lỗi và kiểm thử

Trang 19

Những thuộc tính tốt của phần mềm

 Phần mềm được bàn giao đáp ứng được những yêu cầu chức

năng và hiệu năng, dễ bảo trì, độ tin cậy và được chấp nhận

 Maintainability – tính bảo trì

• Phần mềm có thể được cải tiến để đáp ứng những yêu cầu thay đổi của

khách hàng

 Dependability – Độ tin cậy

• Phần mềm phải đáng tin cậy;

 Efficiency - tính hiệu quả

• Phần mềm phải tính tới việc sr dụng hiệu quả các nguồn tài nguyên hệ

thống

 Acceptability – Tính chấp nhận

Trang 20

Những thách thức mà ngành

CNPM phải đối mặt

 Tính đồng nhất, việc bản giao và độ tin cậy

 Heterogeneity – tính không đồng nhất

• Các kỹ thuật sử dụng để phát triển phần mềm phải tính tới tính

không đồng nhất của các môi trường thực thi

 Delivery – bàn giao sản phẩm

• Phát triển các kỹ thuật giúp bàn giao sản phẩm trong thời gian

ngắn nhất

 Độ tin cậy

• Phát triển các kỹ thuật để chứng minh rằng phần mềm đáng tin

cậy đối với người sử dụng.

Trang 21

Các chuyên gia và đạo đức nghề nghiệp

 Kỹ nghệ phần mềm liên quan chặt chẽ tới trách

nhiệm của người làm phần mềm hơn kỹ năng của người làm phần mềm

 Các kỹ sư phần mềm phải trung thực và có trách

nhiệm về mặt đạp đức

 Cách hành xử có đạo đức quan trọng hơn việc

tuân thủ luật pháp

Trang 22

Các vấn đề về trách nhiệm nghề nghiệp

• Kỹ sư thường phải tôn trọng tính bảo mật của nhà

tuyển dụng hoặc khách hàng của họ không phân biệt

có hoặc không có một thỏa thuận bí mật chính thức được ký kết.

• Kỹ sư không nên hiểu sai lệch mức độ thẩm quyền

Họ không nên cố chấp nhận công việc đó là với thẩm quyền của mình.

Trang 23

Các vấn đề về trách nhiệm nghề nghiệp

 Quyền sở hữu trí tuệ

• Các kỹ sư cần phải nhận thức pháp luật địa phương

về việc sử dụng tài sản trí tuệ như bằng sáng chế, bản quyền, vv Họ nên cẩn thận để đảm bảo rằng các tài sản trí tuệ của người lao động và khách hàng được bảo vệ.

• Kỹ sư phần mềm không nên sử dụng các kỹ năng kỹ

thuật của mình để lạm dụng các chương trình máy tính của người khác Phạm vi lạm dụng máy tính từ tương đối nhỏ (chơi game trên máy tính của chủ nhân, nói) để đặc biệt nghiêm trọng (phổ biến virus ).

Ngày đăng: 18/09/2013, 09:18

HÌNH ẢNH LIÊN QUAN

Mô hình tiến trình phần mềm là gì? - giới thiệu tổng quan về công nghệ phần mềm
h ình tiến trình phần mềm là gì? (Trang 6)
Mô hình kỹ nghệ phần mềm là gì? - giới thiệu tổng quan về công nghệ phần mềm
h ình kỹ nghệ phần mềm là gì? (Trang 17)

TỪ KHÓA LIÊN QUAN

w