Abstract
[Context and motivation] There are a plethora of agile practices that relate to management (e.g., Sprints, Scrum ceremonies), development (e.g., pair programming, TDD, BDD, DevOps) or strategy (e.g., Lean Startup), [Question/problem] but lack a comprehensive description on how its adoption influences requirements modeling and “You Aren’t Gonna Need It” (YAGNI) features. [Principal ideas/results] This paper presents Agile Modeling Process for Logical Architectures (AMPLA), an Agile Modeling (AM) oriented process composed by UML diagrams (namely, Sequence, Use Cases and Component). [Contributions] AMPLA uses agile practices in order to deliver small increments (of a requirements package) and to promote continuous customer feedback. The proposed AM process also includes a candidate architecture and further requirements refinement in parallel with a software increment delivery.
This work was developed within the project UH4SP: Unified Hub 4 Smart Plants (Project ID 017871), under Portuguese National Grants Program for R&D projects (P2020 – SI IDT), COMPETE: POCI-01-0145-FEDER-007043 and FCT – Fundação para a Ciência e Tecnologia within the Project Scope: UID/CEC/00319/2013.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ambler, S.: Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. Wiley, Hoboken (2002)
Grau, B.R., Lauenroth, K.: Requirements engineering and agile development - collaborative, just enough, just in time, sustainable. Int. Requir. Eng. Board (2014)
Cao, L., Ramesh, B.: Agile requirements engineering practices: an empirical study. IEEE Softw. 25, 60–67 (2008)
Paetsch, F., Eberlein, A., Maurer, F.: Requirements engineering and agile software development. In: Proceedings of Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WET ICE 2003). IEEE (2003)
Cohn, M.: User Stories Applied: for Agile Software Development. Addison-Wesley, Boston (2004)
Santos, N., Pereira, J., Morais, F., Barros, J., Ferreira, N., Machado, Ricardo J.: An agile modeling oriented process for logical architecture design. In: Gulden, J., Reinhartz-Berger, I., Schmidt, R., Guerreiro, S., Guédria, W., Bera, P. (eds.) BPMDS/EMMSAD -2018. LNBIP, vol. 318, pp. 260–275. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-91704-7_17
Ambler, S.W.: Agile model driven development is good enough. IEEE Softw. 20(5), 71–73 (2003)
Ferreira, N., Santos, N., Machado, R.J., Fernandes, J., Gasević, D.: A V-model approach for business process requirements elicitation in cloud design. In: Bouguettaya, A., Sheng, Q., Daniel, F. (eds.) Advanced Web Services, pp. 551–578. Springer, New York (2014). https://doi.org/10.1007/978-1-4614-7535-4_23
IIBA: Agile Extension to the BABOK Guide (2017)
Costa, N., Santos, N., Ferreira, N., Machado, Ricardo J.: Delivering user stories for implementing logical software architectures by multiple scrum teams. In: Murgante, B., et al. (eds.) ICCSA 2014. LNCS, vol. 8581, pp. 747–762. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09150-1_55
Ambler, S.: The Agile Unified Process (AUP). Ambysoft (2005)
Jacobson, I., Spence, I., Bittner, K.: Use Case 2.0: The Definite Guide. Ivar Jacobson International (2011)
Santos, N., et al.: Using scrum together with UML models: a collaborative university-industry R&D software project. In: Gervasi, O., et al. (eds.) ICCSA 2016. Lecture Notes in Computer Science, vol. 9789. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-42089-9_34
Cho, J.: A hybrid software development method for large-scale projects: rational unified process with scrum. Issues Inf. Syst. 10, 340–348 (2009)
Durdik, Z.: Towards a process for architectural modelling in agile software development. In: Proceedings of ACM SIGSOFT QoSA-ISARCS on Quality of Software Architectures, New York, p. 183. ACM Press (2011)
Díaz, J., Pérez, J., Garbajosa, J.: Agile product-line architecting in practice: a case study in smart grids. Inf. Softw. Technol. 56, 727–748 (2014)
Golra, F.R., Beugnard, A., Dagnat, F., Guerin, S., Guychard, C.: Using free modeling as an agile method for developing domain specific modeling languages. In: ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems – MODELS, New York, USA, pp. 24–34. ACM Press (2016)
Leffingwell, D.: Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise. Addison-Wesley, Upper Saddle River (2010)
Santos, N., Pereira, J., Morais, F., Barros, J., Ferreira, N., Machado, R.J.: An experience report on using architectural models within distributed Scrum teams contexts. In: XP 2018 Workshops (in press), Preprint version available in. https://bit.ly/2nPpgeG. ACM (2018)
Ries, E.: The Lean Startup: How Today’s Entrepreneurs use Continuous Innovation to Create Radically Successful Businesses. Crown Books, Largo (2011)
Brown, T.: Change by Design: How Design Thinking Transforms Organizations and Inspires Innovation. Harper Collins, New York (2009)
Smart, J.F.: BDD in Action: Behavior-driven Development for the Whole Software Lifecycle. Manning Publications, New York (2015)
Evans, E.: Domain-driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, Boston (2004)
Cruz, E.F., Machado, R.J., Santos, M.Y.: On the decomposition of use cases for the refinement of software requirements. In: 2014 14th International Conference on Computational Science and its Applications, pp. 237–240. IEEE (2014)
Azevedo, S., Machado, R.J., Braganca, A., Ribeiro, H.: The UML «include» relationship and the functional refinement of use cases. In: 36th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), pp. 156–163. IEEE (2010)
Kitchenham, B., Pickard, L., Pfleeger, S.: Case studies for method and tool evaluation. IEEE Softw. 12, 52–62 (1995)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Santos, N., Pereira, J., Ferreira, N., Machado, R.J. (2018). Modeling in Agile Software Development: Decomposing Use Cases Towards Logical Architecture Design. In: Kuhrmann, M., et al. Product-Focused Software Process Improvement. PROFES 2018. Lecture Notes in Computer Science(), vol 11271. Springer, Cham. https://doi.org/10.1007/978-3-030-03673-7_31
Download citation
DOI: https://doi.org/10.1007/978-3-030-03673-7_31
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-03672-0
Online ISBN: 978-3-030-03673-7
eBook Packages: Computer ScienceComputer Science (R0)