18 May, 2021
Phần mềm và hệ thống phần mềm
Một sinh viên hỏi: “Khác biệt gì giữa phần mềm và hệ thống phần mềm? Em có thể làm gì với bằng kĩ nghệ phần mềm?”
Đáp: Nhiều người chỉ nghĩ “phần mềm” là “mã” hay “chương trình” nhưng thực tế “phần mềm” là nhiều hơn điều đó, nó cũng bao gồm mọi tài liệu liên kết và dữ liệu cấu hình điều làm cho chương trình chạy đúng. Hệ thống phần mềm bao gồm phần cứng và phần mềm có vài chương trình tách biệt, các tệp cấu hình, tài liệu hệ thống, và tài liệu người dùng. Chẳng hạn, máy tính cá nhân của bạn là một hệ thống phần mềm có phần cứng với nhiều cấu phần như màn hình, ổ đĩa, bàn phím, chuột v.v được mô tả trong tài liệu hệ thống; một sản phẩm phần mềm có chứa nhiều chương trình như phần mềm hệ điều hành, phần mềm kiểm soát giao diện, và các ứng dụng phần mềm khác như xử lí văn bản, gói trình vẽ, và công cụ phần mềm v.v.
Phần lớn những người tốt nghiệp kĩ nghệ phần mềm điển hình làm việc như người phát triển phần mềm, người xây dựng sản phẩm phần mềm. Tuy nhiên một số có thể làm việc như người kiểm thử phần mềm, người tiến hành kiểm thử để chắc sản phẩm phần mềm không có lỗi và đáp ứng yêu cầu. Sau vài năm kinh nghiệm, một số người phát triển phần mềm tiến lên làm người thiết kế phần mềm, người thiết kế ra kiến trúc và cấu trúc hệ thống phần mềm với các chức năng của nó và các thuộc tính chất lượng. Một số người có thể chuyển sang vị trí kĩ sư yêu cầu hay người phân tích yêu cầu nơi họ làm việc cùng khách hàng và người dùng để xác định nhu cầu của họ và làm tài liệu chúng trong yêu cầu phần mềm. Nghề nghiệp của kĩ sư phần mềm thường biến thiên tuỳ theo công ti và chuyên môn của bạn vì công nghệ tiếp tục thay đổi và có nhiều chuyên ngành hơn bên trong lĩnh vực kĩ nghệ phần mềm.
—English version—
Software and software system
A student asks: “What is the difference between software and a software system? What can I do with a software engineering degree?
Answer: Many people only think “Software” as “Code” or “Program” but actually “Software” is more than that, it also includes all associated documentation and configuration data that make the program runs correctly. A software system consists of hardware and software which has several separate programs, configuration files, system documentation, and user documentation. For example, your personal computer is a software system which has hardware with many components such as monitor, disk drive, key board, mouse etc. described in the system documentation; a software product which contain several programs such as operating system software, interfaces control software, and other software applications such as word processing, drawing packages, and software tools etc.
Most software engineering graduates typically work as software developers who build software products. However some may work as software tester who conducts tests to make sure the software product does not have defects and meets the requirements. After few years of experience, some software developers move up to software designer who design the architect and the structure of a software system with its functions and quality attributes. Some may move to requirements engineer position or requirements analyst position where they work with customers and users to determine their needs and document them into a software requirements. The career of a software engineer often varies depend on the company and your specializations as technology continues to change and there are more specialties within software engineering field.