Complex computer-controlled systems are commonly constructed in a middle-out fashion where existing subsystems and available components have a significant influence on system architecture and drive design decisions. During system design, the architect must verify that the components, put together as specified in the architecture, will achieve the desired system behavior. This typically leads to further design modifications or adjustments to requirements triggering another iteration of the design-verify cycle. For software components that are acquired from third-parties, often the only definitive source of information about the component's system-relevant behavior – its contract – is its object code. We posit that existing static and dynamic analysis techniques can be used to discover contracts that can help the system designer and specifically discuss how symbolic execution of object code may be particularly well-suited for this purpose.
Fri 9 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
10:30 - 12:00 | |||
10:30 30mTalk | Towards Combining Usage Mining and Implementation Analysis to Infer API Preconditions WASPI Hoan Anh Nguyen Iowa State University, USA, Tien N. Nguyen University of Texas at Dallas, Hridesh Rajan Iowa State University, Robert Dyer Bowling Green State University | ||
11:00 30mTalk | Contract Discovery from Black-Box Components WASPI Vaibhav Sharma University of Minnesota, Taejoon Byun University of Minnesota, Stephen McCamant University of Minnesota, Sanjai Rayadurgam University of Minnesota, Mats P. E. Heimdahl University of Minnesota, USA | ||
11:30 30mTalk | Automated Generation of Creative Software Requirements: A Data-Driven Approach WASPI |