Advertisement

Structuring Complexity Issues for Efficient Realization of Agile Business Requirements in Distributed Environments

Conference paper
  • 1.7k Downloads
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 48)

Abstract

One of the ideas of agile software development is to respond to changes rather than following a plan. Constantly changing businesses result in changing requirements, to be handled in the development process. Therefore, it is essential that the underlying software architecture is capable of managing agile business processes. However, criticism on agile software development states that it lacks paying attention to architectural and design issues and therefore is bound to engender suboptimal design-decisions. We propose an architectural framework, that by explicitly distinguishing computational, coordinational, organizational, distributional, and communicational models offers a high degree of flexibility regarding architectural and design changes. The framework strength is facilitated by a) combining the characteristics and properties of architectural styles captured in a simple API, and b) offering a predefined architectural structure to the developer of distributed applications to cope with complexities of distributed environments. The benefit of our approach is a clear architectural design with minimal mutual effects of the models with respect to changes, accompanied by an efficient realization of new business requirements.

Keywords

Agile Business Requirements Agile Software Development 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Highsmith, J., Cockburn, A.: Agile software development: the business of innovation. Computer 34, 120–127 (2001)CrossRefGoogle Scholar
  2. 2.
    Hadar, E., Silberman, G.M.: Agile architecture methodology: long term strategy interleaved with short term tactics. In: OOPSLA Companion 2008: Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications, pp. 641–652. ACM, New York (2008)CrossRefGoogle Scholar
  3. 3.
    Jazayeri, M.: On Architectural Stability and Evolution. In: Blieberger, J., Strohmeier, A. (eds.) Ada-Europe 2002. LNCS, vol. 2361, pp. 13–23. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  4. 4.
    Rakitin, S.R.: Manifesto Elicits Cynicism. IEEE Computer 34(4) (2001)Google Scholar
  5. 5.
    McBreen, P.: Questioning Extreme Programming. Addison-Wesley Longman Publishing Co., Inc. (2002)Google Scholar
  6. 6.
    Stephens, M., Rosenberg, D.: Extreme Programming Refactored: The Case Against XP. Apress, Berkeley (2003)Google Scholar
  7. 7.
    Kircher, M., Jain, P.: Pattern-Oriented Software Architecture: Patterns for Resource Management. John Wiley & Sons, Chichester (2004)Google Scholar
  8. 8.
    Heineman, G.T., Councill, W.T. (eds.): Component-based software engineering: putting the pieces together. Addison-Wesley Longman Publishing Co., Inc. (2001)Google Scholar
  9. 9.
    Taylor, R.N., Medvidovic, N., Dashofy, E.M.: Software Architecture: Foundations. In: Theory, and Practice. Wiley Publishing, Chichester (2009)Google Scholar
  10. 10.
    Mordinyi, R., Kühn, E., Schatten, A.: Space-based Architectures as Abstraction Layer for Distributed Business Applications. In: Track on Software Engineering for Distributed Systems at the 4th International Conference on Complex, Intelligent and Software Intensive Systems, CISIS 2010 (2010)Google Scholar
  11. 11.
    Nerur, S., Mahapatra, R., Mangalaraj, G.: Challenges of migrating to agile methodologies. Commun. ACM 48, 72–78 (2005)CrossRefGoogle Scholar
  12. 12.
    Stapleton, J.: DSDM: Business Focused Development. Pearson Education, London (2003)Google Scholar
  13. 13.
    Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley Professional, Reading (2004)Google Scholar
  14. 14.
    Dingsoyr, T., Dyba, T.: What Do We Know about Agile Software Development? Software, IEEE 26, 6–9 (2009)CrossRefGoogle Scholar
  15. 15.
    Slyngstad, O.P., Li, J., Conradi, R., Babar, M.A.: Identifying and Understanding Architectural Risks in Software Evolution: An Empirical Study. In: Jedlitschka, A., Salo, O. (eds.) PROFES 2008. LNCS, vol. 5089, pp. 400–414. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  16. 16.
    Slyngstad, O., Conradi, R., Babar, M., Clerc, V., van Vliet, H.: Risks and Risk Management in Software Architecture Evolution: An Industrial Survey. In: Software Engineering Conference, APSEC 2008. 15th Asia-Pacific, pp. 101–108 (2008)Google Scholar
  17. 17.
    Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C.: Introducing the concept of customizable structured spaces for agent coordination in the production automation domain. In: Proceedings of The 8th International Conference on Autonomous Agents and Multiagent Systems, AAMAS 2009, pp. 625–632 (2009)Google Scholar
  18. 18.
    Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C., Bessler, S., Tomic, S.: Aspect-oriented Space Containers for Efficient Publish/Subscribe Scenarios in Intelligent Transportation Systems. In: The 11th International Symposium on Distributed Objects, Middleware, and Applications, DOA 2009 (2009)Google Scholar
  19. 19.
    Chappell, D.: Enterprise Service Bus. O’Reilly Media, Inc., Sebastopol (2004)Google Scholar
  20. 20.
    Hannay, J.E., MacLeod, C., Singer, J., Langtangen, H.P., Pfahl, D., Wilson, G.: How do scientists develop and use scientific software? In: SECSE 2009: Proceedings of the 2009 ICSE Workshop on Software Engineering for Computational Science and Engineering, pp. 1–8. IEEE Computer Society, Los Alamitos (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  1. 1.Space-based Computing Group and Christian Doppler Laboratory “Software Engineering Integration for Flexible Automation Systems”Vienna University of TechnologyViennaAustria

Personalised recommendations