4. Defect Tracking Software RTM Nagpur University Final Year BE Project Department of Computer Engineering , Yeshwantrao Chavan College of Engineering , Nagpur Guided By: Ms Chanda Panse Submitted By: Amitabh Mukherjee Deepit Chaturvedi Akshay Saraf Shiv Prakash
6. Defect Tracking Software What is a Defect ? September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE A software Defect is the common term used to describe an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or causes it to behave in unintended ways. Most defects arise from mistakes and errors made by people in either a program's source code or its design, and a few are caused by compilers producing incorrect code. Defects can have a wide variety of effects, with varying levels of inconvenience to the user of the program. Some defects have only a subtle effect on the program's functionality, and may thus lie undetected for a long time. More serious defects may cause the program to crash or freeze leading to a denial of service. Others qualify as security defects and might for example enable a malicious user to bypass access controls in order to obtain unauthorized privileges.
13. Resource leaks, where a finite system resource such as memory or file handles are exhausted by repeated allocation without release.
14. Buffer overflow, in which a program tries to store data past the end of allocated storage. This may or may not lead to an access violation. These defects can form a security vulnerability.
19. Comments out of date or incorrect: many programmers assume the comments accurately describe the code
20.
21. Defect Tracking Software Why is it Necessary ? Software defects are expensive. Moreover, the cost of finding and correcting defects represents one of the most expensive software development activities. For the foreseeable future, it will not be possible to eliminate defects. While defects may be inevitable, we can minimize their number and impact on our projects. To do this development teams need to implement a defect management process that focuses on preventing defects, catching defects as early in the process as possible, and minimizing the impact of defects. A little investment in this process can yield significant returns September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
23. Defect Tracking Software What are the Components of a good Defect Tracking System ? A major component of a bug tracking system is a database that records facts about known defects. Facts may include the time a bug was reported, its severity, the erroneous program behavior, and details on how to reproduce the bug; as well as the identity of the person who reported it and any programmers who may be working on fixing it. Typical bug tracking systems support the concept of the life cycle for a bug which is tracked through status assigned to the bug. A bug tracking system should allow administrators to configure permissions based on status, move the bug to another status, or delete the bug. The system should also allow administrators to configure the bug statuses and to what status a bug in a particular status can be moved to. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
24. Defect Tracking Software Why is it Critical to software development ? defects can have a wide variety of effects, with varying levels of inconvenience to the user of the program. Some defects have only a subtle effect on the program's functionality, and may thus lie undetected for a long time. More serious defects may cause the program to crash or freeze leading to a denial of service. Others qualify as security defects and might for example enable a malicious user to bypass access controls in order to obtain unauthorized privileges. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
25. Defect Tracking Software Examples of Extreme Effects of Defects Defects in the code controlling the Therac-25 radiation therapy machine were directly responsible for some patient deaths in the 1980s. In 1996, the European Space Agency's US$1 billion prototype Ariane 5 rocket was destroyed less than a minute after launch, due to a bug in the on-board guidance computer program. In June 1994, a Royal Air Force Chinook crashed into the Mull of Kintyre, killing 29. It was caused by a software bug in the aircraft's engine control computer. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
26. Defect Tracking Software Financial Implications In 2002, a study commissioned by the US Department of Commerce' National Institute of Standards and Technology concluded that software defects, or errors, are so prevalent and so detrimental that they cost the US economy an estimated $59 billion annually, or about 0.6 percent of the gross domestic product. As per GARTNER estimates the global market for testing will be about $13 bn by 2010 . And Indian IT companies would take over 70 % of testing market. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
37. Defect Tracking Software What software does Sun use for Defect Tracking ? September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Sun uses a software called BugDB , for managing its hardware and software defects . It has a rich set of user interfaces and reporting tools. It has been recently shifted from the SYBASE database to Oracle Database .
52. Defect Tracking Software What are other freely available soft wares for DTS ? September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE GNATS: GNU Bug Tracking System home page - A portable incident/bug report/help request-tracking system which runs on UNIX-like operating systems. It easily handles thousands of problem reports, has been in wide use since the early 90s, and can do most of its operations over e-mail. Several front end interfaces exist, including command line, emacs, and Tcl/Tk interfaces. There are also a number of Web (CGI) interfaces written in scripting languages like Perl and Python. IBM Rational ClearQuest - A defect and change tracking system that captures and manages all types of change requests throughout the development lifecycle. BugAware - Web based bug tracking system and help desk solution for the company intranet. Features include email alerts, advanced reporting, team management and custom fields.
54. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Problem Statement: To develop a defect tracking software for the HCL Infosystems Limited Client . This software will be used by the client in tracking the bugs and defects in the software’s overall lifecycle and deployment .Also It will be implemented in the software development process to achieve significant cost advantage arising out of defects in the software.
55.
56. software application that is designed to help programmers/users keep track of reported software defects in their work.
57. is a web based application that can be accessed throughout the organizationsAbstract:
58. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Functionalities:
66. High - The bug does not cause a failure, but causes the system to produce incorrect, incomplete, inconsistent results or impairs the system usability.
67. Medium – The bug does not cause a failure, does not impair usability, and does not interfere in the fluent work of the system and programs.
68.
69. High - This bug should be resolved as soon as possible in the normal course of development activity, before the software is released.
70. Medium – This bug should be repaired after serious bugs have been fixed.
93. Application programming interface (API) is an interface in computer science that defines the ways by which an application program may request services from libraries and/or OS.
99. DSS queries touch large amounts of data (often terabytes in size). MS-SQL Server
100. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Software Development Environment: Visual Studio 2008 It is a comprehensive set of tools that accelerates the process of turning the developer’s vision into reality.
124. IIS comes as a free component with Windows servers
125.
126. It is the world's second most popular web server in terms of overall websites.
127. Internet Information Services (IIS) 7.0 introduces a new XML-based configuration system for storing the IIS settings.
128.
129. Administration.config - This configuration file stores the settings for IIS management. These settings include the list of management modules that are installed for the IIS Manager tool, as well as configuration settings that any management module uses.
130.
131. The most flexible and cost-effective way to manage enterprise information.
178. Defect Tracking Software THE FOLLOWING POINTS WILL COVERED UNDER DATABASE 1.CREATION OF USER For creating user we have to write query as :cerate user user_name identified by password . The various privilege assign to user are 1) grant privilege 2)revoke privilege September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
179. Defect Tracking Software 2.Creating tables September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
189. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Briefly, there are many ways to connect to the Oracle database in .NET: Oracle's Data Provider for .NET called ODP (need to confirm whether Oracle 9i is supported) - this is supposedly the best way. Microsoft's data provider for Oracle - next best and comes as part of the .NET Framework base class libraries. .NET ODBC & .NET OLEDB- for performance
190. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Advantages of odm.net Wide Coverage of Oracle Features By providing access to the most advanced database functionality, dotConnect for Oracle allows developers to harness the full capabilities of the Oracle server and optimize their database applications. dotConnect for Oracle stands out as the set of components with the widest support of Oracle functionality.
191. Defect Tracking Software Software Testing Life Cycle- Phases Define testing ? Process of exercising or evaluating a system or system component by manual or automated means to verify that it satisfies specified requirement (IEEE 83a) What is Testing? process used to help identify the correctness, completeness and quality of developed computer software. Find out difference between actual and expected behavior. The process of exercising software to verify that it satisfies specified requirements of end user and to detect errors We Test !! We Test !! Why Detect programming errors - programmers, like anyone else, can make mistakes. To catch bugs/defect/errors. To check program against specifications Cost of debugging is higher after release Client/end user should not find bugs Some bugs are easier to find in testing Challenge to release a bug-free product. Verifying Documentation. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
192. Defect Tracking Software Software Testing Life Cycle- Phases Requirement Analysis The objective of Requirement Analysis is to ensure software quality by eradicating errors as earlier as possible in the development process, as the errors noticed at the end of the software life cycle are more costly compared to that of early ones, and there by validating each of the Outputs. Prepare Test Plan- Activities Prepare product requirement document Develop risk assessment criteria Identify acceptance criteria Document Testing Strategies. Design-Activities Setup test environment Design Test Cases: Requirements-based and Code-based Test Cases Execution- Activities Initial Testing, Detect and log Bugs Retesting after bug fixes Final Testing Implementation September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
193. Defect Tracking Software Software Testing Life Cycle- Phases Bug Reporting, Analysis, and Regressing Testing Detect Bugs by executing test cases Bug Reporting Analyze the Error/Defect/Bug Debugging the system Support during Acceptance-Activities Installing the software on the client’s environment Providing training for using the software or maintaining the software Inspection and Release-Activities Final Review of Testing Replication of Product Product Delivery Records Evaluate Test Effectiveness Client Acceptance Software Installation Analyze and Address the Error/Defect/Bug Final Testing and Implementation Update respective Process September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
194. Defect Tracking Software September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE Software Testing Life Cycle- Phases Support during Acceptance-Activities Installing the software on the client’s environment Providing training for using the software or maintaining the software
206. Defect Tracking Software PREST all-in-one metrics extraction and analysis tool it is freely available It extracts 22 to 26 static code attributes in different granularities, i.e. package, class, file, method level It is able to parse programming languages such as C, C++, Java, JSP, PL/SQL forms a dependency matrix that keeps inter-relations between modules of the software systems. a simple user interface September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
207. Defect Tracking Software SOME IMPORTANT TERMS Versioning Control Systems (VCS) are useful for recording the history of documents edited by several developers. History Touch (HT). We define a history touch to be one of the commit actions where changes made by developers are submitted and include modifying, adding or removing files. History. The history of a file subsumes all HTs that occurred to that file from its birth until present Release is a point in time in the history of a project which denotes that a new or upgraded version is available. Defect count is the number of defects identified in a file. The file a is more fault-prone than the file b if the defect count of the file ais higher than the defect count of the file b. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
208. ANALYSIS OF SOME SOFTWARES… September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
209. Defect Tracking Software Mann-Whitney nonparametric TEST Definition: A non-parametric test (distribution-free) used to compare two independent groups of sampled data. Assumptions: Unlike the parametric t-test, this non-parametric makes no assumptions about the distribution of the data (e.g., normality). Test: The hypotheses for the comparison of two independent groups are: Ho: The two samples come from identical populations Ha: The two samples come from different populations September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
210. Defect Tracking Software MANN-WHITNEY TEST EXAMPLE September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
211. Defect Tracking Software Constructive Quality Modeling for Defect Density Prediction: COQUALMO COQUALMO predicts the defect density of the software under development where defects conceptually flow into a holding tank through various defect introduction pipes and are removed through various defect removal pipes. COQUALMO consists of 2 sub-models, namely the Defect Introduction (DI) model the Defect Removal (DR)model September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
212. Defect Tracking Software PHASE 1:DEFECT ANALYSIS September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
213. Defect Tracking Software PHASE 1:ROOT CAUSE ANALYSIS September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
214. Defect Tracking Software PHASE II: BUG TRACING AND MATCHING planned to store defect data, i.e. test and production defects. collect metrics from the completed versions of projects and match the bugs as well. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
215. Defect Tracking Software PHASE III: DEFECT PREDICTION MODELLING construct prediction model with the data collected We decided using three measures: probability of detection, pd probability of false alarm, pf balance from signal detection theory September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
216. Defect Tracking Software FIRST STEP… September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
217. Defect Tracking Software SECOND STEP… Extract data on defects occurring in other softwares Add data to the software database Introduce defects based on the data provided Some softwares : Agilent Feature Extraction Software Prest Six Sigma Software Metrics Fact Extraction Tool Chain September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
218. Defect Tracking Software Spiral Model September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
219. Defect Tracking Software Plug-in applications Plug-in applications are programs that can easily be installed and used as part of your Web browser. Initially, the Netscape browser allowed you to download, install, and define supplementary programs that played sound or motion video or performed other functions. These were called helper applications. A plug-in application is recognized automatically by the browser and its function is integrated into the main HTML file that is being presented. September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
220. Defect Tracking Software Examples of applications and their plug-ins Microsoft Office uses plug-ins (better known as add-ins) to extend the capabilities of its application by adding custom commands and specialized features Rockbox, a firmware for digital audio players, can use plug-ins, for example: play games, use the text editor Email clients use plug-ins to decrypt and encrypt email (Pretty Good Privacy) or to send oversized email attachments (Globalscape Mail Express) Graphics software use plug-ins to support file formats and process images (Adobe Photoshop) Media players use plug-ins to support file formats and apply filters (foobar2000, GStreamer, Quintessential, VST, Winamp, XMMS) Packet sniffers use plug-ins to decode packet formats (OmniPeek) Remote sensing applications use plug-ins to process data from different sensor types (Opticks) Software development environments use plug-ins to support programming languages (Eclipse, jEdit, MonoDevelop) Web browsers use plug-ins to play video and presentation formats (Flash, QuickTime, Microsoft Silverlight, 3DMLW)
221. Defect Tracking Software MECHANISM OF PLUG-INS September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
222. Defect Tracking Software 2010The IASTED International Conference on Software Engineering Innsbruck, Austria,February 16 – 18, 2010 [Deadline: September 15, 2009 ] September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
223. Defect Tracking Software ICCSN 2010 2010 International Conference on Communication Software and NetworksSingapore, February 26-28, 2010[Deadline: October 1, 2009] September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
224. Defect Tracking Software ICCAE 2010 2nd International Conference on Computer and Automation EngineeringSingapore, February 26-28, 2010[Deadline: October 10, 2009] September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE
225. Defect Tracking Software ICACC 2010 2nd International Conference on Advanced Computer ControlShenyang, China, March 27-29, 2010[Deadline: November 5, 2009] September 4, 2009 DTS | Final Year Project | Dept. of CT,YCCE