Tóm tắt kiến thức chương 4 - Hệ thống thông tin quản lý NEU

Tổng hợp kiến thức cốt lõi Chương 4 môn Hệ thống thông tin quản lý (HTTTQL) NEU. Nắm vững vai trò & phân loại phần mềm (hệ thống, ứng dụng), so sánh chi tiết các giải pháp (COTS, Custom, ASP), hiểu rõ về Middleware, OOL, HTML, XML, Java, Dịch vụ Web (Web Services) và các tiêu chí quan trọng khi mua sắm phần mềm. Tài liệu tóm tắt đầy đủ, dễ hiểu, bám sát giáo trình NEU.

Tóm tắt HTTTQLHTTTQL NEUHệ thống thông tin quản lýMISChương 4 HTTTQLPhần mềm máy tínhComputer SoftwarePhần mềm hệ thốngSystem SoftwarePhần mềm ứng dụngApplication SoftwareCOTSCustom SoftwareASPNhà cung cấp dịch vụ ứng dụngHệ điều hànhOperating SystemNgôn ngữ lập trìnhHTMLXMLJavaWeb ServicesMiddlewareÔn tập HTTTQLTóm tắt chương 4 MISĐánh giá phần mềmPhần mềm nhóm công tácGroupware

 

4.1. PHẦN MỀM MÁY TÍNH VÀ VAI TRÒ CỦA PHẦN MỀM DƯỚI GÓC ĐỘ QUẢN LÝ

4.1.1. Khái niệm phần mềm máy tính

Phần mềm máy tính (Computer Software) được định nghĩa là các loại chương trình đa dạng được sử dụng để vận hành và điều khiển máy tính cũng như các thiết bị liên quan.

Phần cứng và phần mềm có mối quan hệ tương hỗ; phần cứng mà không có phần mềm thì mang lại rất ít giá trị, và ngược lại. Cả hai đều cần thiết để hệ thống máy tính trở thành một công cụ hữu ích.

Dưới góc độ quản lý, vai trò của phần mềm là cực kỳ quan trọng, thể hiện ở các điểm sau:

- Điều kiện tiên quyết: Việc có được phần mềm phù hợp là điều kiện đầu tiên để phần cứng có thể thực hiện được bất kỳ công việc gì. 
- Chi phí: Đối với các tổ chức lớn, chi phí cho phần mềm thường lớn gấp nhiều lần chi phí cho phần cứng. Theo thời gian, tỷ lệ chi cho phần mềm so với phần cứng ngày càng lớn. Điều này cho thấy phần mềm là một khoản đầu tư chiến lược. 
- Tương tác người dùng: Phần lớn người sử dụng (nhân viên, nhà quản lý) làm việc hàng ngày với các phần mềm tăng năng suất như bảng tính, soạn thảo văn bản, và trình duyệt Web. Yếu tố phần cứng duy nhất họ giao tiếp chỉ là một máy tính cá nhân. 
- Sự tham gia của nhà quản lý: Không phụ thuộc vào vị trí công việc, người sử dụng máy tính (với tư cách nhà quản lý hoặc người dùng cuối) có thể được yêu cầu tham gia vào các nhóm dự án phát triển hoặc mua sắm phần mềm (ví dụ: xây dựng hệ thống báo cáo bán hàng mới). Do đó, việc hiểu rõ các loại phần mềm là điều hết sức quan trọng.

4.1.2. Phân loại phần mềm máy tính

Về cơ bản, phần mềm máy tính được chia thành 2 loại chính: Phần mềm ứng dụng (Application Software)Phần mềm hệ thống (System Software).

- Phần mềm ứng dụng thực hiện các hoạt động xử lý thông tin cụ thể của người sử dụng. 
- Phần mềm hệ thống (còn gọi là phần mềm hỗ trợ) thực hiện quản lý và hỗ trợ các hoạt động của hệ thống máy tính và mạng.

