SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
An evaluation of the pragmatics of
    web-based bug tracking tools
Proc. 2nd Intl. Conf. on the
Pragmatic Web
Tilburg, Netherlands
23 Oct 2007


                                   Harry S. Delugach
                             Intelligent Systems Laboratory
                            Computer Science Department
                       Univ. of Alabama in Huntsville, USA


                                      Intelligent Systems Laboratory
Context of inquiry
● Why web-based tools to support software
  development?
  – Distributed environments, or at least where the
    participants might have difficulty meeting
    regularly face-to-face
  – Web-based tools allow them to collaborate in a
    generally cost-effective way
  – Large number of activities and artifacts to be
    created and maintained


                                    Intelligent Systems Laboratory
Difficulty with tools
● Effectiveness is determined by how well
  participants understand how to use them.
● Mere use of tools is not sufficient to support an
  effective process.
● Much current work is focused on characteristics of
  artifacts or products
● This work focuses on the roles and purposes of the
  participants



                                     Intelligent Systems Laboratory
Purpose in developing models
● To better characterize and describe the
  processes themselves
● To formally analyze and evaluate tools with
  respect to generally accepted process
  models
● To formally compare and contrast the
  models with each other
● To arrive at a shared process model among
  developers

                               Intelligent Systems Laboratory
Techniques
● Workflow modeling
● Software problem tracking
  – sometimes called “bug tracking”
● Conceptual graphs:
  – a convenient formalism
  – easily understood visualization aid to represent
    the models



                                    Intelligent Systems Laboratory
Workflow modeling
● Aim is to provide framework for describing and
  evaluating software development processes
● Neutral with respect to being either normative or
  descriptive.
● Being “informal” does not render a model incapable
  of being modeled
● We assume that developing a model of a process
  is generally more useful than not modeling it at all.



                                     Intelligent Systems Laboratory
Workflow step
● Starting with RENISYS
  – An organizational role has particular obligations
    to an activity, and an intention to accomplish




                                    Intelligent Systems Laboratory
Beyond RENISYS
● Include concept “Intention” with respect to a role in
  the process.
   – Previous models show only the obligations (required,
     allowed, prohibited) of a particular role.
   – No indication as to why a particular role would be given a
     particular assignment.
   – For example, why would a program manager be required
     to review a change, or why would a developer be
     allowed (but not required) to make a change?
● Include status with respect to that intention


                                          Intelligent Systems Laboratory
Software problem tracking process
● Part of software configuration management (SCM)
● Many people involved
● Issues to consider:
  – Who is involved?
  – What are stakeholders’ roles in the process’s success?
  – What responsibilities do they hold with respect to the
    system?
  – What are their communication needs with other
    stakeholders?



                                         Intelligent Systems Laboratory
Modeling problem resolution processes

● Bug-tracking is one kind of problem
  resolution process.
● Standard ISO/IEC 12207.0 clause 6.8
● Processes supported/implied by tools
  – Bugzilla
  – Trac
  – sourceforge



                               Intelligent Systems Laboratory
Existing tools and processes
● No explicit set of roles which are defined in the
  process
● Most tools seem implicitly geared toward a
  particular change control process
● Some of them appear to imply certain role
● Others appear role-neutral.
● Generic models for software engineering
  processes



                                     Intelligent Systems Laboratory
Ontology for bug tracking




                    Intelligent Systems Laboratory
Model for reporting a bug




                     Intelligent Systems Laboratory
Model for fixing a bug




                     Intelligent Systems Laboratory
Validation of model graphs
● Data mining
  – Use conceptual graph tools to scan the wealth of
    existing data (e.g., Ripoche and Sansonnet)
  – Emails, forum posts, program source code
    comments identifier names in programs
● Human subjects
  – Paraphrasing graphs in natural language
  – Analyze comparison graphs


                                  Intelligent Systems Laboratory
