SlideShare a Scribd company logo
1 of 46
INFORMATION NETWORK
SECURITY AGENCY
Quality assurances and quality control
JIRA AN GIT TRAINING
* meseret ak
1
Git vs Jira
*
meseret ak
2
Version control systems
■ Version control (or revision control, or source control) is all about managing multiple
versions of documents, programs, web sites, etc.
■ Almost all “real” projects use some kind of version control
■ Essential for team projects, but also very useful for individual projects
■ Some well-known version control systems are CVS, Subversion, Mercurial, and Git
■ CVS and Subversion use a “central” repository; users “check out” files, work on them, and “check
them in”
■ Mercurial and Git treat all repositories as equal
■ Distributed systems like Mercurial and Git are newer and are gradually replacing
centralized systems like CVS and Subversion
3
Why Git?
■ Git has many advantages over earlier systems such as CVS and Subversion
■ More efficient, better workflow, etc.
■ See the literature for an extensive list of reasons
■ Of course, there are always those who disagree
■ Best competitor: Mercurial
■ I like Mercurial better
■ Same concepts, slightly simpler to use
■ In my (very limited) experience, the Eclipse plugin is easier to install and use
■ Much less popular than Git
4
Download and install Git
■ There are online materials that are better than any that I could provide
■ Here’s the standard one:
http://git-scm.com/downloads
■ Here’s one from StackExchange:
http://stackoverflow.com/questions/315911/git-for-beginners-the-definitive-practical-
guide#323764
■ Note: Git is primarily a command-line tool
■ I prefer GUIs over command-line tools, but…
■ The GIT GUIs are more trouble than they are worth (YMMV)
5
Introduce yourself to Git
■ Enter these lines (with appropriate changes):
■ git config --global user.name "John Smith"
■ git config --global user.email jsmith@seas.upenn.edu
■ You only need to do this once
■ If you want to use a different name/email address for a particular project,
you can change it for just that project
■ cd to the project directory
■ Use the above commands, but leave out the --global
6
Git Concepts: Storage
Git Concepts: Storage
Create and fill a repository
1. cd to the project directory you want to use
2. Type in git init
■ This creates the repository (a directory named .git)
■ You seldom (if ever) need to look inside this directory
3. Type in git add .
■ The period at the end is part of this command!
■ Period means “this directory”
■ This adds all your current files to the repository
4. Type in git commit –m "Initial commit"
■ You can use a different commit message, if you like
9
Clone a repository from elsewhere
■ git clone URL
■ git clone URL mypath
■ These make an exact copy of the repository at the given URL
■ git clone git://github.com/rest_of_path/file.git
■ Github is the most popular (free) public repository
■ All repositories are equal
■ But you can treat some particular repository (such as one on Github) as
the “master” directory
■ Typically, each team member works in his/her own repository,
and “merges” with other repositories as appropriate
10
The repository
■ Your top-level working directory contains everything about your project
■ The working directory probably contains many subdirectories—source code, binaries, documentation,
data files, etc.
■ One of these subdirectories, named .git, is your repository
■ At any time, you can take a “snapshot” of everything (or selected things) in your project
directory, and put it in your repository
■ This “snapshot” is called a commit object
■ The commit object contains (1) a set of files, (2) references to the “parents” of the commit object, and
(3) a unique “SHA1” name
■ Commit objects do not require huge amounts of memory
■ You can work as much as you like in your working directory, but the repository isn’t
updated until you commit something
11
init and the .git repository
■ When you said git init in your project directory, or when you cloned an
existing project, you created a repository
■ The repository is a subdirectory named .git containing various files
■ The dot indicates a “hidden” directory
■ You do not work directly with the contents of that directory; various git commands
do that for you
■ You do need a basic understanding of what is in the repository
12
Making commits
■ You do your work in your project directory, as usual
■ If you create new files and/or folders, they are not tracked by Git unless you
ask it to do so
■ git add newFile1 newFolder1 newFolder2 newFile2
■ Committing makes a “snapshot” of everything being tracked into your
repository
■ A message telling what you have done is required
■ git commit –m “Uncrevulated the conundrum bar”
■ git commit
■ This version opens an editor for you the enter the message
■ To finish, save and quit the editor
■ Format of the commit message
■ One line containing the complete summary
■ If more than one line, the second line must be blank
13
Commit messages
■ In git, “Commits are cheap.” Do them often.
■ When you commit, you must provide a one-line message stating what you
have done
■ Terrible message: “Fixed a bunch of things”
■ Better message: “Corrected the calculation of median scores”
■ Commit messages can be very helpful, to yourself as well as to your team
members
■ You can’t say much in one line, so commit often
14
Typical workflow
■ git pull remote_repository
■ Get changes from a remote repository and merge them into your own repository
■ git status
■ See what Git thinks is going on
■ Use this frequently!
■ Work on your files (remember to add any new ones)
■ git commit –m “What I did”
■ git push
15
Git Commands Summary
16
List of git commands
■ Every developer should know the following eight basic Git
commands:
1. git clone
2. git init
3. git status
4. git push
5. git pull
6. git merge
7. git commit
8. git log or reflog
9. Git show
17
DEMO(continued)
18
Why use JIRA?
19
JIRA – An Introduction
Meseret.ak
meseret@insa.com
Topics for today
■ Introduction to JIRA and its features
■ Demonstration of usage of JIRA
■ JIRA for Scrum
■ Comparing JIRA with other version control tools
■ Q & A
Basic questions
■ What is JIRA? In simple terms: “JIRA is an issue tracker”
■ Is it web based? Yes
■ Is it open source? Yes
■ Is it a licensed product?Yes
■ Whose product is JIRA? www.atlassian.com
What is JIRA?
■ JIRA is a tool developed by Australian Company Atlassian. This
software is used for bug tracking, issue tracking, and project
management.
■ Jira software can be used for the following purposes:
❖ Requirements and Test case management
❖ In Agile Methodology
❖ Project Management
❖ Software Development
❖ Product Management
❖ Task Management
❖ Bug Tracking
23
JIRA Scheme
■ Inside JIRA scheme, everything can be configured, and it consists of
• Workflows
• Issue Types
• Custom Fields
• Screens
• Field Configuration
• Notification
• Permissions
24
Jira Issue Types
25
Jira Issue Attributes
■ Issue Attributes encompasses
• Statuses
• Resolutions
• Priorities
■ Statuses: Different statuses are used to indicate the progress of a
project like To do, InProgress, Open, Closed, Reopened, and
Resolved. Likewise, you have resolutions and priorities, in resolution it
again tells about the progress of issue like Fixed, Won’t fix, Duplicate,
Incomplete, Cannot reproduce, Done also you can set the priorities of
the issue whether an issue is critical, major, minor, blocker and
Trivial.
■
26
Statuses
27
Features (from the creators of JIRA)
■ Because you've got issues
■ JIRA lets you prioritise, assign, track, report and audit your 'issues,'
whatever they may be — from software bugs and help-desk tickets to
project tasks and change requests.
■ Reporting and statistics
■ Customisable reporting allows you to monitor the progress of your
issues with detailed graphs and charts.
■ Workflow your way
■ Map your business process with a custom workflow.
■ An extensible platform
■ Integrate JIRA into your systems with our open API and 100+ free
plugins.
Issue
Dashboard
JIRA for Scrum
• Scrum: a definite project management emphasis.
• Scrum Master: A Scrum project Is managed by a
Scrum Master, who can be considered as much a
consultant or coach as a manager.
• Sprint. Scrum has a fundamental 30-day
development cycle called a Sprint, preceded by
– pre-Sprint activities and post-Sprint activities.
• Daily Scrum: A short (less than 30 minutes) daily
Scrum Meeting allows the team to monitor status
and communicate problems.
32
JIRA for Scrum
33
Cont’d
• Product Backlog 🡺 Sprint Backlog 🡺 Sprint 🡺 Working increment of the
Software
• Scrum uses lightweight queue-based management and work-breakdown
mechanisms.
• Product Backlog queue: a low-tech customer-managed queue of demand
requests for products.
• .
• Sprint: At launch time, a Sprint (30-day time-boxed iteration) does just-
in-time planning
• Sprint Backlog: queue for Sprint work-mgmt.
34
Agile Software Development
8/14/2015
© 2015 SGT Inc. 35
Cont’d
• Daily Scrum: Very notable and very visible
• Is a daily standup,
– except that it is the team that is participating and sharing coordination information
not a central project manager.
• Scrum Master
– holds daily scrum and
– acts more as a facilitator and runs interference for the core team when blocks or
issues arise.
36
Scrum Terminology
Scrum Team:
– Product Owner:
– Scrum Master:
– Development Team:
– Product Backlog
– Sprint Backlog
– Sprint
Jira for Scrum
38
Plan Mode - Scrum
■ Prioritize the Backlog.
■ Estimate the stories
■ Create the sprints
■ Story points are available only for Epics and Stories
■ Estimations in terms of Hours also possible by configuring the board
■ Sub tasks can be created
■ The stories can be grouped under each sprint
■ The number of issues and the story points / hours are automatically displayed to make plan easier
■ At one point of time only one sprint is active
Work Mode - Scrum
Report Mode - Scrum
■ To track the progress in Agile, a Burndown Chart shows the actual and
estimated amount of work to be done in the sprint.
■ A typical burndown chart will look somewhat like this, where the red
line indicates the actual task remaining while the blue line indicates ideal
task remaining during the scrum cycle.
41
Creating a JIRA issue
Project Name & Issue Type
Priority of the Bug & additional attachments
Reference links
■ Official site:
http://git-scm.com/
■ man gittutorial / git <command> --help
■ Randal Schwartz Google Tech Talk:
http://www.youtube.com/watch?v=8dhZ9BXQgc4
■ Homepage: http://www.atlassian.com/software/jira/
■ Documentation: http://www.atlassian.com/software/jira/docs/
45
Address:
# Addis Abeba , Ethiopia
Email Address:
meseretinsa@gmail.com
Contact Numbers:
0912465247
46

