1 / 17

CS527: (Advanced) Topics in Software Engineering (Software Testing and Analysis)

CS527: (Advanced) Topics in Software Engineering (Software Testing and Analysis). Darko Marinov August 25, 2011. Course Overview. Graduate seminar on program analysis (for bug finding), emphasis: systematic testing Papers: read/write/present/discuss

debbie
Download Presentation

CS527: (Advanced) Topics in Software Engineering (Software Testing and Analysis)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS527: (Advanced) Topics in Software Engineering(Software Testing and Analysis) Darko Marinov August 25, 2011

  2. Course Overview • Graduate seminar on program analysis (for bug finding), emphasis: systematic testing • Papers: read/write/present/discuss • Focus on a (research) project: proposal, progress report, final paper, presentation(?) • One or two problem sets • Teaching staff • Instructor: Darko (NetID: marinov) • TA: Shin Hwei (not just Shin, NetID: stan6) • General email info: netid@illinois.edu

  3. Course Communication • Mailing list: cs527-fa11 AT cs.illinois.edu • Did you get welcome email? • There will be soon HW0 announcement • Wikihttp://wiki.engr.uiuc.edu/display/cs527fa11 • Most of you were able to access and sign on the “People” page • Hopefully all of you can sign up on “People” now

  4. Course Organization Questions • Textbook? • No textbook required • For some background on testing, you can read“Introduction to Software Testing”by Paul Ammann and Jeff Offutt • Deliverables? • No exams: no final, no midterm • Focus on project (which is NOT easy) • Writing: proposal, two reports, hopefully bug reports • Presentation: show related papers and your work

  5. Evaluation • Grading • Project [40%] • Presentation [20%] • Participation (reports and discussion) [20%] • Homework assignment(s) [20%] • Distribution • Grades will be A- centered • No guarantee for A (or even a passing grade)! • Project is the most important • Preferably in groups (2-3 students)

  6. General Project Topics • Test thoroughly a piece of software • Apply some technique(s)/tool(s) that we read about on some piece of software • Improve some technique/tool that we discuss in class • Evaluate some techniques/tools on a number of case studies • Develop a new technique/tool • … • Some specific proposals will be on Wiki

  7. How to Choose a Project? • Talk • Discuss with other people • Group projects: talk with students • TA and/or me • Read • Read papers and see what the limitations are • Reuse problem or solution • Program • Problems from you own development experience • Dream :)

  8. Today’s Lecture/Meeting • Guideline for reading papers • Paper on writing papers

  9. 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 • Later on, papers should be read (and reports written) in advance, before the meeting, so that we can have a good discussion • Any questions about the guideline?

  10. (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?

  11. 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!

  12. 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

  13. Types of Result • Procedure or technique • Qualitative or descriptive model • Empirical model • Analytic model • Tool or notation • Specific solution, prototype, answer, or judgment • Report

  14. Types of Validation • Analysis • Evaluation • Experience • Example • Persuasion • Blatant assertion

  15. 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?

  16. 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?

  17. Next Lecture • Tuesday, August 30 • HW0: issues in your software development • Email as an attachment to ME (marinov) • Assignment 1 • Read a paper (listed on Wiki) • Iterative Context Bounding for Systematic Testing of Multithreaded ProgramsMadanMusuvathi and ShazQadeer (PLDI 2007) • May change to IMUnit • No paper report due yet! • Assignment 0: Modify “People” on Wiki

More Related