Challenges and strategies for software component reuse in information systems development: a review

[Abstract]: The development of information systems projects has always been plagued by high incidences of failure which can be attributed to the sheer complexity of the problem at hand coupled with uncertainties brought about by the dynamic business environment and constantly evolving technology. With component-based software development (CBSD), organisations can now utilise component technology to increase the likelihood of project success. This is made possible by component reuse which can be leveraged to minimise the effort required to develop applications. Component reuse needs to be organised and implemented well by the adopting organisation to ensure success. To maximise the likelihood of success, the organisation must ensure that the effort is systematically planned and addresses a wide array of technical as well as non-technical issues. More importantly, the organisation must not be fixated on the technology itself; instead adequate attention must be given to the non-technical issues which are often sidelined by project managers. This paper will briefly introduce the key concepts of CBSD and component reuse before providing a detailed discussion on the various technical and non-technical issues that need to be considered in software component reuse. The main contribution of this paper is that it provides a discussion of the issues that need to be considered by the organisation in implementing component reuse programmes.

[1]  Richard Dué The Economics of Component-Based Development , 2000, Inf. Syst. Manag..

[2]  Alan W. Brown Component-Based Software Engineering: Selected Papers from the Software Engineering Institute , 1996 .

[3]  H. Kagerman Analysis: Manufacturing IT - Building blocks of success , 2005 .

[4]  Kweku Ewusi-Mensah,et al.  Critical issues in abandoned information systems development projects , 1997, CACM.

[5]  Donald J. Reifer Implementing a practical reuse program for software components , 2001 .

[6]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[7]  Oliver Sims,et al.  Business Component Factory : A Comprehensive Overview of Component-Based Development for the Enterprise , 1999 .

[8]  김수동,et al.  [서평]「Software Engineering : A Practitioner's Approach, 4^(th) Edition」 , 1997 .

[9]  Capers Jones,et al.  Patterns of Large Software Systems: Failure and Success , 1995, Computer.

[10]  Steve Latchem Component infrastructures: placing software components in context , 2001 .

[11]  T. C. Nicholas Graham,et al.  ClockWorks: Visual Programming of Component-Based Software Architectures , 1996, J. Vis. Lang. Comput..

[12]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[13]  Andrew Martin,et al.  Information Systems Project Redefinition in New Zealand: Will We Ever Learn? , 1996, Aust. Comput. J..

[14]  Alan W. Brown Large Scale Component Based Development , 2000 .

[15]  Bill Councill,et al.  Definition of a software component and its elements , 2001 .

[16]  Kelli Houston,et al.  Software components and the UML , 2001 .

[17]  Martin L. Griss Product-line architectures , 2001 .

[18]  Liqing Wang,et al.  Teaching Component-Based Software Engineering: A Formal Approach and Its Evaluation , 2002, Comput. Sci. Educ..

[19]  Alan Cameron Wills Components and connectors: catalysis techniques for designing component infrastructures , 2001 .

[20]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[21]  John Williams The business case for components , 2001 .

[22]  Alexander L. Wolf,et al.  Software architecture , 2001 .

[23]  Len Bass,et al.  Software architecture design principles , 2001 .