2017 2 nd International Conference on Computer Science and Technology (CST 2017) ISBN: 978-1-60595-461-5 The Application of Agile Management in Software Project Zheng HAN a* and Zhong YAO School of Economics and Management, Beihang University, Beijing, 100091, China a blankhan66@163. com *Corresponding author Keywords: Agile management, Scrum, Map product. Abstract. Various requirements are being continuously put forward with the development of the Internet. Basic services have been unable to meet the needs of users, and personalized services are what users really need. When the requirements are various and especial, we cannot still follow the traditional methods, we must keep up updating to accommodate the changes. Agile Management will be more suitable for the development of such projects, it can solve the problem that is traditional software development process cannot be solved, and it can service for Internet users better and more suitable for the characteristics of Internet. In this article, I will introduce the application of Agile Management through a map product project on the internet. Introduction Over the last few decades, software has significantly affected embedded system functionality and innovation in a wide variety of domains, from telecommunications to medical devices and from vehicles to aircraft systems. Many products containing embedded software have been developed for use in several fields, bringing value to society [1]. Following this trend, the map product is going through a fundamental change by moving from a traditional publishing product to a rising software industry. However, the traditional management is not able to meet the demand of the development. Apart from the importance of project management in general, differentiation in size, uniqueness and complexity of projects put emphasis on the necessity of tailored management methods. Increasingly it is argued that nowadays a pure project management approach (the traditional project management approach) is no longer effective [2]. Based on above mentioned findings, the thought of the modern agile management is raised. And it can help coping with complexity problems in Internet. This paper will research on the application of Agile Management with Scrum. The Agile Management At the beginning of 2001, 17 experts gathered to summarize the value and principle that enabled the software development team to work and respond quickly. They call it Agile Union. Then, they created a statement of Agile Union at the following months [3]. Agile software development has been defined as a way of producing software that complies with the following rules. People and interaction over processes and tools; Working software over comprehensive documentation; Customer collaboration over formal arrangements; Responding to change over following of the plan; 187
That is, while there is a lot of value in the items on the right, we value the items on the left more [4]. The Value of Agile Management for Internet Product The waterfall model is a well-known, traditional and classic standardized software process model with clear and rigorous software cycle phase, precise linear sequence of different phases, perfect contents of different phases and complete documents [5]. The process of the development in Waterfall Model is convergence from top to bottom with the order, and it seems like the waterfall in general. So it is called Waterfall Model. The Waterfall Model was proposed by Winston Royce in 1970, and it followed the planning, analysis, coding, testing, and maintenance steps strictly. The software cycle is divided into three phases and six steps in the traditional waterfall model, shown as in Fig. 1. It is obvious that the main controller is the core in software development. Macro adjustment and control and information grasping of one powerful main controller on different phases and steps in software development plays a decisive role in the quality guarantee of the whole software product [6]. The demand analysis step is located at the upstream top of the waterfall model on the demand phase. The demand analysis is closely associated with the users, software experts, information translator between users and software experts, product test and feedback information processor [7]. Figure 1. Schematic diagram of waterfall model. The framework of Waterfall Model is difficult to change once it is determined, so it is hardly adaptable for customer requirements. In addition, the software development process requires little communication between the staff, and the preparation of the code or test is only by the document in each stage [8]. But Agile Management is not the same as Waterfall Model, and it doesn t require to determine the framework at the beginning, and it reduces dependence of the document in the process, and it has more emphasis on communication between the development team and the requirements of users, and it improves the product by the way of short-cycle and fast iteration. 188
Figure 2. Scrum Process. The Mainstream approaches of Agile Management in the market are Scrum, Extreme Programming, Lean Software Development and DSDM. The Scrum is one of the most widely methods using Agile Management currently. It includes three main roles, Sprint mode and four meetings, shown as in Fig. 2. The main roles in Scrum: Scrum Masters: He or she is the leader of Scrum team, and ensures the team has a good operation, and helps the team to clean the obstacles of implementation; Product Masters: He or she determines the direction and vision of the product, and defines the contents of the product, and determines the priority and delivery time for product, and is responsible for the ROI of product; Scrum Team: It is a cross-functional small team, and the team composes of 5 to 9 people, and the team has the skills to develop available software. The Sprint mode is that the Scrum team creates an incremental version of the software in each Sprint of stage. And the functions of each incremental version come from the list of requirements. And the list of requirements is determined by Product Masters through priority of requirements. Next, the Product Masters will share the list of requirements to the Scrum team and tell the requirements of product need to be completed in the Sprint planning meeting. And the Scrum team will discuss and decide how many requirements in the list can be completed in the Sprint. And then, there is no one can change the list of requirements which is decided in the Sprint process, which means that the requirements are frozen in a Sprint of stage. When the Sprint is over, the Product Master will organize the Sprint review meeting for acceptance of requirements. And the Scrum Master will hold the Sprint retrospect meeting to improve next Sprint. Scrum is established through four meetings: The Sprint planning meeting determines goals and plans for the Sprint; The daily stand up meeting checks the progress of the Sprint goals and makes adjustments to optimize the work; The Sprint review meeting check the progress of the release goals and make adjustments to optimize the work for the next Sprint; The Sprint retrospect meeting is used to review the Sprint that which requirements have been completed, what improvements may be made more efficient, more satisfying and happier for the next Sprint [9]. From the above two models, we can found that the Agile Management is a short cycle of incremental Sprint, so that it is low-cost of enterprises, and it is easy to adjust, and it has high efficiency and is more suitable for the Internet product model. This is the value of using Agile Management for Internet product. 189
The Application of Agile Management Project Background With the rapid development of Internet technology and idea, a lot of conventional and stable model of product has been replaced, so the traditional map product has. Nowadays, a large number of map products appear, such as Baidu map, Sogou map, Tencent map, Amap, etc. These maps are unlike traditional paper map, not only do they mark on a single location and guide the route, but also, they provide related content and services of location to enable users to get more information and enjoy more services through Internet map. However, the construction of Internet map will need a variety of information and services to support users in this new direction, at the same time, it will result in slower performance of the map page, that means loading more and more slowly. Finally, it will greatly affect the users experience. In this context, we will set up a project team to optimize the performance for map page, and the project name is "speed". We will try to improve the page to show in a short time, and make users have a great feeling in a map world. Analysis of Project Project of performance optimization generally faces the adjustment of technical framework, and the "speed" is no exception. These problems are list one by one. (1) Less time and heavy task about speed ; (2) Technical framework needs rebuilding; (3) Multi-team cooperation; (4) High quality for speed ; According to the "speed" features, the project team decides to use Scrum of Agile Management to guide the team management and development process. Project Team speed will use the advantage of small groups, such as easy communication, clear division, low cost and high efficiency, to promote project success and operation. Finally, the team has total 8 people, the Table 1 will show their position and department. Table 1. Team Members. Department Position Owner Product Department Product manager Zhang Li Project Management Department Project manager Zheng Han R & D department RD engineer Lei Yu R & D department of Server Server engineer Fu-li Meng Testing department Testing engineer Fang Niu Data Department Data engineer Xi-xi Ma Project Member Task Scrum is divided into three roles, and each role has his own position for assigning task and responsible for the result in his area [10]. In the "speed", we also follow the principle to assign task. The Table 2 will show task assigned to each members. 190
Scrum role Product Master Scrum Master Scrum Team Owner Zhang Li Zheng Han Lei Yu Fu-li Meng Fang Niu Table 2. Project Member Task. Task (1)Responsible for the positioning and direction of product; (2)To determine on-line time; (3)Responsible for acceptance of product effects; (1)Responsible for controlling the overall process of the project; (2)To coordinate the human and material resources ; (3)To ensure the project progressed smoothly; (4)To organize meetings (1)To analyze technical feasibility, output planning; (2)Responsible for technology implementation and acceptance; (1)To analyze technical feasibility, output planning in Server; (2)Responsible for technology implementation and acceptance in Server; (1)To analyze requirements, output test cases and test planning for all; (2)Responsible for project testing and acceptance; (3)To output result report of project; Xi-xi Ma (1)Responsible for Improve performance in the basic data; In addition, the project also requires team members to do the following. (1)Be a good partner. Because team's success doesn t depend on someone's success, it must rely on every member working hard and solving the problem together; (2)Keep daily work discipline. These daily work can ensure normal operation for the basic work of the project, so each member should do better for their responsibility. (3)Plan and track your work. The Scrum requires team to manage the project systematically, which includes the user story, iterative planning and tracking[11]; Product Planning When the project is determined, the Product Master will provide the product planning according to the project target, including the list of requirements, the priority of requirements and the expected release time. The Table 3 will show it. And the Scrum Master will organize Scrum Team to attend the Sprint planning meeting. Table 3. Product Planning. Position Work Priority Expected time To increase monitor and configure reports P0 1 period RD To optimize initialization js time P0 1 period According to the monitoring report for optimization P0 2 period To use compressed image service interface P1 1 period Server To increase monitor for response time P0 1 period According to the monitoring report for optimization P2 2 period Data To optimize the basic data P1 1 period Output performance test data and case P1 1 period Test Acceptance of optimization for 1 period P0 1 period The final review of the project P0 2 period Remarks: Period is 30 days; priority is P0>P1>P2; Project Schedule After the product scheme is determined, the Scrum Master will build the project schedule, organize the meeting and set Scrum Team to start the project building according to the schedule. The project schedule is showed in Fig. 3. 191
Figure 3. Project Schedule. Development and Testing In order to ensure that project progress is controlled globally, the Scrum Master uses the Burnout Chart to assist the project. While the data lines decremented day by day, we compared the actual hours and the initial baseline of the project. The Burnout Chart is showed in Fig. 4. Figure 4. Burnout Chart. Acceptance and Review Before product is released, the Product Master organizes the Sprint review meeting for acceptance of requirements during the Sprint, verifies whether the product meet the expected target, and evaluates whether the performance of product meet the release standard. If a requirement does not pass the test, it will be moved to the next Sprint. The Scrum Master will hold the Sprint retrospect meeting, and the Scrum team and the relevant leaders or colleagues will be invited to communicate the experience of the development. At last, the Scrum Master announces to continue a new Sprint according to the project planning until the entire project is completed. Conclusion and Outlook In this article, we introduced the details of the Scrum method in the practical application of software projects through an example of the "speed" project. And we described the core concept of Agile Management, features of Agile Management and difference between Agile Management and traditional management. The conclusion is that Agile Management is more suitable for application of project which is required to be updated rapidly for the market and changed frequently in requirements. The "speed" project has achieved good results by the Agile Management, it not only achieves 50% of the performance improvement target in a short period of time, but also becomes a good example for reference and recognition by other teams. We cannot say that the traditional management method is outdated, but a flexible and convenient method of management is required more in the days of efficiency, simplify and speed. We hope that more people will know and put the Agile Management into a good use to service project. 192
References [1] P. Liggesmeyer, M. Trapp, Trends in embedded software engineering, Software, IEEE 26(3) (2009)19-25. [2] Hertogh, M. & Westerveld, E. (2010). Playing with Complexity. Management and organisation of large infrastructural projects: AT Osborne/Transumo. [3] San-yuan Zhu, Le-qiu Qian, Wei-min Su. Introduction to Software Engineering Technology, Beijing Science Press, 2001. [4] Manifesto for agile software development. Retrieved 04/24, 2014, Information on http://agilemanifesto. org/ [5] M. Gregor, D. A. Sykes. Object-oriented Software Development: Engineering Software for Reuse, Van Nostrand Reinhold Co. New York, 1992. [6] N. Zhang, W. Wang, H. Xia. College Office Management System Modeling and Design Based on UML B/S Architecture, PC Development. 13(12) (2003) 17-19. [7] L. Zhang, H. Xia. College Administration Management Information Based on UML, Journal of Wuhan University of Technology. 32(12) (2009) 139-142. [8] Xin Zou. The method of building: Modern Software Engineering (second edition), The People's Posts and Telecommunications Press, 2015. [9] Yu-xi Wang. Talk about agile software development, 2014. [10] Jia-rui Sun. Summary of Agile Development Methods, 2015. [11] Huai-zhang Li, Qing Wang. Research on Software Quality Management System Based on ISO9000 and CMM, Journal of Software, 2001. 193