The complexity of software systems makes design reuse a necessary task in the software development process. CASE tools can provide cognitive assistance in this task, helping the so...
Physical boundaries have caused software systems to become less monolithic and more distributed. The trend is progressing to a point where software systems will consist of numerous...
The co-evolution of business processes and supporting software systems is needed for keeping them aligned and it requires managerial and technological effort for adequately plannin...
Currently, paradigms such as component-based software development and service-oriented software architectures promote modularization of software systems into highly decoupled and ...
Lieven Desmet, Nico Janssens, Sam Michiels, Frank ...
Requirement traceability is intended to ensure continued alignment between stakeholders’ requirements and various outputs of the system development process. Therefore a process f...
Rosa Candida Pinto, Carla T. L. L. Silva, Jaelson ...
Successful software systems must be prepared to evolve or they will die. Although object-oriented software systems are built to last, over time they degrade as much as any legacy s...
Abstract. The build architecture of legacy C/C++ software systems, groups program files in directories to represent logical components. The interfaces of these components are loos...
Homayoun Dayani-Fard, Yijun Yu, John Mylopoulos, P...
The possibility of building self-aware software fascinated computer scientist since the beginning of computer science. Research in AI, and in particular on software agents, agent s...
Many software systems would significantly improve performance if they could interpret the nonverbal cues in their user’s interactions as humans normally do. Currently, Intellige...
Versioning systems such as CVS or Subversion exhibit a large potential to investigate the evolution of software systems. They are used to record the development steps of software ...