Aligning Software Design with Development Team Expertise

Jānis Grabis, Egils Meiers, Inese Šūpulniece, Solvita Bērziša, Edgars Ozoliņš, Ansis Svaža

2016

Abstract

Large enterprise applications are developed by teams of developers specializing in particular functional or technical areas. An overall application architecture is used to guide allocation of development tasks to the development teams. However, quality of the architecture degrades over the application life-cycle and manual refactoring is challenging due to the size and complexity of enterprise applications. This paper proposes to use automated clustering of large enterprise applications, where clusters are built around application business centers, as a means for refactoring the software design with an objective to improve allocation of software modules to development teams. The paper outlines a module allocation process in the framework of the overall enterprise application development process and reports an illustration of the allocation process. The illustration is based on the case of refactoring of a large third tier ERP system.

References

  1. Bennett, K.H., Rajlich, V.T., 2000. Software Maintenance and Evolution: a Roadmap. Proceedings of the Conference on The Future of Software Engineering, pp. 75-87.
  2. Cai, Z., Yang, X., Wang, X., Wang, Y., 2009. A systematic approach for layered component identification. In 2009 2nd IEEE International Conference on Computer Science and Information Technology, pp. 98-103.
  3. Carmel, E., Bird, B., 1997. Small is beautiful: a study of packaged software development teams, Journal of High Technology Management Research, 8(1), 129-148.
  4. Cui, J.F., Chae, H.S., 2011. Applying Agglomerative Hierarchical Clustering Algorithms to Component Identification for Legacy Systems. Information and Software Technology, 53(6), 601-614.
  5. De Carvalho, A., Johansson, B., Manhães, R.S., 2010. Agile software development for customizing ERPs. In Enterprise Information Systems and Implementing IT Infrastructures: Challenges and Issues, pp. 20-39.
  6. Liang, T.P., Jiang, J., Klein, G.S., Liu, J.Y.C., 2010. Software Quality as Influenced by Informational Diversity, Task Conflict, and Learning in Project Teams, IEEE Transactions on Engineering Management, 57(3), 477-487.
  7. Lui, K.M., Chan, K.C.C., 2008. Rescuing Troubled Software Projects by Team Transformation: A Case Study with an ERP Project. IEEE Transactions on Engineering Management, 55(1), 171-184.
  8. Monnerat, R.M., De Carvalho, R.A., De Campos, R., 2008. Enterprise systems modeling: The ERP5 development process, Proceedings of the ACM Symposium on Applied Computing, pp. 1062.
  9. Otero, L.D., Centeno, G., Ruiz-Torres, A.J., Otero C.E., 2009. A systematic approach for resource allocation in software projects. Computers & Industrial Engineering 56, 4, 1333-1339.
  10. Paulish, D., 2002. Architecture-Centric Software Project Management. Addison-Wesley, Boston, MA, USA.
  11. Ratner, I.M., Harvey, J., 2011. Vertical slicing: Smaller is better. Proceedings - 2011 Agile Conference, Agile 2011, pp. 240-245.
  12. Rettig, C., 2007. The trouble with enterprise software. MIT Sloan Management Review 49(1), 21-27+90.
  13. Riva, R., 2004. View-based Software Architecture Reconstruction. PhD thesis, Technical University of Vienna.
  14. Sandkuhl, K., Stirna, J., Persson, A., Wisotzki, M., 2014. Enterprise Modeling: Tackling Business Challenges with the 4EM Method. Springer, Berlin.
  15. Sommerville, I., 2010. Software Engineering. Person, 9th Edition.
  16. Šupulniece, I., Polaka, I., Berziša, S., Ozolinš, E., Palacis, E., Meiers, E., Grabis, J., 2015. Source Code Driven Enterprise Application Decomposition: Preliminary Evaluation. ICTE in Regional Development 2015 Valmiera, Latvia, Procedia Computer Science 77, pp. 167-175.
  17. Xu, L., Brinkkemper, S., 2007. Concepts of product software. European Journal of Information Systems. 16(5), pp. 531-541.
  18. Unphon, H., Dittrich, Y., 2010. Software architecture awareness in long-term software product evolution. Journal of Systems and Software 83(11), 2211-2226.
Download


Paper Citation


in Harvard Style

Grabis J., Meiers E., Šūpulniece I., Bērziša S., Ozoliņš E. and Svaža A. (2016). Aligning Software Design with Development Team Expertise . In Proceedings of the 18th International Conference on Enterprise Information Systems - Volume 1: ICEIS, ISBN 978-989-758-187-8, pages 560-565. DOI: 10.5220/0005914105600565


in Bibtex Style

@conference{iceis16,
author={Jānis Grabis and Egils Meiers and Inese Šūpulniece and Solvita Bērziša and Edgars Ozoliņš and Ansis Svaža},
title={Aligning Software Design with Development Team Expertise},
booktitle={Proceedings of the 18th International Conference on Enterprise Information Systems - Volume 1: ICEIS,},
year={2016},
pages={560-565},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005914105600565},
isbn={978-989-758-187-8},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 18th International Conference on Enterprise Information Systems - Volume 1: ICEIS,
TI - Aligning Software Design with Development Team Expertise
SN - 978-989-758-187-8
AU - Grabis J.
AU - Meiers E.
AU - Šūpulniece I.
AU - Bērziša S.
AU - Ozoliņš E.
AU - Svaža A.
PY - 2016
SP - 560
EP - 565
DO - 10.5220/0005914105600565