What kind of tests does the Scrum methodology use

Applicability of agile methods in software development - Scrum as a reference

SILVA, Francisco Eronildo da [1]

PINTO, Aurílio Guimarães [2]

FREITAS, Caio Guimarães [3]

ALMEIDA, Cristiany Caliri de [4]

RIBEIRO, Dallas dos Santos [5]

LEITE, Francisco Canindé da Silva [6]

OLIVIERA, Geveson de Souza [7]

MORAIS, Gilvanete Melo de [8]

PERES, Paulo Júnior de Jesus [9]

SILVA, Francisco Eronildo there; et.al. Applicability of agile methods in software development - Scrum as a reference. Multidisciplinary core specialist journal of knowledge. 07 edition. 02 year, Vol. 03. PP-05-16 October 2017. ISSN: 0959-2448

Summary

The aim of this study is to analyze the speed that agile methods give the process of software development, shows how companies use these methods as a reference of the SCRUM methodology as a way to reduce time and effort in software development. Agile methodology the premise on which the results should be achieved quickly without compromising the quality of the end product (software), also belongs accordingly to the SCRUM a methodology that aims to break the planning of software projects whose premise is you that Product in smaller pieces and so you deliver functionality without client waiting too long to view it. Among the authors of the constitution of this work sought highlights conceptual Aragon Fernandes (2014), Somerville (2007), Roger Pressman (2011), Kim Pries (2010) and Ken Schwaber (2014). Tuesdaye importantThe ten conclusions are that the use of agile methods give rapid software development, show more efficiency, dynamism and offers advantages for companies that own the methodology these facts shown in this work.

Keywords: Agile, Scrum, control, software engineering.

1. Introduction

The agile started to emphasize the 80. The website DEVMEDIA says: "agile methodology has been around for the 80 years but some information goes through bias that made it difficult to use methods in the beginning. Therefore developers have come to understand agile methodology as something that means, we can develop no standard without documentation, and carelessly. This does not apply, the agile methods can bring project success, and are used in the industry. " This work shows that the renowned authors-based agile kill the organization and take the care that the software project must be efficient and effective, and every day you get the software development-is used in the industry market, and government agencies that are outsourced Developing factories to rent their systems.

This study restrictt show agile advantages of software development. As an example you have the modus operandi of CTIS, software company that operates in the domestic market and adopting the common software development methodology, but that depends on the client's decision for the agile methodology.

The superintendent of the Manaus Free Trade Zone-SUFRAMA, who with their charms, hired the service of the CTIS and decided to move according to agile methods.

SUFRAMA is a federal agency responsible for managing tax incentives. Most of their systems are critical and work with limitations, so the software provides factory customer service with agile methods. The possibility for agile methods in reason, fast delivery and quality because the traditional engessava the process methodology.

The agile method dispenses with a pile of paper, concentrates on the quality of the product, because what matters for the customer is the software works properly.

If this does not go into the details of the methodology change from SUFRAMA, and yes, show that different industries and agencies are opting for their software development model changeover to Agile methodology.

Despite being an option for software development, possibly agile methodology, offers various advantages for development certainly not suitable for all projects. To better understand the subject, you should check out something about the history of agile development.

Theres general aiml this work is to do a systematic review of the agile methodology. The SCRUM method becomes the object of this study where it will be listed the negative and positive.

This research is through the NJustified the need that the software industry has to perform deliveries of products with the least possible time for its customers, without losing sight of the quality, economy and satisfaction.

D.ie Methodik of the study is the descriptive and explanatory research, as a collection of bibliographical data.

2. Development

This study begins by reviewing the concept of software that was originally proposed, in 1968, at a conference organized to discuss what was then called the "software crisis". The software crisis indirectly led to the introduction of new computer hardware based on integrated circuits. The use of integrated circuits from computer applications made, as impractical, workable proposals. The resulting software was larger and more complex than previous system software (SOMMERVILLE, 2007).

Software engineering is a branch of technology that focuses on developing high quality software systems within reasonable costs. Software engineering is a multi-layered technology with tools, methods, processes and quality orientation. (SOMERVILLE, 2007). Any technical approach (including software) must be grounded in an organizational commitment to quality.