Mối quan hệ giữa chúng giống như phần nổi và phần chìm của tảng băng
- Phần mềm ứng dụng (Phần nổi): Cung cấp kết quả trực tiếp mà nhà quản lý cần cho công việc (ví dụ: báo cáo, văn bản). Đây là thứ người dùng nhìn thấy và tương tác. 
- Phần mềm hệ thống (Phần chìm): Là phần nền tảng, hỗ trợ bên dưới, hết sức cần thiết để phần mềm ứng dụng có thể tạo ra kết quả mong muốn. Người dùng thường không tương tác trực tiếp với nó.

Bảng so sánh chi tiết: Phần mềm hệ thống vs. Phần mềm ứng dụng

Tiêu chíPhần mềm hệ thống (System Software)Phần mềm ứng dụng (Application Software)
Mục đích chínhQuản lý, vận hành và hỗ trợ phần cứng, tài nguyên hệ thống và các phần mềm khác. Tạo môi trường cho phần mềm ứng dụng chạy.Hoàn tất các công việc xử lý thông tin cụ thể theo nhu cầu của người sử dụng cuối.
Tương tác người dùngThường là gián tiếp (chạy nền). Người dùng ít khi tương tác trực tiếp (trừ các tiện ích hệ thống).Trực tiếp. Đây là công cụ làm việc hàng ngày của người dùng.
Sự phụ thuộcPhần mềm ứng dụng phụ thuộc vào phần mềm hệ thống để hoạt động.Không bắt buộc phải có, nhưng là lý do chính người ta sử dụng máy tính.
Nguồn cung cấpThường được cung cấp bởi các nhà cung cấp máy tính (cài sẵn) hoặc các công ty phát triển phần mềm chuyên nghiệp (hệ thống).Được phát triển bởi các công ty phần mềm (thương phẩm) hoặc do chính tổ chức tự xây dựng (tùy biến).
Ví dụ cụ thể- Hệ điều hành (Windows, Linux, macOS)
- Hệ thống quản trị CSDL (Oracle, SQL Server)
- Các chương trình kiểm soát truyền thông (Network drivers)
- Các chương trình tiện ích (Utilities, Antivirus)
- Các chương trình dịch (Compilers)
- Phần mềm tính lương, quản lý tồn kho
- Phần mềm xử lý văn bản (MS Word)
- Phần mềm xử lý bảng tính (MS Excel)
- Trình duyệt Web (Chrome, Firefox)

4.2. PHẦN MỀM ỨNG DỤNG

4.2.1. Phân loại phần mềm ứng dụng

Phần mềm ứng dụng có thể được phân loại theo hai cách chính:

Cách 1: Phân loại theo mục đích sử dụng

- Phần mềm ứng dụng chung (General-Purpose): Là những chương trình thực hiện các công việc xử lý thông tin thông dụng của nhiều người dùng. Chúng giúp nâng cao năng suất làm việc nên còn gọi là gói phần mềm năng suất (productivity packages)
Ví dụ: Các bộ phần mềm Software Suite (MS Office), xử lý đồ họa, trình duyệt Web, thư điện tử, phần mềm nhóm làm việc. 
- Phần mềm ứng dụng chuyên biệt (Application-Specific): Là các gói phần mềm được phát triển nhằm hỗ trợ các ứng dụng chuyên biệt của người sử dụng trong kinh doanh và các lĩnh vực khác. 
Ví dụ: Phần mềm quản lý chuyên chức năng (quản trị nguồn nhân lực, quản lý tài chính), các gói phần mềm tích hợp (quản trị quan hệ khách hàng - CRM, quản trị toàn diện doanh nghiệp - ERP, quản lý chuỗi cung cấp - SCM), các ứng dụng Web cho thương mại điện tử.

Cách 2: Phân loại theo cách thức phát triển (Nguồn gốc)

- Phần mềm thương phẩm (Commercial Off-the-shelf - COTS): Là phần mềm được thiết kế và bán ra thị trường để hỗ trợ các quy trình kinh doanh cơ bản, phổ biến mà không cần tùy biến đặc biệt. Chúng được phát triển bởi các nhà cung cấp giải pháp chuyên nghiệp với mục đích thương mại hóa, bán cho nhiều khách hàng. 
- Phần mềm đơn chiếc chuyên biệt (Custom Software): Là phần mềm được thiết kế và phát triển nhằm đáp ứng nhu cầu chuyên biệt, đặc thù của một công ty cụ thể. Tổ chức có thể tự phát triển hoặc thuê ngoài gia công, thay vì mua phần mềm thương phẩm có sẵn.

