Yuxi Pacific GroupAGILE Software Development Presentation The SCRUM method
Overview1 • Introduction to the SCRUM method2 • Roles3 • Meetings4 • Scrum Phases and Activities5 • Synoptic Tab
Scrum Methodology IntroductionScrum is a very simple AGILE software development method based on continues adaptation to circumstances to the project’s evolution
Scrum Model It´s a more Orientated towardsADAPTABLE than PEOPLE more than PREDICTIVE PROCESSES method It is an ITERATIVE Based on the and INCREMENTALAGILE development method for structure managing software projects
Scrum in the incremental Development It works under uncertain environments and unstable requirements. It does not predict what will be the final product on the initial stage With SCRUM the design and architecture development is generated in an incremental way throughout the project clubdesarrolladores .com
Overview of the projectObjetive: Understand the vision of the project. Specify and detail each one of the features identified so far. Identify requirements with higher development priority and which can be carried out over a period of time(approx. 2 to 4 weeks).Important: Each of these periods of development is an interaction that endswith the production of an increase in operating the product.
Process elements Ticket Backlog: the list of tickets or blocks of milestones originated based on the product’s overview and that will grow and evolve during the development Sprint or Milestone: List of activities to be performed by the team during the Sprint or Milestone to generate the projected increase. Delivery: Result of each Sprint or Milestone.
Ticket Backlog Represents the client’s vision regarding the project’s objectives and deliverables. Contains the prioritized list objectives and requirements of the client. The client is responsible for creating and managing the requirements with help of the Project Manager.
Sprint Basic development cycle of the SCRUM which is equivalent to one Iteration or Milestone; during which the team works to transform a Ticket Backlog requirement into a project increase. At the end of each Sprint, the team must present progress with functional features for the client.
AGILE management practices AGILE works with self-organization and collaboration
Self-organizationDuring a project’s development there are many unpredictable factors arisingfrom all areas and levels. Predictive management entrusts its resolution to theProject manager.In Scrum teams are self-organized (not self-directed), with sufficient decisionmargin to take the decisions they deem appropriateCollaborationAGILE practices and working environment facilitates team’s collaboration.This is necessary, because in order to operate Self-organization as aneffective control strategy, each member of the team must collaborate openlywith the rest, according to their abilities and not to their role or theirposition.
ROLESEveryone involve in the project must play a ROLE
Product Owner Who’s interest in receiving the project’s delivery. Ensures that the SCRUM team works properly from the business perspective. The Product Owner writes user stories, prioritizes and place them in the Ticket Backlog in collaboration with the Project Manager. Client Scrum Master (or Facilitator) Remove obstacles that prevent the team to reach the Sprint goals. Ensures that the SCRUM process is perform properly. SCRUM master make sure the rules are followed. Project Manager o Project Leader
Development team Stakeholders Is responsible for the product Refers to the people who make the delivery. project possible and for whom itt It is typically composed of a team of 3 will produce the benefit that to 9 people with the necessary skills justifies its production. to develop the product (analysis, design, development, testing, documentation, etc.). Involved and committed to the project: Ex: team development, client, etc…. Project leader , Architect, Developers and QA
PROCESS MEETINGSIncludes the vision, planning milestone, daily scrum, revision and closure meeting
View meeting: Presentation of the proposal or technological solution for the client. The requirements are established The user stories are designed Planning Milestone Meeting : Working day prior to the start of each Milestone that determines what will be the work and the objectives that must be met in that iteration.
Daily Scrum Meeting: Brief review of the teams work to date and planning for the next day.Sprint Review: Analysis and review of the generated increase.Closing Meeting: Analysis of continuous improvement to release the project.
PHASES AND ACTIVITIES SCRUM
VIEW PHASEThe objective is to develop the project proposal and backlog
Vision meetingObjetive:Understand the needs of the client and of theproject.This meeting starts the process of establishingrequirements in order to start designing theUser Stories.Who is attending?The CEO and/or Project Manager, with client.Deliverables• The project proposal delivered by the CEO• Ticket backlog delivered by the Project Manager.
Backlog Product Highly important document high for the entire project. It represents what the client expects from the project regarding objectives, requirements and deliveries. The client is responsible for creating and managing the list of requirements, in collaboration with of the Project Manager and/or the Scrum team. It contains the the User Stories designed by the client. The list of requirements may evolve during the project’s development, and new requirements may be included.
It reflects all the deliveries or Sprints, that the client expects to receive as the product is developed. Includes risks and obstacles and actions to solve them. It roughly estimates the cost of development. This document helps the Product owner to know the priorities of the different objectives in order to define which tickets goes within a Sprint or Milestone. All designs related to the project such as use cases, architectural design, UML designs, etc are registered.
Set Up Product Backlog in UnfuddleObjetive : Create all the tickets in Unfuddle that make part of the project (Ticket Backlog). Load the proposal in the Unfuddle Notebook Tab including the designs applied so far and the User Stories established by the customer.Note: The product Backlog is represented in • Document with the proposal including its elements (User stories, designs, etc.) • Creation of tickets in Unfuddle, Meaning: Ticket Backlog.Responsible:Project Manager
Create the repository in UnfuddleObjetive:Create the structure of folders in Unfuddle, specifically in the Tab Notebooks. Design Documentation Design of use cases Project proposal Architectural Design Project delivery letter System Files(CSS, templates, etc) Lessons learnedNote: This structure is adaptable to projects.
Unfuddle RepositoryResponsible for creating the repository:Project ManagerResponsible for maintaining the repository:QA, Project leader, Project Manager in collaboration with those whoconform the team.
PLANNING PHASEUnderstanding requirements and designing use cases
Understanding RequirementsObjetive:QAs with the support of the Project Leader clears all doubts of each of therequirements that are part of the Sprint.QA provides support so that together withthe development team assures that therequirements are fulfilled.
Attend meeting of the SprintObjetive:Determine what will be the work and the objectives to be met in theiteration.Who attend?Project manager, Project leader, developers and QA.Deliverable:• Milestone created by Project Manager.
Planning the Sprint or Milestone Take the Ticket Backlog and review the tasks starting with the highest in priority. Define the duration time of the Spring (approx. 2 to 4 weeks). The Project Manager defines the tasks of the Sprint and Project Leader assigns them. Can the first requirement of the Backlog be done in X weeks? The Scrum Team examine it and split it into Tickets, thus forming the Milestone.
What does it contain a Sprint,Backlog or Milestone? Each ticket is organized by its priority. Includes all tickets of the iteration or Sprint course. It is recommended that a ticket should not take more than 16 hours to be completed.
UML designs and architectureDeliver or adapt architectural designs, infrastructure or security designs(according to the case ). Also do UML designs such as :• Activities.• Estates.• Classes.• Collaboration.• Among others that apply.Responsible:Architect and QA.
Attending Daily Scrum After the Sprint planning meeting the Scrum Team meets and each one answers to three questions.• What did you do yesterday?• What are you going to do today?• What help do you need? This meeting also haves the advantage to return an estimate of the time of ongoing work that will need to be done due to unexpected changes.
Life Cycle of Software
Demo with the clientObjetive:Once finished running the tests and all of the Sprint or Milestone bugs have beensolved, proceeds to perform the Demo with the customer and the project team.Responsible for directing the meeting:Project Manager.Note: As much as necessary demos are performed during the Sprint.
Customer testsObjetive:Ensure there are no errors in development before moving on to the productionenvironment. The client validates tickets in the Beta environment. If customer finds errors in the project, it reports them by creating a ticket. Perform again the bugs management and regression testing.
ANALYSIS AND REVIEW DURING THE SPRING
Attend the Sprint review meeting Approximately a 2 hour meeting to review the program version with all the features specified in the Sprint Backlog. Project leader teaches the version to the members of the team. Attendees can give opinions, suggestion for improvements, among other comments.
Sprint RetrospectiveThe Project manager, development team and the client discuss what things canbe improved when working for the next Sprint or Milestone.Observation :The next meeting of the next Sprint based on Ticket Backlog is defined atthe end of this review meeting.
Pass the development of Sprint or the whole project to the production environment. As long as all the functionalities of the system have been tested by the customer.
Verify deliverablesObjetive:The Project leader checks that each of the deliverables at every stage of the projectare stored in the file structure defined in Unfuddle.Responsible:Project Leader
Total closure meetingObjetive:Once released the draft, the Scrum team and the customer perform the closingmeeting.At this meeting, details of the project are discussed, and the lessons learned. Thesummary of reported bugs will be reviewed.• What did we do well?• What have we learned?• What can we do better?• What confuses us?QA updates the WIKI of Yuxi with lessons learned so that in the future otherScrum team can refer to processes already carried out.