CMPSCI 520/620

Fall 2004

Project 3

Assigned: November 22, 2004

Due: December 20, 2004 (PEEAS December 26, 2004)

 

 

Goal Ð For your chosen Sakai Tool (a grade book for PEEAS students), complete the implementation and testing of a system using your choice of programming language. Follow these steps:

1.    Install Sakai, complete coding of your Sakai Tool.

2.    Develop a Test Plan and several (at least 3 test cases) based on your SRS. Select (adding if necessary) high-level requirements elements having functional, timing, and robustness requirements.  For each of these three types of requirements specify a set of test cases designed to determine whether your Tool adheres to the given requirements. A test case should be specified in template form, where the template contains at least the following fields:

a.    Requirement element being tested

b.    Requirement element field being tested

c.     Testing rationale (some sort of motivation or justification for this approach to testing the software system in this way)

d.    Testing environment required (eg. needed hardware, software, or setup procedure)

e.    Input(s) to the software (here it is desirable to specify a set of related inputs designed to provide good coverage).

f.      Required output(s) (this is likely some function of the input)

3.    Develop the necessary test scaffolding (drivers, stubs, etc) to unit test your tool (If you are programming in Java, you may find JUnit useful), i.e., testing the Tool before integrating it within the Sakai framework.

4.    Specify a process (use a dataflow diagram, control flow diagram, or programming language code) for unit testing your Tool by executing the test cases defined above. The unit testing process will clearly be some kind of iteration through the test cases, but you should take care to specify the order in which the various test cases are to be executed.  In addition, you should be sure to indicate how you will detect failures, what you will do to record failures, and any strategy you may have for altering the progress of the testing process in response to failures.

5.    Integrate the Tool within Sakai and describe your integration testing strategy.

6.    [620 Only] Using Little-JIL, describe your unit testing and integration testing processes. You should be sure to make use of such Little-JIL features as exception management and choice/try step kinds in your process programs. Include the Little-JIL specification as an Appendix to the report below. Submit this as part of HW#3

7.    Provide a short report of your implementation and testing experience.

8.    On-campus students should arrange to meet and demo your tool.