Bảng so sánh: Phần mềm thương phẩm (COTS) vs. Phần mềm đơn chiếc (Custom)

Tiêu chíPhần mềm thương phẩm (COTS)Phần mềm đơn chiếc (Custom)
Bản quyền & Mã nguồnBản quyền thuộc về nhà cung cấp. Người mua không có quyền kiểm soát đặc tả và không có quyền truy cập mã nguồn.Bản quyền thuộc về tổ chức phát triển/đặt hàng. Tổ chức giữ toàn quyền kiểm soát đặc tả và các chức năng.
Nhu cầu đáp ứngCác nhu cầu phổ biến, chung (common needs).Các nhu cầu chuyên biệt, đặc thù (specific needs).
Chi phíThường thấp hơn (do chi phí phát triển được chia cho nhiều khách hàng).Rất cao (do tổ chức phải chịu toàn bộ chi phí phát triển và bảo trì).
Thời gian triển khaiNhanh, có sẵn để cài đặt.Rất lâu, phải trải qua toàn bộ chu trình phát triển phần mềm.

4.2.2. Bộ phần mềm ứng dụng

Bộ phần mềm ứng dụng (Application Software Suites):

Là sự kết hợp các gói phần mềm đơn lẻ (như Word, Excel, PowerPoint) vào chung một bộ. Các phần mềm này thường chia sẻ một giao diện người dùng đồ họa (GUI) chung và được thiết kế để dễ dàng chuyển dữ liệu giữa các ứng dụng với nhau.

- Ví dụ: Microsoft Office, Lotus SmartSuite, Corel WordPerfect Office, Sun's StarOffice. 
- Ưu điểm: 
+ Chi phí cho bộ phần mềm thấp hơn rất nhiều so với tổng chi phí mua lẻ từng phần mềm. 
+ Sử dụng chung giao diện (GUI) nên thân thiện, dễ học. 
+ Khả năng chia sẻ dữ liệu tốt (ví dụ: nhúng bảng Excel vào Word). 
- Hạn chế: 
+ Có những chương trình trong bộ không bao giờ được dùng đến (lãng phí). 
+ Chi phí bộ nhớ lớn (tốn dung lượng cài đặt). 
+ Chi phí cho bộ đầy đủ có thể vẫn cao (lên đến 700$).

Gói chương trình tích hợp (Integrated Packages):

Là giải pháp khắc phục nhược điểm của các bộ phần mềm lớn. Đây là một gói phần mềm duy nhất nhưng kết hợp một số chức năng của nhiều chương trình khác nhau (xử lý văn bản, bảng tính, CSDL...) vào một gói nhỏ gọn. 
- Ví dụ: Microsoft Works, Lotus eSuite WorkPlace. 
- Ưu điểm: Ít nhu cầu bộ nhớ hơn, chi phí mua thấp hơn.

Mô tả chi tiết một số phần mềm ứng dụng chung phổ biến:

1. Trình duyệt Web (Web Browser): 
- Công dụng: Cho phép người dùng duyệt các nguồn tài nguyên siêu liên kết (hyperlinked) trên mạng WWW, Intranet và Extranet. 
- Ví dụ: Microsoft Explorer, Netscape Navigator. 
- Tính năng: Ngoài duyệt Web, còn cho phép xem và tải tệp, đánh dấu (bookmark) trang ưa thích, liên kết tới các trang tìm kiếm thông tin.

2. Phần mềm thư điện tử (E-mail Software): 
- Công dụng: Cho phép gửi các thông báo điện tử và tệp đính kèm tới người khác qua mạng. 
- Ưu điểm: Được coi là một sự đổi mới cho văn phòng, với ưu điểm vượt trội so với thư truyền thống là nhanh hơn và rẻ hơn.