ISO/IEC 12207 process
“… all detected problems are promptly reported and
entered into the Problem Resolution Process; action is
initiated on them; relevant parties are advised of the
existence of the problem as appropriate; causes are
identified, analyzed, and, where possible, eliminated;
resolution and disposition are achieved; status is tracked
and reported…”

● Described by text in passive voice
  – E.g., reported by whom, to whom, who initiates
    action, etc.


                                         Intelligent Systems Laboratory
ISO/IEC 12207 process model




                   Intelligent Systems Laboratory
ISO/IEC 12207 process model
● What’s missing?




                    Intelligent Systems Laboratory
Bugzilla bug tracking




                        Intelligent Systems Laboratory
Bugzilla’s model
● Nothing missing!




                     Intelligent Systems Laboratory
Sourceforge bug tracking
● Assignee - The project administrator to
  which a tracker item is assigned. Can be
  chosen from one of the administrators
  registered in this project.
● Status - This is the (potentially changing)
  current status of a bug.
● Priority – a nine-level scale.
● Category – project-specific.
● Group – project-specific.

                                   Intelligent Systems Laboratory
Status?
 ●The online help says:
   You can set the status to 'Pending' if you are
   waiting for a response from the tracker item
   author. When the author responds the status is
   automatically reset to that of 'Open'. Otherwise, if
   the author doesn't respond within an admin-
   defined amount of time (default is 14 days) then
   the item is given a status of 'Deleted'.

 ●Suggests definitions and process


                                    Intelligent Systems Laboratory
What does “support” a process mean?
● Consider the attributes of “category” and
  “group”
  – Each project administrator can choose them
    based on their own preferences.
  – Automated bug tracker has no capability to:
     • Relate categories or groups to each other, or
     • To accommodate constraints between particular
       categories, groups or values of the other attributes
       (except for the ability to search the bug list by value).
         For example, are “category” and “group” orthogonal to each
          other, or is a group a sub-category, etc.?


                                             Intelligent Systems Laboratory
Modeling “status”
● One educator reports:
  – “if the phrases describing subtask status are not defined,
    different student teams often give different meanings to
    the same phrase. Even worse, sometimes, different
    members in the same team would interpret the same
    phrase differently.”
● Need to define status phrases indicating which role
  and process are involved
  – e.g., the status “Ready for Review” meant ready to be
    reviewed by the quality assurance (QA) role on the team.
    A better way to name this would be an explicit “Ready for
    Review by QA” status.


                                         Intelligent Systems Laboratory
Status as a derived concept
● Process perspective: item’s status reflects
  the process that produced it




                                Intelligent Systems Laboratory
Summary
● Many current tools are incomplete with respect to
  organizational needs
  – Because tools do not address the issues of why
    someone is authorized (or not) to make a change to an
    item’s status, it is likely for a bug’s status to be
    inconsistent with a process
● The advantages of using conceptual graphs to
  represent the processes
  – Have the potential to be formally manipulated and
    compared
  – Are well-defined as in ISO/IEC 24707 (Common Logic)
  – Provide an easily understood visual description of the
    process for developers and analysts.
                                        Intelligent Systems Laboratory
Next steps
● Empirical validation of the approach.
  – compare the performance and experience of software
    engineering project teams
     • some teams using conventional approaches and others using
       the pragmatically supported approach.
  – incorporate the ideas into an existing production-level
    software organization (assuming they already perform
    sufficient metrics on their process)
  – perform some linguistic analyses of various natural
    language used or produced in software development,
    especially in distributed communities where a large
    portion of the interaction takes place through electronic
    means.

                                            Intelligent Systems Laboratory
Further steps
● Study the subsequent process of actually
  correcting the bugs identified during the process,
  with duties and responsibilities assigned to
  appropriate roles
  – Involves a superset of the same roles involved in
    problem tracking.
● Compare different organizations’ processes to find
  common elements, and (likely) missing elements;
  this is a natural next step.
