Hazeline U. Asuncion

Learn More
Software traceability is a fundamentally important task in software engineering. The need for automated traceability increases as projects become more complex and as the number of artifacts increases. We propose an automated technique that combines traceability with a machine learning technique known as topic modeling. Our approach automatically records(More)
Traceability is an important aspect of software development that is often required by various professional standards and government agencies. Yet current industrial approaches do not typically address end-to-end traceability. Moreover, many industry projects become entangled in process overhead and fail to derive much benefit from current traceability(More)
Automated techniques aid in minimizing the overhead associated with the capture and maintenance of trace links. However, many challenges to automated traceability remain, such as linking heterogeneous artifacts and capturing custom link semantics. In this position paper, we propose a combination of techniques, including prospective link capture, open(More)
The role of software ecosystems in the development and evolution of open architecture systems has received insufficient consideration. Such systems are composed of heterogeneously-licensed components, open source or proprietary or both, in an architecture in which evolution can occur by evolving existing components or by replacing them. The software(More)
The importance of software traceability to software development is recognized by researchers and practitioners; yet, current approaches fall short of providing effective traceability in practice. An analysis of reported difficulties with traceability reveals that interacting factors from the economic, technical, and social perspectives hinder traceability.(More)
Heterogeneously-licensed systems pose new challenges to analysts and system architects. Appropriate intellectual property rights must be available for the installed system, but without unnecessarily restricting other requirements, the system architecture, and the choice of components both initially and as it evolves. Such systems are increasingly common and(More)
A substantial number of enterprises and independent software vendors are adopting a strategy in which software-intensive systems are developed with an open architecture (OA) that may contain open source software (OSS) components or components with open APIs. The emerging challenge is to realize the benefits of openness when components are subject to(More)