3. Phần mềm soạn thảo văn bản (Word Processing): 
- Công dụng: Tự động hóa các hoạt động tạo, hiệu chỉnh, xem và in ấn tài liệu (thư, báo cáo...). 
- Ví dụ: MS-Word, Lotus WordPro, Corel WordPerfect. 
- Tính năng cao cấp: 
+ Khả năng chế bản điện tử (Desktop Publishing): cho phép tạo ra các tài liệu hấp dẫn. 
+ Lập mục lục tự động: Rất hữu ích khi soạn thảo các văn bản dài, có kết cấu chặt chẽ, mang tính học thuật (ví dụ: luận văn). 
+ Kiểm tra và sửa lỗi chính tả. 
+ Lưu và chuyển đổi tệp: Có khả năng lưu tệp ở dạng PDF (để đảm bảo định dạng) hoặc HTML (để xuất bản lên Web).

4. Phần mềm chế bản điện tử (Desktop Publishing): 
- Phân biệt với Soạn thảo văn bản: Trong khi Word xử lý văn bản tốt, DTP chuyên dùng để tạo ra các tài liệu in ấn mang tính chuyên nghiệp cao (tạp chí, sách báo) với yêu cầu khắt khe về thiết kế, bố cục, đồ họa, và màu sắc trên mỗi trang. 
- Ví dụ: Adobe PageMaker, QuarkXPress.

5. Phần mềm xử lý bảng tính điện tử (Spreadsheet): 
- Công dụng: Thường được sử dụng để phân tích, lập kế hoạch và mô hình hóa trong kinh doanh. 
- Ví dụ: MS Excel, Lotus 1-2-3, Corel QuattroPro. 
- Tính năng: 
+ Tạo bảng tính (nhiều dòng, cột), cho phép nhập dữ liệu và sử dụng công thức (formulas) để tính toán tự động. 
+ Vẽ biểu đồ: Trực quan hóa dữ liệu có trong bảng tính. 
+ Phân tích What-If (Phân tích độ nhạy): Cho phép thực hiện nhiều kiểu phân tích dữ liệu để dự báo và ra quyết định. 
+ Ví dụ về What-If: Công cụ SCENARIOS MANAGER trong MS-Excel giúp phân tích độ nhạy khi có hơn 2 biến thay đổi (ví dụ: phân tích biến "Tiền lời" sẽ thay đổi thế nào khi các biến "Giá bán", "Giá mua", và "Tiền lương" cùng lúc thay đổi theo các kịch bản khác nhau).

6. Phần mềm trình chiếu đồ họa (Presentation Graphics): 
- Công dụng: Giúp trực quan hóa dữ liệu ở dạng đồ họa (đường thẳng, hình bánh...) và tạo ra các bài trình chiếu. 
- Ví dụ: MS-PowerPoint, Lotus FreeLance. 
- Tính năng: Tạo ra các bài trình chiếu đa phương tiện (kết hợp biểu đồ, ảnh, hoạt hình, video clip). 
- Hiệu quả: Dữ liệu ở dạng đồ họa dễ hiểu hơn. Trình chiếu đồ họa được đánh giá là hiệu quả hơn trình chiếu dạng bảng biểu khi lập báo cáo hay quảng cáo.

7. Phần mềm quản lý thông tin cá nhân (PIM - Personal Information Manager): 
- Công dụng: Giúp nâng cao năng lực làm việc cá nhân và hợp tác. 
- Ví dụ: MS-Outlook, Lotus Organizer. 
- Tính năng: Lưu trữ, tổ chức và tìm kiếm thông tin về khách hàng; lập lịch và quản lý các cuộc hẹn, cuộc họp, công việc. Nhiều PIM có thể liên kết Web/Email để hỗ trợ hợp tác nhóm.

8. Phần mềm nhóm công tác (Groupware): 
- Công dụng: Được thiết kế để giúp các nhóm làm việc và đội dự án làm việc cùng nhau, phối hợp công việc để hoàn thành mục tiêu chung. 
- Ví dụ: Lotus Notes, Novell GroupWise, Microsoft Exchange, Microsoft SharePoint Services. 
- Tính năng: Kết hợp nhiều công cụ hỗ trợ phối hợp như: thư điện tử, nhóm thảo luận (forums), CSDL chung, lập lịch (scheduling), quản lý công việc, hội thảo video... 
- Virtual Teams (Nhóm làm việc ảo): Groupware rất quan trọng, cho phép các thành viên ở bất cứ đâu trên thế giới (nhóm ảo) có thể phối hợp làm việc qua Internet (gửi mail, tham gia diễn đàn) hoặc Intranet (xuất bản thông tin dự án, báo cáo tiến độ, cùng soạn thảo tài liệu).

