educational support to get here. Next, I would like to thank CNPq for the financial support, which helped me to live in Recife during my master degree. Without this support, I could not spend my time researching and trying to do my best to complete this dissertation on time. The results of this dissertation could not be achieved without the support of the Reuse in Software Engineering (RiSE) group. My gratitude to the RiSE members for their patience during the experiment, seminars, presentations, and discussions about my work. Some key researchers in the software reuse area offered valuable feedback for this work. My gratitude to John McGregor and Sholom Cohen for their suggestions during our discussions that improved the quality of my work. Finally, I would like to thank my great family, friends, and my wonderful girlfriend. Especially, my parents that always stood by me with everything I needed during my life, and my girlfriend for her patience and comprehension. v