skip to main content
10.1145/1066677.1067018acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
Article

NextGen eXtreme porting: structured by automation

Published: 13 March 2005 Publication History

Abstract

"Maintenance is really the normal state of an XP project" - Beck. Thus porting is a natural candidate for eXtreme Programming and we present a novel tool-based XP methodology for porting C/C++ programs. The structure provided by our tooling is designed for scalability, to enable XP on large projects porting enterprise-scale codebases. Overall planning and iteration planning of the methodology are assisted by a novel, first-of-its-kind migration orchestrator tool. Automated test, debugging, and audit function are provided as unified support by our refactoring tool framework. We focus on the orchestrator tool and offer preliminary benchmarks with encouraging results.

References

[1]
Baxter, I. D., Pidgeon, C. and Mehlich, M. DMS: Program Transformations for Practical Scalable Software Evolution. In Proceedings of the IEEE International Conference on Software Engineering (ICSE'04) (Edinburgh, United Kingdom, May 23-28, 2004), 625--634.]]
[2]
Beck, K. Extreme Programming explained: embrace change. Pearson Education, Reading, Singapore, 2000.]]
[3]
Boger, M., Baier, T., Wienberg, F. and Lamersdorf, W. Extreme Modeling. In Proceedings of the International conference on eXtreme Programming and Flexible Processes in Software Engineering (XP '00) (Cagliari, Italy, June 21-23, 2000) www.extrememodeling.org/docs/XM.ps.gz]]
[4]
Crocker, R. The 5 reasons XP can't scale and what to do about them. In Proc. International Conference on eXtreme Programming and Flexible Processes in Software Eng. (XP '01) (Villasimius, Sardinia, Italy, May 20-23, 2001) www.xp2003.org/conference/papers/Chapter15-Crocker.pdf]]
[5]
Deursen, A. V., Kuipers, T. and Moonen, L. Legacy to the Extreme. In Proceedings of the International Conference on eXtreme Programming and Flexible Processes in Software Engineering (XP '00) (Cagliari, Italy, June 21-23, 2000) homepages.cwi.nl/~arie/papers/xp2000.pdf]]
[6]
Elssamadisy, A. and Schalliol, G. Recognizing and Responding to "Bad Smells" in Extreme Programming. In Proceedings of the IEEE International Conference on Software Engineering (ICSE'02) (Orlando, Florida, USA, May 19-25, 2002), 617--622.]]
[7]
George, B. and Williams, L. An Initial Investigation of Test Driven Development in Industry. In Proceedings of the ACM Symposium on Applied Computing(SAC '03) (Melbourne, Florida, USA, March 9-12, 2003) 1135--1139.]]
[8]
ISO/IEC 14882:1998 C++ standard, 1998, www.iso.org]]
[9]
ISO/IEC 9899:1999 C standard, 1999. Also, ISO/IEC 9899: 1999 C Technical Corrigendum, 2001, www.iso.org.]]
[10]
Janes, A., Russo, B., Zuliani, P. and Succi, G. An Empirical Analysis on the Discontinuous Use of Pair Programming. In Proceedings of the International Conference on eXtreme Programming and Agile Processes in Software Engineering (XP '03) (Genova, Italy, May 25-29, 2003) Lecture Notes in Computer Science, Springer, Vol. 2675, 205--214.]]
[11]
Kajko-Mattsson, M., Jonson, M., Koroorian, S. and Westin, F. Lesson Learned from Attempts to Implement Daily Build. In Proceedings of the European Conference on Software Maintenance and Reengineering(CSMR'04) (Tampere, Finland, March 24-26, 2004) 137--146.]]
[12]
Lippert, M., Roock, S., Tunkel, R. and Wolf, H. Stabilizing the XP Process Using Specialized Tools. In Proc. Int. Conference on eXtreme Programming and Flexible Processes in Software Engineering (XP '01) (Villasimius, Sardinia, Italy, May 20-23, 2001). www.agilealliance.org/articles/articles/StabilizingTheXPProcess.pdf]]
[13]
Lui, K. M. and Chan, K. C. C. When Does a Pair Outperform Two Individuals?. In Proceedings of the International Conference on eXtreme Programming and Agile Processes in Software Engineering (XP '03) (Genova, Italy, May 25-29, 2003) Lecture Notes in Computer Science, Springer, Vol. 2675, 225--233.]]
[14]
Maximilien, E. M. and Williams, L. Assessing Test-Driven Development at IBM. In Proc. IEEE International Conference on Software Engineering (ICSE'03) (Portland, Oregon, USA, May 3-10, 2003) 564--569.]]
[15]
Muller, M. M. and Padberg, F. On the Economic Evaluation of XP Projects. In Proceedings of ACM International Symposium on Foundations of Software Enfineering(FSE'03) (Helsinki, Finland, Sep. 1-5, 2003) ACM Press, 168--177]]
[16]
Pazel, D. P., Varma, P., Paradkar A., Tibbitts B., Anand A. and Charles P. A Framework and Tool for Porting Assessment and Remediation. IEEE International conference on Software Maintenance (ICSM '04) (Chicago, Ilinois, September 11-17, 2004).]]
[17]
Poole, C. J., Murphy, T., Huisman, J. W. and Higgins, A. Extreme Maintenance. In Proc. IEEE International Conference on Software Maintenance (ICSM '01) (Florence, Italy, Nov. 7-9, 2001). 301--311.]]
[18]
Rationale for C99 standardization, Version 5.1, April 2003 wwwold.dkuug.dk/JTC1/SC22/WG14/www/C99RationaleV 5.10.pdf.]]
[19]
Visser, E. Stratego: A language for program transformation based on rewriting strategies. In (A. Middledrop, editor) Rewriting Techniques and Applications, 2001(RTA'01), Springer-Verlag Lecture Notes in Computer Science Vol. 2051, 357--361.]]
[20]
Weyuker, E. J. Using Operational Distributions to Judge Testing Progress. In Proceedings of the ACM Symposium on Applied Computing(SAC '03) (Melbourne, Florida, USA, March 9-12, 2003) ACM Press, 1118--1122]]
[21]
www.eclipse.org]]
[22]
www.gnu.org]]
[23]
Yuan, J., Holcombe, M. and Gheorghe, M. Where Do Unit Tests Come from?. In Proceedings of the International Conference on eXtreme Programming and Agile Processes in Software Engineering (XP '03) (Genova, Italy, May 25-29, 2003) Lecture Notes in Computer Science, Springer, Vol. 2675, 161--169.]]

Cited By

View all
  • (2012)KLONOS: Similarity‐based planning tool support for porting scientific applicationsConcurrency and Computation: Practice and Experience10.1002/cpe.290325:8(1072-1088)Online publication date: 20-Jul-2012
  • (2009)Backward-compatible constant-time exception-protected memoryProceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering10.1145/1595696.1595710(71-80)Online publication date: 24-Aug-2009
  • (2009)Anchored Text for Software Weaving and MergingProceedings of the 2009 Third IEEE International Conference on Secure Software Integration and Reliability Improvement10.1109/SSIRI.2009.16(93-100)Online publication date: 8-Jul-2009
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '05: Proceedings of the 2005 ACM symposium on Applied computing
March 2005
1814 pages
ISBN:1581139640
DOI:10.1145/1066677
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 March 2005

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. XP
  2. analyze
  3. debug
  4. dialects
  5. eXtreme programming
  6. fix
  7. orchestration
  8. port planning
  9. re-factor
  10. software process model
  11. test

Qualifiers

  • Article

Conference

SAC05
Sponsor:
SAC05: The 2005 ACM Symposium on Applied Computing
March 13 - 17, 2005
New Mexico, Santa Fe

Acceptance Rates

Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2012)KLONOS: Similarity‐based planning tool support for porting scientific applicationsConcurrency and Computation: Practice and Experience10.1002/cpe.290325:8(1072-1088)Online publication date: 20-Jul-2012
  • (2009)Backward-compatible constant-time exception-protected memoryProceedings of the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering10.1145/1595696.1595710(71-80)Online publication date: 24-Aug-2009
  • (2009)Anchored Text for Software Weaving and MergingProceedings of the 2009 Third IEEE International Conference on Secure Software Integration and Reliability Improvement10.1109/SSIRI.2009.16(93-100)Online publication date: 8-Jul-2009
  • (2009)A Storytest-Driven Approach to the Migration of Legacy SystemsAgile Processes in Software Engineering and Extreme Programming10.1007/978-3-642-01853-4_19(149-154)Online publication date: 2009
  • (2007)Generalizing recognition of an individual dialect in program analysis and transformationProceedings of the 2007 ACM symposium on Applied computing10.1145/1244002.1244310(1432-1439)Online publication date: 11-Mar-2007
  • (2006)Ensuring behavioural equivalence in test-driven portingProceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research10.1145/1188966.1189017(38-es)Online publication date: 16-Oct-2006

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media