Bài giảng Hệ thống thông tin - Bài 4: Phần mềm hệ thống và Phần mềm ứng dụng

Nhận dạng và mô tả các chức năng của hai loại phần mềm cơ bản. Vai trò chính của hệ điều hành, tính năng của một số hệ điều hành thông dụng. Làm thế nào mà các phần mềm ứng dụng hỗ trợ được cho cá nhân, nhóm, và các mục tiêu của doanh nghiệp. Nhận dạng ba cách tiếp cận cơ bản để phát triển phần mềm ứng dụng, các ý kiến tán thành và phản đối. Sơ lược về sự phát triển của ngôn ngữ lập trình, và phân biệt năm giai đoạn phát triển ngôn ngữ lập trình

ppt60 trang | Chia sẻ: candy98 | Lượt xem: 561 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Hệ thống thông tin - Bài 4: Phần mềm hệ thống và Phần mềm ứng dụng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
14CHƯƠNGPhần mềm hệ thốngVà Phần mềm ứng dụng Phần mềm2Các vấn đề đề cập đến trong chương nầyNhận dạng và mô tả các chức năng của hai loại phần mềm cơ bản.Vai trò chính của hệ điều hành, tính năng của một số hệ điều hành thông dụng. Làm thế nào mà các phần mềm ứng dụng hỗ trợ được cho cá nhân, nhóm, và các mục tiêu của doanh nghiệp.Nhận dạng ba cách tiếp cận cơ bản để phát triển phần mềm ứng dụng, các ý kiến tán thành và phản đối.Sơ lược về sự phát triển của ngôn ngữ lập trình, và phân biệt năm giai đoạn phát triển ngôn ngữ lập trình3Case study – Công ty điện tử FlextronicFlextronic là một công ty đa quốc gia chuyên thiết kế, sản xuất và giao hàng cho các công ty khách hàng trong suốt hai mươi tám năm tại bốn lục địa. Đầu nảo của Flextronic nằm tại San Jose. California và Singapore. Công ty đã thiết lập mạng nhằm tạo sự dễ dàng hoạt động trong thị trường để cung cấp các dịch vụ hàng đầu cho khách hàng của mình, đồng thời kiểm soát một cách hiệu quả các hoạt động của công ty. 4Case study – Công ty điện tử FlextronicFlextronic ký hợp đồng chế tạo mọi sản phẩm điện tử cho các công ty khác, từ máy trò chới Xbox cho Microsoft đến điện thoại di động cho hãng Ecrison. Flextronic là chuyên gia trong các lỉnh vực mạng, viển thông, máy tính, tư vấn điện tử và thiết bị y khoa. Khách hàng chính của công ty gồm CiscoSystem, Ecrison, Hewlet-Packard, Microsoft, Nokia và Phillips. Đối thủ chính của Flextronics là Solectron, SCI Systems, và Celestica. Năm 2004 lợi nhuận của công ty vượt quá 12 tỉ USD và số công nhân viên vượt quá 70.00 người.5Case study – Công ty điện tử FlextronicDo phải ký hợp đồng sản xuất, công ty cần một số các hoạt động đặt giá và đấu thầu cho nhiều bộ phận của một hợp đồng khách hàng. Để xử lý trôi chãy các hoạt động đấu thầu phức tạp, ban đầu Flextronics sử dụng gói phần mềm định giá trực tuyến có tên là QuoteWin để định giá bằng điện tử. Khi đã sử dụng quen phần mềm, Flextronic đạt được một số kết quả rất ấn tượng, vì vậy công ty quyết định cài đặt cho toàn hệ thống để đơn giản hoá và hợp lý hoá tiến trình đấu thầu, ngoài ra còn tạo được sự nhất quán trong toàn thể các bộ phận của mình. 6Case study – Công ty điện tử FlextronicPhần mềm QuoteWin giúp đơn giản hoá và tiết kiệm được thời giờ cần thiết cho việc định giá bằng cách truyền thông tin cho nhà cung cấp và khách hàng qua mạng khi hoàn tất các văn bản dự thầu, trong thực tế, thao tác nầy chỉ cần vài phút để thu thập dữ liệu về giá cả cho hợp đồng. Kết quả là Flextronics đã rút ngắn được thời gian trung bình để chuẩn bị cho việc định giá từ ba tuần lễ xuống còn hai tuần. Hệ thống QuoteWin còn duy trì được độ chính xác cho dữ liệu định giá đối với từng công việc. 7Case study – Công ty điện tử FlextronicTính khả dụng của dữ liệu lưu trữ cộng với các công cụ tạo báo cáo tiện dụng trong phần mềm cho phép các nhà quản lý doanh nghiệp phân tích một cách xuyên suốt mỗi công tác định giá theo phương pháp "what-if".Ghi chú về phương pháp phân tích What-if (what-if analysis)Phương pháp phân tích "what-if" (cái gì sẽ xảy ra-nếu) cung cấp cho các nhà kinh doanh và các cán bộ chuyên nghiệp một phương tiện rất hiệu quả để thăm dò tác dụng của những chiến lược khác nhau, ví dụ "Lợi nhuận sẽ như thế nào, nếu đầu tư thêm 10.000 USD vào cho quảng cáo, giả sử các xu hướng trước đây vẫn còn đúng?".81- Tổng quan về phần mềmMột trong các chức năng quan trọng nhất của phần mềm là ra chỉ thị cho phần cứng làm việc. Như đã nói ở chương 1, phần mềm là các chương trình điều khiển phần cứng máy tính. Chương trình máy tính là một chuỗi các chỉ thị cho máy tính.Có hai loại phần mềm cơ bản, đó là phần mềm hệ thống (systems software) và phần mềm ứng dụng (application software).91- Phần mềm hệ thống và phần mềm ứng dụngPhần mềm hệ thống Phần mềm hệ thống là tập hợp nhiều chương trình được thiết kế để kết hợp các hoạt động và chức năng của phần cứng với các chương trình khác trong hệ thống máy tính. Mỗi gói phần mềm được thiết kế riêng cho một bộ xử lý trung tâm (CPU) và một lớp phần cứng (class of hardware) mà thôi. Có hai loại phần mềm hệ thống là hệ điều hành và phần mềm tiện ích hệ thống 10Phần mềm hệ thống Một số các Hệ điều hành Windows Vista (64 bit), XP,2000 (32 bit) Windows ME, 98, 95 (16 bit) 3.1,CE DOS (MS-DOS, DR-DOS, PC-DOS) Mac OS X Unix (Solaris, FreeBSD, SCO UNIX) Linux Palm OS BeOSTập hợp của một cấu hình phần cứng và gói phần mềm hệ thống được gọi là nền tảng của hệ thống máy tính (computer system platform).Tính chất của Hệ điều hànhMullti-User (Nhiều người sử dụng) Multi-Processing (Đa xử lý)Multi-Tasking ( Đa nhiệm)Real-Time (Chạy trong thời gian thực)11Các chức năng của hệ điều hànhHệ điều hành giử vai trò trung tâm trong toàn bộ các hoạt động của hệ thống máy tính. Sau khi máy tính khởi động ,các bộ phận của hệ điều hành cần thiết được tải vào bộ nhớ. Hệ điều hành thực hiện các chức năng sau:Thực hiện các chức năng tổng quát của phần cứngCung cấp giao diện giữa chương trình với người dùngCung cấp các mức độ độc lập của phần cứngQuản lý bộ nhớCung cấp khả năng xử lýCung cấp khả năng nối mạngĐiều khiển truy cập các tài nguyên của hệ thốngQuản lý tập tin, thư mục12Chức năng của hệ điều hành Thực hiện chức năng tổng quát phần cứngMọi chương trình ứng dụng đều phải thực hiện một số công việc được định trước, chẳng hạn như :Nhận dữ liệu nhập từ bàn phím hay từ các thiết bị nhập khácTruy xuất dữ liệu từ đĩaLưu trữ dữ liệu vào đĩaIn dữ liệu ra máy in hay hiển thị ra màn hìnhMỗi chức năng trong số các công việc cơ bản trên đều cần nhiều tập chỉ thị chi tiết để hoàn tất. Hệ điều hành biến đổi các chỉ thị đơn giản thành ra các tập hợp chỉ thị cần dùng cho phần cứng. Hệ điều hành tác động như là trung gian giữa chương trình ứng dụng và phần cứng 13Chức năng của hệ điều hành Giao diện với người dùngMột trong những chức năng quan trọng nhất của bất kỳ hệ điều hành nào là cung cấp giao diện với người sử dụng. Giao diện với người dùng cho phép các cá nhân truy cập và ra lệnh vào hệ thống máy tính.Giao diện theo chế độ dòng lệnh (Command line) Trong giao diện theo chế độ dòng lệnh, máy tính cần được cung cấp lệnh ở dạng dòng văn bản để thực hiện các hoạt động cơ bản. Ví dụ: RENAME C:\DONHANG.TXT DATHANG.TXT Giao diện theo chế độ đồ hoạ (graphical user interface) Giao diện theo chế độ đồ hoạ dùng các hình ảnh (thường gọi là biểu tượng, icons) và trình đơn (menu) hiển thị trên màn hình để gởi các lệnh cần thi hành đến hệ thống máy tính 14Chức năng của hệ điều hành Giao diện với người dùngChương trình ứng dụng chạy trên một hệ điều hành bằng cách gởi các yêu cầu đến hệ điều hành thông qua giao diện lập trình ứng dụng (API- Application Program Interface). Lập trình viên có thể dùng APIs để tạo ra các phần mềm ứng dụng mà không cần phải hiểu biết bên trong hệ điều hành hoạt động ra sao.Giả sử một hãng sản xuất máy tính thiết kế một phần cứng mới chạy nhanh hơn máy có phần cứng củ. Nếu máy mới nầy cài cùng hệ điều hành với máy củ, và hệ điều hành nầy được thiết kế để chạy được trên phần cứng mới, thì phần mềm ứng dụng sẽ chạy trên phần cứng mới mà không cần thay đổi gì cả, hay thay đổi rất ít. Nếu không có APIs, thì lập trình viên sẽ phải viết lại toàn bộ chương trình ứng dụng để có được ưu điểm của phần cứng mới là chạy nhanh hơn.15Chức năng của hệ điều hành Quản lý bộ nhớMục đích của việc quản lý bộ nhớ là kiểm soát truy cập bộ nhớ và tối ưu hoá bộ nhớ hửu dụng. Một số hệ điều hành có tính năng quản lý bộ nhớ để giúp máy tính chạy các chương trình ứng dụng nhanh hơn và hiệu quả hơn.Chương trình quản lý bộ nhớ biến đổi các yêu cầu dữ liệu và lệnh của người dùng sang thành các vị trí vật lý, nơi chứa dữ liệu và chỉ thị. Máy tính chỉ hiểu được dữ liệu dưới dạng thức vật lý, nghĩa là vị trí của dữ liệu trong bộ nhớ hay trong đĩa, và kỹ thuật cần để truy cập dữ liệu nầy Tính năng quản lý bộ nhớ của các hệ điều hành hiện nay rất cần để bảo đảm cung cấp nhiều vùng trong bộ nhớ nhất cho các chương trình ứng dụng mà không động chạm đến các chức năng quan trọng khác của hệ điều hành, hay động chạm đến các chương trình khác. 16Chức năng của hệ điều hành Các kiểu xử lýQuản lý mọi hoạt động xử lý là một tính năng của chương trình quản lý tác vụ (task management) trong các hệ điều hành hiện nay. Chương trình quản lý tác vụ cấp phát các tài nguyên trên máy tính để bảo đảm các tài nguyên nầy được sử dụng tốt nhất .Chế độ chạy đa nhiệm (multitasking) Chạy theo chế độ đa nhiệm nghĩa là cho phép một người dùng trên máy tính chạy cùng lúc nhiều chương trình ứng dụng hoặc chạy nền.Chia sẻ thời gian (Time-sharing) Chia sẻ thời gian cho phép nhiều người dùng một hệ thống máy tính trong cùng một thời điểm 17Chức năng của hệ điều hành Khả năng mạngHệ điều hành còn cung cấp cho người dùng các tính năng và khả năng giúp người dùng kết nối với mạng máy tính. Ví dụ như người dùng máy tính Apple có thể truy cập mạng nhờ vào tính năng Apple share được cài sẳn, Hay người dùng hệ điều hành Microsoft Windows được cung cấp sẳn khả năng truy cập mạng Internet.18Hệ điều hành dành cho máy tính cá nhân Các hệ điều hành cho máy tính cá nhân trước đây rất cơ bản. Tuy nhiên, trong vài năm sau nầy người ta đã phát triển nhiều hệ điều hành cao cấp, các hệ điều hành nầy đã đưa vào các tính năng mà trước đây chỉ có trong các hệ điều hành trên máy lớn. 19Hệ điều hành dành cho máy tính cá nhân Bảng xếp hạng các hệ điều hành hiện hành Cá nhân NhómDoanh nghiệpNgười tiêu dùngWindows 98Windows NTWin NT serverWin NT serverWindows 2000Windows 2000 serverWindows advanced serverWindows MEWindows XP HomeWindows XP ProWindows XP ProWin XP embededMAC OSMAC OS srverUnixUnixUnixSolarisSolarisSolarisLinuxLinuxLinux20Hệ điều hành LinuxLinux là hệ điều hành được phát triển bản quyền GNU (General Public License), và mã nguồn của hệ điều hành nầy được cấp miển phí cho mọi người. Tuy nhiên, điều nầy không có nghỉa là Linux và các tổ hợp của hệ đều miển phí, các công ty và nhà lập trình có thể phải trả tiền khi nào mã nguồn vẫn còn giá trị. Linux thực ra chỉ là phần lỏi của hệ điều hành (kenel), phần điều khiển phần cứng, quản lý tập tin, phân chia xử lý Một vài tổ hợp của Linux cũng đã được sử dụng, với các trình ứng dụng để tạo ra một hệ điều hành hoàn chỉnh. Mỗi tổ hợp nầy được gọi là một phân bổ của Linux (distribution of Linux).21Hệ điều hành UnixUnix là hệ điều hành mạnh, đầu tiên do hãng AT&T viết cho các máy tính cở trung. Unix có thể chạy được trên nhiều kiểu hệ thống máy tính và kiểu nền, từ máy tính cá nhân cho đến máy tính lớn. Unix cũng giúp việc dời chương trình và dữ liệu giữa các máy tính dễ dàng hơn, hay việc kết nối giữa máy tính lớn và máy tính cá nhân để chia sẻ các tài nguyên cũng đơn giản hơn. Unix cũng được xem là có giao diện với người dùng rất phức tạp do dùng các lệnh lạ và khó hiểu, vì thế nên các nhà phát triển phần mềm đã cung cấp các trình tiện ích giao diện (shells) như Motif from Open SystemsFoundation và Open Look của hãng Sun Microsystems 22Hệ điều hành dành cho doanh nghiệpSolaris : hệ điều hành Unix do hãng Sun tạo ra quản lý được các máy chủ có đến 64 bộ xử lý.Netware : hệ điều hành mạng do công ty Novel tạo ra, hỗ trợ người dùng đầu cuối sử dụng Windows, Machintosh và Unix.OS/390 : Do hãng IBM giới thiệu vào năm 1990, chạy trên máy tính IBM S/390 để quản lý thông tin, giao dịch phần lớn các hệ nền khác nhau, rất ổn định.MPE/iX : Hệ điều hành khổng lồ dùng cho nhiều công việc kinh doanh khác nhau, như xử lý giao tác trực tuyến (on-line transaction processing) và các ứng dụng Web 23Hệ điều hành dành cho các thiết bị tiêu dùng Consumer appliance operating systems)Windows Mobile : Dùng cho máy tính bỏ túi, điện thoại thông minh, và các phương tiện cầm tay (Portable media center). Các phiên bản Pocket PC 2002, Windows Mobile 2003, 2003 SE, 5.0Windows CE.Net : Windows CE.Net là bước quyết định đưa hãng Microsoft tiến gần hơn đến viển cảnh truy cập Web và các dịch vụ Web mọi lúc mọi nơi của mình. Đây là "hệ điều hành nhúng" (embeded operating systems) dùng cho các thiết bị di động, như là điện thoại thông minh, PDAs, hệ điều hành còn được dùng cho các các thiết bị khác như máy chụp ảnh, quay phim kỹ thuật số, thiết bị bắt sóng truyền hình kỹ thuật số (TV set-top boxes) và các máy tính trên xe hơi 24Hệ điều hành dành cho các thiết bị tiêu dùng Consumer appliance operating systems)Palm OS : Chiến lược của hãng sản xuất thiết bị cầm tay Palm là tung ra hệ điều hành Palm OS, và mở rộng các thiết bị Palm PDA để quản lý nhiều mục tiêu, công việc hơn Công ty đã thêm vào Palm Os nhiều tính năng cho phép giao lưu tốt hơn với máy tính để bàn, và người dùng dễ dàng thêm vào thiết bị các chương trình ứng dụng.Palm đã đăng ký bản quyền hệ điều hành của mình với các nhà sản xuất chip chính như Intel, Motorola, và Texas Instruments để các hãng nầy sử dụng hệ điều hành của Palm trên các loại thiết bị cầm tay, từ máy tính bỏ túi cho đến các điện thoại di động, hay ngay cả trong các đồng hồ đeo tay dùng công nghệ wrist (công nghệ ít tiêu tốn điện năng, một viên pin có thể chạy đồng hồ trong 10 năm). Hai hãng điện thoại di động hàng đầu là Nokia và Motorola đã có kế hoạch sử dụng hệ điều hành Palm OS trên một số điện thoại di động của mình 25Phần mềm tiện ích hệ thống Các chương trình tiện ích được dùng để tổng hợp và sắp xếp các tập dữ liệu, kiểm soát các chương trình đang chạy , nén và giải nén các tập tin được gởi qua mạng để tiết kiệm dung lượng và thời gian, và một số các chức năng quan trọng khác. Chương trình tiện ích thường được cài sẳn trên máy tính, một số chương trình khác cần phải mua và cài đặt thêm vào hệ thống.Một số lớn các phần mềm tiện ích quản lý mạng và hệ thống dùng điều khiển phần cứng và hiệu năng mạng, hay bật báo động khi máy tính Web server bị hư hoặc mạng có vấn đề. Mặc dù phần mềm tiện ích hệ thống có nhiều chức năng hửu dụng, nhưng điều chúng ta thật sự cần là xác định chính xác nguyên nhân làm hư hệ thống 26Phần mềm tiện ích hệ thống – Utility SoftwareVí dụ về phần mềm tiện ích hệ thống Phần mềm diệt Virus (Anti-virus software) Norton, McAfee, Sophos, Trend Micro Phần mềm quản lý tập tin (File Management) PKZip, WinZip, Norton SystemWorks Phần mềm tiện ích đĩa (Disk Utilities) PartitionMagic, System Commander Sao chép dự phòng (Backup) Retrospect, Backup MyPCCác phần mềm tiện ích được viết để chạy dưới hệ điều hành nhất định nào đó, và có thể hoạt động không đúng trên các hệ điều hành khác271- Phần mềm hệ thống và phần mềm ứng dụngPhần mềm ứng dụngPhần mềm ứng dụng gồm các chương trình giúp người dùng giải quyết các vấn đề riêng trên máy tính.Phần mềm ứng dụng hỗ trợ cho cá nhân, nhóm và tổ chức để giúp thực hiện các mục tiêu kinh doanh. Phần mềm ứng dụng có ảnh hưởng rất mạnh đến tiến trình thêm giá trị cho công việc kinh doanh bởi vì phần mềm được thiết kế cho các hoạt động và chức năng riêng biệt của từng tổ chứcViệc thực hiện và sử dụng phần mềm ứng dụng có hiệu quả sẽ giúp cho các hoạt động trong doanh nghiệp đạt được hiệu quả cao và hỗ trợ được các mục tiêu của doanh nghiệp28Phần mềm ứng dụng - Application SoftwarePhần mềm ứng dụng bao gồm các chương trình giúp chúng ta làm việc (và chơi trò chơi) trên máy tính chẳng hạn như trình xử lý văn bản , trò chơi, bảng tính, các chương trình xử lý ảnh, vẽ hình..Một công ty có thể phát triển phần mềm ứng dụng dành riêng cho công ty (proprietary software), hoặc có thể mua phần mềm có sẳn trên thị trường (off-the-shelf software). và sửa đổi lại cho phù hợp với nhu cầu của mình. Chương trình ứng dụng được thiết kế để chạy riêng cho một số hệ điều hành nhất định và không chạy đúng trên các hệ điều hành khác.29Phần mềm ứng dụng - Application SoftwarePhần mềm ứng dụng dành riêng : là phần mềm giải quyết một vấn đề đặc biệt riêng của một doanh nghiệp, tổ chức. Loại phần mềm nầy thường được mua hay viết ra từ một công ty bên ngoài. Phần mềm bán sẳn : Người dùng có thể mua, thuê phần mềm ứng dụng từ các công ty phần mềm. Các phần mềm được viết cho thị trường chung được gọi là "gói phần mềm viết sẳn" được bán ở các cửa hiệu. Nhiều công ty dùng phần mềm viết sẳn để phục vụ các công việc xử lý của mình.Gói phần mềm theo yêu cầu khách hàng: Trong một số trường hợp, các công ty dùng phần mềm được phát triển hổn hợp từ công ty bên ngoài và bộ phận phần mềm bên trong công ty để thoả được các yêu cầu về quản lý của mọi người dùng trong công ty mà không cần phải bố trí nhân lực nội bộ hay quản lý dự án máy tính phức tạp. 30Phần mềm ứng dụng – Phần mềm ứng dụng cá nhânCó hàng trăm chương trình ứng dụng giúp cá nhân làm việc trong các lỉnh vực trường học, gia đình, và cơ quan. Phần mềm ứng dụng gồm các công cụ và chương trình hỗ trợ một số nhu cầu cá nhân. Các ví dụ:Xử lý văn bản : Tạo mới, sửa đổi, và in tư liệu văn bản. Word, Word perfectBảng tính : Tính toán, thống kê tài chính, cơ sở dữ liệu, vẽ đồ thị. Excel, Lotus 1-2-3, Quatro proCơ sở dữ liệu : Lưu trữ, quản lý, và truy xuất dữ liệu. Access, Foxpro, DbaseĐồ hoạ : Vẽ đồ thị, minh hoạ, các bản vẽ. CorelDraw, Photoshop, 31Phần mềm ứng dụng – Phần mềm ứng dụng cá nhânCác dịch vụ thông tin trực tuyến Kết nối máy tính cá nhân với thế giới bên ngoài, gởi thư điện tử.. qua đường dây điện thoại. (AOL).32Phần mềm ứng dụng – Phần mềm ứng dụng nhómPhần mềm ứng dụng nhóm là phần mềm giúp một hay nhiều nhóm người làm việc chung với nhau hiệu quả hơn. Loại phần mềm nầy còn có tên gọi khác đầy đủ ý nghỉa hơn là "Phần mềm Cộng tác tin học" (Collaborative computing software), hàm ý các nhóm làm việc hướng về một mục tiêu chung. Phần mềm nhóm hỗ trợ nhóm quản lý công việc chung được thực hiện trên cùng một vấn đề của sản phẩm, cho phép mọi người trong nhóm chia xẻ ý tưởng với nhau thông qua hệ thống máy tính kết nối với nhau. Ví dụ như các phần mềm lập thời biểu làm việc, phần mềm thư điện tử33Phần mềm ứng dụng – Phần mềm ứng dụng nhómLotus Notes : Sản phẩm Lotus Notes của IBM cho phép doanh nghiệp khả năng dùng cùng một gói phần mềm, và một giao diện người dùng để tích hợp nhiều tiến trình xử lý kinh doanhVí dụ phần mềm có thể cho phép toàn bộ nhóm làm việc chung với nhau hoặc dung chung tư liệu, bàn thảo điện tử (electronic discussions), và lập thời biểu họp nhóm.Phần mềm lập thời khoá biểu nhóm : phối hợp thời khóa biểu và lịch họp của nhóm. Một phần mềm lập thời khóa biểu không thích hợp với yêu cầu của mọi người , và không thật sự cần thiết thì sẽ làm trở ngại cho hiệu năng hệ thống 34Phần mềm ứng dụng Phần mềm ứng dụng cho doanh nghiệpCác phần mềm hỗ trợ trong doanh nghiệp có thể được mua trên thị trường hoặc tự viết. Ví dụ một dây chuyền sản xuất thức ăn nhanh có thể phát triển một chương trình dùng để đặt hàng nguyên liệu hay phân phối sản phẩm để bảo đảm mọi chi nhánh của mình được cung cấp đầy đủ nguyên liệu thô cần thiết trong suốt tuần lể. Chương trình nầy có thể do bộ phận hệ thống thông tin trong doanh nghiệp tự viết, hay mua từ một công ty phần mềm khác. Các ví dụ : Phần mềm kế toán doanh nghiệp.Phần mềm hoạch định nguồn tài nguyên trong doanh nghiệp ERP: hệ thống nhiều chương trình tích hợp dùng quản lý các hoạt động quan trọng trong toàn tổ chức, phần lớn hỗ trợ sản xuất và tài chính. 35Phần mềm ứng dụng Phần mềm ứng dụng cho doanh nghiệp – các ví dụ36Ngôn ngữ lập trình (programming languages)Cả hệ điều hành lẩn phần mềm ứng dụng đều được viết bằng các bộ mã được gọi là ngôn ngử lập trình. Chức năng của ngôn ngữ lập trình là cung cấp các chỉ thị (instructions) cho hệ thống máy tính để máy có thể hiểu và thực hiện được các hoạt động xử lý. Ngôn ngữ lập trình là tập hợp các từ khóa (keywords), ký hiệu, và qui luật về hệ thống dùng để xây dựng nên các câu lệnh, sau khi các câu lệnh nầy được dịch sẽ trở thành các chỉ thị máy tính hiểu và thực thi được. Mỗi ngôn ngữ lập trình có một tập hợp các qui luật riêng, các qui luật nầy được gọi là "cú pháp" (syntax) của ngôn ngữ. Cú pháp của ngôn ngữ qui định cách phối hợp các ký hiệu trong câu lệnh để chuyển tải các chỉ thị có ý nghĩa đến cho CPU.Với mong muốn dùng khả năng xử lý thông tin một cách hiệu quả để giải quyết các vấn đề, người ta phát triển ra nhiều ngôn ngữ lập trình mới. Sự tiến triển của ngôn ngữ lập trình được xếp theo nhiều thế hệ. Sự tiến triển của ngôn n