140 likes | 257 Views
CS527 Topics in Software Engineering (Software Testing and Analysis). Darko Marinov August 31, 2010. Course Info. Everyone seems to be on the mailing list Two more students registered this week Coursework PROJECT [40%] Already received some proposals Presentation [20%]
E N D
CS527Topics in Software Engineering(Software Testing and Analysis) Darko Marinov August 31, 2010
Course Info • Everyone seems to be on the mailing list • Two more students registered this week • Coursework • PROJECT [40%] • Already received some proposals • Presentation [20%] • Participation (reports and discussion) [20%] • Homework assignment(s) [20%] • Fair warning: this is NOT easy • Project requires that you explore some topic in great depth
Schedule • First few lectures to help you select projects • Last week: Intro, ReAssert (test repair) • Today: UDITA (test generation) • Sep 2: Pex (test generation) • Sep 7: Randoop? (test generation) • Sep 9: JPF? (model checking) • Your preferences? (I’ll also read HW0) • Software testing, model checking, static analysis • Your presentations after that • 3 presentations per lecture (~20 minutes each)
Guideline for Reading Papers • How to Read an Engineering Research Paper by William G. Griswold • Did you get to read the guideline? • How long is the report form? • Our form for reports will be shorter • In the future, papers should be read (and some reports written) in advance, before the class, so that we can have a good discussion • Any questions about the guideline?
(Meta-)Paper on Writing Papers • Writing Good Software Engineering Research Papers by Mary Shaw (ICSE 2003) • Could we analyze this paper itself using the guideline for reading papers?
Writing Good SE Papers • Motivation • Guidelines for writing papers for ICSE • Approach • Analysis of papers submitted to ICSE 2002 • Distribution across three dimensions • Question • Result • Validation • Results • Writing matters, know your conferences!
Types of Question • Method or means of development • Method for analysis or evaluation • Design, evaluation, or analysis of a particular instance • Generalization or characterization • Feasibility study or exploration
Types of Result • Procedure or technique • Qualitative or descriptive model • Empirical model • Analytic model • Tool or notation • Specific solution, prototype, answer, or judgment • Report
Types of Validation • Analysis • Evaluation • Experience • Example • Persuasion • Blatant assertion
Some Questions for Discussion • Why do analysis papers have an edge? • What about other (software engineering) conferences? • Does the mentality of PC differ from one conference to another? • Development vs. evaluation in software engineering?
Other Papers/Projects? • Some papers that you read or will read • Do they follow these guidelines? • Your reports on papers should also consider question/result/validation • Your own project • Question? • Result? • Validation?
(Y)our Paper Reports • Start on Thursday; four items: • One good point • One bad point • One potential project (help for proposals) • One question for discussion • Looking for depth • Length is not important; answers that are too long can make it hard to find the depth
Paper Today • Test Generation through Programming in UDITAby Milos Gligoric, Tihomir Gvero, Vilas Jagannath, Sarfraz Khurshid, Viktor Kuncak, and Darko Marinov (ICSE 2010) • What would you write for the four items: • One good point • One bad point • One potential project • One question for discussion
Next Lecture • Thursday, September 2 • Assignment 1 • Read a paper (listed on Wiki) • Pex – White Box Test Generation for .NETNikolai Tillmann and Jonathan de Halleux (TAP 2008) • Write a report (by 2pm but better send by 1pm) • Assignment 0: Modify “People” on Wiki if you didn’t already do so