Skip to main content

Modeling in Agile Software Development: Decomposing Use Cases Towards Logical Architecture Design

  • Conference paper
  • First Online:
Product-Focused Software Process Improvement (PROFES 2018)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Ambler, S.: Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. Wiley, Hoboken (2002)

    Google Scholar 

  2. Grau, B.R., Lauenroth, K.: Requirements engineering and agile development - collaborative, just enough, just in time, sustainable. Int. Requir. Eng. Board (2014)

    Google Scholar 

  3. Cao, L., Ramesh, B.: Agile requirements engineering practices: an empirical study. IEEE Softw. 25, 60–67 (2008)

    Article  Google Scholar 

  4. 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)

    Google Scholar 

  5. Cohn, M.: User Stories Applied: for Agile Software Development. Addison-Wesley, Boston (2004)

    Google Scholar 

  6. 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

    Chapter  Google Scholar 

  7. Ambler, S.W.: Agile model driven development is good enough. IEEE Softw. 20(5), 71–73 (2003)

    Article  Google Scholar 

  8. 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

    Chapter  Google Scholar 

  9. IIBA: Agile Extension to the BABOK Guide (2017)

    Google Scholar 

  10. 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

    Chapter  Google Scholar 

  11. Ambler, S.: The Agile Unified Process (AUP). Ambysoft (2005)

    Google Scholar 

  12. Jacobson, I., Spence, I., Bittner, K.: Use Case 2.0: The Definite Guide. Ivar Jacobson International (2011)

    Google Scholar 

  13. 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

    Chapter  Google Scholar 

  14. Cho, J.: A hybrid software development method for large-scale projects: rational unified process with scrum. Issues Inf. Syst. 10, 340–348 (2009)

    Google Scholar 

  15. 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)

    Google Scholar 

  16. 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)

    Article  Google Scholar 

  17. 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)

    Google Scholar 

  18. Leffingwell, D.: Agile Software Requirements: Lean Requirements Practices for Teams, Programs, and the Enterprise. Addison-Wesley, Upper Saddle River (2010)

    Google Scholar 

  19. 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)

  20. Ries, E.: The Lean Startup: How Today’s Entrepreneurs use Continuous Innovation to Create Radically Successful Businesses. Crown Books, Largo (2011)

    Google Scholar 

  21. Brown, T.: Change by Design: How Design Thinking Transforms Organizations and Inspires Innovation. Harper Collins, New York (2009)

    Google Scholar 

  22. Smart, J.F.: BDD in Action: Behavior-driven Development for the Whole Software Lifecycle. Manning Publications, New York (2015)

    Google Scholar 

  23. Evans, E.: Domain-driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, Boston (2004)

    Google Scholar 

  24. 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)

    Google Scholar 

  25. 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)

    Google Scholar 

  26. Kitchenham, B., Pickard, L., Pfleeger, S.: Case studies for method and tool evaluation. IEEE Softw. 12, 52–62 (1995)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nuno Santos .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics