Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Shubiao Li

dblp:20/3318 · DBLP profile ↗
← Back
2ranked-venue papers
0as first author
0since 2021 · last 2006
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 33% Software maintenance and evolution · 33% Programming languages and type systems · 33%

Topics — the 3 heaviest of 3, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
metaprogramming
0.012003
Eliminating redundancies with a "composition with adaptation" meta-programming technique · ESEC / SIGSOFT FSE 2003
Compilers and program optimization › compiler optimization
redundancy elimination
0.012003
Eliminating redundancies with a "composition with adaptation" meta-programming technique · ESEC / SIGSOFT FSE 2003
Software maintenance and evolution
refactoring
0.012003
Eliminating redundancies with a "composition with adaptation" meta-programming technique · ESEC / SIGSOFT FSE 2003

Methods — techniques the papers use, named apart from their topics

meta-programming · 0.0composition with adaptation · 0.0
YearPublicationVenuePosition
2006 Unifying clones with a generative programming technique: a case study
abstract
Abstract Software clones—similar program structures repeated in variant forms—increase the risk of update anomalies, blow up the program size and complexity, possibly contributing to high maintenance costs. Yet, programs are often polluted by clones. In this paper, we present a case study of cloning in the Java Buffer library, JDK 1.5. We found that at least 68% of the code in the Buffer library was contained in cloned classes or class methods. Close analysis of program situations that led to cloning revealed difficulties in eliminating clones with conventional program design techniques. As a possible solution, we applied a generative technique of XVCL (XML‐based Variant Configuration Language) to represent similar classes and methods in generic, adaptable form. Concrete buffer classes could be automatically produced from the generic structures. We argue, on analytical and empirical grounds, that unifying clones reduced conceptual complexity and enhanced the changeability of the Buffer library at rates proportional to code size reduction (68%). We evaluated our solution in qualitative and quantitative ways, and conducted a controlled experiment to support this claim. The approach presented in the paper can be used to enhance genericity and changeability of any program, independently of an application domain or programming language. As the solution is not without pitfalls, we discuss trade‐offs involved in its project application. Copyright © 2006 John Wiley & Sons, Ltd.
Stan Jarzabek, Shubiao Li
J. Softw. Maintenance Res. Pract.2
2003 Eliminating redundancies with a "composition with adaptation" meta-programming technique
abstract
Redundant code obstructs program understanding and contributes to high maintenance costs. While most experts agree on that, opinions - on how serious the problem of redundancies really is and how to tackle it - differ. In this paper, we present the study of redundancies in the Java Buffer library, JDK 1.4.1, which was recently released by Sun. We found that at least 68% of code in the Buffer library is redundant in the sense that it recurs in many classes in the same or slightly modified form. We effectively eliminated that 68% of code at the meta-level using a technique based on "composition with adaptation" called XVCL. We argue that such a program solution is easier to maintain than buffer classes with redundant code. In this experiment, we have designed our meta-representation so that we could produce buffer classes in exactly the same form as they appear in the original Buffer library. While we have been tempted to re-design the buffer classes, we chose not to do so, in order to allow for the seamless integration of the XVCL solution into contemporary programming methodologies and systems. This decision has not affected the essential results reported in this paper.
Stan Jarzabek, Shubiao Li
ESEC / SIGSOFT FSE2