Total quality management six Sigma1 (GYGI; DECARLO; WILLIAMS, 2008) and similar philosophies they promote a culture of continuous improvement processes, and it is this culture that ultimately leads to the development of increasingly effective approaches in software development. The cornerstone that supports software engineering is the focus on quality (PRESSMAN, 2011).

Regarding the history of agile development the same thing began in 2001 with the "Manifesto for Agile Software Development" by Kent Beck, American software engineer, creator of Extreme Programming and test-driveen, signednet and sixteen better known developers. Details on this fact can be checked at the address https://www.agilealliance.org/agile101/the-agile-manifesto/.

The manifest emphasizes individuals and interactions through processes and tools; The software runs more than a complete documentation, working with the customer instead of negotiating contracts and changing responses in the course of the following plan.

This does not include the meaning of the documentation or take-away processes, and in no way relates to the ineffectiveness of the tools, but does mean that the delivery of the software is valued more than Pressman can explain:

"The agile software development combines philosophy with a number of development principles. The philosophy advocates the satisfaction of our customers and the delivery of the previous incremental; small project teams and highly motivated; informal procedures; minimal software engineering artifacts and above all." Simplicity in Overall Development The principles of development prioritize delivery over analysis and design (although these activities are not deterred); also prioritize active and continuous communication between developers and customers ". (Pressman, 2011)

A project involves people and changes, especially when it comes to deliveries. In this way, the agile methods involved work with highly motivated teams because they are directly connected to the process every part of it, feeling responsible for the success of the work and knowing that you have the opportunity to support the changes during the process whole process of development.

Agile development, you cannot create a plan complete with everything we should carry out in order to then start developing without contacting the customer instead, developed incrementally, i.e. the product is delivered incrementally and consistently in this way necessary changes requested by the client or at any time during the development of project members, seen does not lead to full damage and the change can be carried out without major damage, because the project is under development and has not yet been completed.

The system's first steps can offer a high priority feature so that customers can get on with your system development soon. Customers can see the requirements in practice and give changes to be included in later versions of the system.

In this way the client can make use of system resources faster. What would take months to be delivered in weeks and can check for bugs and make new changes or improvements, not needing to get to the end of development to see the problems.

This method also provides a better understanding of the system to the team as it understands the business to develop so that it can, with greater speed and accuracy, and in the event of errors, the team loses less time analyzing and fixing the error fast.

According to Aguinaldo Aragon Fernandes (2014), the Scrum was initially designed with a sharp focus on the provision of software development projects in a complex environment. However, it has been increasingly applied in product development projects by other natures ".

Aragon is also called:

"The Scrum consists of iterative and incremental procedures for the management of complex projects, the aim of which is to ensure faster delivery and compliance with customer requirements, to maximize cooperation between team members and the productivity of individual participants. Is one of the methods of so-called" agile " more common in the It market (Aragon Fernandes 2014).

Agile methods can be used in the resolution of complex problems, such as: B. Software development Schwaber informs:

"Complex project situations arise when the complexity of the mid-level activities does not allow a defined process to be controlled, you can produce a loop of products in acceptable levels of quality. The complexity of a project is directly proportional to the complexity of the customer requirements and the technology involved, ale To be largely dependent on the characteristics of each team member, taking into account the variety of skills, knowledge, attitudes etc. that can be found in a group of people ". Schwaber (2004)

In situations like this, Schwaber recommends an empirical process operating concept that uses mechanisms such as self-organization and urgency, with the following pillars:

"Visibility: all aspects that should be visible in influencing the desired results for control processes.

Inspection: the various aspects of the process should go through regular checks to identify unacceptable deviations.

Adaptation: the process or the intermediate products must be adapted after inspection, future deviations more severe, case to minimize, properties and results are outside the permissible limit values ​​and endanger the acceptance of the end product. Schwaber (2004)

The Scrum is divided into a number of practices, which are led by teams in certain roles, organized in a stream of activities or fixed duration in any case completely controlled with artifacts and clearly defined rules, which should receive usable products at short intervals.

Each Scrum process is based on a "skeleton" of successive iterations of development activities, represented (each an increase in the product), checked and adjusted by its own employees daily and oriented towards a list of the original requirements.