● Identify where processes actually conflict with each
  other.

                                        Intelligent Systems Laboratory

Contenu connexe

Tendances

REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisAbhilasha Lahigude
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and designPreeti Mishra
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineeringRupesh Vaishnav
 
Software Engineering - chp4- design patterns
Software Engineering - chp4- design patternsSoftware Engineering - chp4- design patterns
Software Engineering - chp4- design patternsLilia Sfaxi
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software EngineeringMichelle Azuelo
 
What is system level analysis
What is system level analysisWhat is system level analysis
What is system level analysisCAST
 
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance BugsNavigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance BugsSebastian Baltes
 
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?PVS-Studio
 
Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design IntroductionUsman Khan
 
Intro to Software Engineering - Software Design
Intro to Software Engineering - Software DesignIntro to Software Engineering - Software Design
Intro to Software Engineering - Software DesignRadu_Negulescu
 
9 requirements engineering2
9 requirements engineering29 requirements engineering2
9 requirements engineering2Lilia Sfaxi
 
Software requirement enginering
Software requirement engineringSoftware requirement enginering
Software requirement engineringWajid Ali
 
Requirements Management Using Innoslate
Requirements Management Using InnoslateRequirements Management Using Innoslate
Requirements Management Using InnoslateElizabeth Steiner
 

Tendances (20)

SDLC Models
SDLC ModelsSDLC Models
SDLC Models
 
System development methodologies
System development methodologiesSystem development methodologies
System development methodologies
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
Object oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysisObject oriented analysis &design - requirement analysis
Object oriented analysis &design - requirement analysis
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Software Engineering - chp4- design patterns
Software Engineering - chp4- design patternsSoftware Engineering - chp4- design patterns
Software Engineering - chp4- design patterns
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software Engineering
 
What is system level analysis
What is system level analysisWhat is system level analysis
What is system level analysis
 
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance BugsNavigate, Understand, Communicate: How Developers Locate Performance Bugs
Navigate, Understand, Communicate: How Developers Locate Performance Bugs
 
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
Why Don't Software Developers Use Static Analysis Tools to Find Bugs?
 
Software Architecture and Design Introduction
Software Architecture and Design IntroductionSoftware Architecture and Design Introduction
Software Architecture and Design Introduction
 
Intro to Software Engineering - Software Design
Intro to Software Engineering - Software DesignIntro to Software Engineering - Software Design
Intro to Software Engineering - Software Design
 
System Development Life Cycle (SDLC) - Part I
System Development Life Cycle (SDLC)  - Part ISystem Development Life Cycle (SDLC)  - Part I
System Development Life Cycle (SDLC) - Part I
 
9 requirements engineering2
9 requirements engineering29 requirements engineering2
9 requirements engineering2
 
Software requirement enginering
Software requirement engineringSoftware requirement enginering
Software requirement enginering
 
Requirements Analysis
Requirements AnalysisRequirements Analysis
Requirements Analysis
 
Introduction
IntroductionIntroduction
Introduction
 
Requirements Management Using Innoslate
Requirements Management Using InnoslateRequirements Management Using Innoslate
Requirements Management Using Innoslate
 
Software Design Concepts
Software Design ConceptsSoftware Design Concepts
Software Design Concepts
 

En vedette

ICPW2007.AgerfalkSjostrom
ICPW2007.AgerfalkSjostromICPW2007.AgerfalkSjostrom
ICPW2007.AgerfalkSjostrompragmaticweb
 
ICPW2007.deLeenheerChristiaens
ICPW2007.deLeenheerChristiaensICPW2007.deLeenheerChristiaens
ICPW2007.deLeenheerChristiaenspragmaticweb
 

En vedette (7)

ICPW2007.Aakhus
ICPW2007.AakhusICPW2007.Aakhus
ICPW2007.Aakhus
 
