Software helps people fulfill their goals, but development tools lack understanding of those goals. But if development tools did understand how software artifacts relate to higher...
By now it is common knowledge that it’s just as easy for a team to fail using agile practices as it is with waterfall or any other method for building software. So what is the s...
Abstract. Source-program modifications can make a partial evaluator yield dramatically better results. For example, eta-redexes can preserve static data flow by acting as an interf...
Software maintenance is a highly collaborative activity whose social context is rarely addressed. To explore this context, we conducted an ethnographic study at a large technology...
Though verification tools are finding industrial use, the utility of engineering optimizations that make them scalable and usable is not widely known. Despite the fact that seve...