Home   >   CSC-OpenAccess Library   >    Manuscript Information
The Application of Function Models In Software Design: A Survey Within the Software Community
Pujani Abayatilake, Lucienne T.M. Blessing
Pages - 27 - 62     |    Revised - 30-09-2021     |    Published - 31-10-2021
Volume - 9   Issue - 2    |    Publication Date - October 2021  Table of Contents
Function Modelling, Unified Modelling Language (UML), Software Design, SDLC, Conceptual Design, Object-Oriented Modelling, Empirical Studies.
Numerous function modelling approaches exist for software design. However, there is little empirical evidence on how these approaches are used in the early stages of software design. This article presents the results of an online survey on the application of function models in the academic and industrial software development community. The results show that more than 90% of the 75 respondents agreed with the statement that software projects that use function modelling techniques have a higher chance of success than other projects. UML is the most widely accepted and used modelling approach among the respondents, but only a handful of UML diagrams appear to be prominently addressed during the early software design stages. Asked for reasons for selecting or rejecting UML models the majority of respondents mentioned using function models to understand software requirements and communicate these with clients and technical teams, whereas lack of familiarity, the time-consuming nature of some models and data redundancy are widely mentioned reasons for not or seldomly using certain models. The study also shows a strong relationship between model usage and respondents’ professions. We conclude that improvements are required to ensure the benefits of the various available models and the links between the models can be fully exploited to support individual designers, to improve communication and collaboration, and to increase project success. A short discussion on the chosen solution direction - a simplified function modelling approach – closes the paper.
1 Semantic Scholar 
2 refSeek 
3 ResearchGate 
4 Doc Player 
5 J-Gate 
6 Scribd 
7 SlideShare 
Abayatilake, P. (2021). Function Modelling: Benefits and Limitations of Current Models for Complex Software Development. (Master's thesis). Singapore University of Technology and Design.
Agarwal, R., De, P., & Sinha, A. P. (1999). Comprehending object and process models: an empirical study. IEEE Transactions on Software Engineering, 25(4), 541-556. doi:10.1109/32.799953
Akdur, D., Garousi, V., & Demirörs, O. (2018). A survey on modeling and model-driven engineering practices in the embedded software industry. Journal of Systems Architecture 91, 62-82. doi:10.1016/j.sysarc.2018.09.007
Al-Zewairi, M., Biltawi, M., Etaiwi, W., & Shaout, A. (2017). Agile Software Development Methodologies: Survey of Surveys. Journal of Computer and Communications, 05(05), 74-97. doi:10.4236/jcc.2017.55007
Ambler, S. W. (2004). The Object Primer: Agile Model-Driven Development with UML 2.0. 40 W. 20 St. New York, NY, United States: Cambridge University Press.
Anwar, A. (2014). A Review of RUP (Rational Unified Process). International Journal of Software Engineering (IJSE), 5(2), 8-24.
Aranda, J. (2010). A theory of shared understanding for software organizations. (PhD thesis). University of Toronto,
Atan, R., Ghani, A. A. A., Selamat, M. H., & Mahmod, R. (2007). Automating Measurement for Software Process Models using Attribute Grammar Rules. International Journal of Engineering (IJE), 7(2), 24-33.
Baldwin, A. N., Austin, S. A., Hassan, T. M., & Thorpe, A. (1999). Modelling information flow during the conceptual and schematic stages of building design. Construction Management and Economics, 17(2), 155-167. doi:10.1080/014461999371655
Booch, G. (1994). Object-Oriented Analysis and Design With Applications (2 ed.). Redwood City, CA, United States: Addison Wesley.
Booch, G., Rumbaugh, J., & Jacobson, I. (1998). The Unified Modeling Language User Guide. Boston, MA, United States: Addison Wesley.
Capretz, L. F. (2003). A brief history of the object-oriented approach. ACM SIGSOFT Software Engineering Notes, 28(2). doi:10.1145/638750.638778
Champeaux, D. d., Constantine, L., Jacabson, I., Mellor, S., Ward, P., & Yourdon, E. (1990). PANEL: Structured Analysis and Object Oriented Analysis. Paper presented at the OOPSLA/ECOOP '90: Proceedings of the European conference on Object-oriented programming addendum : systems, languages, and applications: systems, languages, and applications.
Chren, S., Buhnova, B., Macak, M., Daubner, L., & Rossi, B. (2019). Mistakes in UML Diagrams: Analysis of Student Projects in a Software Engineering Course. Paper presented at the 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET), Montreal, QC, Canada.
Colquhoun, G. J., Baines, R. W., & Crossley, R. (1993). A state of the art review of IDEFO. International Journal of Computer Integrated Manufacturing, 6(4), 252-264. doi:10.1080/09511929308944576
Cooper, A., Reimann, R., & Cronin, D. (2007). About face 3: the essentials of interaction design. 605 Third Ave. New York, NY, United States: John Wiley & Sons, Inc.
Dalpiaz, F., & Brinkkemper, S. (2018). Agile Requirements Engineering with User Stories. Paper presented at the 2018 IEEE 26th International Requirements Engineering Conference (RE), Banff, AB, Canada.
Dobing, B., & Parsons, J. (2008). Dimensions of UML Diagram Use. Journal of Database Management, 19(1), 1-18. doi:10.4018/jdm.2008010101
Dorador, J. M., & Young, R. I. M. (2000). Application of IDEF0, IDEF3 and UML methodologies in the creation of information models. International Journal of Computer Integrated Manufacturing, 13(5), 430-445. doi:10.1080/09511920050117928
Eisenbart, B., Gericke, K., & Blessing, L. T. M. (2017). Taking a look at the utilisation of function models in interdisciplinary design: insights from ten engineering companies. Research in Engineering Design, 28(3), 299-331. doi:10.1007/s00163-016-0242-3
El-Attar, M., & Miller, J. (2006). Producing robust use case diagrams via reverse engineering of use case descriptions. Software & Systems Modeling, 7(1), 67-83. doi:10.1007/s10270-006-0039-3
Erden, M. S., Komoto, H., van Beek, T. J., D'Amelio, V., Echavarria, E., & Tomiyama, T. (2008). A review of function modeling: Approaches and applications. Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 22(2), 147-169. doi:10.1017/s0890060408000103
Erickson, J., & Siau, K. (2007). Can UML Be Simplified? Practitioner Use of UML in Separate Domains. Paper presented at the Proceeding EMMSAD 2007, Trondheim, Norway.
Falessi, D., Cantone, G., & Grande, C. (2007). A Comparison of Structured Analysis and Object Oriented Analysis - An Experimental Study. Paper presented at the Proceedings of the Second International Conference on Software and Data Technologies, Barcelona, Spain.
Farias, K., Gonçales, L., & Bischoff, V. (2018). On the UML Use in Brazilian Industry: A State of the Practice Survey. Paper presented at the SEKE - 30th International Conference on Software Engineering & Knowledge EngineeringAt: San Francisco, CA, San Francisco, CA.
Firesmith, D. (1991). Structured Analysis and Object-Oriented Development are not Compatible. ACM SIGAda Ada Letters, XI(9), 56-66. doi:10.1145/122012.122013
Gregersen, H., & Jensen, C. S. (1999). Temporal Entity-Relationship Models—a Survey. IEEE Transactions on Knowledge and Data Engineering, 11(3), 464-497. doi:10.1109/69.774104
Grossman, M., Aronson, J. E., & McCarthy, R. V. (2005). Does UML make the grade? Insights from the software development community. Information and Software Technology, 47(6), 383-397. doi:10.1016/j.infsof.2004.09.005
Hvatum, L. B., & Wirfs-Brock, R. (2018). A Program Backlog Story with Patterns: Expanding the Magic Backlog Pattern Collection. Paper presented at the EuroPLoP '18: Proceedings of the 23rd European Conference on Pattern Languages of Programs.
Jacobson, I., Booch, G., & Rumbaugh, J. (1999). The Unified Software Development Process. Boston, MA, United States: Addison-Wesley.
Jilani, A. A. A., Usman, M., & Nadeem, A. (2011). Comparative Study on DFD to UML Diagrams Transformations. World of Computer Science and Information Technology Journal(WCSIT), 1(1), 10-16.
Khan, M. E., Shadab, S. G. M., & Khan, F. (2020). Empirical Study of Software Development Life Cycle and its Various Models. International Journal of Software Engineering (IJSE), 8(2), 16-26.
Kobryn, C. (2002). Will UML 2.0 Be Agile or Awkward? Communications of the ACM, 45(1), 107-110. doi:https://doi.org/10.1145/502269.502306
Kruchten, P. (1995). Architectural Blueprints—The “4+1” View Model of Software Architecture. IEEE Software, 42-50.
Lange, C. F. J., Chaudron, M. R. V., & Muskens, J. (2006). In Practice: UML Software Architecture and Design Description. IEEE Software, 23(2), 40-46. doi:10.1109/ms.2006.50
Modi, H. S., Singh, N. K., & Chauhan, H. P. (2017). Comprehensive Analysis of Software Development Life Cycle Models. International Research Journal of Engineering and Technology (IRJET), 4(6).
Ozkaya, M. (2019). Are the UML Modeling Tools Powerful Enough for Practitioners? A Literature Review. IET Software, 13(5), 338-354. doi:10.1049/iet-sen.2018.5409
Ozkaya, M., & Erata, F. (2020). A Survey on the Practical Use of UML for Different Software Architecture Viewpoints. Information and Software Technology, 121(4). doi:10.1016/j.infsof.2020.106275
Petre, M. (2013). UML in practice. Paper presented at the ICSE '13: Proceedings of the 2013 International Conference on Software Engineering, San Francisco, CA, USA.
Reggio, G., Leotta, M., & Ricca, F. (2014). Who Knows/Uses What of the UML: A Personal Opinion Survey. In Model-Driven Engineering Languages and Systems (pp. 149-165).
Reggio, G., Leotta, M., Ricca, F., & Clerissi, D. (2013). What are the used UML diagrams? A Preliminary Survey. Paper presented at the Proceedings of 3rd International Workshop on Experiences and Empirical Studies in Software Modeling (EESSMod 2013 co-located with MoDELS 2013).
Rickman, D. M. (2001). A process for combining object oriented and structured analysis and design. Paper presented at the 20th Digital Avionics Systems Conference
Rumbaugh, J., Jacobson, I., & Booch, G. (1999). The Unified Modelling Language Reference Manual. Boston, MA. United States: Addison Wesley.
Rumpe, B. (2017). Agile Modeling with UML (1 ed.): Springer International Publishing.
Strauss, A., & Corbin, J. M. (1997). Grounded theory in practice: Sage Publications.
Waykar, Y. (2013). A Study of Importance of UML diagrams: With Special Reference to Very Large-sized Projects. Paper presented at the International Conference on Reinventing Thinking beyond boundaries to Excel, Faridabad, India.
Wieringa, R. (1998). A Survey of Structured and Object-Oriented Software Specification Methods and Techniques. ACM Computing Surveys (CSUR), 30(4), 459-527. doi:10.1145/299917.299919
Wrycza, S., & Marcinkowski, B. (2007). A Light Version of UML 2: Survey And Outcomes. Paper presented at the Computer Science and IT Education Conference, Port Louis, Mauritius.
Mrs. Pujani Abayatilake
Engineering Product Development, Singapore University of Technology and Design, 487372 - Singapore
Professor Lucienne T.M. Blessing
Engineering Product Development, Singapore University of Technology and Design, 487372 - Singapore

View all special issues >>