ICPW2007.Hoffman
ICPW2007.HoffmanICPW2007.Hoffman
ICPW2007.Hoffman
 
ICPW2007.deWaard
ICPW2007.deWaardICPW2007.deWaard
ICPW2007.deWaard
 
ICPW2007.AgerfalkSjostrom
ICPW2007.AgerfalkSjostromICPW2007.AgerfalkSjostrom
ICPW2007.AgerfalkSjostrom
 
ICPW2007.Yetim
ICPW2007.YetimICPW2007.Yetim
ICPW2007.Yetim
 
ICPW2007.deLeenheerChristiaens
ICPW2007.deLeenheerChristiaensICPW2007.deLeenheerChristiaens
ICPW2007.deLeenheerChristiaens
 
ICPW2007.Paschke
ICPW2007.PaschkeICPW2007.Paschke
ICPW2007.Paschke
 

Similaire à Evaluation of Web-Based Bug Tracking Tools

Software Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesSoftware Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesKiran Munir
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingRachel Davis
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020Ralf Laemmel
 
Programming Fundamentals lecture 3
Programming Fundamentals lecture 3Programming Fundamentals lecture 3
Programming Fundamentals lecture 3REHAN IJAZ
 
Different Approaches To Sys Bldg
Different Approaches To Sys BldgDifferent Approaches To Sys Bldg
Different Approaches To Sys BldgUSeP
 
03 module2-090710094221-phpapp02
03 module2-090710094221-phpapp0203 module2-090710094221-phpapp02
03 module2-090710094221-phpapp02Asadullah Tareen
 
System_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.pptSystem_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.pptMarissaPedragosa
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptHumzaWaris1
 
Managing Software Project
Managing Software ProjectManaging Software Project
Managing Software ProjectAnas Bilal
 
Wireless-XObject-Oriented System Analysis and DesignOb.docx
Wireless-XObject-Oriented System Analysis and DesignOb.docxWireless-XObject-Oriented System Analysis and DesignOb.docx
Wireless-XObject-Oriented System Analysis and DesignOb.docxambersalomon88660
 
But Did You Test It
But Did You Test ItBut Did You Test It
But Did You Test ItRuth Blakely
 

Similaire à Evaluation of Web-Based Bug Tracking Tools (20)

Design For Testability
Design For TestabilityDesign For Testability
Design For Testability
 
Software Requirements Engineering Methodologies
Software Requirements Engineering MethodologiesSoftware Requirements Engineering Methodologies
Software Requirements Engineering Methodologies
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application Testing
 
Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)Unit 4(nlp _neural_network)
Unit 4(nlp _neural_network)
 
Keynote at-icpc-2020
Keynote at-icpc-2020Keynote at-icpc-2020
Keynote at-icpc-2020
 
Programming Fundamentals lecture 3
Programming Fundamentals lecture 3Programming Fundamentals lecture 3
Programming Fundamentals lecture 3
 
Different Approaches To Sys Bldg
Different Approaches To Sys BldgDifferent Approaches To Sys Bldg
Different Approaches To Sys Bldg
 
03 module2-090710094221-phpapp02
03 module2-090710094221-phpapp0203 module2-090710094221-phpapp02
03 module2-090710094221-phpapp02
 
Csse
CsseCsse
Csse
 
System_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.pptSystem_Analysis_and_Design_Assignment_New2.ppt
System_Analysis_and_Design_Assignment_New2.ppt
 
software engineering
software engineering software engineering
software engineering
 
Ch07
Ch07Ch07
Ch07
 
Ch07
Ch07Ch07
Ch07
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.ppt
 
16346915.ppt
16346915.ppt16346915.ppt
16346915.ppt
 
Slcm sharbani bhattacharya
Slcm sharbani bhattacharyaSlcm sharbani bhattacharya
Slcm sharbani bhattacharya
 
Managing Software Project
Managing Software ProjectManaging Software Project
Managing Software Project
 