More Related Content

Similar to finall_(1).pptx

Introduction to Git
Introduction to GitIntroduction to Git
Introduction to GitAmit Mathur
 
Engage 2018 adm04 - The lazy admin wins
Engage 2018   adm04 - The lazy admin winsEngage 2018   adm04 - The lazy admin wins
Engage 2018 adm04 - The lazy admin winsMatteo Bisi
 
Engage 2018 adm04 The lazy admin wins
Engage 2018   adm04 The lazy admin winsEngage 2018   adm04 The lazy admin wins
Engage 2018 adm04 The lazy admin winsFactor-y S.r.l.
 
Using Git with WordPress - Presented by Nigel Rodgers.
Using Git with WordPress - Presented by Nigel Rodgers.Using Git with WordPress - Presented by Nigel Rodgers.
Using Git with WordPress - Presented by Nigel Rodgers.WordCamp Harare
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubBigBlueHat
 
Git installation and configuration
Git installation and configurationGit installation and configuration
Git installation and configurationKishor Kumar
 
Data science Git management
Data science Git managementData science Git management
Data science Git managementArindam Banerjee
 
Introduction to Git and Github - Google Developer Student Clubs CET, Trivandrum
Introduction to Git and Github - Google Developer Student Clubs CET, TrivandrumIntroduction to Git and Github - Google Developer Student Clubs CET, Trivandrum
Introduction to Git and Github - Google Developer Student Clubs CET, TrivandrumAbhijitNarayan2
 
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitRobert Lee-Cann
 

