I did not take this class, my "Software engineering" four-word concept is only vague thought is software programming. Now this course is over, with a clear understanding of the subject of software engineering.
In my opinion, software engineering is more of a thought than a course. is a process of how to analyze and deal with the problem, it should be said that its scope is far more than confined to the course, has become a comprehensive set of ideas to solve the problem.
What's special about this course is that there are more "teaching assistants" than other courses, and that the author team of the book, the Law of construction, serves as a teaching assistant for us to communicate. Author Xin Zou is the chief research director of the Microsoft Asia Internet Engineering Institute, which enables us to experience social thinking ahead of the university, and it is a very good way for us to revise our homework and ask questions.
In fact, developing software is like solving a logic problem. Think about how you usually write programs. The first thing to do is to have an idea of what I'm writing this program for. Then it is the core function that is to be implemented, presumably to conceive one or more implementation methods, and choose a self-think is better, then the various major or minor functions involved are divided into modules, and finally the sub-module to encode. In my opinion, in addition to the first step, the rest of the steps should be a looping process.
We also learned the detailed design approach, the principle of whether the process description is easy to understand, review and maintain, and then the process description can be naturally converted into code, and ensure that the detailed design and code exactly the same. Including program flowchart, n-S diagram, pad diagram, HiPo diagram and so on.
The last two months of the task is a team task, free combination of team work, this is also a good team training, because until the company, the software is not done by a person, need to adapt to team development in advance, has been in the team development needs to pay attention to the problem. For example, in the coding process, if there is more than one person coding, how to ensure that the final successful merging of multiple personal code without error, this requires the team to define the normative code. And there is a positive problem with teamwork, and teammates can also play an important role in your lazy time and make the whole project develop at a higher level.
Although the software engineering course is over, my study of software engineering has just begun. I realized the importance of project management, as the size and complexity of software increasing, the project development is more collaboration, management and control. I learned a lot of general methods, such as requirements acquisition, modularity, planning, and so on.
Thanks to my teacher's modest teaching here, the teacher in my difficult time carefully for my guidance, gave me a lot of help. Thank you for the guidance and advice given by our teaching assistants.
Software Engineering-Semester Course Summary