Agile development does not exist at the beginning, agile development is one is to adapt to the rapid development of the Internet era, and the other is to solve the various problems encountered in the traditional software development process, what are the problems encountered in the traditional software development process? First, the dilemma of traditional software product research and development Demand change: demand change is a situation often encountered in software research and development. The traditional software research and development mode belongs to the waterfall flow, and the last stage is implemented after the delivery of the previous stage. The process is many, the cycle is long, and the change is more troublesome.
Quality management: traditional software development mode is to test after the completion of development, the time is relatively late, when the detection of large defects, may lead to the product can not be launched on time.
Employee’s feelings: If the above reasons lead to product launch delay and project staff working overtime, it will have a great impact on morale, and employees will not feel good.
Produce a large number of unused functions: traditional software development cycle is relatively long, the functions must be well thought out, think about all before, but some functions are not what users want, according to the 80-20 rule, 80% of people only use 20% of the functions, many functions spend a lot of research and development time but did not bring the corresponding value to users.
Market changes rapidly: market demand is diversified, personalized continues to rise, product innovation requirements continue to rise, traditional software development process is long, bureaucratic and slow change process, slow to reflect changes, it is difficult to adapt to the rapidly changing market.
Business pain point: One of the most frustrating aspects of the traditional development process for product people is when you finally meet a deadline to update the feature specification! However, at this time, the leader has readjust the business direction, at this time, you need to update the specification, the product manager will collapse, and the final product may not meet the market demand, at this time, it is better to quickly implement the function, and then take to the market verification.
Two, why to implement agile development horse racing enclosure:
With the end of demographic dividend, the Internet has changed from an incremental market to a stock market, and the competition with products under the business model is intensified. If the products are a little slower, the competitors will surpass them. Therefore, at the initial stage of entering the market, everyone strives to deliver products as soon as possible, in order to achieve the effect of racing around the land.
Validation requirements
WeChat did drop-down shoot video before such a function, but then after a user feedback and data analysis in the next release and removed, its response is fast, if WeChat team didn’t implement agile development, can’t do that fast response speed, in the latest internal xiao-long zhang speech: alert the KPI and process, this article, will speak to the agile development. Product guru Zhang Xiaolong describes agile development like this:
In fact, such a small team has done far more in the next few years than the efforts of dozens of people before. How does this small team work? This small team used a method called Agile project management. Some of you may not know the word very well, but Tencent encouraged the use of such a method at that time. I suggest that if you have not studied it carefully, you can do so. We really do a very agile way of moving the project forward.
We can come up with something different today, and then we can see it very quickly, because we can get it online very quickly, and then we can validate it, and if it’s wrong, we can take it offline, and if there’s room for improvement, we can change it next week. It’s a process of continuing to implement your ideas.
3. How can agile be implemented by handing it all over to CORNERSTONE
CORNERSTONE’s agile development tools provide a simple user interface and support for one-stop DevOps whole-process services, including code and requirements management, task management, iteration management, test management, defect management, continuous integration, automated testing and deployment, eliminating the need to switch any software and the headache of multiple systems. Assist the team to comprehensively improve collaboration efficiency and ensure product delivery quality. The following describes only some functions. For details, visit the CORNERSTONE official website.
First, demand management
Demand is the starting point of product research and development. After conducting market research and user demand research, product managers need to conduct demand analysis based on the research results, find out users’ pain points and design products that meet users’ needs.
CORNERSTONE helps product managers prioritize requirements, identify requirements flow and accountability, improve collaboration efficiency, and make requirements state clear.
Second, rapid iteration
Rapid iteration forces the team to continuously optimize the process and improve work efficiency. If the release cycle is too long, users’ needs will not be identified quickly enough to improve the product.
CORNERSTON uses an incremental iterative approach for agile development, setting goals and review plans for different releases, and synchronising statistics to day/week/month views, burn out charts and completion. The progress of iteration can be clearly traced, helping enterprises to iterate quickly in small steps.
Testing and defect management
In the process of software testing, the characteristics and reoccurrence steps of each software defect should be recorded so as to facilitate the analysis and reoccurrence of the software defect.
1. Test case writing
According to the mind map, test cases can be generated by one key or created separately, and classification and responsibility of use cases can be set in batches or individually.
2. Test plan
Embed all-in-one test solutions that enable one-click execution of use cases, through just-in-time plan completion, or one-click defect association.
3. Defect management
CORNERSTON has powerful defect management and statistics function, which records and tracks defects comprehensively through grouping, solution status, priority list, etc. At the same time, it defines the responsible person for defects and timely follow up and solve defects. In addition, the import and export functions are supported. The import format is not restricted by templates.
Continuous integration
For agile development, developers need to do as much as possible early integration, integration frequently, usually each added to some of the new code, it is best to do a integration, don’t come to the software release or deliver when genius began to integration, integration only once for a long time, so the problems in the code can be found as early as possible, keep the state of the software has been available.
CORNERSTON supports the deployment of continuous integration and other results to the corresponding test environment. All deployed versions are readily accessible in the test environment, and grayscale publishing to the production environment is supported.
Automated testing and deployment
The CORNERSTON technology automates the time-consuming tasks of integration, testing, and deployment. Compilation and testing can be time-consuming for a large software development team, so the technology leaves all the time-consuming manual work to CORNERSTON and waits for the results.
CORNERSTONE supports DevOps based on script pipeline, sustainable integration and automated deployment, which can be operated directly on a visual server. It also meets the needs of multiple development languages, completely solving the bottleneck of agile development in operation and maintenance, and facilitating the overall management of project development life cycle by developers.