Object-oriented program slicing

In academic environments, little lecture time is devoted to debugging. Similarly, training in program debugging is rarely found in the industrial environment. Programmers often find debugging to be a difficult and slow process. Traditional debugging methods include desk reviewing the source code, dy...

Full description

Saved in:
Bibliographic Details
Main Author: Law, Chun Hung Roberts
Format: Dissertation
Language:English
Published: ProQuest Dissertations & Theses 01.01.1994
Subjects:
ISBN:031595812X, 9780315958128
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract In academic environments, little lecture time is devoted to debugging. Similarly, training in program debugging is rarely found in the industrial environment. Programmers often find debugging to be a difficult and slow process. Traditional debugging methods include desk reviewing the source code, dynamic tracing with display statements, and ad hoc testing with various inputs. However, programmers are flooded with program entities which are irrelevant to the incorrect behaviour of a program. This problem gets worse as program size grows. In other words, the unrelated information in a program often distracts the programmer from locating a bug during the debugging process. Program slicing is a fault localization technique introduced by Weiser (Weis82, Weis84). The application of program slicing to a computer program can generate a portion of code (called a 'slice') which contains a subset of the original program statements. The statements in a slice are chosen to be relevant to the computation of a particular variable. Studies have demonstrated that program slicing can assist a programmer in locating a bug (Weis84, Lyle84, and Law93). Although object-oriented programming is becoming very popular, there is an absence of effective fault localization tools for object-oriented programming systems. The goal of this dissertation is to investigate the feasibility of incorporating program slicing into object-oriented programming. The concept of Object-Oriented Program Slicing is introduced in this dissertation. Based on this concept, we developed a high level debugging tool called UR$\sb-$OOPS (University of Regina Object-Oriented Program Slicer). UR$\sb-$OOPS can analyze a C++ program and perform a rapid computation of an object-oriented slice with respect to a particular class. This object-oriented slice helps a programmer locate the fault which causes the incorrect behaviour of an instance of a specific class. In this dissertation, the concept of Leaner Object-Oriented Slicing is also introduced in order to perform extra code reduction from an object-oriented slice. This concept was implemented in UR$\sb-$OOPS as well. This concept is important as it further reduces the amount of information that a programmer must examine. UR$\sb-$OOPS is evaluated in two separate but related experiments with human subjects in this dissertation. The evaluations were performed by comparing the debugging performance between visual debugging and debugging using UR$\sb-$OOPS. Experimental results indicate that using UR$\sb-$OOPS for debugging is faster than using visual debugging. Additionally, UR$\sb-$OOPS provides improved assistance to programmers with larger programs in the context of fault localization.
AbstractList In academic environments, little lecture time is devoted to debugging. Similarly, training in program debugging is rarely found in the industrial environment. Programmers often find debugging to be a difficult and slow process. Traditional debugging methods include desk reviewing the source code, dynamic tracing with display statements, and ad hoc testing with various inputs. However, programmers are flooded with program entities which are irrelevant to the incorrect behaviour of a program. This problem gets worse as program size grows. In other words, the unrelated information in a program often distracts the programmer from locating a bug during the debugging process. Program slicing is a fault localization technique introduced by Weiser (Weis82, Weis84). The application of program slicing to a computer program can generate a portion of code (called a 'slice') which contains a subset of the original program statements. The statements in a slice are chosen to be relevant to the computation of a particular variable. Studies have demonstrated that program slicing can assist a programmer in locating a bug (Weis84, Lyle84, and Law93). Although object-oriented programming is becoming very popular, there is an absence of effective fault localization tools for object-oriented programming systems. The goal of this dissertation is to investigate the feasibility of incorporating program slicing into object-oriented programming. The concept of Object-Oriented Program Slicing is introduced in this dissertation. Based on this concept, we developed a high level debugging tool called UR$\sb-$OOPS (University of Regina Object-Oriented Program Slicer). UR$\sb-$OOPS can analyze a C++ program and perform a rapid computation of an object-oriented slice with respect to a particular class. This object-oriented slice helps a programmer locate the fault which causes the incorrect behaviour of an instance of a specific class. In this dissertation, the concept of Leaner Object-Oriented Slicing is also introduced in order to perform extra code reduction from an object-oriented slice. This concept was implemented in UR$\sb-$OOPS as well. This concept is important as it further reduces the amount of information that a programmer must examine. UR$\sb-$OOPS is evaluated in two separate but related experiments with human subjects in this dissertation. The evaluations were performed by comparing the debugging performance between visual debugging and debugging using UR$\sb-$OOPS. Experimental results indicate that using UR$\sb-$OOPS for debugging is faster than using visual debugging. Additionally, UR$\sb-$OOPS provides improved assistance to programmers with larger programs in the context of fault localization.
Author Law, Chun Hung Roberts
Author_xml – sequence: 1
  givenname: Chun
  surname: Law
  middlename: Hung Roberts
  fullname: Law, Chun Hung Roberts
