Docstoc

Talk about agile development

Document Sample
Talk about agile development Powered By Docstoc
					Talk about agile development
Wang Agile experts. He engaged in mobile telecommunications network
monitoring system development and maintenance. The Internet,
telecommunications, electronics and railway sectors, in agile development
and project management, with many years of experience. 2006 will be
applied to the Scrum project management practices, is committed to the
industry in China to promote Agile software development philosophy and
methodology, believe in people-oriented, concerned about the agile,
focused on Scrum and XP.
Time just to, let the king make the teacher give you quick introduction,
and then leave more time for discussion.
Content explained
?
In fact, not a new term should be agile, and I believe we all know, but
initially it was wordy some theory
Agile is come for the waterfall model, you know, waterfall model, the
development is considered in accordance with the requirements analysis,
design, implementation, testing (confirmed), integration, and maintenance
firm and smooth manner.
Waterfall model of the core idea is to simplify the problem by process,
implementation and design of functional separation, to facilitate
division of labor, the use of structured analysis and design logical and
physical implementation to achieve separation. Into the software life
cycle planning, requirements analysis, software design, programming,
software testing and operation and maintenance of the six basic
activities, and provides for their top-down, the interface between the
fixed order, as waterfall, step by step whereabouts. But the problem is
caused by falls:
1, because the development model is linear, the user only until the end
of the process to see development efforts, thereby increasing the risk of
the development; 2. In the waterfall development model, the early
development of the error may have to wait until late in the testing phase
to found, then serious consequences. 3. All stages of the division
completely fixed, a large number of documents generated between stages,
greatly increased the workload;. . . . .
There are many not listed
The agile methods in the weeks or months of time to complete a relatively
small feature, the emphasis is as small as possible as soon as possible
can function available for delivery, and continuous improvement
throughout the project cycle and enhanced.
1, XP (Extreme Programming) the ideas from Kent Beck and Ward
Cunningham's cooperation in the software project experience. XP is the
core focus on communication, concise, feedback and courage. Because that
plan never catch up with changes, XP do not start early in the software
developers to make a lot of documentation. XP advocates test first, the
future appears to be to minimize the chance of bug.
2. SCRUM is an iterative incremental process for product development or
work management. It is a practice to pool the experience of various
development process framework. SCRUM importance in the release of
products above everything else.
Scrum was 10 years ago by Ken Schwaber and Dr. Jeff Sutherland co-
sponsored, and now this method has been used by many large and small
companies, including Yahoo!, Microsoft, Google, Lockheed Martin,
Motorola, SAP, Cisco, GE Medical, CapitalOne and US Federal Reserve. Many
use the Scrum team have made significant improvements, including better
efficiency in the production of individual and professional ethics was a
thorough reform.
3. Crystal Method Alistair Cockburn family from the late 20 actually made
90. The reason is a series, because he believed that different types of
projects require different approaches. Although the crystal series as the
output efficiency than XP, but there will be more people to accept and
follow it. Crystal Method There are many branches, including the orange
crystal, blue crystal. . . .
4. Adaptive software development ASD Jim Highsmith in 1999 by the formal.
ASD emphasize the development of methods of adaptation (Adaptive), this
idea comes from chaos theory of complex systems. ASD is not like other
methods of practice, as there are many specific practices, it is more for
an emphasis on the importance of the ASD provides the most fundamental
basis, the organization and from the higher management level Lai Kai Fa
method described why the Yao have adaptability.
5. DSDM Dynamic Systems Development Method This is the number of an agile
development methods, which advocates for business as the core, quickly
and efficiently in this system. In the UK, because of its software in
organizations of all sizes successful.
6. Lightweight RUP is developed from IBM, but even now at IBM itself,
there are a lot of debate, and have turned to SCRUM and XP, because the
process is more complex
7. Lean approach this matter from Toyota's lean production theory
developed, the lean model to promote continuous improvement, reduce
process waste.
In our practice, we focused more, using more of the previous two, that
is, Scrum and XP .... I think with these two methods are feasible,
application of them have more effect
?Scrum Agile principles are the main advocates:
? Keep it simple: Scrum itself is very simple and lightweight process, it
can simplify our development process.
? Accept the change: Scrum encourage work broken down into small pieces.
It is concerned that a short short time, but only in the middle of these
time periods, we can re-adjust the priority of work.
? Continued iteration: Scrum requires less than 30 days in a second
iteration of an application.
? Continuous feedback and improvement: the end of each iteration, Scrum
process requires us to review how it was before, and think about what we
can do next to improve the flow of different things.
? Collaboration: Scrum strongly encourage collaboration and communication
between team members. Without these, Scrum on the point are not used.
? Reduce waste: Scrum do to help us identify the customer or a team whose
only valuable thing.
These are consistent with the Agile Manifesto
Scrum in fact only define a development framework (Framework), specific
programming practice depends entirely on each team, and is based entirely
on the management of common sense, which is why we have to use XP's sake
Scrum process involves the following about the concept:
"Product Order" (product backlog): This is to build a product
you need to do all the things a high-level list, ranked according to
priority, so you can guarantee that you always work in the most important
tasks.
"Sprint Order" (sprint backlog): is the work of sprint task
list. A "sprint" order product orders from some of the highest-
priority tasks, and generate additional tasks, each task should have a
clear "to complete (Done)" definition.
Note that, here is an iterative sprint! !
"Sprint" (sprint): A sprint is a specific target for the
completion of the iterative, typically 2-4 weeks.
In addition, there is a role called "Product Leader" (Product
Owner): This person is responsible for maintaining product content and
priority order.
Scrum is really simple, general stress is a very lightweight process.
Simply, "Product Leader" is the first to build a product
"Order" (backlog), make a short-term "sprint"
(sprint) to plan, implement the plan, plan a day meeting to discuss
problems and progress in the planned demonstration after the completion
of the work results of this phase of work to do and then review,
reflection, and then repeat the above process.
Opening day will be a short, sprint check the status of progress of each
task, on the unfinished task, which requires the task given all the new
estimate of the remaining workload.
And then, after a final review meeting, to identify deficiencies,
continues to improve
There is another role in Scrum, Scrum Master ScrumMaster Scrum process to
promote his main task is to remove the sprint goals that affect the
delivery of the obstacles the team. ScrumMaster is not the team leader
(because they are self-organized), but the development team responsible
for shielding the interference of the outside world.
ScrumMaster is a rule enforcer.
"Daily stand up meeting" Every team member needs to answer
three questions:
????* Today you have completed that work?
????* What are you going to do tomorrow?
????* Completion of your goal What is the obstacle?
Note that the Scrum Master needs to take down these barriers, and is
responsible for helping to solve
Scrum on so many fundamental points. . . Very simple, not related to any
practice, so Nenggen other agile methods exist, but also co-exist with
other methodologies such as CMM
Next, consider XP, Extreme Programming. I believe that we should be very
familiar with, say a few words
Extreme Programming practice the core values of work are:
????* Communication
????* Simple
????* Feedback
????* Courage
????* Respect
XP practice good common are:
1 pair programming
2.. TDD Test Driven Development (Test-driven development)
3. Continuous Integration
4. Refactoring and simple design
5. Code of collective ownership and programming standards
6. Incremental and iterative development, small release
7. And the users (the presence of customers) continue to interact
XP also practice a more controversial is 8. 40-hour work week (40-hour
Week)
Ah, you say these bar
Time