4.2.3. Các giải pháp phần mềm ứng dụng

Khi một tổ chức cần phần mềm ứng dụng, họ có 3 lựa chọn chính: Mua, Tự xây dựng, hoặc Thuê.

1. Mua (Buy): Mua các phần mềm thương phẩm (COTS) có sẵn. 
2. Tự xây dựng (Build): Tự phát triển hoặc thuê ngoài gia công phần mềm đơn chiếc chuyên biệt (Custom Software). 
3. Thuê (Rent): Sử dụng dịch vụ của các Nhà cung cấp dịch vụ ứng dụng (Application Service Providers - ASP).

Giải pháp ASP (Thuê):

Đây là một xu thế mới. ASP là các công ty sở hữu, vận hành và bảo trì các phần mềm ứng dụng và cả các nguồn lực hệ thống máy tính cần thiết (máy chủ, phần mềm hệ thống, mạng, nhân lực CNTT). Họ cung ứng các dịch vụ ứng dụng này cho người dùng (khách hàng) qua mạng Internet và thu một khoản phí nhất định (theo tháng, năm, hoặc theo lần sử dụng).

Bảng so sánh 3 giải pháp phần mềm

Giải phápƯu điểmNhược điểm
1. Mua (COTS)- Chi phí thấp (được chia sẻ).
- Có sẵn ngay, thời gian triển khai nhanh.
- Chất lượng đã được kiểm chứng.
- Có hỗ trợ, bảo trì từ nhà cung cấp.
- Có thể không đáp ứng 100% nhu cầu đặc thù.
- Phải tuân theo quy trình của phần mềm.
- Phụ thuộc vào nhà cung cấp về nâng cấp.
2. Tự xây dựng (Custom)- Đáp ứng chính xác 100% nhu cầu chuyên biệt.
- Toàn quyền kiểm soát và sở hữu (bản quyền).
- Tạo lợi thế cạnh tranh nếu phần mềm là cốt lõi.
- Chi phí rất cao.
- Tốn thời gian phát triển (hàng tháng, hàng năm).
- Rủi ro thất bại cao.
- Khó bảo trì nếu đội ngũ phát triển nghỉ việc.
3. Thuê (ASP)- Chi phí đầu tư ban đầu thấp (gần như bằng 0).
- Thời gian đưa vào sử dụng ngắn.
- Chi phí dịch vụ (thuê) thường thấp hơn tổng chi phí tự phát triển/vận hành.
- Không cần chi phí cho hạ tầng CNTT và nhân sự vận hành.
- Phụ thuộc hoàn toàn vào nhà cung cấp (bảo mật, tốc độ, sự ổn định).
- Khó tùy biến theo ý muốn.
- Phải có kết nối Internet ổn định.
- Chi phí dài hạn có thể cao nếu thuê mãi mãi.

Lưu ý quan trọng: Bản quyền phần mềm

Khi một cá nhân hay công ty mua phần mềm (COTS), thực chất họ chỉ là mua quyền sử dụng (License) phần mềm đó, chứ không phải mua quyền sở hữu (Ownership). Phần mềm thường được đăng ký bản quyền (Copyright) nhằm đảm bảo quyền sở hữu trí tuệ của nhà cung cấp.

4.3. PHẦN MỀM HỆ THỐNG

Phần mềm hệ thống là các chương trình được sử dụng để quản lý và hỗ trợ hệ thống máy tính và các hoạt động xử lý thông tin của nó. Chúng đóng vai trò giao diện giữa phần cứng và phần mềm ứng dụng.

Phần mềm hệ thống được chia thành 2 loại:

- Chương trình quản lý hệ thống (System Management): Quản trị phần cứng, phần mềm, mạng và các nguồn dữ liệu (Ví dụ: Hệ điều hành, Hệ quản trị CSDL, chương trình quản trị mạng, chương trình tiện ích). 
- Chương trình phát triển hệ thống (System Development): Giúp người sử dụng phát triển các chương trình HTTT (Ví dụ: Ngôn ngữ lập trình, chương trình dịch, phần mềm CASE).

4.3.1. Hệ điều hành (Operating System - OS)

Đây là gói phần mềm hệ thống quan trọng nhất cho mọi máy tính. Đó là một hệ thống tích hợp các chương trình quản lý hoạt động của CPU, kiểm soát các thiết bị vào/ra và bộ nhớ, và cung cấp các dịch vụ hỗ trợ khi máy tính thực hiện các chương trình ứng dụng.

- Mục tiêu chính: Tối đa hóa năng lực hoạt động của hệ thống máy tính và tối thiểu hóa sự can thiệp của người sử dụng trong quá trình xử lý. 
- Nhiệm vụ: Hỗ trợ ứng dụng thực hiện các tác vụ thông dụng như truy cập mạng, nhập dữ liệu, lưu và tìm kiếm tệp, in ấn và hiển thị thông tin.

Mỗi hệ điều hành đảm nhận 5 chức năng cơ bản sau đây:

1. Cung cấp giao diện người sử dụng (User Interface). 
2. Quản trị các nguồn lực phần cứng (Resource Management). 
3. Quản trị các tác vụ (Task Management). 
4. Quản trị tệp (File Management). 
5. Cung cấp các dịch vụ hỗ trợ (Support Services).

4.3.2. Các chương trình quản trị hệ thống khác

Bên cạnh OS, còn có nhiều loại phần mềm quản trị hệ thống quan trọng khác:

- Hệ quản trị CSDL (DBMS): Quản lý việc lưu trữ, truy xuất, và bảo mật dữ liệu. 
- Chương trình quản trị mạng: Giám sát và điều khiển hoạt động của mạng máy tính. 
- Chương trình tiện ích (Utilities): Các chương trình nhỏ thực hiện các tác vụ hỗ trợ (ví dụ: Norton Utilities dùng để chống virus, dọn dẹp đĩa, nén tệp). 
- Phần mềm trung gian (Middleware): Đây là một lớp phần mềm quan trọng, giúp các ứng dụng và các hệ thống máy tính (thường là khác nhau, được nối mạng) có thể trao đổi được dữ liệu và làm việc với nhau hiệu quả hơn. 
- Máy chủ ứng dụng (Application Servers): Đây là một xu thế mới và là một ví dụ điển hình của Middleware. Nó cung cấp giao diện trung gian giữa một hệ điều hành và các chương trình ứng dụng của người dùng. 
- Tích hợp ứng dụng doanh nghiệp (EAI - Enterprise Application Integration): Cũng là một dạng Middleware, giúp kết nối các ứng dụng khác nhau trong doanh nghiệp (ví dụ: kết nối CRM và ERP).

4.3.3. Ngôn ngữ lập trình

Ngôn ngữ lập trình (Programming Languages) cho phép lập trình viên phát triển bộ các chỉ thị hợp thành một chương trình máy tính. Có nhiều thế hệ ngôn ngữ lập trình:

Bảng tóm tắt các thế hệ ngôn ngữ lập trình

