cs 260 module seven

CS 260 Final Project Guidelines and Rubric
Overview
Data structures and algorithms are essential tools for anyone entering the field of computer science. These tools consist of specific patterns that, when applied
correctly, solve problems. As a professional working in the field of computer science, you must be aware of the various data structures and algorithms that are
available, and more importantly, when to apply them. Being familiar with different data structure and algorithm options allows you to solve problems efficiently,
because you will not have to re-create a solution repeatedly.
In this project, you will select examples from your coursework to showcase the knowledge and skills you have developed in this course. You will compile this
portfolio of work in a compressed ZIP file that will include the sources codes for each of your programs. You will complement your portfolio with a reflection
paper that defends the work and articulates the lessons learned from applying algorithms and data structures to solve processing problems.
In this assignment, you will demonstrate your mastery of the following course outcomes:
 Apply appropriate data structures for effectively organizing data given the requirements and constraints of various problems
 Implement technically sound algorithms that accurately perform required functions
 Employ basic algorithms and common data structures in developing effective computer programs
 Assess foundational algorithms and data structures for their use in solving processing problems
Scenario
The source data is a cumulative list of the monthly sales of surplus property items on eBid Nashville beginning in January, 2014. The interactive data set is
available online.
For your final project, you will assume the role of a programmer at SNHU Software. Managers of eBid Nashville are looking for a program that allows users to
access information on the items sold through the eBid website. Throughout this course, you will contribute specific functional components of this larger piece of
software. You will not be responsible for building the entire project; instead, you will submit individual artifacts that employ specific algorithms and data
structures to meet the requirements of certain features of the program. The requirements you will be addressing are:
 Bid ID Search (Module Three, Five, and Six)
 Sorting by Bid Title (Module Four)
2
Prompt
Your portfolio of work should be a compressed ZIP file that includes the final, polished versions of each of your programs’ source codes. Any programs discussed
in your reflection paper must be present in the portfolio.
Your reflection paper should be a polished document that addresses each of the following critical elements:
I. Data Structures: In the first section of your report, indicate which programs in your portfolio best exemplify your knowledge and skills related to data
structures. For each example that you provide, defend your program in terms of how effectively the data is organized, using specific evidence from the
problem. Specifically, you must discuss each of the following data structure types:
A. Vectors
B. Hash tables
C. Tree structures
II. Algorithms: In the second section of your report, indicate which programs within your portfolio best exemplify your knowledge and skills related to
algorithms. For each example that you provide, defend your program as one that is technically sound and can perform the required functions, using
specific evidence. Specifically, you must discuss each of the following algorithm types:
A. Search
B. Sort
C. Hash/Chaining
III. Student’s Choice: Select your best or favorite program that uses both an algorithm and a data structure.
A. Defend the overall effectiveness of this computer program. To what extent did you implement the algorithm(s) and data structure(s) to create a
program that works? Support your claims with specific evidence from your work.
B. Defend your programming abilities as they are illustrated in this program:
1. To what extent is your code modularly composed? Support your claims with specific evidence from your work.
2. To what extent is your code reusable? Support your claims with specific evidence from your work.
3. To what extent are your annotations clear in explaining your choices and underlying reasoning? Specifically, how are your choices
logically based on the needs of the case? Support your claims with specific evidence from your work.

Open chat