F3 - From Features to Framework

Matheus C. Viana, Rafael S. Durelli, Rosângela A. D. Penteado, Antônio F. do Prado


Frameworks allow applications to be developed more efficiently and with higher quality since application functionality can be designed and implemented by reusing framework classes. However, frameworks are hard to develop, learn and use, due to their adaptive nature. The effort to develop a framework tends to be greater than an application. In this paper we propose an approach to facilitate the development of white box frameworks. In this approach, denominated From Features to Framework (F3), the domain of the framework is modeled and a set of patterns guides the developer to design and implement the framework according to the elements and rules defined in this model. An example of use of the F3 approach is also presented in this paper.


  1. Abi-Antoun, M. (2007). Making Frameworks Work: a Project Retrospective. In Companion to the 22nd ACM SIGPLAN conference on Object-Oriented Programming Systems and Applications, OOPSLA 7807, pages 1004-1018, New York, NY, USA. ACM.
  2. Almeida, E. S., Alvaro, R., Garcia, V. C., Nascimento, R., Meira, S. L., and Lucrdio, D. (2007). A systematic approach to design domain-specific software architectures. Journal of Software, 2(2).
  3. Amatriain, X. and Arumi, P. (2011). Frameworks Generate Domain-Specific Languages: A Case Study in the Multimedia Domain. Software Engineering, IEEE Transactions on, 37(4):544-558.
  4. Bayer, J., Flege, O., Knauber, P., Laqua, R., Muthig, D., Schmid, K., Widen, T., and DeBaud, J.-M. (1999). Pulse: a methodology to develop software product lines. In Proceedings of the 1999 symposium on Software reusability, pages 122-131. ACM.
  5. Fayad, M. and Schmidt, D. C. (1997). Object-Oriented Application Frameworks. Communications of ACM, 40(10).
  6. Fowler, M. (2003). Patterns. IEEE Software, 20(2):56-57.
  7. Frakes, W. and Kang, K. (2005). Software reuse research: Status and future. Software Engineering, IEEE Transactions on, 31(7):529-536.
  8. Gomaa, H. (2004). Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley.
  9. Gronback, R. C. (2009). Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Addison-Wesley.
  10. JBoss Community (2013). Hibernate. http:// www.hibernate.org.
  11. Jezequel, J.-M. (2012). Model-Driven Engineering for Software Product Lines. ISRN Software Engineering, 2012.
  12. Johnson, R. E. (1997). Frameworks = (Components + Patterns). Communications of ACM, 40(10):39-42.
  13. Kang, K. C., Cohen, S. G., Hess, J. A., Novak, W. E., and Peterson, A. S. (1990). Feature-oriented domain analysis (foda) feasibility study. Technical report, Carnegie-Mellon University Software Engineering Institute.
  14. Keepence, B. and Mannion, M. (1999). Using patterns to model variability in product families. Software, IEEE, 16(4):102 -108.
  15. Kim, S. D., Chang, S. H., and Chang, C. W. (2004). A systematic method to instantiate core assets in product line engineering. In Software Engineering Conference, 2004. 11th Asia-Pacific, pages 92-98.
  16. Lee, K., Kang, K. C., and Lee, J. (2002). Concepts and guidelines of feature modeling for product line software engineering. In Proceedings of the 7th International Conference on Software Reuse: Methods, Techniques, and Tools, ICSR-7, pages 62-77, London, UK. Springer-Verlag.
  17. Loo, K. N. and Lee, S. P. (2010). Representing Design Pattern Interaction Roles and Variants. In Computer Engineering and Technology (ICCET), 2010 2nd International Conference on, volume 6, pages 470-474.
  18. Lopes, S., Afonso, F., Tavares, A., and Monteiro, J. (2009). Framework characteristics - a starting point for addressing reuse difficulties. In Software Engineering Advances, 2009. ICSEA 7809. Fourth International Conference on, pages 256 -264.
  19. Lopes, S. F., Silva, C. A., Tavares, A., and Monteiro, J. L. (2005). Application development by reusing object-oriented frameworks. In International Conference on Computer as a Tool (EUROCON'05), pages 583-586.
  20. OMG (2013). OMG's MetaObject Facility. http:// www.omg.org/mof.
  21. Parsons, D., Rashid, A., Speck, A., and Telea, A. (1999). A ldquo;framework rdquo; for object oriented frameworks design. In Technology of Object-Oriented Languages and Systems, 1999. Proceedings of, pages 141 -151.
  22. Pressman, R. S. (2009). Software Engineering: A Practitioner's Approach. McGraw-Hill Science, 7th edition.
  23. Shiva, S. G. and Shala, L. A. (2007). Software reuse: Research and practice. In Information Technology, 2007. ITNG 7807. Fourth International Conference on, pages 603-609.
  24. Spring Source Community (2013). Spring Framework. http://www.springsource.org/spring-framework.
  25. Srinivasan, S. (1999). Design Patterns in Object-Oriented Frameworks. Computer, 32(2):24 -32.
  26. Stanojevic, V., Vlajic, S., Milic, M., and Ognjanovic, M. (2011). Guidelines for Framework Development Process. In Software Engineering Conference in Russia (CEE-SECR), 7th Central and Eastern European, pages 1-9.
  27. Viana, M., Penteado, R., and do Prado, A. (2012). Generating Applications: Framework Reuse Supported by Domain-Specific Modeling Languages. In 14th International Conference on Enterprise Information Systems (ICEIS'14).
  28. Weiss, D. M. and Lai, C. T. R. (1999). Software Product Line Engineering: A Family-Based Software Development Process. Addison-Wesley.
  29. Xu, L. and Butler, G. (2006). Cascaded refactoring for framework development and evolution. Software Engineering Conference, Australian, pages 319-330.

Paper Citation

in Harvard Style

C. Viana M., S. Durelli R., A. D. Penteado R. and F. do Prado A. (2013). F3 - From Features to Framework . In Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-8565-60-0, pages 110-117. DOI: 10.5220/0004417701100117

in Bibtex Style

author={Matheus C. Viana and Rafael S. Durelli and Rosângela A. D. Penteado and Antônio F. do Prado},
title={F3 - From Features to Framework},
booktitle={Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},

in EndNote Style

JO - Proceedings of the 15th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - F3 - From Features to Framework
SN - 978-989-8565-60-0
AU - C. Viana M.
AU - S. Durelli R.
AU - A. D. Penteado R.
AU - F. do Prado A.
PY - 2013
SP - 110
EP - 117
DO - 10.5220/0004417701100117