JIRA Studio Use Cases and Tutorial basis

Similar documents
JetBrains YouTrack Comparison

Treating Deployments as Code with Puppet and the Atlassian Toolsuite Puppet Camp, Geneva

What is JIRA? software development tool. planning and tracking the projects progress and supporting the team collaboration

JetBrains TeamCity Comparison

/smlcodes /smlcodes /smlcodes JIRA. Small Codes. Programming Simplified. A SmlCodes.Com Small presentation. In Association with Idleposts.

Atlassian JIRA Introduction to JIRA Issue and Project Tracking Software Tutorial 1

Inside JIRA scheme, everything can be configured, and it consists of. This section will guide you through JIRA Issue and it's types.

Skyhook designs and deploys high performance mobile location solutions, and exists to make location faster, more precise and practical.

Jira Permission Scheme Per Issue Type >>>CLICK HERE<<<

JIRA 5.x, first steps

How to set up SQL Source Control The short guide for evaluators

Tracking Issues with JIRA

Use Guide STANDARD JIRA-CLIENT ESTNDAR. Version 3.0. Standard JIRA Client Use Guide

PHP Development Best Practices: The Untold Story of Geekville

USER MANUAL. Inprowiser Engineering

Jira Connector Option - v18

Term work presentation

ONLINE VIRTUAL TOUR CREATOR

CONFIGURING SAFE V4.0 IN THE IBM COLLABORATIVE LIFECYCLE MANAGEMENT

Continuous Integration / Continuous Testing

Use Guide STANDARD JIRA CLIENT. (Practical Case)

Deep Dive on AWS CodeStar

ServiceNow - Agile in ServiceNow

Chronodat Issue Tracker Add-in. User Manual CHRONODAT, LLC. February 15, 2017 Version P age

Continuous Integration & Code Quality MINDS-ON NUNO 11 APRIL 2017

CollabNet TeamForge 5.3 Evaluator s Guide

(Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn? New Batches Info

AgileSCM Release 4.1. AgileSCM Release 4.0. AgileSCM Release 3.2. New Features. Bug Fixes. New Features. Bug Fixes

Handout 4: Version Control Reference

The Intuitive Jira Guide For Users (2018)

JIRA Overview & Configuration. Based on the A2F Framework

Managing your Agile ALM Process with JasForge OSLC Forge and Lyo SDK DJAAFAR Karim

SAFe Atlassian Style (Updated version with SAFe 4.5) Whitepapers & Handouts

Microsoft. Recertification for MCSD: Application Lifecycle Management

SpiraTeam Build Server Integration Guide Inflectra Corporation

How to create custom Excel reports from Jira issues in no time

SourceForge to JIRA Transition Training

click2try Tutorial Redmine 2009 Presage Technologies, LLC.

Child Welfare Digital Services Sprint Review Presentation

Reusable Component Management Through the Use of Subversion Externals. Who Am I?

Project Management Framework

JIRA, Confluence and their integration

#define 4 User Guide. Version 4.0. CGI Group Inc.

Last Updated: FRC 2019 BETA

EclipseCon France 2017 Squaring the Capella circle: Open Source, Agile, Traditional

SURVEY ON JIRA INTEGRATION USING REST APIs

SpiraTest Quick Start Guide Inflectra Corporation

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 FALL 2017 A BRIEF LOOK

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 WINTER 2018 A BRIEF LOOK

How to export custom PDF documents from Jira issues and dashboards in zero time

CollabNet Desktop - Microsoft Windows Edition

Vector Issue Tracker and License Manager - Administrator s Guide. Configuring and Maintaining Vector Issue Tracker and License Manager

TeamForge 7.1 User Guide

M E R C U R I A L (The Source Control Management)

Pega Agile Studio USER GUIDE 7.4

JIRA Software and JIRA Service Desk Data Center on the AWS Cloud

Index. Chaminda Chandrasekara 2017 C. Chandrasekara, Beginning Build and Release Management with TFS 2017 and VSTS, DOI /

CS 320 Introduction to Software Engineering Spring February 06, 2017

Hands-On Lab. Agile Planning and Portfolio Management with Team Foundation Server Lab version: Last updated: 11/25/2013

Agile Studio USER GUIDE 7.3

Development Processes Agile Adaptive Planning. Stefan Sobek

Technology Background Development environment, Skeleton and Libraries

TDDC88 Lab 4 Software Configuration Management

JIRA 5.2 Essentials. Patrick Li. Chapter No. 4 "Field Management"

What is git? Distributed Version Control System (VCS); Created by Linus Torvalds, to help with Linux development;

Turbo boost your digital app test automation with Jenkins

Best practices for OO 10 content structuring

Project Management Course. Zenhub + Github, when agile become a reality. Aitor Corchero

1. Installing R4E 1. 1) Provision Software Sites 2. 2) Install Version Control System Features 3. 3) Install R4E feature 4. 4) Install Versions