Similar to finall_(1).pptx (20)

Git
GitGit
Git
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Engage 2018 adm04 - The lazy admin wins
Engage 2018   adm04 - The lazy admin winsEngage 2018   adm04 - The lazy admin wins
Engage 2018 adm04 - The lazy admin wins
 
Engage 2018 adm04 The lazy admin wins
Engage 2018   adm04 The lazy admin winsEngage 2018   adm04 The lazy admin wins
Engage 2018 adm04 The lazy admin wins
 
Mini git tutorial
Mini git tutorialMini git tutorial
Mini git tutorial
 
Git workshop
Git workshopGit workshop
Git workshop
 
Lets git to it
Lets git to itLets git to it
Lets git to it
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Using Git with WordPress - Presented by Nigel Rodgers.
Using Git with WordPress - Presented by Nigel Rodgers.Using Git with WordPress - Presented by Nigel Rodgers.
Using Git with WordPress - Presented by Nigel Rodgers.
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
 
Git installation and configuration
Git installation and configurationGit installation and configuration
Git installation and configuration
 
Introduction to git & github
Introduction to git & githubIntroduction to git & github
Introduction to git & github
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
 
Formation git
Formation gitFormation git
Formation git
 
Data science Git management
Data science Git managementData science Git management
Data science Git management
 