Thế hệTên gọiĐặc điểmƯu/Nhược điểm
1GLNgôn ngữ máy (Machine Language)- Sử dụng các mã nhị phân (chuỗi 0 và 1).
- Là ngôn ngữ duy nhất CPU hiểu trực tiếp.
- Nhược: Rất khó viết, khó gỡ lỗi, phụ thuộc 100% vào phần cứng (CPU).
2GLNgôn ngữ Assembler (Hợp ngữ)- Sử dụng các ký hiệu (mã gợi nhớ) để biểu diễn phép toán.
- Cần chương trình dịch Assembler để dịch sang 1GL.
- Ưu: Dễ đọc hơn 1GL, chương trình hiệu quả cao.
- Nhược: Vẫn rất khó và phụ thuộc phần cứng.
3GLNgôn ngữ bậc cao (High-Level)- Sử dụng các câu lệnh (statement) gần với ngôn ngữ con người (tiếng Anh) hoặc biểu thức số học.
- Ví dụ: BASIC, COBOL, FORTRAN.
- Ưu: Không phụ thuộc vào máy, dễ học, dễ sử dụng, dễ bảo trì.
- Nhược: Ít hiệu quả hơn 2GL (về tốc độ/bộ nhớ).
4GLNgôn ngữ thế hệ thứ tư- Mang tính phi thủ tục (non-procedural).
- Người dùng chỉ cần đặc tả kết quả mong muốn (cái gì), máy tính sẽ tự xác định dãy chỉ thị (thế nào).
- Ưu: Đơn giản hóa quá trình lập trình, cho phép người dùng cuối (end-user) tự tạo báo cáo.
OOLNgôn ngữ hướng đối tượng- Gói (encapsulate) dữ liệu và các hành động thực hiện trên dữ liệu đó vào chung một Đối tượng (Object).
- Ví dụ: Visual Basic, C++, Java.
- Ưu: Dễ tái sử dụng code, hiệu quả khi lập trình giao diện đồ họa (GUI).

4.3.4. Ngôn ngữ và dịch vụ Web

Đây là các công nghệ phần mềm chiến lược cho kinh doanh và thương mại điện tử.

1. HTML (Hypertext Markup Language): 
- Là ngôn ngữ đánh dấu siêu văn bản, dùng để tạo các siêu văn bản (trang Web). 
- Cách hoạt động: Chèn các mã kiểm soát (tags) vào tài liệu để định nghĩa cấu trúc, định dạng (ví dụ: chữ đậm, tiêu đề) và tạo các siêu liên kết (hyperlinks) tới các tài liệu khác.

2. XML (eXtensible Markup Language): 
- Là ngôn ngữ đánh dấu mở rộng. XML không phải là ngôn ngữ định nghĩa khuôn dạng (format) trang Web. 
- Công dụng: Dùng để mô tả nội dung (data) của các trang Web bằng việc sử dụng các "nhãn" (tags) ngữ cảnh do người dùng tự định nghĩa. 
- Ví dụ: <TênHàngHóa>, <Giá>, <KíchCỡ>. 
- Lợi ích: Bằng cách phân tổ dữ liệu kiểu này, việc tìm kiếm, sắp xếp và phân tích thông tin trên Web trở nên dễ dàng hơn. XML đặc biệt quan trọng trong việc hỗ trợ trao đổi dữ liệu kinh doanh điện tử (B2B) giữa các công ty (ví dụ: gửi đơn hàng, hóa đơn điện tử).

Lưu ý: Phân biệt HTML vs. XML

+ HTML tập trung vào CÁCH HIỂN THỊ dữ liệu (cho con người xem). 
+ XML tập trung vào MÔ TẢ DỮ LIỆU LÀ GÌ (cho máy tính hiểu và trao đổi).

3. Java: 
- Là ngôn ngữ lập trình hướng đối tượng do Sun Microsystems phát triển. 
- Được coi là một cuộc cách mạng đối với lập trình ứng dụng trên WWW, Intranet và Extranet. 
- Đặc điểm cốt lõi: Không phụ thuộc vào platform (Platform-independent). Các chương trình con (gọi là applets) có thể được thực hiện bởi bất kỳ máy tính nào và trên bất cứ hệ điều hành nào (Windows, UNIX, Mac) mà không cần hiệu chỉnh. 
- Phiên bản J2EE (Java2 Enterprise Edition) là một trong những lựa chọn chính (cùng với Microsoft .NET) cho các ứng dụng và dịch vụ Web cấp doanh nghiệp.

4. Dịch vụ Web (Web Services): 
- Là các cấu phần phần mềm dựa trên nền tảng Web và các chuẩn (như XML, OOL). 
- Công dụng: Dùng để liên kết điện tử các ứng dụng của những người sử dụng khác nhau, trên các nền tảng tính toán khác nhau, cho phép chúng "nói chuyện" với nhau một cách tự động. 
- Ví dụ: Ứng dụng mua hàng của công ty A có thể tự động sử dụng Web Services để "gọi" và kiểm tra tình trạng tồn kho trong ứng dụng của nhà cung cấp B trước khi đặt đơn hàng. 
- Tầm quan trọng: Đây là công nghệ then chốt để tự động hóa việc truy cập dữ liệu và các chức năng ứng dụng giữa một tổ chức với các đối tác kinh doanh, rất cần thiết cho thương mại điện tử hiệu quả trong môi trường toàn cầu năng động.