At the beginning of each iteration, the team reviews what should happen and determines what useful functionality will be delivered at the end of the iteration. The team is free to use their best efforts in the rest of the iteration and in the end the finished product is built.

The following figure shows the flow of Scrum:

On a Scrum project, the responsibilities are divided between three roles:

ProductOwners: The person responsible for managing the Product Backlog (to ensure that it is visible to all), generating and disseminating the project requirements as well as the plan for successive deliveries, prioritizing the results that brings greater added value to the project.

Scrum Master: responsible for implementing the Scrum method, also teaching how to involve everyone in projects and ensuring that everyone follows the rules and practices.

Scrum team: Development group jointly responsible for the success of each iteration and the project as a whole must be composed of multi-disciplinary people capable of self-organization and self-management.

The process advocated by Scrum includes the following elements as outlined below:

D.ie Vision: Must be prepared by ProductOwners, including releases and product delivery milestones to plan each sprint to maximize the return on investment of the product development project.

Der residue of the products: also produced by ProductOwners, contains a list of functional and non-functional requirements, prioritized and divided into publications (sprints).

D.he sprint planning meeting: that Project is divided into sprints and takes thirty calendar days to be carried out one after the other without interruption. Planning takes place in one session with the participation of the Scrum team and ProductOwners, in two periods of 4 hours each:

In the first lesson, the scope ("what") of Sprint is addressed by selecting the backlog of product requirements that are placed on the Sprint Backlog.

In 4 hours too late, the current planning of the tasks to be carried out in the sprint ("how") and the official start of the sprint, at which time the 30-day period begins.

S.print: the in-house product development iteration, which has a fixed term. A sprint includes planning sessions, review, and retrospectives.

D.as Daily Scrat: every day of 15 minutes, where each team member answers the following questions:

  • What have I done on the project since the last Daily Scrum?
  • What do I plan to do before the next Daily Scrum?
  • Is there a limitation or handicap that I can honor my commitment to the current sprint and / or project?

In addition, the team synchronizes all activities and program meetings necessary for the continuation of the project.

A little more parties views detailing so far.

Sprint review meeting: in 4 hours the Scrum Team provides the Product Owners (and other stakeholders) with the work achieved in the Sprint and determines among them what to do in the next Sprint.

Meet the Sprint Retrospective: In 3 hours, the Scrum Master encourages team members to review the Scrum development process of their birth practices and Scrum process model to make it more effective and worthwhile for the next Sprint.

According to Schwaber (2004), the sprint planning sessions, daily scrum, review and retrospective of the sprint, together, are the empirical review practices and adaptation of the scrum.

There are two categories of artifacts related to the Scrum: the backlog tables and graphs that show work that is still missing to the end (named BurndownCharts).

The backlogs are tables: Product Backlog consists of a "live" document developed and maintained by ProductWoner, which by definition is never full (since there are always improvements to be implemented in a product until it is finally removed from circulation). Contains a list of all changes that will be made in the product for future versions (features, functions, technologies, adaptations, extensions, updates, etc.). Such requirements are sorted by priority and detailed in terms of the description attributes, complex factors / adjustments and estimates (the effort and term) along the future sprints.

The Sprint Backlog: defines the tasks that the Scrum Team must perform, create Product Increments (from the Product Backlog) during the execution of a Sprint. Your data should be enough for you to attend the Scrum Dario meetings, to be accompanied in tasks that last between four and 16 hours.

Each task should be documented, at least in terms of your responsibilities, status (not started, in progress, completed) and the number of hours of work remaining each day of the sprint.

The BurndownCharts graphically show the amount of total work (other efforts) over time, reflecting your correlation with the progress of the project teams in reducing their work.Can be used as part of the Product Backlog (including all Sprints) or within each Sprint (Sprint Burndow).

Scrum, as already mentioned, was originally designed for use in software projects in complex environments, i.e. where the requirements change with some regularity, which can have your room for maneuver or your work breakdown structure or PSP EAP project is organized and is divided into packages of incremental, Consistent and usable artifacts, successive periods of 15 to 30 days each, are delivered to the customer.

First of all, this concept is perfect for a project or program whose goal is the development of products or services of a different kind, or even that includes initiatives for improvement through the use of methods with Six Sigma, Lean, etc. In short, Scrum is a recommended course of action that has shown strong applicability to projects that require the combination of skills and knowledge focused around a team and that require collaborative effort.