Git presentation
Git presentationGit presentation
Git presentation
 
Introduction to Git and Github - Google Developer Student Clubs CET, Trivandrum
Introduction to Git and Github - Google Developer Student Clubs CET, TrivandrumIntroduction to Git and Github - Google Developer Student Clubs CET, Trivandrum
Introduction to Git and Github - Google Developer Student Clubs CET, Trivandrum
 
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with Git
 
Git hub
Git hubGit hub
Git hub
 
Git Basics
Git BasicsGit Basics
Git Basics
 

Recently uploaded

why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 

Recently uploaded (20)

why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 

finall_(1).pptx

  • 1. INFORMATION NETWORK SECURITY AGENCY Quality assurances and quality control JIRA AN GIT TRAINING * meseret ak 1
  • 3. Version control systems ■ Version control (or revision control, or source control) is all about managing multiple versions of documents, programs, web sites, etc. ■ Almost all “real” projects use some kind of version control ■ Essential for team projects, but also very useful for individual projects ■ Some well-known version control systems are CVS, Subversion, Mercurial, and Git ■ CVS and Subversion use a “central” repository; users “check out” files, work on them, and “check them in” ■ Mercurial and Git treat all repositories as equal ■ Distributed systems like Mercurial and Git are newer and are gradually replacing centralized systems like CVS and Subversion 3
  • 4. Why Git? ■ Git has many advantages over earlier systems such as CVS and Subversion ■ More efficient, better workflow, etc. ■ See the literature for an extensive list of reasons ■ Of course, there are always those who disagree ■ Best competitor: Mercurial ■ I like Mercurial better ■ Same concepts, slightly simpler to use ■ In my (very limited) experience, the Eclipse plugin is easier to install and use ■ Much less popular than Git 4
  • 5. Download and install Git ■ There are online materials that are better than any that I could provide ■ Here’s the standard one: http://git-scm.com/downloads ■ Here’s one from StackExchange: http://stackoverflow.com/questions/315911/git-for-beginners-the-definitive-practical- guide#323764 ■ Note: Git is primarily a command-line tool ■ I prefer GUIs over command-line tools, but… ■ The GIT GUIs are more trouble than they are worth (YMMV) 5
  • 6. Introduce yourself to Git ■ Enter these lines (with appropriate changes): ■ git config --global user.name "John Smith" ■ git config --global user.email jsmith@seas.upenn.edu ■ You only need to do this once ■ If you want to use a different name/email address for a particular project, you can change it for just that project ■ cd to the project directory ■ Use the above commands, but leave out the --global 6
  • 9. Create and fill a repository 1. cd to the project directory you want to use 2. Type in git init ■ This creates the repository (a directory named .git) ■ You seldom (if ever) need to look inside this directory 3. Type in git add . ■ The period at the end is part of this command! ■ Period means “this directory” ■ This adds all your current files to the repository 4. Type in git commit –m "Initial commit" ■ You can use a different commit message, if you like 9
  • 10. Clone a repository from elsewhere ■ git clone URL ■ git clone URL mypath ■ These make an exact copy of the repository at the given URL ■ git clone git://github.com/rest_of_path/file.git ■ Github is the most popular (free) public repository ■ All repositories are equal ■ But you can treat some particular repository (such as one on Github) as the “master” directory ■ Typically, each team member works in his/her own repository, and “merges” with other repositories as appropriate 10
  • 11. The repository ■ Your top-level working directory contains everything about your project ■ The working directory probably contains many subdirectories—source code, binaries, documentation, data files, etc. ■ One of these subdirectories, named .git, is your repository ■ At any time, you can take a “snapshot” of everything (or selected things) in your project directory, and put it in your repository ■ This “snapshot” is called a commit object ■ The commit object contains (1) a set of files, (2) references to the “parents” of the commit object, and (3) a unique “SHA1” name ■ Commit objects do not require huge amounts of memory ■ You can work as much as you like in your working directory, but the repository isn’t updated until you commit something 11
  • 12. init and the .git repository ■ When you said git init in your project directory, or when you cloned an existing project, you created a repository ■ The repository is a subdirectory named .git containing various files ■ The dot indicates a “hidden” directory ■ You do not work directly with the contents of that directory; various git commands do that for you ■ You do need a basic understanding of what is in the repository 12
  • 13. Making commits ■ You do your work in your project directory, as usual ■ If you create new files and/or folders, they are not tracked by Git unless you ask it to do so ■ git add newFile1 newFolder1 newFolder2 newFile2 ■ Committing makes a “snapshot” of everything being tracked into your repository ■ A message telling what you have done is required ■ git commit –m “Uncrevulated the conundrum bar” ■ git commit ■ This version opens an editor for you the enter the message ■ To finish, save and quit the editor ■ Format of the commit message ■ One line containing the complete summary ■ If more than one line, the second line must be blank 13
  • 14. Commit messages ■ In git, “Commits are cheap.” Do them often. ■ When you commit, you must provide a one-line message stating what you have done ■ Terrible message: “Fixed a bunch of things” ■ Better message: “Corrected the calculation of median scores” ■ Commit messages can be very helpful, to yourself as well as to your team members ■ You can’t say much in one line, so commit often 14
  • 15. Typical workflow ■ git pull remote_repository ■ Get changes from a remote repository and merge them into your own repository ■ git status ■ See what Git thinks is going on ■ Use this frequently! ■ Work on your files (remember to add any new ones) ■ git commit –m “What I did” ■ git push 15
  • 17. List of git commands ■ Every developer should know the following eight basic Git commands: 1. git clone 2. git init 3. git status 4. git push 5. git pull 6. git merge 7. git commit 8. git log or reflog 9. Git show 17
  • 20. JIRA – An Introduction Meseret.ak meseret@insa.com
  • 21. Topics for today ■ Introduction to JIRA and its features ■ Demonstration of usage of JIRA ■ JIRA for Scrum ■ Comparing JIRA with other version control tools ■ Q & A
  • 22. Basic questions ■ What is JIRA? In simple terms: “JIRA is an issue tracker” ■ Is it web based? Yes ■ Is it open source? Yes ■ Is it a licensed product?Yes ■ Whose product is JIRA? www.atlassian.com
  • 23. What is JIRA? ■ JIRA is a tool developed by Australian Company Atlassian. This software is used for bug tracking, issue tracking, and project management. ■ Jira software can be used for the following purposes: ❖ Requirements and Test case management ❖ In Agile Methodology ❖ Project Management ❖ Software Development ❖ Product Management ❖ Task Management ❖ Bug Tracking 23
  • 24. JIRA Scheme ■ Inside JIRA scheme, everything can be configured, and it consists of • Workflows • Issue Types • Custom Fields • Screens • Field Configuration • Notification • Permissions 24
  • 26. Jira Issue Attributes ■ Issue Attributes encompasses • Statuses • Resolutions • Priorities ■ Statuses: Different statuses are used to indicate the progress of a project like To do, InProgress, Open, Closed, Reopened, and Resolved. Likewise, you have resolutions and priorities, in resolution it again tells about the progress of issue like Fixed, Won’t fix, Duplicate, Incomplete, Cannot reproduce, Done also you can set the priorities of the issue whether an issue is critical, major, minor, blocker and Trivial. ■ 26
  • 28. Features (from the creators of JIRA) ■ Because you've got issues ■ JIRA lets you prioritise, assign, track, report and audit your 'issues,' whatever they may be — from software bugs and help-desk tickets to project tasks and change requests. ■ Reporting and statistics ■ Customisable reporting allows you to monitor the progress of your issues with detailed graphs and charts. ■ Workflow your way ■ Map your business process with a custom workflow. ■ An extensible platform ■ Integrate JIRA into your systems with our open API and 100+ free plugins.
  • 29. Issue
  • 30.
  • 32. JIRA for Scrum • Scrum: a definite project management emphasis. • Scrum Master: A Scrum project Is managed by a Scrum Master, who can be considered as much a consultant or coach as a manager. • Sprint. Scrum has a fundamental 30-day development cycle called a Sprint, preceded by – pre-Sprint activities and post-Sprint activities. • Daily Scrum: A short (less than 30 minutes) daily Scrum Meeting allows the team to monitor status and communicate problems. 32
  • 34. Cont’d • Product Backlog 🡺 Sprint Backlog 🡺 Sprint 🡺 Working increment of the Software • Scrum uses lightweight queue-based management and work-breakdown mechanisms. • Product Backlog queue: a low-tech customer-managed queue of demand requests for products. • . • Sprint: At launch time, a Sprint (30-day time-boxed iteration) does just- in-time planning • Sprint Backlog: queue for Sprint work-mgmt. 34
  • 36. Cont’d • Daily Scrum: Very notable and very visible • Is a daily standup, – except that it is the team that is participating and sharing coordination information not a central project manager. • Scrum Master – holds daily scrum and – acts more as a facilitator and runs interference for the core team when blocks or issues arise. 36
  • 37. Scrum Terminology Scrum Team: – Product Owner: – Scrum Master: – Development Team: – Product Backlog – Sprint Backlog – Sprint
  • 39. Plan Mode - Scrum ■ Prioritize the Backlog. ■ Estimate the stories ■ Create the sprints ■ Story points are available only for Epics and Stories ■ Estimations in terms of Hours also possible by configuring the board ■ Sub tasks can be created ■ The stories can be grouped under each sprint ■ The number of issues and the story points / hours are automatically displayed to make plan easier ■ At one point of time only one sprint is active
  • 40. Work Mode - Scrum
  • 41. Report Mode - Scrum ■ To track the progress in Agile, a Burndown Chart shows the actual and estimated amount of work to be done in the sprint. ■ A typical burndown chart will look somewhat like this, where the red line indicates the actual task remaining while the blue line indicates ideal task remaining during the scrum cycle. 41
  • 43. Project Name & Issue Type
  • 44. Priority of the Bug & additional attachments
  • 45. Reference links ■ Official site: http://git-scm.com/ ■ man gittutorial / git <command> --help ■ Randal Schwartz Google Tech Talk: http://www.youtube.com/watch?v=8dhZ9BXQgc4 ■ Homepage: http://www.atlassian.com/software/jira/ ■ Documentation: http://www.atlassian.com/software/jira/docs/ 45
  • 46. Address: # Addis Abeba , Ethiopia Email Address: meseretinsa@gmail.com Contact Numbers: 0912465247 46