Home  >  Article  >  What is the difference between computer software major and software engineering?

What is the difference between computer software major and software engineering?

藏色散人
藏色散人Original
2020-08-07 09:22:3811429browse

The difference between computer software major and software engineering is: 1. Computer science and technology are sciences that appear to study and solve algorithmic problems, while software engineering is a typical engineering major; 2. Computer major involves Hardware and software engineering only involve software; 3. Computer hardware development can also be counted as a computer major.

What is the difference between computer software major and software engineering?

Recommended: "Programming Video"

The difference between computer software major and software engineering

1. Computer science and technology is equivalent to the rational side of engineering. It is a science that appears to study and solve algorithmic problems. Software engineering is a typical engineering major. It is mainly about programming and the subsequent interaction of computer components. It is a branch of computer science.

2. Computer science involves hardware, while software engineering only involves software.

3. Computer hardware development can also be counted as a computer major, including other peripheral hardware and microcontrollers. Software engineering basically only develops software on windows and *nux. It may involve some hardware, but the main consideration is the efficiency and response speed of the program.

In other words:

The most important difference between the two majors is that the computer major pays more attention to the research and improvement of algorithms, while the latter pays more attention to the management of requirements, resources, and progress in the software development process. That is, a major that practices software development as engineering. This is the biggest difference between the two.

Computer science students will be more involved in hardware-related technologies, but this does not mean that software engineering students can know nothing about hardware. For many software development situations today, hardware The difference between platforms is a key point to be concerned about during development. In particular, the hardware itself will have an impact on the running time and response speed. At that time, more efficient software algorithms are required as support. This trend is becoming more and more obvious in the current context of diversified hardware terminals.

Extended information:

Software engineering major is a discipline that studies the use of engineering methods to build and maintain effective, practical and high-quality software. It involves programming languages, databases, software development tools, system platforms, standards, design patterns, etc. In modern society, software is used in many aspects.

Typical software includes email, embedded systems, human-computer interfaces, office suites, operating systems, compilers, databases, games, etc.

At the same time, computer software is used in almost every industry, such as industry, agriculture, banking, aviation, government departments, etc. These applications promote economic and social development, make people's work more efficient, and improve the quality of life.

Relevant scholars and organizations have given definitions respectively:

Boehm: Use modern scientific and technological knowledge to design and construct computer programs and the related information necessary to develop, operate and maintain these programs. document.

IEEE: Software engineering is a systematic approach to developing, running, maintaining, and repairing software.

Fritz Bauer: A series of methods to establish and use sound engineering principles to economically obtain reliable software that can run effectively on actual machines.

A broad-caliber major that combines computer hardware and software, is system-oriented, and focuses on applications. Through basic teaching and professional training, we cultivate senior talents with solid basic knowledge, broad knowledge, strong engineering practical ability, pioneering and innovative consciousness, and are engaged in scientific research, education, development and application in the field of computer science and technology.

The characteristics of the computer science discipline are mainly reflected in: strong theory, strong practicality, rapid development, cultivating broad-caliber talents with a solid foundation according to first-level disciplines, reflected in the emphasis on mathematics, logic, data structures, algorithms, and electronic design , computer architecture and system software, etc. The theoretical foundation and professional technical foundation. The first two and a half years focus on basic natural science courses and professional basic courses to broaden the orientation. The second year and a half is mainly about setting up professional courses, increasing optionality, diversity, flexibility and directionality, highlighting the characteristics of subject directions, and reflecting the latest technological development trends.

The operating system is a program system that manages, controls and supervises the coordinated operation of computer software and hardware resources. It consists of a series of programs with different control and management functions. It is the most basic program that runs directly on computer hardware. The system software is the core of the system software.

The operating system is a product of the development of computers. It has two main purposes: First, it is to facilitate users to use computers and is the interface between users and computers. For example, users can automatically complete complex functions by typing a simple command, which is the result of the help of the operating system; second, unified management of all resources of the computer system and reasonable organization of computer workflow so that the efficiency of the computer can be fully and reasonably utilized. The operating system should usually include the following five functional modules:

(1) Processor management: When multiple programs are running at the same time, solve the problem of processor (CPU) time allocation.

(2) Job management: A program that completes an independent task and its required data form a job. The main task of job management is to provide users with a computer interface to conveniently run their own jobs, schedule and control all jobs entering the system, and utilize the resources of the entire system as efficiently as possible.

(3) Memory management: Allocate storage space for each program and the data it uses, and ensure that they do not interfere with each other.

(4) Equipment management: Allocate equipment according to the user's request to use the equipment, and can also receive equipment requests (called interrupts) at any time, such as requiring input of information.

(5) File management: Mainly responsible for the storage, retrieval, sharing and protection of files, providing users with convenient file operations.

The above is the detailed content of What is the difference between computer software major and software engineering?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn