Date post: | 30-Jul-2015 |
Category: |
Software |
Upload: | michael-cesino |
View: | 67 times |
Download: | 1 times |
Easy to Use……Affordable!
AgileDevelopment
NOW AVAILABLE in the Cloud for…• Issue Tracking• File Version Control• Release Management• Agile Development
Razor®
Copyright 2015 Visible Systems
Agile Development – Razor Implementation
This topic discusses the implementation of Agile Development using the Scrum process which is a focus set of time boxed activities designed to deliver incremental functionality. The principles of the Scrum process shall be discussed and then reviewed in terms of their implementation in Razor.
Copyright 2015 Visible Systems
Agility … to what degree?
You will find many similarities between SCRUM and Extreme Programming, but one of the major differences is that SCRUM is a fairly general set of guidelines that govern the development process of a product. – For this reason, it is often used as a "wrapper" for other
methodologies, such as XP or CMM (Capability Maturity Model) - that is, it is used to guide the overall process of development when using these other methodologies.
Copyright 2015 Visible Systems
Scrum “The New New Product Development Game” in Harvard
Business Review, 1986.– “The… ‘relay race’ approach to product
development…may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach—where a team tries to go the distance as a unit, passing the ball back and forth—may better serve today’s competitive requirements.”
Wicked Problems, Righteous Solutions by DeGrace and Stahl, 1990.– First mention of Scrum in a software context
Copyright 2015 Visible Systems
Scrum in 100 words
Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time.
It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
The business sets the priorities. Our teams self-manage to determine the best way to deliver the highest priority features.
Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance for another iteration.
Copyright 2015 Visible Systems
Characteristics
Self-organizing teams Product progresses in a series of month-long “sprints” Requirements are captured as items in a list of “product
backlog” No specific engineering practices prescribed Uses generative rules to create an agile environment for
delivering projects One of the “agile processes”
Copyright 2015 Visible Systems
Sequential vs. Overlapping Development
Requirements Design Code Test
Source: “The New New Product Development Game”, Hirotaka Takeuchi and Ikujiro Nonaka, Harvard Business Review, January 1986.
Copyright 2015 Visible Systems
Formation of Razor Agile Project The Razor Agile Project may be comprised of two teams - a Peer
Review Team which consists of people who are interested but who will not be doing the work, and a Development Team - people who are interested and will be doing the work on the project.
A team typically has no more than 6-9 working members.
– If there are more members than manageable, the project should be broken into multiple “groups” within Razor, each focusing on one, self-contained area of work (one for QA, one for documentation, etc.).
There should be Roles defined in Razor for people to act as bridges - that is, to attend the meetings of more than one team.
– Members of teams that are closely related/involved with each other should sit in on the other teams' meetings.
Copyright 2015 Visible Systems
Razor Agile Framework
Planning(Issues)
Sprints(Versions)
Closure(Threads)
Relate the changes
to the issues that
inspired them.
Decide whatbelongs in a
releaseby which
issues havebeen
closed.
Copyright 2015 Visible Systems
Scrum Framework
Roles: Product Owner, Scrum Master, Team Members
Activities: Sprint Planning, Sprint Review, Sprint Retrospective, & Daily Scrum Meeting
Deliverables: Product and Sprint Goals, Product and Sprint Backlogs, Product and Sprint Results.
Copyright 2015 Visible Systems
Scrum Roles, Activities and Deliverables
Roles: Product Owner, Scrum Master, Team Members
Activities: Sprint Planning, Sprint Review, Sprint Retrospective, & Daily Scrum Meeting
Deliverables: Product and Sprint Goals, Product and Sprint Backlogs, Product and Sprint Results.
Copyright 2015 Visible Systems
The Product Owner
Define the features of the product Decide on release date and content Be responsible for the profitability of the product
(ROI) Prioritize features according to market value Adjust features and priority every iteration, as
needed Accept or reject work results.
Copyright 2015 Visible Systems
Define a role for the Product Owner in Razor
A Role will need to be defined in Razor for the customer who is referred to as the Product Owner. – The Product Owner is the person who
commissions the project, and defines the requirements and priorities for the product.
– The Product Owner measures progress as it pertains to the Product Backlog. He/she may re-prioritize the backlog in Razor’s Issues.
Copyright 2015 Visible Systems
Define a role for the Scrum Master in Razor
A Role will need to be defined in Razor for the Development Team's leader who is called the Scrum Master. – He/she should be one of the members of the
working team - that is, he should be one of the people who is actually doing the work on the project.
– The SCRUM Master measures progress, identifies/removes impediments, and leads the team meetings.
Copyright 2015 Visible Systems
The Scrum TeamTypically 5-10 peopleCross-functional
– QA, Programmers, UI Designers, etc.Members should be full-time
– May be exceptions (e.g., System Admin, etc.)Teams are self-organizing
– What to do if a team self-organizes someone off the team??
– Ideally, no titles but rarely a possibilityMembership can change only between sprints
Copyright 2015 Visible Systems
Scrum Roles, Activities and Deliverables
Roles : Product Owner, Scrum Master, Team Members
Activities: Sprint Planning, Sprint Review, Sprint Retrospective, & Daily Scrum Meeting.
Deliverables: Product and Sprint Goals, Product and Sprint Backlogs, Product and Sprint Results.
Copyright 2015 Visible Systems
Planning the Scrum ProcessPlanning
– In this phase, the project is planned and high-level design decisions are made in terms of:
Product Requirements Product Documentation Product Architecture Product Priorities
– Much of this can be customized in Razor’s Issues in the form of user defined attributes, text pane history and file attachments.
Copyright 2015 Visible Systems
Sprint Planning Meeting
Scr
um
Sprint Planning
Meeting
Product Backlog
Team Capabilities
Business Conditions
Technology
Current Product
Sprint Backlog
Produ
ct O
wner
Scrum
Tea
m
Man
agem
ent
Custo
mer
s
Sprint Goal
Copyright 2015 Visible Systems
Sprint Review Meeting Team presents what it accomplished during the
sprint Typically takes the form of a demo of new
features or underlying architecture Informal
– 2-hour prep time rule Participants
– Customers– Management– Product Owner– Other engineers
Copyright 2015 Visible Systems
In preparing for Sprint Reviews... The Versions tool supports a
wide range of files.– File types include, but
not limited to, code, documentation, CAD drawings, business & legal documents, etc.
Drag and drop issues to relate a problem to the action (1).– Allows anyone to track
the activity that has occurred against any issue.
Copyright 2015 Visible Systems
Versions...
Offers convenient utilities– Browse all ASCII files
from the Versions GUI– Find differences between
files using Razor’s GUI-based diff utility
– Easily revert files to previous version
– View entire file History within the tool
Copyright 2015 Visible Systems
Sprints are an Iterative ProcessChanges
– Team adds new tasks whenever they need to in order to meet the Sprint Goal
– Team can remove unnecessary tasks– But: Sprint Backlog can only be updated by the
teamEstimates are updated whenever there’s new
information
Copyright 2015 Visible Systems
Release Sprints
If necessary, during “regular” sprints target friendly first use– Beta customers and similar can use immediately after sprint
During a “release sprint”– Team prepares a product for release– Useful during
active beta periods when transitioning a team to Scrum if quality isn’t quite where it should be on an initial release
Sprint 1 Sprint 2 Sprint 3 Sprint 4
Sprint 1 Sprint 2 Sprint 3ReleaseSprint
Copyright 2015 Visible Systems
Release Sprints in Razor Release Sprint is equivalent to a Thread in Razor
– A thread represents a collection of files that belong together
Threads (similar to a Release Sprint) allow you to build file groupings based upon the state of the file– Open, Active, Tested, Released
Allows for the archive and reuse of previously built and tested threads
Link multiple threads into a Project to create complete baseline releases
… take the guess work out of release management!
Copyright 2015 Visible Systems
Sprint releases can be built by ... Build your Sprint releases in Razor …
– On a file-by-file basis – Blanket selections based upon attributes and
promotion levels– Based on related issues
Drag and drop issues to release just the files that were updated to correct a bug or problem
Once you’ve built your Sprint release …– Test it– Promote it– Archive it to build your arsenal of proven, drop in
components
Copyright 2015 Visible Systems
Threads...
– Highlight desired file
– Choose version to be included
– Changes seen immediately in thread definition
Building threads on a file-by-file basis
Copyright 2015 Visible Systems
Create a release based on each product requirement!– Drag and drop or copy
and paste specific issues into a new thread GUI.
– Choose which file action the issues were related upon for finer resolution.
– Files are automatically included.
Copyright 2015 Visible Systems
Releases in Razor’s Threads ... Offers convenient utilities
– Compare different release contents within the group.
– Extract releases from the GUI or create an extraction script to be used from the command line.
– View release’s entire History from within the Sprint cycle where the development is taking place.
Copyright 2015 Visible Systems
SCRUM Meetings
Based upon the Razor reports, a 15-minute SCRUM meeting is held every day. The SCRUM Master asks the three questions, and all members of the team and interested parties take part and give feedback. The meeting should be held at the same place every time, so that people know where to go.
Copyright 2015 Visible Systems
SCRUM Meeting ReviewsThe Scrum Master asks the developers three
important questions at every SCRUM meeting:
– What have you accomplished since the last meeting?
– Are there any obstacles in the way of meeting your goal?
– What will you accomplish before the next meeting?
Any obstacles that are identified are defined as “Impediments”.
Copyright 2015 Visible Systems
Impediments Impediments are things that get in the way of the progress of
the project. The SCRUM Master is responsible to look for and remove these obstacles so that they do not slow down or impair the project.
Impediments and their solutions may be implemented in three steps in Razor. – The first steps is an email is sent from the SCRUM Master to the
Product Manager identifying the impediment.
– The second step is the impediment is entered by the Product Manager into the appropriate Razor Issue’s Problem Text Pane as an “Impediment” for that Issue.
– The third step is a solution is identified and entered into Razor’s Solution Text Pane for the “Impediment” for that Issue.
Copyright 2015 Visible Systems
Scrum Roles, Activities and Deliverables
Roles : Product Owner, Scrum Master, Team Members
Activities: Sprint Planning, Sprint Review, Sprint Retrospective, & Daily Scrum Meeting
Deliverables: Product and Sprint Goals, Product and Sprint Backlogs, Product and Sprint Results.
Copyright 2015 Visible Systems
The Sprint Goal
Database Application
“Make the application run on SQL Server in addition to Oracle.”
Life Sciences
“Support features necessary for
population genetics studies.”
Financial Services
“Support more technical indicators than company ABC
with real-time, streaming data.”
A short “theme” for the sprint:
Scr
um
Copyright 2015 Visible Systems
From Sprint Goal to Sprint Backlog
Scrum team takes the Sprint Goal and decides what tasks are necessary
Team self-organizes around how they’ll meet the Sprint Goal– Manager doesn’t assign tasks to individuals
Managers don’t make decisions for the teamSprint Backlog is created
Copyright 2015 Visible Systems
Product Backlog
A list of all desired work on the project– Usually a combination of
story-based work (“let user search and replace”) task-based work (“improve exception handling”)
List is prioritized by the Product Owner– Typically a Product Manager, Marketing,
Internal Customer, etc.
Copyright 2015 Visible Systems
Sample Product Backlog
Copyright 2015 Visible Systems
Sample Sprint Backlog
Copyright 2015 Visible Systems
Reports in RazorProduct Backlog
– The Product Backlog is generated directly from Razor’s Issues and is triggered on Issues where a desired state is not completed.
– The Product Backlog is sorted based upon a prioritized list of all the desired changes to the product being developed and by the product owner.
“Priority” and “Product Owner” are attributes defined in Razor’s Issues.
Copyright 2015 Visible Systems
Product Backlogs ...
Easily filter issues based on Title, State, Assignment, Impact Assessment, etc.
If you’ve included the attribute on your Issues form, you can filter on it.
Search by keyword within your issue form’s text panes for a precision search each time.
Copyright 2015 Visible Systems
Product Backlogs …
Use Issue’s report generator to produce custom product backlog reports– Select custom filter
criteria based upon your issue form’s content
– Report formats include…
Bar charts Pie Charts HTML Export files
Copyright 2015 Visible Systems
Reports in RazorSprint Backlog
– The Sprint Backlog is generated directly from Razor’s Versions and is triggered on Versions where a desired blessing is not reached.
– The Sprint Backlog is sorted based upon a prioritized list of all the previously negotiated and anticipated outcomes of a sprint and by the Scrum master.
“Priority” and “Scrum Master” are attributes defined in Razor’s Versions.
– A list with items that will be completed in the next sprint, taken from the sprint backlog.
Copyright 2015 Visible Systems
Definition of Sprint Backlogs in Razor
Copyright 2015 Visible Systems
Copyright 2015 Visible Systems
Chart Displaying Sprint Backlogs from Razor
Copyright 2015 Visible Systems
Schedule your Razor Agile Development Personal
Webinar