ToolDAy: a tool for domain analysis

  • Liana Barachisio LisboaEmail author
  • Vinicius Cardoso Garcia
  • Eduardo Santana de Almeida
  • Silvio Romero de Lemos Meira
Regular Paper


Domain analysis is the process of identifying and documenting common and variable characteristics of systems in a specific domain. This process is a large and complex one, involving many interrelated activities, making it essential to have a tool support for aiding the process. We present a domain analysis tool called ToolDAy that has the purpose of making the process semi-automatic. The requirements definition presented were based on the results of a systematic review that analyzed several existing tools. Furthermore, this article describes the tool architecture, implementation and its evaluations (two as a controlled experiment and one as an industrial case study) with three different domains. The results of these evaluations indicate that the tool can aid the domain analyst to achieve systematic reuse in an effective way.


ToolDay Domain analysis Tool Software reuse 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Almeida, E.S.: RiDE: The RiSE process for domain engineering. PhD thesis, Federal University of Pernambuco, Brazil (2007)Google Scholar
  2. 2.
    Almeida E.S., Mascena J.C.C.P., Cavalcanti A.P.C., Alvaro A., Garcia V.C., Meira S.R.L., Lucrédio D.: The domain analysis concept revisited: a practical approach. In: Morisio, M. (eds) International Conference on Software Reuse (ICSR), pp. 43–57. Turin, Italy (2006)Google Scholar
  3. 3.
    Arango G.: Domain analysis methods. In: Horwood, E. (eds) Software Reusability, pp. 17–49. Chichester, England (1994)Google Scholar
  4. 4.
    Basili V.R., Briand L.C., Melo W.L.: How reuse influences productivity in object-oriented systems. Communications of the ACM 39(10), 104–116 (1996)CrossRefGoogle Scholar
  5. 5.
    Basili, V.R., Caldiera, G., Rombach, H.D.: The goal question metric approach. In: Encyclopedia of Software Engineering, pp. 528–532. Wiley, New York (1994)Google Scholar
  6. 6.
    Bass, L., Clements, P., Cohen, S.G., Northrop, L., Withey, J.: Product line practice workshop report. Technical report, Technical Report CMU/SEI-97-TR-003, Software Engineering Institute, Carnegie Mellon University, Pittsburgh (1997)Google Scholar
  7. 7.
    Bayer, J., Flege, O., Knauber, P., Laqua, R., Muthig, D., Schimd, K., Widen, T., DeBaud, J.-M.: Pulse: a methodology to develop software product lines. In: Symposium on Software Reusability, pp. 122–131. ACM Press, Los Angeles (1999)Google Scholar
  8. 8.
    Biggerstaff T.J.: An assessment and analysis of software reuse. Adv Comput 34, 1–57 (1992)CrossRefGoogle Scholar
  9. 9.
    Czarnecki K., Eisenecker U.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Boston (2000)Google Scholar
  10. 10.
    Frakes W., Succi G.: An industrial study of reuse, quality, and productivity. J Syst Softw 57(2), 99–106 (2001)CrossRefGoogle Scholar
  11. 11.
    Garcia, V.C., Lisboa, L.B., Durão, F.A., Almeida, E.S., Meira, S.R.L.: A lightweight technology change management approach to facilitating reuse adoption. In: 2nd Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS 2008), Porto Alegre, Brazil (2008)Google Scholar
  12. 12.
    Garcia, V.C., Lisboa, L.B., Meira, S.R.L., Almeida, E.S., Lucrédio, D., Fortes, R.P.M.: Towards an assessment method for software reuse capability. In: 8th International Conference on Quality Software (QSIC 2008), Oxford, UK (2008)Google Scholar
  13. 13.
    Garcia, V.C., Lucrédio, D., Lisboa, L.B., Martins, A.C., Almeida, E.S., Fortes, R.P.M., Meira, S.R.L.: Toward a code search engine based on the-state-of-art and practice. In: 13th IEEE Asia Pacific Software Engineering Conference (APSEC), Component-Based Software Development Track, Bangalore, India (2006)Google Scholar
  14. 14.
    Gurp, J.V., Bosch, J., Svahnberg, M.: On the notion of variability in software product lines. In: Working IEEE/IFIP conference on software architecture (WICSA’01), pp. 45. IEEE Computer Society, Washington (2001)Google Scholar
  15. 15.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (foda) feasibility study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University (1990)Google Scholar
  16. 16.
    Krueger C.W.: Software reuse. ACM Comput Surv 24(2), 131–183 (1992)CrossRefMathSciNetGoogle Scholar
  17. 17.
    Lee K., Kang K.C., Chae W., Choi B.W.: Feature-based approach to object-oriented engineering of applications for reuse. Softw Pract Exp 30(9), 1025–1046 (2000)CrossRefGoogle Scholar
  18. 18.
    Lim W.: Effects of reuse on quality, productivity and economics. IEEE Softw 11(5), 23–30 (1994)CrossRefGoogle Scholar
  19. 19.
    Lisboa, L.B., Garcia, V.C., Almeida, E.S., Meira, S.L.: Toolday—a process-centered domain analysis tool. In: Brazilian Symposium on Software Engineering—Tools Session, Brazil, pp. 54–60 (2007)Google Scholar
  20. 20.
    Lisboa L.B., Garcia V.C., Almeida E.S., Meira S.R.L.: A support tool for domain analysis. In: Benavides, D., Batory, D., Grünbacher, P. (eds) Fourth International Workshop on Variability Modelling of Software-Intensive Systems (VAMOS’10), pp. 175–178. Linz, Austria (2010)Google Scholar
  21. 21.
    Lisboa L.B., Lucrédio D., Garcia V.C., Almeida E.S., Meira S.R.L., Fortes R.P.M.: A systematic review of domain analysis tools. J Inf Softw Technol 52, 1–13 (2010)CrossRefGoogle Scholar
  22. 22.
    Massen, T.v.d., Lichter, H.: Deficiencies in feature models. In: Workshop on Software Variability Management for Product Derivation, EUA (2004)Google Scholar
  23. 23.
    McIlroy, M.D.: Software engineering: Report on a conference sponsored by the nato science committee. In: Division, N.S.A. (ed.) NATO Software Engineering Conference, pp. 138–155 (1968)Google Scholar
  24. 24.
    Moon M., Yeom K., Chae H.S.: An approach to developing domain requirements as a core asset based on commonality and variability analysis in a product line. IEEE Trans. Softw. Eng. 31(7), 551–569 (2005)CrossRefGoogle Scholar
  25. 25.
    Predonzani P., Succi G., Vernazza T.: Strategic Software Production with Domain-Oriented Reuse. Artech House, Boston (2000)zbMATHGoogle Scholar
  26. 26.
    Schmid, K., Schank, M.: Pulse-beat—a decision support tool for scoping product lines. In: Software Architectures for Product Families, pp. 65–75, Spain (2000)Google Scholar
  27. 27.
    Succi, G., Yip, J., and Liu, E.: Analysis of the essential requirements for a domain analysis tool. In: ICSE 2000 Workshop on Software Product Lines: Economics, Architectures and Implications (2000)Google Scholar
  28. 28.
    Wohlin C., Runeson P., Host M., Ohlsson M.C., Regnell B., Wesslén A.: Experimentation in Software Engineering: an Introduction. Kluwer Academic Publishers, Norwell (2000)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag 2010

Authors and Affiliations

  • Liana Barachisio Lisboa
    • 1
    Email author
  • Vinicius Cardoso Garcia
    • 1
    • 2
  • Eduardo Santana de Almeida
    • 1
    • 3
  • Silvio Romero de Lemos Meira
    • 1
    • 2
  1. 1.Reuse in Software Engineering (RiSE)RecifeBrazil
  2. 2.Informatics CenterFederal University of PernambucoRecifeBrazil
  3. 3.Federal University of BahiaSalvadorBrazil

Personalised recommendations