Modern software systems are designed and implemented in a modular fashion by composing individual components. Early validation of individual module designs and implementations off...
There exists a large variety of techniques to detect and correct software security vulnerabilities at the source code level, including human code reviews, testing, and static anal...
Software maintenance costs dominate software engineering costs, partly because most such engineering is done manually. Program Transformation tools leverage an engineer-provided b...
Involving a school teacher in the development of the intelligent writing tutor StoryStation allowed progress to be made on the problem of story classification, an aspect of story...
Performance analysis tools are critical for the effective use of large parallel computing resources, but existing tools have failed to address three problems that limit their scal...