Saturday, February 8, 2014

Khái niệm công nghệ phần mềm (software engineering)

Định nghĩa phần mềm: Phần mềm là chương trình máy tính và các tài liệu liên quan. Các sản phẩm phần mềm có thể được thiết kế cho một khách hàng cụ thể nào đó hoặc cho thị trường nói chung. 
Một phần mềm tốt là phần mềm cung cấp các chức năng, hiệu năng yêu cầu cho người sử dụng. Nó có thể sử dụng được, đáng tin cậy và có thể bảo trì.

 
 Định nghĩa công nghệ phần mềm: Công nghệ phần mềm là ngành kỹ thuật liên quan đến tất cả các khía cạnh sản xuất phần mềm. Các hoạt động nền tảng của công nghệ phần mềm là đặc tả phần mềm, phát triển phần mềm, kiểm nghiệm phần mềm, và tiến hóa phần mềm. (Software specification, software development,software validation, and software evolution) 
Các thách thức của ngành công nghệ phần mềm là đối mặt với sự đa dạng ngày càng tăng, thời gian phát triển phần mềm ngày càng rút ngắn. 
Chi phí phần mềm chủ yếu là dành 60% cho phát triển phần mềm và 40 % cho việc kiểm thử phần mềm. Đối với các phần mềm viết cho khách hàng, chi phí tùy chỉnh thường vượt quá chi phí phát triển ban đầu.
Công nghệ phần mềm là ngành công nghiệp liên quan đến mọi khía cạnh của việc phát triển phần mềm từ giai đoạn đầu đặc tả phần mềm cho đến giai đoạn cuối bảo trì phần mềm sau khi chuyển giao cho người dùng. Trong định nghĩa này có hai từ khóa:
1. Công nghệ: Kỹ sư xây dựng phần mềm bằng cách ứng dụng các lý thuyết, phương pháp, công cụ một cách chọn lọc và cố gắng tạo ra các giải pháp giải quyết vấn đề ngay cả khi không có lý thuyết và công cụ để áp dụng. Ngoài ra, các giải pháp thích hợp không chỉ trong hạn chế về công nghệ mà còn phải được xây dựng trong sự hạn chế của tổ chức và tài chính.

2. Các khía cạnh sản xuất phần mềm: Công nghệ phần mềm không chỉ liên quan đến các tiến trình kỹ thuật phát triển phần mềm. Nó cũng bao gồm các hoạt động như quản lý dự án phần mềm và sự phát triển các công cụ, phương thức và lý thuyết hỗ trợ xây dựng phần mềm

Công nghệ liên quan đến việc đạt được kết quả với chất lượng yêu cầu trong thời gian biểu và ngân sách xác định. Điều này có thể dẫn đến việc không sử dụng các công nghệ hoàn hảo nhất, khác với phần mềm cá nhân, người ta có thể sử dụng rất nhiều thời gian để viết chương trình.
 
Nhìn chung, các kỹ sư phần mềm luôn làm việc thông qua cách tiếp cận có hệ thống và có tổ chức, và thường họ sử dụng cách thức hiệu quả nhất để sản xuất phần mềm chất lượng cao. Tuy nhiên, trong một số trường hợp cụ thể, cách thức “không chính thống” lại mang lại hiểu quả hơn, và thường là cho các trường hợp phát triển hệ thống nền web, một hệ thống đòi hỏi sự pha trộn giữa kỹ thuật phần mềm và kỹ thuật đồ họa.

Công nghệ phần mềm quan trọng với 2 lý do:

1. Ngày càng nhiều cá nhân và tập thể dựa vào các hệ thống phần mềm lớn. Chúng ta cần phải có khả năng sản xuất các phần mềm có giá trị và có độ tin cậy cao một cách kinh tế và nhanh chóng
2. Trong thời gian dài, chi phí phát triển phần mềm theo phương pháp và kỷ thuật công nghệ phần mềm rẻ hơn so với việc phát triển phần mềm theo kiểu dự án cá nhân. Hầu hết các hệ thống, phần chi phí lớn nhất là dành cho việc sửa đổi chương trình sau khi đã đem sử dụng
 

No comments:

Post a Comment