201671010417 Jin Zhenxing experiment fourteen project review team & course summary

project content
Software Engineering https://www.cnblogs.com/nwnu-daizh/
Work requirements https://www.cnblogs.com/sunmiaokun/p/11095027.html
Course learning objectives (1) master the software project will be assessed process; (2) summarizes the course content to reflect

1. The course content of the semester, Contrasts "Experimental Software Engineering to prepare a" task 5 you mentioned (given questions blog link), to try to answer questions and clarify how the discussion by learning / practice / make clear; whether learning creates new problems? If so, please ask.

1. Personal technology and processes and software engineering What is the relationship?

  Collaboration software is done by the people, the work of different people have mutual dependency, so personal technology will affect the whole process of software development, personal technology is mainly details the software development process.

  After the development of the software must be tested is considered complete software, which requires a good standard of unit testing. 1, unit tests verify the correctness of the program at the lowest functions / parameters. 2, unit test must be written by people (author of the program) most familiar with the code. 3, after the test unit, the machine state remains unchanged. 4, unit testing faster (time is a test run for a few seconds, rather than minutes). 5, the test unit should produce repeatable, consistent results. 6, Independence - unit tests run / pass / fail / test does not rely on anything else, the data can be artificially constructed in order to maintain the independence of the test unit. 7, unit tests should cover all code paths. 8, the test should be integrated to the frame unit automatically tested. 9, unit testing and maintenance and must be saved with the product code.

2. The process of growth of software engineers there are so aspects?

 1, the accumulation of knowledge related to software development, to enhance the technical skills (such as mastery of specific technologies, ability). For example: for Java, C / C ++, C # master, diagnostic / improve the technical performance of the device driver (Device Drive), the kernel debugger (Kernel Debugger) master; master for a development platform.

 2, the accumulation of knowledge and experience in the field of problem

 The first and second points can then resume many can be seen, can be relatively easily detected. With experience, engineers can grasp a broader, more in-depth technical knowledge and problem areas.

 3, the understanding of common software design and software engineering ideas.

 4, enhance the professional skills (as distinct from technical skills)

3. What is MSF?

1.MSF is a large-scale system development guide that describes how to use the application team model, process model and application model to develop Client / Server structure, is to establish and develop distributed on the basis of Microsoft tools and technologies on refer to the application of enterprise systems.

2.MSF is an empirical knowledge, which is a frame structure, a set of resources.

In the course of this study, under the guidance of teachers, we form teams for development projects. Throughout the process I learned a lot, met to discuss the issue with them, and the entire project work on their own problems to practice and learn. We know the individual in the role of team work, as well as in teamwork, everyone needs to do their job in order to better complete the work.

2. summed up his analysis of the feasibility of the project / needs analysis / software design / implementation / testing / project acceptance / learned what "knowledge."

Feasibility Analysis:

Feasibility analysis is conducted in terms of technical, economic, engineering and other projects by the main content and related conditions, such as market demand, supply of resources, the scale of construction, process routes, equipment selection and environmental impact, financing, profitability, etc. research and comparative analysis, financial, economic and social and environmental impact after completion of the project may be made to predict, which made the project worth the investment and advice on how to build and provide a comprehensive basis for decision-making project systems analysis. Feasibility analysis should have predictability, fairness, reliability, scientific characteristics.

demand analysis:

Requirements analysis, also known as software requirements analysis, system analysis needs analysis or requirements engineering, is a developer of an intensive research and analysis, an accurate understanding of the specific requirements of the user and project features, performance, reliability, etc., in the form of non-users demand expressed into a complete requirements definition, to determine what the system must do the process.

software design:

Software design is the SRS from the description, the overall structure of the software system function design requirements identified during the analysis, the division of functional modules, and algorithm determines to write specific code for each module, the specific form of software design.

achieve:

Implementation is specific coding stage.

test:

Under the conditions specified in the program to operate, to discover bugs, measure software quality, and evaluate whether it can meet the requirements of the design process.

Project Acceptance:

Project acceptance, also known as scope verification or transfer. It is whether the work or activities within the scope of the provisions of the verification project has been completed, the deliverables are satisfactory, and the results of the verification record a series of activities in the acceptance document.

3. The combination of individual project / twinning individual program / project team experience, to talk about the experience.

During the project development process, from the initial software project to the current project realized after a long time, our team carefully completed this project paper management systems. Throughout the process, we carry out the work done by each member a detailed breakdown of each person carry out their duties, to realize the project is now experiencing a lot of problems, we go to learn, to discuss together to solve each puzzle, I think the most valuable is that these experiences, so we learned to cooperate to four people can collaborate on a common goal together.

4. Summary of Practice on the course and upgrade to bring you, including the following.

  • Statistical software engineering practice, completed the code you how many rows;

2900 Line

  • You were to spend much time in the second practice of software engineering job? (Make a list)
experiment time
Experiment 1: Preparation Software Engineering 3h
Experiment two: Software Engineering Individual Project 6h
Experiment III: Improvement mutual evaluation operations 3h
Experiment 4: Software engineering twinning projects 6h
Experiment 5: Software R & D team set up 2h
Experiment Six: Team Project Selection 2h
Experiment 7: prototyping and development project team 4h
It Experiments Eight: prototype-based research and analysis needs of the project team 5h
Experimental nine: the project team needs improvement and system design 5h
Experiment X: designed to improve the system and detailed design of the project team 5h
Experiment XI: Team project design & coding perfect 20h
Experiment 12: Software Testing and Alpha sprint 5h
Experimental thirteen: Beta team sprint and project acceptance 4h
  • Which one job to make you the most impressive? why?

In the experiment XI: Team project design & coding process improvement was most impressed, because in the encoding process, seriously aware of their lack of coding encountered many problems, recognizing the importance of programming languages. So in future learning, should capacity in this area needs to be strengthened.

  • The cumulative number of hours spent on the practice of software engineering? The average number of hours per week spent?

70 hours, 7 hours

  • You learn and master a new language, a new platform;

java language; GitHub

  • Complete the form below, summarizes a semester of study, software engineering development tools, development methods and modeling methods you learn or use;
Software development tools, project management tools Software development methods Modeling software
GitHub,Eclipse,MySQL Object-oriented development methodology Object-Oriented Modeling
  • Other aspects of harvesting or lifting.

With further increase of the java language.

5. What problems do you think the current curriculum, do you have any better suggestions.

Behalf of the teacher in the classroom, the teacher responsible for our height, we understand the basis for targeted preparation, this detailed theoretical knowledge of the course taught us to. In the experiment, the corresponding experimental arrangement of course, let us in practice, not only deepened this course of study, but also have the ability to teamwork development projects.

 

Guess you like

Origin www.cnblogs.com/jinzhenxing/p/11106715.html