Connect with Remedy: SmartIT: Social Event Manager Webinar Q&A

Maturing agile teams and driving quality through architecture principles

Working with the Seagull Framework. By Demian Turner, Seagull Systems

Using Assembla.com Tools in Botball

Previous Capstone Project

... Fisheye Crucible Bamboo

Chronodat Help Desk. (User Manual) By CHRONODAT, LLC

CSE 331 Software Design & Implementation

Platforms (Operating Systems)

User Manual Version: 1.0.0

FACETs. Technical Report 05/19/2010

SpiraTeam Feature Comparison

Plugin Overview. So easy to use and a must have extension for any team. The Jira Tracking & Estimation plugin includes the following functionality:

RIT Wiki 5.1 Upgrade - May 21, 2013

Oracle Cloud Using Oracle Developer Cloud Service

TCSS 360: SOFTWARE DEVELOPMENT AND QUALITY ASSURANCE

Copyright 2009 Tasktop Technologies


Creating an Intranet using Lotus Web Content Management. Part 2 Project Planning

Software Engineering I (02161)

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc.

Pega Agile Studio. Upgrade Guide 7.4

Using the Events Module

Belle II - Git migration

What s the Value of Your Data? The Agile Advantage

Third Party Integration. Portfolio for JIRA

Implement an ADT while using Subversion

AccuRev Plugin for Crucible Installation and Release Notes

... Fisheye Crucible Bamboo

Chronodat Help Desk (Lite)

Rule Modeling Case Study Generic Diabetic Monitoring. Mike Parish

Transcription:

JIRA Studio Use Cases and Tutorial basis Analysis of usefulness of JIRA Studio Eclipse tool-chain Tolga Tuncbilek, Elisa Kallio, Shiyuan Wang, Viktor Porvaznik

Table of Contents 1 Introduction... 3 2 Data sources...4 3 Installation and administration... 5 3.1 Connectors... 5 3.2 Connecting with Eclipse... 5 3.3 JIRA administration... 5 4 Which version of JIRA studio most suitable... 6 5 JIRA Studio supported practices... 7 5.1 Project Management... 7 5.2 Product backlog management... 7 5.3 Continuous integration management... 8 5.4 Software Metrics / Code Metrics & Analysis... 8 5.5 Source Control / Version Control...8 5.6 Issue Tracking / Bug Tracking...8 5.7 Code review... 9 5.8 Release Planning...9 5.9 Task Board / Planning Board / Burn-down / Burn-up... 9 5.10 Additional features...10 6 Conclusion... 11 7 References... 12

1 Introduction This report summarizes all tests / use cases performed on JIRA studio during evaluation period. It is separated to logical sections depending on to which practice is belonging to. This use cases were constructed and based on Best Agile Practices report from team A. From Team's A report was extracted parts which are directly concerning physical tools as i.e. source control, leaving out parts i.e. daily scrum, parts which are talking more about approach and work style as about physical activity that is severely influenced by particular tool. Result of this use case report is not any point evaluation or comparison but subjective listing and evaluation of performed actions and tested features.

