Oscar Mondragon

Learn More
Software engineering strives to enable the economic construction of software systems that behave reliably, predictably, and safely. In other engineering disciplines, safety is assured in part by detailed monitoring of processes. In software, we may achieve some level of conndence in the operation of programs by monitoring their execution. DynaMICs is a(More)
Although formal verification techniques have been demonstrated to improve program dependability, software practitioners have not widely adopted them. One reason often cited is the difficulty in writing formal specifications. This paper introduces Prospec, a tool to assist practitioners in formally specifying software properties. Prospec uses property(More)
– The challenges to teaching software engineering include achieving functioning teams, enforcing individual accountability, ensuring progress of the students, and evaluating quality of the product. The two-semester, software engineering course at the University of Texas at El Paso incorporates a cooperative group method and an improvement process model that(More)
The paper presents an approach to support run-time verification of software systems that combines two existing tools, Prospec and Java-MaC, into a single framework. Prospec can be used to clarify natural language specifications for sequential, concurrent, and nondeterministic behavior. In addition, the tool assists the user in reading, writing, and(More)
Formal specification and analysis of software properties can be useful in reducing the number of errors in production software. More intuitive methods of specifying constraints and system properties are needed so that developers and other stakeholders can participate in validation of formal software requirements. This work introduces composite propositions,(More)