4.3.5. Phần mềm lập trình

Đây là những phần mềm giúp lập trình viên phát triển các chương trình máy tính (thuộc nhóm "phát triển hệ thống").

- Chương trình dịch (Compiler/Interpreter): Cho phép dịch các chương trình nguồn (viết bằng 3GL, 4GL...) thành các mã lệnh của ngôn ngữ máy (1GL) để máy tính có thể thực hiện được. 
- Các hệ soạn thảo chương trình (Programming Editor/Tools): Giúp lập trình viên viết các chương trình bằng cách cung cấp các công cụ tạo và hiệu chỉnh mã nguồn.

4.4. CÁC YẾU TỐ CẦN ĐÁNH GIÁ KHI MUA SẮM PHẦN MỀM

Khi lựa chọn để mua sắm phần mềm (thường là COTS), tổ chức cần sử dụng các yếu tố sau đây để đánh giá:

- Khả năng hoạt động của phần mềm (Functionality): Mức độ đáp ứng về mặt yêu cầu chức năng và yêu cầu thông tin của người dùng. Đồng thời, xem xét khả năng bảo trì (maintainability) nhằm đáp ứng các yêu cầu mới đặt ra trong tương lai. 

- Tính hiệu quả (Efficiency): Phần mềm có được phát triển tốt (tối ưu) để sử dụng CPU và bộ nhớ một cách hiệu quả không? (Phần mềm viết ẩu có thể chạy rất chậm, tốn tài nguyên, gây treo máy). 

- Tính linh hoạt (Flexibility): Phần mềm có khả năng xử lý các hoạt động nghiệp vụ một cách dễ dàng mà không cần tổ chức phải có sự thay đổi lớn, phức tạp đối với các tiến trình nghiệp vụ hiện tại hay không? 

- Khả năng kết nối (Connectivity): Phần mềm có khả năng truy cập mạng Internet, hoặc các mạng nội bộ (Intranet) hay mạng mở rộng (Extranet) của tổ chức không? 

- Sự đầy đủ và tính chuẩn mực của tài liệu (Documentation): Đánh giá sự đầy đủ và hiệu quả của tài liệu hướng dẫn sử dụng. Tài liệu phải dễ hiểu (theo ngôn ngữ của người sử dụng, không quá kỹ thuật), tiện tra cứu và sử dụng. 

- Tính tương thích (Compatibility): Phần mềm có khả năng tương thích (chạy tốt) với các phần mềm và hạ tầng phần cứng hiện có của tổ chức hay không? (Ví dụ: có chạy được trên HĐH Linux mà công ty đang dùng không? Có xuất dữ liệu ra Excel được không?).

Mục lục
4.1. PHẦN MỀM MÁY TÍNH VÀ VAI TRÒ CỦA PHẦN MỀM DƯỚI GÓC ĐỘ QUẢN LÝ
4.1.1. Khái niệm phần mềm máy tính
4.1.2. Phân loại phần mềm máy tính
4.2. PHẦN MỀM ỨNG DỤNG
4.2.1. Phân loại phần mềm ứng dụng
4.2.2. Bộ phần mềm ứng dụng
4.2.3. Các giải pháp phần mềm ứng dụng
4.3. PHẦN MỀM HỆ THỐNG
4.3.1. Hệ điều hành (Operating System - OS)
4.3.2. Các chương trình quản trị hệ thống khác
4.3.3. Ngôn ngữ lập trình
4.3.4. Ngôn ngữ và dịch vụ Web
4.3.5. Phần mềm lập trình
4.4. CÁC YẾU TỐ CẦN ĐÁNH GIÁ KHI MUA SẮM PHẦN MỀM
Khoá học liên quan
Kiến thức tương tự