2 Data sources As data sources we used mucommander a lightweight, cross-platform file manager with a dualpanel interface. mucommander runs on any operating system with Java support (Mac OS X, Windows, Linux, *BSD, Solaris...) (http://trac.mucommander.com/). This software was selected because as IDE part of tool-chain we selected Eclipse which is best fit for Java and mucommander is written in Java. Ready and not only just some dummy project gave use also fully developed code and issues access so we did not need to simulate any artificial and inconsistent code development. Tickets from Trac were used as source and separated by type where enhancement were considered as stories/epics and defects as bugs and milestones represented version.

3 Installation and administration This part talks about tool-chain installation and administration. i.e. adding users, assigning them to project, etc. 3.1 Connectors As connector can be understood plugin, which extends abilities of IDE i.e. Gives opportunity to insert tasks/user stories directly from IDE or pull new issues directly from IDE. This makes work simple and fast because developer is not forced all the time enter into JIRA trough browser but can do the job from IDE. JIRA studio contains connectors for Eclipse, IntelliJ IDEA 7 and Ms Visual Studio 2008 and 2010. Due to this fact our tool-chain selection focused on projects written in Java and Qt/C++ and there fore Eclipse was selected as primary development platform (IDE). Qt Creator can of course be used too but does not contain any connector. 3.2 Connecting with Eclipse We assumed that client has installed latest version of Eclipse 3.7 Indigo. 1. Install JIRA studio Eclipse connector (into Eclipse) Installation can be performed in offline mode, trough marketplace or trough update sites. We did use update sites. Installation was completed without any problems and tok only few minutes. 2. Connect with SVN repository After user has created some project in JIRA and has allowed also SVN plugin is very easy and fast add SVN repository. 3. Connect with Task repository After user has created some project in JIRA and has allowed also Greenhopper plugin is very easy and fast add Task repository. 3.3 JIRA administration 1. Creating groups We created new group of Test-Users and so users could be added into this group. 2. Adding users Adding user and adding role to user is clear and easy, then adding user into group.

4 Which version of JIRA studio most suitable There are multiple versions available, where pricing varies and and mainly included plugins. From downloaded versions are available: JIRA - Deploy on your server This basic project management version. JIRA with GreenHopper - For agile project management & development This version handles project management and agile planning. JIRA with Bonfire - For rapid agile testing This version is especially dedicated to testing. We checked all downloaded version prices starting at 1200 USD for 25 users (commercial license) and 600 USD for 25 users (academic license) but there is option for version limited by 10 users with all included plugins for 90 USD. This last option is very tempting but we must say that this would additionally require version control hosting / server set up as JIRA itself server would be setup on some local computer. And from hosted are available: JIRA Studio - Integrated Subversion, JIRA, Greenhopper, Confluence, Bamboo, FishEye, Crucible Full feature hosted suite. This option is according us preferred one costing 1250 USD per year for 5 users, 2500 USD for 10 users and or 3750 USD for 15 users. Of course everything depends on maintenance costs of server in case of downloaded and limit for students while 10 is quite small amount.

5 JIRA Studio supported practices 5.1 Project Management Project management is all what is needed to start, lead, maintain and finish project. Project management is covers all aspects of development cycle. 1. Create new project Create new project with name, key and project lead. Edit project, add description, avatar and project URL. This task is very intuitive and tok about 1 minute to perform. After project creating was automatically created SVN repository with empty structure. 2. Assigning persons to project 3. Checking out code from SVN to Eclipse Before this action you must have installed Eclipse JIRA plugin and Eclipse SVN plugin. Action completed successfully and project was checked out to Eclipse so work could begin. This tok about 2 minutes. 4. Checking out tasks from JIRA Task repository XXX 5. Creating new component As we know each product is usually consisting of multiple components and so possibility to create such components is very much needed. System supports creation of numerous components while each component can be associated with individual issues. 6. Creating new version Version or an iteration in agile can be created without problems and association with issues works very well. Additionally versions can be used to filter cards (or issues) on planning board in agile tab. 7. Adding custom fields to issue Custom field addition to existing issues as well as creating of new issue types is supported. 8. Changing default project issue scheme to another (SCRUM) scheme This feature allows to define multiple issue schemes so when user creates new issue can create only issue types predefined for particular issue scheme. This is very valuable i.e. when doing SCRUM, we can change issue scheme to SCRUM and so available issue types are only epic, story, bug and improvement. 9. Adding issue types Adding new issue type to existing issue scheme. 5.2 Product backlog management Product backlog management is part of requirements analysis and part of project management. In agile development project backlog holds all user requirements and is basis for work assignment. In them beginning is backlog filled with initial user stories and epics (which are complex user stories). Then project team members are actively using backlog to demonstrate work status i.e. How much work have been done and how much remaining by pulling stories and finishing them as tasks. Support in JIRA Studio is natively given by Greenhopper plugin serving as Agile planning tool. For best performance in case of SCRUM can be selected custom issue template. Issues are representing bugs, user stories and epics. 1. Create new epic Create epic and insert into epic some user stories. Epic is considered as special container to which are user stories linked. 2. Create new user story Create new user story. 3. Change priorities of user stories Modified settings of story. 4. Modification of existing issue Random modification of issues. 5. Closing issue Tired close issue.

6. Commenting issue Commenting issue. 7. Adding attachment to the issue To each issue can be attached and attachment. 8. Moving issue to another version Tried moving issue to another version. 9. Story points In default SCRUM issue template settings each story type contains story point field which can help and be associated with planning poker. 10. Business value Issues also contain default field business value. 5.3 Continuous integration management We could not unfortunately test continuous integration because it required elastic agent hosted on Amazon service and so this part left unevaluated but it is clear that tool supports this practice. We also discovered that JIRA Studio is not only able to connect with provided plugin Bamboo but also indirectly with JetBrains TeamCity CI. This fact would however require fixed CI server. 5.4 Software Metrics / Code Metrics & Analysis Software metrics as important part of SW development are fully supported by JIRA studio and there are many tools in order to create reports and valuable metrics. 1. Code metrics report JIRA allows create detailed report of LOC by file extension, list of top committers by LOC, by revision and by commit. Report contains also nice and clear chart representation of daytime/day/loc. 2. Commit history System contains also detailed history view of commits where can be found, analyzed and fixed any error. 3. Time-sheets This feature is supported by plugin Tempo which allows us to generate timesheets and so helps reporting and efficiency calculation. Plugin is not a part of standard distribution provided by Atlassian. 5.5 Source Control / Version Control Source control as base of all code development today. Without version control is SW development big mess so JIRA is very integrated with SVN and/or other version control systems and each part of JIRA is more or less depending on version cont-roll, so provided possibilities are quite wide and extensive. 1. Code browsing Code browsing is supported trough integrated plugin FishEye and allows real-time code browsing off multiple version control systems. 2. Code watching Detailed codebase browsing. 3. Code change reporting FishEye allows us to watch folder in version control and so receive notification about any code change. 4. Integrated SVN repository In JIRA hosted version is by default integrated SVN repository available after creating of project. 5. Connectors to another version control systems JIRA has ability to connect to another version control systems. 5.6 Issue Tracking / Bug Tracking Issue tracking and bug tracking is supported in JIRA as integrated issue-tracker / bug-tracker. Issue

tracking is base of JIRA systems and all functions are well integrated into system. System additionally contains numerous settings, also mentioned in project management section, settings considering extension of existing issues by additional fields and permission. Due to that fact is easy and very possible to create our own issues. 1. Submit bug report Submitting a bug report with all required parameters as priority, versions affected, component affected and description. 2. Comment a bug Commenting a bug as developer commenting, asking more info to client. 3. Resolve a bug Changing status of bug and resolving bug report. 4. Move and issue Moving bug report to another version. 5.7 Code review Code review is important to for team, especially dislocated team so whole team can see and review changes, comment and be notified about ongoing review. 1. Creating a code review Codebase changed and review created, containing changed files. 2. Starting code review During code review possible to comment, review, mark and do additional functions with reviewed code. Code review is supported trough plugin Crucible which is already integrated into hosted version. 3. Closing code review Code review closed with conclusion. 5.8 Release Planning Release planning is supported during creation of version where are set all deadlines and release days. Then from i.e. planning board can be version released. 1. Releasing version and ignoring not done issues Example version released and issues ignored / remained in version to be released. 2. Releasing version and moving not done issues Same as previous except that we selected following version and so issues are moved as to be done. 5.9 Task Board / Planning Board / Burn-down / Burn-up This features are supported by Greenhopper a plugin for agile development. This is an ultimate feature, we could say most important one because gives us simple and yet powerful backlog management, visual planning and leads us trough sprints and entire planning process. 1. Creating new cards Creating new card is pretty simple and straightforward. Basically planning and task board are part of Greenhopper but issue creating itself occurs in JIRA. 2. Filtering by versions and components In planing or task board is possible to filter existing cards / issues by version and / or component. 3. Task / User story scheduling Scheduling for each issue is supported while creating issue. 4. Released overview System also supports visual / chart view of existing releases and issue

resolution info for particular versions. 5. Card views On planning board are visible all issues and so type of view can be changed. i.e. is possible to turn on grid view (or list view), summary or full card view. This helps to see / modify existing cards. 6. Versions summary On planning board always on rights side of screen can be expanded or collapsed versions summaries. These summaries contain basic info about issues in this version and can be extended by additional fields or filters. 7. Burn-down and burn-up charts view JIRA fully supports burn-down charts for incomplete issues versus time hours remaining visualization and burn-up charts to show custom data associated with issues i.e. business values. 5.10 Additional features Here are listed some additional features which does not fit to any of previously mentioned chapters. 8. Notifications Initial setting allow us to set notifications, types and modes allowing to users receive by email notification about each change in system.

6 Conclusion To beginning of conclusion we must say that JIRA studio is very good high quality and useful tool but as all tools also JIRA has few problems. In general all task were performed quickly without any problems. Response times to user actions are also acceptable but test were performed only with small amount of data so its is difficult to say how would JIRA behave when there would be big amount of data. Visual look and customization is on very high level, however many times happens that there are multiple ways how to access same data. This creates a quite high confusion so user can very easily find in situation that he must try both ways to see it content of required data somehow does change. This is standard behavior when we expect something different after performing different actions. Data capacity or how much data are stored in JIRA and extensibility by custom fields, schemes, etc. and eventually plugin is very strong part of JIRA. For not experienced user can be administration process of whole system without prior reading of full documentation a bit nightmare, but documentation and guides provided are very high quality and again this is strong part of JIRA. Standard package of hosted version also contains confluence which is a kind of wiki from Atlassian.

7 References 1: www.atlassian.com/hosted/studio/ 2: Team's A report Best Agile Practices