Software Engineering Spring 2005
Slides from lecture can be found here
Part A - test specification
Based on your own requirements document, you must prepare test cases.
For each test case, you must give
Make sure that all requirements that apply to the simple ray tracer
- test data
- expected result - and how you plan to check if the actual result
is the same
- which requirement(s) are tested by this test case (traceability!)
Plan ahead for running a serious number of tests in an efficient way.
Read an XML
(OH in Swedish) or a short introduction
to XML (in English). Or search the web for an XML tutorial.
The DTD for the ray tracer files is at http://www.it.uu.se/edu/course/homepage/pm2/VT04/pm2gl.txt.
Example test files in xml- and ppm-format can be found at http://www.it.uu.se/edu/course/homepage/pvt/vt04/xml.
Use the program xview to view ppm-files.
To create or edit XML-files you may use the XML-editor xmlpro
. Run it by the command /it/kurs/pm2/vt04/xmlpro. Documentation
is available in pdf-format. Before you can run xmlpro you
must copy the license file /it/kurs/pm2/vt04/xmlpro2.01/xmlpro.prp
to the directory that is your working directory when you run xmlpro.
The Methods of Programming course students are now working on their assignment
2 - the simple ray tracer. You have to agree with them on internal deadlines
that allow you and them to make the external (i.e. the teachers') deadlines.
Specifically, you have to agree on dates
- when you will do the code review (27-31 March)
- when the program is available for system testing
Part B - test report
Run the test cases that you planned to run according to part A (after comments
of Anders Hessel) and documents the results in an appropriate way (e.g.
an overview table with test run identifier, pass/fail, comment and then the
individual test runs).
Part C - code review
The code review, together with the code that it refers to, is
handed in to the assistant of the Methods of Programming course.
- Preparation: before the inspection you need:
- a set date, time and place,
- an up-to-date and concise requirements specification,
- a checklist for common errors (e.g. Sommerville Figure 22.7 (6th
ed.: 19.7) is a start) and deviations from the coding
and documentation rules.
- a protocol form that allows you to take notes for each error/deviation:
where in the code, what is the deviation, severity, programmer's comments,
- to be delivered by the Methods of Programming students: code
that compiles without errors and warnings, and passes Lint without warning
(or with only a few that you can defend). The code must also be unit-tested,
and documentation of these test must be available.
- Overview meeting: the programmers present their code.
- Individual preparation: the SE students go through the code, identify
potential errors and problems, and write them down on the protocol form.
- Inspection meeting: (for roles see Sommerville Figure 22.5 (6th ed.:
19.5) - the MP students can alternate between the roles of author and reader,
the SE students between inspector and moderator/scribe). At this meeting,
the protocol is updated: is there an error? severity?
- The assignment is made in pairs. You are welcome
to discuss the assignment with others if it helps you clarify your
thinking, but submit your own work!
- You may write in Swedish or English.