In this lab you will share and communicate with your fellow students to complete this lab. The instructor will assign you to a group. Within your group you can set up a group WebEx, chat, skype, or other communication tool to determine how best to complete this lab. Each person will contribute to the collaboration portion to complete this lab. Include the Names of each member on your team and a brief description as to how they participated.
Active participation is expected, but the quality, not the quantity, is the key to creating a successful collaborative learning environment for everyone. Instructional approaches for this course are highly interactive and experiential.
Your demonstrations of how to create both method contract and the method specification for the GetCourseByCourseID() method of the CourseList class were very well received by your team members. They then asked you for one final demonstration of how to implement the method specification using an object-oriented (OO) programming language and see the method actually execute.
You realize that it is easy to implement the method specification in an OO programming language, but it is hard to test it because the rest of the application is not developed yet. You decided, therefore, to write two pieces of code.
- Code that implements the GetCourseByCourseID() method
- Code that implements a unit test for that method alone (outside of any other application code)
This way you can demonstrate the method implementation and also verify its correct behavior.
You are under a deadline constraint for this deliverable, so you asked some of your peer architects for help. They each are well versed in different OO languages like VB.NET, C#, and Java and they all have done unit testing before so they are familiar of how to construct one.
Your peer architects provided you with partially-completed shells for your demonstration. Each shell contains:
- complete code for the Course class;
- partially completed code for CourseList class; and
- complete code for the CourseListTest class that unit tests the CourseList.GetCourseByCourseID() method.
Your task is now easy. Just select one of these shells and complete the code for the partially completed CourseList by coding it GetCourseByCourseID() method. When you compile and run the shell, it will automatically test your GetCourseByCourseID() code to ensure its correct behavior.
- A copy of the code you wrote for the GetCourseByCourseID method() of the CourseList class in your favorite OO programming language.
- A screen shot of the output of running the provided unit test in the shell (the CourseListTest class) showing that your code works as expected. Note that these unit tests only print out messages of testing problems. If your code is correct, the unit tests will succeed silently without any success messages.
- A zip file of the completed shell after you added your code so that the shell could be executed on a different machine.
- Verification and validation of your work.
- Explanation of your work.
- Name of each member of your team and how they participated.
STEP 1: Review the Method Contract, Method Specification for the GetCDByCDID() Method, and Coding & Unit Testing GetCDByCDID() Method using Java (not Graded)
- Download the Method Contract for GetCDByCDID() Method (Links to an external site.)Links to an external site. Method and review it prior to reviewing this week’s video tutorial.
- Download the Method Specification for the GetCDByCDID() Method (Links to an external site.)Links to an external site.and review it prior to reviewing this week’s video tutorial.
- The video tutorial below demonstrates how to code and unit test the GetCDByCDID() method using Java
STEP 2: Code & Unit Test the GetCourseByCourseID() method of the CourseList class
- Download the LabWeeklySubmissionTemplate. You are going to use this template for all of your Lab submissions throughout this course. This template is available in week1 Lab.
- Decide on your OO programming language that you will use for this lab and then download the corresponding shell from the following.
- Visual Basic Shell (Links to an external site.)Links to an external site.
- C# Shell (Links to an external site.)Links to an external site.
- Java Shell (Links to an external site.)Links to an external site.
Both the Visual Basic and C# shells are Visual Studio projects while the Java shell include only the *.java source files that could be loaded into any Java IDE.
- Code and unit test the CourseList.GetCourseByCourseID() method in your favorite programming language. You only need to add code for the GetCourseByCourseID() method and then run the application (the unit test will automatically test your code), then print out problem messages, if any
- Using the LabWeeklySubmissionTemplate, copy and paste the following into the template:
- code text of your CourseListGetCourseByCourseID() method
- a screenshot of running the unit test of CourseListGetCourseByCourseID() method
- a *.zip file of all the coding project files
STEP 3: Verify, Validate, & Explain Your Work
- Using the LabWeeklySubmissionTemplate, verify and validate your work
- Using the LabWeeklySubmissionTemplate, explain your work, the decisions you made to arrive at your proposed solution, and lessons learned.
STEP 4: Upload your LabWeeklySubmissionTemplate Document
Save the LabWeeklySubmissionTemplate MS Word document with the file name LabWeeklySubmissionTemplate_YourName and upload it to the Files section of the Course Menu.