Second Pries & Quigley (2010) There are ways that Scrum can be used in different types of programs and complex projects, such as: B. adapt:

Combined with traditional methods of project managementments: Concepts and artifacts, such as WBS (work breakdown structure) and product backlog, worthy value analysis, the BurndowsCharts and communication plan, control of the meetings can combine sprints (planning, daily, review, retrospectives) etc.

Management of complex programs: Introduction of Scrum, Scrum, where the backlog of the product can be broken down into sub-backlogs, each to be consumed by their respective Scrum team.

Competence in functional areas serves various projects (e.g. teams of tests or quality assurance): in the Product Baclog in various designs and tasks in the backlog in a locker those tasks that can come within thirty days.

Combined with the technology in the form of "Cascade": You can divide the schedule into fixed duration model, for example, to synchronize a sequence of sprints with a milestone (milestone) provided in the project, as well as had the verification and validation activities of the form development in each sprint.

Combined with the Six Sigma approach: you can handle each of the phases of the DMAIC method (Define, Measure, Analyze, Improve, Control) in a sprint running one after the other.

Schwaber (2004) mentions the possibility of using the Scrum in a context of price and duration. In these cases, the backlog of the product can be used not only to show customers that the requirements were understood, but also the priority of each value generation was understood. The main requirements can be reliably selected in functionality for the first few sprints and the steps each follow-up meeting.

It is important to emphasize that the adoption of Scrum should be done carefully for an organization, there are many challenges to face.

We combine the points that, if not successful, can jeopardize the effectiveness of the Scrum methodology:

It is important to have a well-functioning team, working group, as the success of the work depends on intense effort on the skills that each has as a differential;

It is important that every member of the Scrum has a strong sense of self-management.

Make sure that only one project is assigned to team members.

You need to ensure the commitment of everyone involved (especially those who represent the client).

You need to make sure that the backlogs are well documented so there is no misunderstanding between those involved.

There may be some difficulty in "atomizing" the tasks in each line the backlog is placed, as well as the dependencies between them, which can affect the planning and establish the good progress in the implementation of the sprints.

You need to ensure that all sessions (planning, daily, review, retrospective) of the sprints are conducted out and that the fixed times are effectively met, at the risk of damaging the sense of discipline that is critical to the success of the method.

Conclusion

Before looking at the offers from various authors is notorious for agility and speed that agile methods, in particular the SCRUM chosen to illustrate the other companies in this thesis, give companies that hire software factories.

Among the advantages we can highlight: the greater flexibility in control and management of ongoing work, emphasis on teamwork and focus on quick results, shared responsibility with the group causes a greater sense of obligation, faster deliveries and efficiency, emphasizing feedback, Increase communication and customer satisfaction by reducing software delivery times without reducing quality and increasing the company's bottom line.

credentials

FERNANDES, A. A.; A.BREU, V.F .: Providing Governance, 4th ed., São Paulo, SP: Brasport Books and Multimedia Publishing Company Ltd., 2014.

PRESSMAN, r. 2011 Software Engineering A professional approach. Translation: Ariovaldo Griesi, Mario Moro Fecchio. 7th edition-São Paulo, SP: MGH Editora Ltda, 2011.

PRIES, Kim H., QUIGLEI, Jon M. Scrum project management. CRC Press, 2010

SUMMER VILLE, i. Software engineering. 8th Ed. Sao Paulo, Pearson Addison Wesley, 2007.

SCHWABER, Ken. Agile Project Management with Scrum. Microsoft Press, 2014.

The agile manifesto. Available at: . Retrieved October 21, 2016.

Manifesto for agile software development. Available at: . Retrieved October 21, 2016.

An overview of agile methodology. Available at: . Retrieved October 21, 2016.

[1] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.

[2] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.

[3] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.

[4] Degree in Business Administration, acts as an officer on SUFRAMA, as an administrator.

[5] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.

[6] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.

[7] Degree in Computer Science, acts as Server SUFRAMA, as Administrative Analyst-You.

[8] Studied economics, acts as a civil servant on SUFRAMA, as an economist.

[9] Degree in Computer Science, it acts as a public server on SUFRAMA, as an Administrative Analyst-You.