BookMark eNotjrkKAjEUAAMqeH6DYr-Qe5NSxAsEGws7SV5eZEWzuln_3wWtppuZMemnOmGPjKlgyirD-GVIZjlXnlJqhaCSj8j85O8IbVE3FaYWw-LV1LfGPRf5UUGVblMyiO6RcfbnhJy3m_N6XxxPu8N6dSy8sbYQ0oAujYylCREDB60VOB6dR6WD96ACwxid0hasAA0eQlTcxTIYxz0XE7L8abv8-4O5vd7rT5O64rX7ZFxKZsUXvWE8Ug
ContentType Dissertation
Copyright Database copyright ProQuest LLC; ProQuest does not claim copyright in the individual underlying works.
Copyright_xml – notice: Database copyright ProQuest LLC; ProQuest does not claim copyright in the individual underlying works.
DBID 053
0BH
0HZ
0OZ
CBPLH
EU9
G20
M8-
PHGZT
PKEHL
PQEST
PQQKQ
PQUKI
DatabaseName Dissertations & Theses Europe Full Text: Science & Technology
ProQuest Dissertations and Theses Professional
Dissertations & Theses @ Library and Archives Canada
Dissertations & Theses @ University of Regina
ProQuest Dissertations & Theses Global: The Sciences and Engineering Collection
ProQuest Dissertations & Theses A&I
ProQuest Dissertations & Theses Global
ProQuest Dissertations and Theses A&I: The Sciences and Engineering Collection
ProQuest One Academic (New)
ProQuest One Academic Middle East (New)
ProQuest One Academic Eastern Edition (DO NOT USE)
ProQuest One Academic (retired)
ProQuest One Academic UKI Edition
DatabaseTitle ProQuest One Academic Middle East (New)
ProQuest One Academic Eastern Edition
ProQuest Dissertations & Theses Global: The Sciences and Engineering Collection
ProQuest Dissertations and Theses Professional
ProQuest Dissertations and Theses A&I: The Sciences and Engineering Collection
ProQuest Dissertations & Theses Global
Dissertations & Theses Europe Full Text: Science & Technology
Dissertations & Theses @ Library and Archives Canada
ProQuest One Academic UKI Edition
Dissertations & Theses @ University of Regina
ProQuest One Academic
ProQuest Dissertations & Theses A&I
ProQuest One Academic (New)
DatabaseTitleList ProQuest One Academic Middle East (New)
Database_xml – sequence: 1
  dbid: G20
  name: ProQuest Dissertations & Theses Global
  url: https://www.proquest.com/pqdtglobal1
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
ExternalDocumentID 741833061
Genre Dissertation/Thesis
GroupedDBID 053
0BH
0HZ
0OZ
123
8R4
8R5
CBPLH
EU9
G20
M8-
PHGZT
PKEHL
PQEST
PQQKQ
PQUKI
Q2X
ID FETCH-LOGICAL-b899-348c6784f78dfed2c665ca2fabe56dbbc5d1effa569c93c6cbcdf52af7d8a2b23
IEDL.DBID G20
ISBN 031595812X
9780315958128
IngestDate Mon Jun 30 05:14:37 EDT 2025
IsPeerReviewed false
IsScholarly false
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-b899-348c6784f78dfed2c665ca2fabe56dbbc5d1effa569c93c6cbcdf52af7d8a2b23
Notes SourceType-Dissertations & Theses-1
ObjectType-Dissertation/Thesis-1
content type line 12
PQID 304124419
PQPubID 18750
ParticipantIDs proquest_journals_304124419
PublicationCentury 1900
PublicationDate 19940101
PublicationDateYYYYMMDD 1994-01-01
PublicationDate_xml – month: 01
  year: 1994
  text: 19940101
  day: 01
