Công nghệ phần mềm là gì

 Công nghệ phần mềm là gì

 Công nghệ phần mềm hay kỹ thuật phần mềm (tiếng Anh: software engineering) là sự áp dụng một cách tiếp cận có hệ thống, có kỷ luật, và định lượng được cho việc phát triển, sử dụng và bảo trì phần mềm.[1] Ngành học kỹ sư phần mềm bao trùm kiến thức, các công cụ, và các phương pháp cho việc định nghĩa yêu cầu phần mềm, và thực hiện các tác vụ thiết kế, xây dựng, kiểm thử (software testing), và bảo trì phần mềm.[2] Kỹ sư phần mềm còn sử dụng kiến thức của các lĩnh vực như kỹ thuật máy tính, khoa học máy tính, quản lý, toán học, quản lý dự án, quản lý chất lượng, công thái học phần mềm (software ergonomics), và kỹ sư hệ thống (systems engineering).[2]

 

 Trích dẫn một câu nói của Edsger Dijkstra về công nghệ phần mềm:

 

 Khi máy tính chưa xuất hiện, thì việc lập trình chưa có khó khăn gì cả. Khi mới xuất hiện một vài chiếc máy tính chức năng kém thì việc lập trình bắt đầu gặp một vài khó khăn nho nhỏ. Giờ đây khi chúng ta có những chiếc máy tính khổng lồ thì những khó khăn ấy trở nên vô cùng lớn. Như vậy ngành công nghiệp điện tử không giải quyết khó khăn nào cả mà họ chỉ tạo thêm ra những khó khăn mới. Khó khăn mà họ tạo nên chính là việc sử dụng sản phẩm của họ.

 Dòng thời gian

 Thập niên 1940: Các chương trình cho máy tính được viết bằng tay.

 Thập niên 1950: Các công cụ đầu tiên xuất hiện như là phần mềm biên dịch Macro Assembler và phần mềm thông dịch đã được tạo ra và sử dụng rộng rãi để nâng cao năng suất và chất lượng. Các trình dịch được tối ưu hoá lần đầu tiên ra đời.

 Thập niên 1960: Các công cụ của thế hệ thứ hai như các trình dịch tối ưu hoá và công việc kiểm tra mẫu đã được dùng để nâng cao sản phẩm và chất lượng. Khái niệm công nghệ phần mềm đã được bàn thảo rộng rãi.

 Thập niên 1970: Các công cụ phần mềm, chẳng hạn trong UNIX các vùng chứa mã, lệnh make, v.v. được kết hợp với nhau. Số lượng doanh nghiệp nhỏ về phần mềm và số lượng máy tính cỡ nhỏ tăng nhanh.

 Thập niên 1980: các PC và máy trạm ra đời. Cùng lúc có sự xuất hiện của mô hình dự toán khả năng. Lượng phần mềm tiêu thụ tăng mạnh.

 Thập niên 1990: Phương pháp lập trình hướng đối tượng ra đời. Các quá trình nhanh như là lập trình cực hạn được chấp nhận rộng rãi. Trong thập niên này, WWW và các thiết bị máy tính cầm tay phổ biến rộng rãi.

 Hiện nay: Các phần mềm biên dịch và quản lý như là .NET, PHP, Java làm cho việc thiết kế, viết phần mềm ứng dụng trở nên dễ dàng hơn nhiều.

 Hướng phát triển tương lai

 Lập trình định dạng và các phương pháp linh hoạt sẽ giữ vai trò quan trọng trong tương lai của công nghệ phần mềm. ICSE 2005 đã tham gia theo dõi cả hai chủ đề này. (ICSE là dạng viết tắt của International Conference on Software Engineering tức là Hội nghị Quốc tế về Kỹ Sư Phần mềm.)

 

 – Lập trình định dạng (aspect-oriented programming) sẽ giúp người lập trình ứng xử với các yêu cầu không liên quan đến các chức năng thực tế của phần mềm bằng cách cung ứng các công cụ để thêm hay bớt các khối mã ít bị thay đổi trong nhiều vùng của mã nguồn. Lập trình định dạng mô tả các đối tượng và hàm nên ứng xử như thế nào trong một tình huống cụ thể.

 

 Thí dụ: Lập trình định dạng có thêm vào các cơ cấu kiểm soát hiệu chỉnh lỗi, biên bản và khoá cho tất cả các đối tượng của một số kiểu. Các nhà nghiên cứu đang tìm cách ứng dụng lập trình định dạng để thiết kế mã cho mục tiêu thông thường.

 – Phát triển phần mềm linh hoạt: nhằm hướng dẫn các đề án phát triển phần mềm mà trong đó bao gồm việc thoả mãn các nhu cầu thay đổi và sự cạnh tranh của thị trường một cách nhanh chóng. Các quá trình cồng kềnh, nặng về hồ sơ tính như là TickIT, CMM và ISO 9000 đang lu mờ dần tầm quan trọng.

 

 Hội nghị Future of Software Engineering (FOSE) tin rằng ICSE 2000 đã hồ sơ hoá các tính năng hiện đại nhất của kỹ sư phần mềm và nêu ra nhiều vấn đề cần được giải quyết trong thập niên tới.

 

 Đề án Feyerabend có ý định tìm hiểu tương lai của kỹ sư phần mềm qua tìm kiếm và xuất bản các ý kiến sáng tạo.

 Nhập môn công nghệ phần mềm

 Lớp Hoàn chỉnh khóa 2010

 

 Tên môn học:

 

 Nhập môn công nghệ phần mềm (Học kì 1)

 Giáo viên:

 

 Nguyễn Minh Huy

 Lý thuyết

 

 Bài 1 Đề cương môn học: http://www.mediafire.com/?w17noqx8odfb3ks

 Bài 2 Tổng quan về Kỹ Nghệ Phần Mềm: http://www.mediafire.com/?590ra44i7fbww4z

 Bài 3 Quy trình phần mềm: http://www.mediafire.com/?ls4puso0piaigpv

 Bài 4 Yêu cầu phần mềm: http://www.mediafire.com/?h8va0e9ash5g86e

 Bài 5 Mô hình phần mềm (1): http://www.mediafire.com/?tx6wv3zsrc4f3ym

 Bài 6 Mô hình phần mềm (2): http://www.mediafire.com/?vycjv5b3b0944jk

 Bài 7 Kiến trúc phần mềm: http://www.mediafire.com/?rcu92r8abp9s4m2

 Bài 8 Kỹ thuật hướng đối tượng: http://www.mediafire.com/?h1nebsp0a7qn8x4

 Bài 9 Thiết kế đối tượng và dữ liệu: http://www.mediafire.com/?02wzsy01l3he04b

 Bài 10 Thiết kế giao diện cho người dùng: http://www.mediafire.com/?vpb24j1esu312a5

 Bài 11 Kiểm nghiệm phần mềm: http://www.mediafire.com/?quuckacanvilx8z

 Bài 12: Phương pháp phát triển nhanh gọn, linh hoạt: http://www.mediafire.com/?51aklmgl2ygxz5b

 Bài 13: Quản lý dự án phần mềm: http://www.mediafire.com/?0v9tepeb6m8i8oj

 Đề thi 10HCA2

 

 Đề thi: http://www.mediafire.com/?i4g6n96d2c47vga

 Đề thi tham khảo

 

 Đề thi KHTN (Không rõ khóa mấy – lớp nào): http://www.mediafire.com/?zmm0q72wrwvc4rx

 Đề thi KHTN – Khóa 09: http://www.mediafire.com/?dd16q85j5c2955p

 Đồ án

 

 Danh sách đồ án môn học 1: http://www.mediafire.com/?7fh6dx2j60ox8wh

 Danh sách đồ án môn học 2: http://www.mediafire.com/?g91n8lo7nopdbpj

 Tài liệu tham khảo

 

 Sommerville, Software Engineering, 8th Edition, Addison Wesley, 2007: http://www.mediafire.com/?yiak6140ebcduku

 Pressman, Software Engineering, 5th Edition, McGraw-Hill, 2001:  http://www.mediafire.com/?czrp32wowv1139w

 Tài liệu sermina

 

 Sermina 1:

 Tạo SVN trên Google Code

 Sử dụng Tortoise SVN : http://tortoisesvn.tigris.org/

 UseCaseDiagram

 OtherDiagrams

 http://www.mediafire.com/?jjtbf66866upu88

 Mẫu phân tích yêu cầu: http://www.mediafire.com/?2b8nj0823yho568

 Sermina 2:

 Silde 3 layer (GV: Phan Lê Sang) + source demo: http://www.mediafire.com/?aixwyajycb496jm

 DXperience (full):

 http://www.mediafire.com/?d8w2p5p6wqdddc9

 http://www.mediafire.com/?mw40bk3p39bti92

 http://www.mediafire.com/?xwiavd8pcjv5m3h

 DXeprience Help (Giống cái MSDN):

 http://www.mediafire.com/?4t59r1vdxno18xw

 http://www.mediafire.com/?ueecwz3le1blrci

 http://www.mediafire.com/?y36bwg6r7u3x3f7

 http://www.mediafire.com/?czh20e7okny0412

 Phim hướng dẫn về Dxeprience

 XtraBar1: http://www.mediafire.com/?t6kon8c58cae42j

 XtraBar2: http://www.mediafire.com/?ceaj83sl62lwdc6

 XtraBar3: http://www.mediafire.com/?77g93e7logr340h

 XtraBar4: http://www.mediafire.com/?ifafkhaxbqt2dz7

 XtraBar5: http://www.mediafire.com/?tckoi9v3a3vtztp

 XtraBarsEditFlex: http://www.mediafire.com/?gxhdu3g3bg8dnqv

 XtraBarsGalleryControl: http://www.mediafire.com/?4rxdbmq0zzx8r88

 XtraBarsPopulateRibbonControlCode: http://www.mediafire.com/?v5ug0xyd70txspd

 XtraLayoutControlCreateItemsUsingCode: http://www.mediafire.com/?00jl2849hvdzzj2

 Mẫu tài liệu thiết kế: http://www.mediafire.com/?n5vq0prp89as0qv

 Tài liệu hướng dẫn làm Crystal Report, Set-up & Help: http://www.mediafire.com/?wjfp34vsvk7791t

  

  

  

  

  

  

  

 Tag: ty tnhh quảng cáo trực tuyến megaads trung tâm thơ xoắn ốc chuyên nhật ô tô airi quái xế quà tặng renekton giới tiếng việt thoại xanh