DOC PREVIEW
Toronto CSC 302 - Assignment 4- Build and Test a New Feature

This preview shows page 1 out of 3 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 3 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 3 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

University of Toronto Department of Computer Science CSC302S – Engineering Large Software Systems March 20, 2008 Prof. Steve Easterbrook Assignment 4: Build and Test a New Feature Due Date: 11:20am, Thursday, April 10, 2008 (i.e. within 10 minutes of the start of the tutorial) This assignment counts for 15% of the final grade Build and test a new feature for the UMLet application. You should continue to work on the feature you selected in the previous assignment. You should build enough of the functionality of the new feature to offer users some additional value, but you are not required to build all of the functionality suggested in the original feature requests. However, you will be expected to fully test and debug the functionality that you do build, and to demonstrate that your verification process was thorough. You are encouraged to identify and use automated tools to help: for example code coverage analysis tools, automated testing tools, and static analysis tools. The project is to be carried out in your assigned teams. Each team will submit one report. I. Doing the Assignment This assignment has 8 steps. They are: 1. Review the analysis you performed for the previous assignment. Check that your understanding of the requirements is correct, and that your effort estimates still seem reasonable. Then select an appropriate set of functions (related to the feature request) to implement for this development cycle. 2. Decide on your development process. How will you organize and keep track of the implementation effort? Decide whether any of the software process models mentioned in the course will help you (e.g. SCRUM, XP, ICONIX, RUP). For example, consider whether to use the following strategies: test case first, pair programming, daily scrum meetings, burndown charts, daily smoke test, etc. 3. Build and verify the functions. Use any appropriate verification strategies (informal and formal reviews, static and dynamic analysis, etc). Keep track of the number and types of defects discovered through each technique. 4. Build an automated test suite your new functions. Note: depending on your development strategy, you might do this before, during or after implementing the functions themselves. 5. Select the most complex of the classes you have implemented for additional white box testing. You should demonstrate 100% test case coverage of this class, by using a suitable testing strategy (e.g. structured basis testing, MC/DC, inheritance coverage, etc) 6. Write a short use guide to explain how to use your new feature. 7. Write a report that describes your implementation and verification activities. Be sure to document your development process, and comment on how well the process worked for you.8. Document your teamwork and complete team member evaluations and team member evaluation summary form, using the online system on the course website. II. List of change requests The list of change requests is unchanged from assignment 3. You should continue to work on the same feature you selected in assignment 3. If you encounter difficulties that lead you to conclude the implementation is infeasible, talk to the course instructor about it. III. What to Hand In Hand in your report at the start of your tutorial on the due date. Reports not handed in within the first ten minutes of the tutorial will be treated as late. The report should not exceed twenty (20) pages (not counting cover pages and appendices). Do not include source code or detailed test cases in the report, other than selected excerpts needed for illustration purposes. Be sure to indicate clearly which version of the code in your DrProject repository is the final version of the code, and which is the final version of the test suite. Your TAs will run your code and your test suite during the marking of this assignment. Your submitted report should include the following items: 1. A description of software development process you chose to use, including all tools and techniques. Be sure to justify your choices. 2. An analysis of your implementation and verification procedures. Indicate which techniques you applied, and comment on their effectiveness. You should include data on the numbers and types of defect found through each verification technique, and a commentary on the resulting quality of your implementation. 3. A brief user guide for the new feature(s) you have added. You do not need to repeat material from the original UMLet user guide, but should clearly show where your new material should be inserted into the existing guide. 4. A post mortem on the course work for all four assignments this term, including a review of the tools and techniques you have applied, how well they worked (or didn’t!), and lessons learned. Be sure to identify both positive and negative lessons: i.e. both things that worked well and things that went wrong, and identify techniques you are likely to want to use again on other software development projects. Written Presentation Requirements Be sure to include a cover page indicating the name of your team, the names of all team members, title of work, course, date and tutor's name. Assignments will be judged on the basis of visual appearance, the grammatical correctness and quality of writing, and the visual appearance and readability of the models, as well as their contents. Please make sure that the text of your report is well-structured, using paragraphs, full sentences, and other features of a well-written presentation. Use itemized lists of points where appropriate. Text font size should be either 10 or 12 point. IV. Marking Scheme Your assignment will be marked by your tutor. If you have questions about a marked assignment, you should first ask your tutor before/after a tutorial. If you don’t get satisfactory answers, you should talk to your instructor. Marks for this assignment will depend on the following factors: Description of your choice of process, techniques and tools (20%): Did you clearly describe the criteria you used for your decision? Are the criteria appropriate? Is the choice sensible, given the criteria? Did you investigate existing resources (e.g. free testing tools) that you could use to help


View Full Document

Toronto CSC 302 - Assignment 4- Build and Test a New Feature

Documents in this Course
Load more
Download Assignment 4- Build and Test a New Feature
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Assignment 4- Build and Test a New Feature and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Assignment 4- Build and Test a New Feature 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?