Finale - System Analysis and Design

Conventional beginning

This work belongs courses System Analysis and Design
Where this requirement in the job Work requirements
Team Name Grapefruit Three Musketeers
The target job Review summary
github address Gold Point Game

Players list

member student ID
Zhou Guo (Leader) 201731062630
Xiaogang segment 201731062317
Liu Qi 201731062413

text

Leader: Zhou Guo
blog address:
Student Number: 201 731 062 630
first blog connection

One problem: In the fourth chapter of "two cooperation" mentioned pair programming idea that a programmer side by side, equally, complementary to development work. They sat side by side in front of a computer, use the same display, with a mouse, keyboard ... "In short, if used properly, pair programming can achieve a higher input-output ratio." However, for a large scale, even for a medium-sized projects, pair programming advocated by a computer, a monitor, a mouse model of development, really apply it? Perhaps in small projects in two human communication and understanding of some help for project development and specification, but people are not machines parts, under the highly centralized development model, two people efficient development efficiency is also severely limited by time , then the knot in the end is applicable to the circumstances in which the ideas and concepts of programming it?

Pair programming had to lack a deep understanding, more rigid. It now appears that pair programming is much more than only two people facing the same computer, keyboard ... programming, pair programming to promote itself is not big enough for a large-scale project in terms of the environment in highly concentrated time and work plans, in a relatively short period of time, as quickly as possible, efficient completion of the project, so proper rest and short-term development, that pair programming for small projects, is indeed a good development model.

Second problem: In the book 137, Section 7, "actual software project", mentioned in the book "Team members should have a consensus: to prevent the occurrence of defects become the primary task team of quality control, all the characters should be on the quality of responsible for protection. ". If the investment quality of this process is to avoid more staff to work in an environment full of antagonism, improve the individual's interest in the work. But the developer put forward higher requirements for quality assurance, whether the tasks that testers will therefore become less important then? Perhaps you can say so, whether this approach is a double-edged sword, though will reduce confrontation point between testers and developers to some extent, but also to reduce the workload of testers, so much less bug, test personnel working interest will therefore reduce it?

The world will always be some opportunistic people. In our development process, we should first ensure that our members must have a certain bottom line. In the complete development process, so that all the players are responsible for quality assurance, so that the development and testing staff have the same interest in developing, really is a good approach.

Question three: In Chapter 16 "IT industry innovations," I read a little rough contents of this chapter, the paper mentioned "innovation is the key" for a particular area because a technology produce significantly improved enterprise efficiency, or makes people's life more convenient, we call innovation. But for a team project, for the development of software engineering, in addition to technological innovation, as well as the circumstances under which it regarded as innovative?

Perfect engineering, not only need is to implement new technologies, but also need to develop high-efficiency, high degree of fit of the project team, these are the software development process what we need to face.

Question four: twelve chapters "user experience", the book mentioned the importance of software development emphasis on user experience, "consider the user experience various angles, the design level, steps and goals, cognitive resistance, user experience measure, emotional design, cross-device user experience. " Then the software project team development process, which role should be described as a portrait of the user, consistent user experience design, and these transformed the design of specific functions for engineers concerned and to achieve it?

Throughout my first blog of the problem, in fact most of them are software engineering project implementation issues in the process, after the end of the course, I gradually realized that, because I have not experienced a complete project development process, the presence of these questions will be including this issue - demand systems analyst, mainly by product managers and project managers docking, product ideas into specific functional implementation.

Question 5: In roughly read "Building of the law - modern software engineering" After this book, I learned a lot, with me in the past, group work program, the project team's experience point of view, I found more and more a excellent software project team to build and manage how complex, in society, every Internet business to at least have a software project team working on a software project that can really make a successful software project team to create a subversive super software, software project team behind the pay is more difficult to imagine. This brings me some doubts, if the idea of ​​the project is so important, it is a reality, the need for more students to spend more time to continue to pursue a higher level of technical theory it?