Wireless-XObject-Oriented System Analysis and DesignOb.docx
Wireless-XObject-Oriented System Analysis and DesignOb.docxWireless-XObject-Oriented System Analysis and DesignOb.docx
Wireless-XObject-Oriented System Analysis and DesignOb.docx
 
Computers in management
Computers in managementComputers in management
Computers in management
 
But Did You Test It
But Did You Test ItBut Did You Test It
But Did You Test It
 

Dernier

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Dernier (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Evaluation of Web-Based Bug Tracking Tools

  • 1. An evaluation of the pragmatics of web-based bug tracking tools Proc. 2nd Intl. Conf. on the Pragmatic Web Tilburg, Netherlands 23 Oct 2007 Harry S. Delugach Intelligent Systems Laboratory Computer Science Department Univ. of Alabama in Huntsville, USA Intelligent Systems Laboratory
  • 2. Context of inquiry ● Why web-based tools to support software development? – Distributed environments, or at least where the participants might have difficulty meeting regularly face-to-face – Web-based tools allow them to collaborate in a generally cost-effective way – Large number of activities and artifacts to be created and maintained Intelligent Systems Laboratory
  • 3. Difficulty with tools ● Effectiveness is determined by how well participants understand how to use them. ● Mere use of tools is not sufficient to support an effective process. ● Much current work is focused on characteristics of artifacts or products ● This work focuses on the roles and purposes of the participants Intelligent Systems Laboratory
  • 4. Purpose in developing models ● To better characterize and describe the processes themselves ● To formally analyze and evaluate tools with respect to generally accepted process models ● To formally compare and contrast the models with each other ● To arrive at a shared process model among developers Intelligent Systems Laboratory
  • 5. Techniques ● Workflow modeling ● Software problem tracking – sometimes called “bug tracking” ● Conceptual graphs: – a convenient formalism – easily understood visualization aid to represent the models Intelligent Systems Laboratory
  • 6. Workflow modeling ● Aim is to provide framework for describing and evaluating software development processes ● Neutral with respect to being either normative or descriptive. ● Being “informal” does not render a model incapable of being modeled ● We assume that developing a model of a process is generally more useful than not modeling it at all. Intelligent Systems Laboratory
  • 7. Workflow step ● Starting with RENISYS – An organizational role has particular obligations to an activity, and an intention to accomplish Intelligent Systems Laboratory
  • 8. Beyond RENISYS ● Include concept “Intention” with respect to a role in the process. – Previous models show only the obligations (required, allowed, prohibited) of a particular role. – No indication as to why a particular role would be given a particular assignment. – For example, why would a program manager be required to review a change, or why would a developer be allowed (but not required) to make a change? ● Include status with respect to that intention Intelligent Systems Laboratory
  • 9. Software problem tracking process ● Part of software configuration management (SCM) ● Many people involved ● Issues to consider: – Who is involved? – What are stakeholders’ roles in the process’s success? – What responsibilities do they hold with respect to the system? – What are their communication needs with other stakeholders? Intelligent Systems Laboratory
  • 10. Modeling problem resolution processes ● Bug-tracking is one kind of problem resolution process. ● Standard ISO/IEC 12207.0 clause 6.8 ● Processes supported/implied by tools – Bugzilla – Trac – sourceforge Intelligent Systems Laboratory
  • 11. Existing tools and processes ● No explicit set of roles which are defined in the process ● Most tools seem implicitly geared toward a particular change control process ● Some of them appear to imply certain role ● Others appear role-neutral. ● Generic models for software engineering processes Intelligent Systems Laboratory
  • 12. Ontology for bug tracking Intelligent Systems Laboratory
  • 13. Model for reporting a bug Intelligent Systems Laboratory
  • 14. Model for fixing a bug Intelligent Systems Laboratory
  • 15. Validation of model graphs ● Data mining – Use conceptual graph tools to scan the wealth of existing data (e.g., Ripoche and Sansonnet) – Emails, forum posts, program source code comments identifier names in programs ● Human subjects – Paraphrasing graphs in natural language – Analyze comparison graphs Intelligent Systems Laboratory
  • 16. ISO/IEC 12207 process “… all detected problems are promptly reported and entered into the Problem Resolution Process; action is initiated on them; relevant parties are advised of the existence of the problem as appropriate; causes are identified, analyzed, and, where possible, eliminated; resolution and disposition are achieved; status is tracked and reported…” ● Described by text in passive voice – E.g., reported by whom, to whom, who initiates action, etc. Intelligent Systems Laboratory
  • 17. ISO/IEC 12207 process model Intelligent Systems Laboratory
  • 18. ISO/IEC 12207 process model ● What’s missing? Intelligent Systems Laboratory
  • 19. Bugzilla bug tracking Intelligent Systems Laboratory
  • 20. Bugzilla’s model ● Nothing missing! Intelligent Systems Laboratory
  • 21. Sourceforge bug tracking ● Assignee - The project administrator to which a tracker item is assigned. Can be chosen from one of the administrators registered in this project. ● Status - This is the (potentially changing) current status of a bug. ● Priority – a nine-level scale. ● Category – project-specific. ● Group – project-specific. Intelligent Systems Laboratory
  • 22. Status? ●The online help says: You can set the status to 'Pending' if you are waiting for a response from the tracker item author. When the author responds the status is automatically reset to that of 'Open'. Otherwise, if the author doesn't respond within an admin- defined amount of time (default is 14 days) then the item is given a status of 'Deleted'. ●Suggests definitions and process Intelligent Systems Laboratory
  • 23. What does “support” a process mean? ● Consider the attributes of “category” and “group” – Each project administrator can choose them based on their own preferences. – Automated bug tracker has no capability to: • Relate categories or groups to each other, or • To accommodate constraints between particular categories, groups or values of the other attributes (except for the ability to search the bug list by value).  For example, are “category” and “group” orthogonal to each other, or is a group a sub-category, etc.? Intelligent Systems Laboratory
  • 24. Modeling “status” ● One educator reports: – “if the phrases describing subtask status are not defined, different student teams often give different meanings to the same phrase. Even worse, sometimes, different members in the same team would interpret the same phrase differently.” ● Need to define status phrases indicating which role and process are involved – e.g., the status “Ready for Review” meant ready to be reviewed by the quality assurance (QA) role on the team. A better way to name this would be an explicit “Ready for Review by QA” status. Intelligent Systems Laboratory
  • 25. Status as a derived concept ● Process perspective: item’s status reflects the process that produced it Intelligent Systems Laboratory
  • 26. Summary ● Many current tools are incomplete with respect to organizational needs – Because tools do not address the issues of why someone is authorized (or not) to make a change to an item’s status, it is likely for a bug’s status to be inconsistent with a process ● The advantages of using conceptual graphs to represent the processes – Have the potential to be formally manipulated and compared – Are well-defined as in ISO/IEC 24707 (Common Logic) – Provide an easily understood visual description of the process for developers and analysts. Intelligent Systems Laboratory
  • 27. Next steps ● Empirical validation of the approach. – compare the performance and experience of software engineering project teams • some teams using conventional approaches and others using the pragmatically supported approach. – incorporate the ideas into an existing production-level software organization (assuming they already perform sufficient metrics on their process) – perform some linguistic analyses of various natural language used or produced in software development, especially in distributed communities where a large portion of the interaction takes place through electronic means. Intelligent Systems Laboratory
  • 28. Further steps ● Study the subsequent process of actually correcting the bugs identified during the process, with duties and responsibilities assigned to appropriate roles – Involves a superset of the same roles involved in problem tracking. ● Compare different organizations’ processes to find common elements, and (likely) missing elements; this is a natural next step. ● Identify where processes actually conflict with each other. Intelligent Systems Laboratory