PublicationDecade 1990
PublicationYear 1994
Publisher ProQuest Dissertations & Theses
Publisher_xml – name: ProQuest Dissertations & Theses
SSID ssib000933042
Score 1.2623152
Snippet In academic environments, little lecture time is devoted to debugging. Similarly, training in program debugging is rarely found in the industrial environment....
SourceID proquest
SourceType Aggregation Database
SubjectTerms Computer science
Title Object-oriented program slicing
URI https://www.proquest.com/docview/304124419
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV07T0MhFD7R6mAc6jNqfdzBleiFy2tyUBsHUx06dGvgAIlLq73V3y8gV5uYuDgSQgIBznfeH8Cl8jwIYWjy3CNpHNUk2iqeBOY96kb7a5e76z_K0UhNJvq55Oa0Ja2yk4lZULs5Jh_5Fcs8yU2tb17fSCKNSsHVwqCxDhupuDbX-q5qPz_GOouozSOWdT13urH6JYIzrgz7_9zRDmzfrcTTd2HNz_ag3zE1VOXj7sPFk03-lrQ-9eB0VUnLqqKWiRG8DmA8vB_fPpBCjUBsNJAIaxRGlGmCVC54R1EIjoYGYz0XzlrkrvYhGC40aoYCLbrAqQnSKUMtZYfQm81n_giqwCSThmkVZ1NMz2CtpY9aQ2BGG-6OYdCdflqedzv9PvrJn7MD2PpqPZw8FqfQWy7e_Rls4sfypV2c58v6BIvhnso
linkProvider ProQuest
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1V07T0IxFD4haKJxwGdUVO6gY6O0t73tYBxEAgHRgYHtps_EBRRQ43_yR9pebpXExI3BsenSnLbfefT0-wDOuaWOMYlD5V6j1GCBfK5ikSPWapEKe2UKdv1-Nhjw0Ug8VuAz_oUJbZUREwugNhMdauSXpNBJTpvi5vkFBdGo8LgaFTQWp6JnP959xja77rb89l5g3L4b3nZQKSqAlE8tEEm59vicuowbZw3WjFEtsZPKUmaU0tQ0rXOSMqEF0UwrbRzF0mWGS6wCzYEH_LU0EN2Fr8XLwdZPbYD4IIF61xkpfuKY_0L8wo21a__LANuw1VrqFtiBih3vQi3qUCQlLO1B40GFalJYbmAYNUnZdJb4GFp717wPw1Us8QCq48nYHkLiSEYySQT3s-HFUuqmyKyPiRyRQlJzBPVo7Ly8vLP829LHf842YKMzvO_n_e6gV4fNBclyqM2cQHU-fbWnsK7f5k-z6VlxThLIV7wtX7V_AA4
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adissertation&rft.genre=dissertation&rft.title=Object-oriented+program+slicing&rft.DBID=053%3B0BH%3B0HZ%3B0OZ%3BCBPLH%3BEU9%3BG20%3BM8-%3BPHGZT%3BPKEHL%3BPQEST%3BPQQKQ%3BPQUKI&rft.PQPubID=18750&rft.au=Law%2C+Chun+Hung+Roberts&rft.date=1994-01-01&rft.pub=ProQuest+Dissertations+%26+Theses&rft.isbn=031595812X&rft.externalDBID=HAS_PDF_LINK&rft.externalDocID=741833061
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9780315958128/lc.gif&client=summon&freeimage=true
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9780315958128/mc.gif&client=summon&freeimage=true
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9780315958128/sc.gif&client=summon&freeimage=true