Before reading more rigid, anxious to make things easy, now I understand that perhaps learning "can not have both fish and bear's paw" is sometimes wrong. Theory is based on practice, not theory and technology of a higher level, it does not exist a truly subversive super software, there is not necessarily a natural and orderly development team behind the software engineering project management systems.

  • Whether or not a new problem:

    By the influence of this course this semester system analysis and design, I have a project to complete development process have a rough understanding and knowledge. But it makes me have more doubts and more interest for real business development,

  • After this semester, which were not previously mastered skills:

    Blog, team project development, pair programming, and so on.

  • to sum up:

    With the end of the course, which is also close to the end of the semester. In this project we have a team practice, from basic to complete the establishment of the subject, to carry out the project implementation and coding, to the current project, the project team members we work together - all together, hand in hand. Very happy as a team leader role in this project work, we project team Although only three people, at the beginning of the project, our technical direction is also not in this technical field, it is in the process of implementing the project we are experiencing difficulties and obstacles. But very happy, we finally finished it together. In the course of this course and projects carried out in collaboration between made me realize the most profound than the team, the members of the project group, before perhaps we are accustomed to this individual coding, but in the continuing effort of the team after practice I have come to understand the importance of teamwork in communication, in the two months, we own their own power alone is difficult to accomplish, so among project team members should be more communication, more exchanges, so as to make the project more smoothly pursued.

Members: segment Xiaogang
blog address: https://www.cnblogs.com/dxg123/
Student ID: 201731062317

The first issue raised in the private job:

To answer questions raised by his past:
: One problem
These are software programming; the thinking area P48 chapter 3.2 software engineer, the analysis paralysis; misplaced priorities, trying to solve all the dependency issues; how early optimization; premature generalization problems that may arise, but our new "software engineer" this how to handle it well?

A: Actually this problem, the best solution is to first make a good job requirements analysis, a clear understanding of the task is more important, and deploy again to complete the task; in fact, that you do several times major project tasks, gain experience, and you will naturally have a more clear understanding of the project tasks; and our team is we can discuss, and then divide the task in detail, this can increase efficiency.

Question two:
reading 4.5 pair programming, at P79 page read the contents of the above, the authors say, "all aspects of the pair programming, because there are at any time to review and exchange of quality in all aspects of the program will depend on one pair of programmers a higher level ", that is to say in the programming process by the high level programmers as a leader. Then the program initially to how we should be able to assign work to ensure that is has quality and quantity to complete programming tasks, but also allows two people are able to participate to the code programmed them to get exercise it?

A: This question, in the actual implementation of the project, does not the perfect solution, because two individuals pair programming, then, impossible assignments 2 people and task difficulty are exactly the same; there have been pair after programming experience, in my opinion, first of all we have to say that they are familiar with technical aspects and which side they like to do the task, and then based on 2 people capacity, preferences, specializing in surface to divide the tasks so that you can ensure that if the task is completed, but also exercise himself.

Question three:
speaking in Chapter 7 of the developers and testers will produce a contradictory emotions, such opposite emotions in a short time can stimulate the enthusiasm of the members, and then will long-term harmful. In reality, if the developers and testers had opposite emotions, how we should mediate? Both prick each other, are essentially helping companies looking for software projects and solve problems, then can we find a method that is able to stimulate enthusiasm for the work to enhance the staff, but also to eliminate the contradiction between it?

A: In fact, in this course, our group in addition to the staff itself is a developer, who is also the tester, so there have been no contradiction Actually, I'm like, into the regiment also more relaxed and harmonious; look at me examples of the above books, and online search watching something, which summarizes some of the methods. 1. humane management is one way to motivate staff; 2. Providing incentives; 3. Expand lot of meetings and groups to build the line.

Question four
in 11.5.5 Xiaoqiang hell (Bug Hell), it is considered so that more players to concentrate on repairing Bug Bug, not to develop new features. In order to avoid "Xiao Qiang" has become a monster, not simply to finish the work, whether small bug, then how better to trade-off between quality, schedule, cost it three?

