Skip to main content

Building a Digital Publishing Platform Using AOSD

Experiences and Lessons Learned

  • Chapter
Book cover Transactions on Aspect-Oriented Software Development VIII

Part of the book series: Lecture Notes in Computer Science ((TAOSD,volume 6580))

  • 419 Accesses

Abstract

This paper presents the results of applying aspect-oriented methods and techniques during the construction of a demonstrator of an industry-grade digital publishing platform. In a rapidly evolving publishing landscape, publishing companies will have a competitive advantage in the long run if their supporting software infrastructure can sustain evolution. In this paper, we show how a component-based software architecture is refactored using AOSD techniques, and how this leads to an improved variability and evolvability of the publishing infrastructure by enabling invasive features to be introduced easily and dynamically. Finally, we provide an in-depth analysis of our main experiences and lessons learned during development of this demonstrator, in terms of three of the industrial acceptance criteria of a programming paradigm: its expressivity, its efficiency, and compatibility. The strength of this demonstrator lies in the fact that it presents a realistic, and high-effort case study, which is the result of collaboration with real-world industrial actors in the news publishing field.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. AOSD-Europe network of excellence: The aosd-europe project, http://www.aosd-europe.net/

  2. DistriNet, KULeuven: Diginews project, http://distrinet.cs.kuleuven.be/research/projects/DigiNews

  3. DistriNet, KULeuven: E-paper project, http://distrinet.cs.kuleuven.be/research/projects/E-paper

  4. DistriNet, KULeuven: Croslocis project, http://distrinet.cs.kuleuven.be/research/projects/CROSLOCiS

  5. DistriNet, KULeuven: Cocomedia project, http://distrinet.cs.kuleuven.be/research/projects/CoCoMedia

  6. Van Landuyt, D., Grégoire, J., Michiels, S., Truyen, E., Joosen, W.: Architectural design of a digital publishing system. CW Reports CW465, Department of Computer Science, K.U.Leuven, Leuven, Belgium (October 2006)

    Google Scholar 

  7. JBoss technologies: The jboss middleware stack, http://www.jboss.org

  8. Kiczales, G.: The aop report card. Dr. Dobb’s (2004), http://www.ddj.com/showArticle.jhtml?articleID=184415082

  9. Singer, J.B.: Still guarding the gate?: The newspaper journalist’s role in an on-line world. Convergence 3(1), 72–89 (1997)

    Google Scholar 

  10. Thurman, N.: Forums for citizen journalists? adoption of user generated content initiatives by online news media. New Media Society 10(1), 139–157 (2008)

    Article  Google Scholar 

  11. Google corp.: Google news, http://news.google.com

  12. Van Landuyt, D., Op de beeck, S., Truyen, E., Joosen, W.: Digital publishing demonstrator: source code, supporting documents and videos (2008), http://distrinet.cs.kuleuven.be/software/digitalpublishing/

  13. Mahieu, T., Joosen, W., Van Landuyt, D., Grégoire, J., Buyens, K., Truyen, E.: System requirements on digital newspapers. CW Reports CW484, K.U.Leuven, Department of Computer Science (March 2007)

    Google Scholar 

  14. Joosen, W., Michiels, S., Truyen, E., Vandebroek, K., Van Landuyt, D.: A comprehensive model for digital publishing. CW Reports CW443, K.U.Leuven, Department of Computer Science (April 2006)

    Google Scholar 

  15. Jacobson, I., Ng, P.W.: Object-Oriented Software Engineering: A Use Case Driven Approach. Addison Wesley Longman Publishing Co., Inc., Redwood City (2004)

    Google Scholar 

  16. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)

    Google Scholar 

  17. Tekinerdogan, B., Garcia, A., Sant’Anna, C., Figueiredo, E., Pinto, M., Fuentes, L.: Approach for modeling aspects in architectural views. AOSD-Europe Deliverable D77 (2007), http://www.aosd-europe.net/deliverables/d77.pdf

  18. Pinto, M., Fuentes, L.: Ao-adl: An adl for describing aspect-oriented architectures, pp. 94–114 (2007)

    Google Scholar 

  19. Greenwood, P., et al.: Reference architecture v3.0. AOSD-Europe Deliverable D103 (2008)

    Google Scholar 

  20. SpringSource: The spring enterprise platform, http://www.springsource.com/products/enterprise

  21. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design patterns: elements of reusable object-oriented software. Addison-Wesley Professional, Reading (1995)

    MATH  Google Scholar 

  22. Sun inc.: The glassfish application server, https://glassfish.dev.java.net/

  23. Apel, S., Leich, T., Saake, G.: Aspectual feature modules. IEEE Transactions on Software Engineering 34, 162–180 (2007)

    Article  Google Scholar 

  24. Apel, S., Kaestner, C., Lengauer, C.: Research challenges in the tension between features and services. In: SDSOA 2008: Proceedings of the 2nd International Workshop on Systems Development in SOA Environments, pp. 53–58. ACM, New York (2008)

    Google Scholar 

  25. Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling step-wise refinement. IEEE Transactions on Software Engineering 30, 355–371 (2004)

    Article  Google Scholar 

  26. Mezini, M., Ostermann, K.: Variability management with feature-oriented programming and aspects. In: SIGSOFT FSE, pp. 127–136 (2004)

    Google Scholar 

  27. Apel, S., Leich, T., Rosenmüller, M., Saake, G.: FeatureC++: On the symbiosis of feature-oriented and aspect-oriented programming. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 125–140. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  28. Apache: The ant build tool, http://ant.apache.org/

  29. Moazami-Goudarzi, K.: Consistency preserving dynamic reconfiguration of distributed systems. PhD thesis, Imperial College London (1999)

    Google Scholar 

  30. Truyen, E., Janssens, N., Sanen, F., Joosen, W.: Support for distributed adaptations in aspect-oriented middleware. In: Research Track Proceedings of the 7th International Conference on Aspect-Oriented Software Development, pp. 120–131. ACM Press, New York (2008)

    Google Scholar 

  31. Sant’anna, C., Garcia, A., Chavez, C., Lucena, C., von Staa, A.v.: On the reuse and maintenance of aspect-oriented software: An assessment framework. In: Proceedings XVII Brazilian Symposium on Software Engineering (2003)

    Google Scholar 

  32. Figueiredo, E., Cacho, N., Sant’Anna, C., Monteiro, M., Kulesza, U., Garcia, A., Soares, S., Ferrari, F., Khan, S., Filho, F.C., Dantas, F.: Evolving software product lines with aspects: An empirical study on design stability. In: ICSE 2008: Proceedings of the 30th International Conference on Software Engineering, pp. 261–270. ACM, New York (2008)

    Google Scholar 

  33. Bandi, R.K., Vaishnavi, V.K., Turk, D.E.: Predicting maintenance performance using object-oriented design complexity metrics. IEEE Trans. Softw. Eng. 29(1), 77–87 (2003)

    Article  Google Scholar 

  34. Cook, S., Ji, H., Harrison, R.: Software evolution and software evolvability (2000)

    Google Scholar 

  35. Belady, L., Lehman, M.: A model of large program development. IBM Sys. Journal 15(1), 225–252 (1976)

    Article  MATH  Google Scholar 

  36. Gentleware inc.: Poseidon for uml, http://www.gentleware.com/apollo.html

  37. AOSD-Europe Project:: The ea-miner tool, http://gateway.comp.lancs.ac.uk/computing/aosdeurope//deliverables/d108.pdf

  38. AOSD-Europe Project:: Atelier, http://gateway.comp.lancs.ac.uk:8080/c/portal/layout?pld=1.12

  39. CAOSD Group, t.D.o.L., of the University of Malaga., C.S.: The ao-adl specificiation tool, http://caosd.lcc.uma.es/aoadl/toolsupport.htm

  40. The Eclipse Foundation: the eclipse ide, http://www.eclipse.org

  41. JUnit project: Junit tool for unit testing, http://www.junit.org

  42. JBoss technologies: The jboss ide tools, http://www.jboss.org/tools

  43. Eclipse.org: the aspectj aop language

    Google Scholar 

  44. Pawlak, R., Seinturier, L., Duchien, L., Florin, G.: JAC: A flexible solution for aspect-oriented programming in Java. In: Matsuoka, S. (ed.) Reflection 2001. LNCS, vol. 2192, p. 1. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  45. Navarro, L.D.B., Südholt, M., Vanderperren, W., Fraine, B.D., Suvée, D.: Explicitly distributed aop using awed. In: Proceedings of AOSD 2006 (2006)

    Google Scholar 

  46. Lagaisse, B., Joosen, W.: True and Transparent Distributed Composition of Aspect-Components. In: van Steen, M., Henning, M. (eds.) Middleware 2006. LNCS, vol. 4290, pp. 42–61. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Van Landuyt, D., Op de beeck, S., Truyen, E., Verbaeten, P. (2011). Building a Digital Publishing Platform Using AOSD. In: Katz, S., Mezini, M., Schwanninger, C., Joosen, W. (eds) Transactions on Aspect-Oriented Software Development VIII. Lecture Notes in Computer Science, vol 6580. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22031-9_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-22031-9_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-22030-2

  • Online ISBN: 978-3-642-22031-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics