-
This is a complicated question, so I would like to say a few words about it.
The goal of software engineering is to develop software products with the lowest cost, highest quality, and shortest development time. The various software engineering approaches that are popular today have failed to achieve this goal. The weighty method represented by RUP has too much time for planning and preparation, but very little energy for development, thinking that as long as the enterprise ensures the implementation of the software process, everything else will be easy to do, and this extremely depressing method will not achieve good results.
A lightweight approach is better, after all, most of the attention is on development, and everyone likes it, but relying on a few people can't handle large projects. Of course, everyone is improving on their weaknesses and absorbing each other's strengths.
As mentioned above, the lack of automation is an important reason for the existence of a large number of problems in the software development process, and it is believed that it is the fundamental reason why it is difficult to achieve the goals of minimum cost, highest quality, and shortest development time. Therefore, the future software engineering will inevitably develop to the stage with software automation technology as the core - the 4GL era.
The reason why the 4GL era has not yet come is because software automation is too difficult, the current results are limited to some very narrow areas, which cannot meet the requirements of the actual project, and this technology is too difficult to understand, requiring in-depth theoretical learning, which is difficult for the average developer to accept. The important intention of the lack of great development of software automation technology is that the current technology to describe the semantics of actions is very low-level, so even if the formal method is used to design, it is very time-consuming, although it can improve a certain efficiency, but it is still far from enough.
In order to solve this problem, the only way to solve this problem is to start by using the previous results, that is, to reuse the components, but not with today's component technology. In the future, a large-scale component library for machine retrieval will be realized, which is a component library that the computer can automate the search and transfer of components, not today's manual component library. However, why such a component library does not appear is still an old problem, we do not yet have a very ideal way to describe the semantics of actions, and the computer cannot determine whether two components or specifications and components are equivalent, or there are equivalent components, and of course they cannot be automatically retrieved.
Although there are many difficulties, I believe that the future direction of software engineering will be a highly automated building block development approach.
The above is a purely personal opinion and may not be credible.
-
1. Software engineering 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. Software is used in a number of ways.
Typical software is email, embedded systems, human-machine interfaces, office suites, operating systems, compilers, databases, games, etc. At the same time, almost all industries have the application of computer software, such as industry, agriculture, banking, aviation, ** sector, etc.
First, the application of 5G will drive the comprehensive development of the Internet of Things. With the gradual application of 5G standards, the Internet of Things related fields will be fully developed in the next ten years, including the Internet of Vehicles, agricultural Internet of Things, smart home, smart city and other fields will release a large number of job demand, so the Internet of Things related fields will be a focus of software engineering majors.
Second, the development of the industrial Internet will drive the application of big data and artificial intelligence. At present, the Internet field is transitioning from the consumer Internet to the industrial Internet, and the development of the industrial Internet will promote the further application of big data and artificial intelligence, so the software engineering major will further expand its knowledge.
Judging from the graduation defense of the software engineering and brother Cheng major in recent years, some students have chosen big data, machine learning, computer vision and other directions for their graduation projects, which also shows that the software engineering major is more sensitive to new technologies to a certain extent.
Third, there will be a lot of opportunities for development in the field of cybersecurity. With the development of the Internet of Things and big data technology, the coverage of network security has been further expanded, big data without security can not go far, and the Internet of Things without security cannot be applied, and the Internet of Things is currently an important application scenario of artificial intelligence, so security will be an important area in the IT industry in the future.
Therefore, in the future, software engineering majors will pay more attention to knowledge education in the field of safety hail.
-
What is Software Engineering?
Software engineering is a discipline that studies and applies how to develop and maintain software in a systematic, standardized, and quantifiable process method, and how to combine the time-tested management technology with the best technical methods that can be obtained at present. It involves programming languages, databases, software development tools, system platforms, standards, design patterns, etc.
How's it going? - The scale of the software industry is expanding year by year.
In recent years, China's software and information technology service industry has been operating well, with rapid growth in income and efficiency, and a steady increase in the number of jobs. The pace of industrial development in the direction of high quality is accelerating, the structure continues to be adjusted and optimized, new growth points are constantly emerging, and the ability to serve and support the construction of the two powerful countries has been significantly enhanced, which is becoming an important driving force for the development of the digital economy and the evolution of a smart society.
In 2019, there were more than 40,000 enterprises above designated size in the software and information technology service industry in China, with a cumulative software business income of 7,176.8 billion yuan, a year-on-year increase. In the first three quarters of 2020, China's software industry completed software business revenue of 5,838.7 billion yuan, a year-on-year increase.
Information technology occupies an absolute dominant position in the field of service and annihilation.
In recent years, the development situation of various market segments in China's software industry has shown a full-scale situation, that is, the market size of software products, information technology services, information security products and embedded system software has increased.
Specifically, information technology services remain in the lead, and the industry continues to evolve towards service-oriented and cloud-based. In the first three quarters of 2020, information technology services achieved revenue of 3,516.2 billion yuan, accounting for the proportion of the industry's revenue, occupying an absolute dominant position in the software industry. Among them, the revenue of big data services was 153 billion yuan; integrated circuit design revenue of 156.2 billion yuan; cloud service revenue of 145.3 billion yuan; The revenue of technical services of e-commerce platforms was 602.8 billion yuan.
Revenue from information security products and services has increased steadily. In the first three quarters of 2020, information security products and services achieved a total revenue of 95.9 billion yuan, accounting for the total revenue of the whole industry.
Embedded system software has become a key driving technology for the digital transformation of products and equipment and the intelligent value-added in various fields. In the first three quarters of 2020, embedded system software achieved revenue of 636.5 billion yuan, accounting for the proportion of industry-wide revenue.
Summary. The programmer industry is no different from other industries, experience is too important for this industry, and in the process of work, I often work overtime and stay up late to knock **. Everyone knows that staying up late is not good for girls, and there is no time for maintenance. >>>More
Extraction code: J3L1 Software Engineering 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 parts such as email, embedded systems, human-machine interfaces, office suites, operating systems, compilers, databases, games, etc. >>>More
Software engineering is the study 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. Software engineering majors are required to take the following courses: >>>More
The scale of China's software industry is not very large, and some software companies only adopt some software engineering ideas in software production, and there is still a certain gap between them and large-scale industrial production. The reasons include the problems of management system, market problems, policy problems, and the incomplete and imperfect software engineering theory. Therefore, the research and application of software engineering, as well as the further development of China's software industry, require certain software engineering scientists and technicians who have both the theoretical foundation and research ability of software engineering and certain practical experience. The future of software engineering is bright. >>>More
If the project has already entered the regular stage.
1.Meeting. 2.Make a list of to-dos for today. >>>More