Often Software Engineering courses approach educating undergraduates in good processes and practices by using a simulated product development environment, following all of the ste...
As software evolves, maintenance practices require a process of accommodating changing requirements while minimizing the cost of implementing those changes. Over time, incompatibi...
This paper examines the non-linear nature of progress on software projects. It asserts that this uneven accomplishment stems from the continuous need to drive value quickly in res...
Instruction-set randomization (ISR) is a technique based on randomizing the "language" understood by a system to protect it from code-injection attacks. Such attacks wer...
Today’s software projects are often distributed across multiple locations. This distribution poses new challenges produced by the cooperation across different countries, times z...