A: The cost of project management, quality, time is a triangle, which must weigh the balance in its life cycle throughout the project. Under the premise of time and quality guaranteed, we think it should be at the lowest cost of inputs into the primary objective of project management. But the case can not be reached in time, probably in order to ensure quality, we only deploy more staff, a rush job, this may result in increased costs; or in the case of the permit, the appropriate lower quality requirements, may not increase Upon completion of the project cost. In short these three elements are very important in project management, it is important acknowledgment.

Question 5:
16.2 innovation opportunity, the Zou Yan teacher mentioned in the book is a golden point game, the contribution of the experience: the winner-take-all, mantis trying to stop the car, only the first step, emphasizing the success lies in the timing of a new technology, timing of the introduction too early, it may also be the times to drown, then the situation well how time? And how to help it in practice and innovation technologies in software engineering?

A: How to seize the opportunity this really is not clear, but I think first of all to have enough stock of knowledge to increase their knowledge, develop far-reaching vision, easy to find time to cut but also for their ability to rise, so as to seize the opportunity a soaring, I think if there is not enough of their own ability, even found an opportunity to do bad things could be. In fact, our student, in order to practice their technique, the best is a combination of things in life and those around you, because you are not in other areas too well, and our own technical school is not so strong, the beginning or from the little to do since, doing small projects or something, the old saying goes: '' way to go step by step, to a stuttering rice. "

Master new skills:

First, understand the test, the second is to know the needs of the project analysis and the third is to understand teamwork. Because once the work test each other, so go to understand and learn the knowledge test as well as use of relevant software testing; the other is when we do the project, a step by step plan to follow the progress of the beginning of the development to do, naturally slowly mastered it.

Experience:

By this time the implementation of the project team, I deeply feel important and teamwork, thanks to the team, without paying pay, I do not know where the patient carefully as I explained, this time not only understand some java and web performance testing, but also understand the importance of writing a good document, at the same time gain a workout and grow, improve learning ability, but also expand our thinking; our common goal cultivate team spirit. Topic started to get all our team members know how to start, through team members together to find information, and a meeting to discuss, we determined the design goals and the specific design implementation, including how to use Java's idea to detailed design of the real system in.

Questions:
Question one:
source control staff, with a reasonable staff, running each other details. Team members have problems and timely feedback.
Question two:
refer to similar items, for we are not familiar with the project appropriate to relax the time; if demand changes in the time to make the appropriate changes.
Question three:
the team atmosphere is very important, PM in time to be able to listen to your views and feedback, project design, appropriate analysis phase allows developers to participate.
Question 4:
development and testing carried out simultaneously rather than later developed during the test. Important features require full code audit, the other as the case may be.
Question 5:
I think it is not wrong. If not an expert, at least there are also considerable understanding of and proficiency in this area. Not too many things, the case every step of the difficult enthusiasm will soon be dispelled, an ordinary things usually do not, not to talk about the innovation.
New problem:
the document may be streamlined or without? Learning different directions, different learning progress, different points of interest, and even learn how languages are different courses with valid student team?
Learnings:

Through this semester, in particular through this course, I could be on GitHub more skilled operation, can carry out needs analysis before the start of the project carefully, preliminary designs demonstrate the use of ink knives and other prototyping tools in the design phase, promote each other through pair programming and improve programming efficiency with each other through mutual testing between molding project team have a basic understanding of the software testing process. The most important thing is skilled team development processes in a team project development process, improves team communication and cooperation skills. Through a semester I got greatly improved.

Learning Summary:
practice makes perfect, so human evolution, apparently to learn and master the skills as well. Just to see a lot of things can not grasp, only to strengthen the hands can really skilled, eventually mastered a skill; Inf, Qinnengbuzhuo, lazy must learn not matter; the direction is very important, harder than standing aimlessly stepping more frightening --- futile without exhausting income, which is the reason why some people say that selection is greater than the effort. A semester is over, but our career and life journey has just begun. I believe we harvest more full sail.

Team data retention
see Github ~ walk you →

Guess you like

Origin www.cnblogs.com/whisperwahh/p/12041229.html