Software Engineering and software technology

Source: Internet
Author: User
After reading the rumor about software engineering from Liang zhaoxin, a programming expert, I have some feelings. as a software engineering student, I am currently troubled by the software engineering course. When I read Liang's words, I feel very considerate. is it because what programmers say is even more important? Instead of following our teacher's instructions, or talking about management experience, you have to listen.

Liang zhaoxin said, "The design methods of all software engineering always start to think clearly or solve all the problems, so there will be a brief design, detailed design, it seems that all the problems can be solved. The only thing left is to find a group of software workers to write code step by step, just like the parts made in the factory, however, this method is not available in general software engineering ".

"We divide software development into three stages: design planning, functional design, and testing. All products can be divided into three stages. In fact, if the core part is implemented, the function of relying on this core is the second stage. After the second stage is completed, the third stage can be implemented ."

"According to the traditional software engineering method, all problems are found at the beginning. However, it is generally impossible for you to predict the problems encountered in the program. To put it back, even if you have designed all the boxes, you may not be able to find the correct solution when you suddenly encounter a problem, and then try to solve it, this may take a long time to solve the problem. When you find this problem hard to solve or cannot be solved, the entire project will be aborted. It is not feasible to solve the problem according to the traditional software engineering method, because it assumes that all the problems can be solved or completed, which is actually impossible.

Now let's take a look at our software engineering courses. I personally feel that software engineering is meaningless in such a class. The reason is that the content of the teacher has no effect on our improvement, the reason for being ineffective is not that the content the teacher says is incorrect or outdated, because what he taught me is not what we need. maybe many cool people want to talk about our impetuousness: software engineering is an idea. What you are learning now is this idea of developing software, with this idea in mind, it will be of great help to you in the future. Do not think that making a control is a technology, do not think that using spring, use Ruby, and use Ajax is a technology. Unfortunately, what we are worried about is what Liang zhaoxin said: "the whole project is aborted due to the emergence of a problem." When we face a brand new project, we don't have the confidence to solve either the demand or the detailed design. What we worry about is a technology that has never been involved, or a topic that has never been thoroughly studied. For example, in our current project, the problem is not solved by the theory that the teacher spoke in class: in the C/S structure, how should multithreading be handled. General multi-threaded applications certainly do. But when multithreading and a slightly more complex customer and server are combined with MVC swing and socket, I find it difficult to start. Now we need not only a theoretical leader, but also a technical leader, and the missing technical leader has caused us to be disappointed with this lesson.

I personally think that the positioning of software engineering is more technical than management, or the management of software engineering is based on technology. the idea that software engineering is more inclined to management is to idealize software engineering. Traditional engineering involves a large number of products, and the replication cycle is long. Generally, new technologies are not added, software engineering is not replicated, and software engineering is only developed, pursuing manufacturing-in fact, achieving this goal is also far away, and software engineering is constantly adding new technologies. the role of software technology in software engineering is like the role of hardware manufacturing technology (whether tires or engines) in improving automotive performance!

 

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.