Reference no: EM134012045
Software Development
Assessment - Group Software Project
Learning Outcome 1: Describe and discuss the elements of effective programming style
Demonstrate an understanding of software development life cycle and apply sound programming analysis techniques (design, coding, debugging, testing and documentation) to justify simple programming problems.
Assessment Description
In this project, you will work in groups. These will be formed from Session two's class onward; therefore, it is vital that you attend this class. It is expected that groups work cohesively, constructively, and extensively in their own time. A Group Charter will be issued for all members to agree, sign and work with. Process, structure, and content: This course requires students to demonstrate their capacity to construct and develop a software project. This Assessment is a group-assessment (3 to 4 students), where each student will contribute to the Python project as a collaborative effort among its group members. The group will submit their combined efforts as a single programming code directly into Moodle. The details of how to prepare the submission appear below.
Requirements:
Computer-assisted instruction (CAI) refers to the use of computers in education. Write an application to help an elementary school student learn with your application.
Calculator
Create a function that randomly generates and returns a tuple of two or more positive integers. Use that function's result in your script to prompt the user with a math question (such as: "How much is 6 times 7?"). Varying the computer's responses can help hold the student's attention. Prepare various comments which are displayed for each answer. Possible responses to a correct answer should include 'Very good!', 'Nice work!' and 'Keep up the good work!' Possible responses to an incorrect answer should include 'No. Please try again.', 'Wrong. Try once more.' and 'No. Keep trying.' Allow the user to pick a type of arithmetic problem to study e.g., 1 means addition problems only, 2 means subtraction problems only, 3 means multiplication problems only, 4 means division problems only (avoid dividing by 0) and 5 means a random mixture of all these types.
Assessment Description
Collect data regarding number of exercises correct/incorrect and total exercises per topic. Allow the program to present descriptive statistical information in words/numbers and charts about each student (per user) and all students (all users) using the program.
String
Allow student to insert one arbitrary string. Save the letters of the string into a list. Design and perform the following tasks and display your results:
Write a program to accept a string. Perform the following tasks:
Convert the letters to Uppercase.
Check if the string is symmetrical and palindrome or not. Hints:
For checking if a string is a palindrome, use a loop to compare characters from the start and end moving towards the middle.
For checking symmetry, we split the string into two halves and compare them.
Sorting letters and removing duplicates.
Present descriptive statistics about how many letters are repeated in the string.
*Survey
Ask your student to rate on a scale of 1 to 5 the quality of 30 products in a store, with 1 being "awful" and 5 being "excellent". Place the 20 responses in a list.
List_response=[1, 2, 5, 4, 3, 5, 2, 1, 3, 3, 1, 4, 3, 3, 3, 2, 3, 3, 2, 5, 2, 1, 3, 3, 1, 4, 2, 3, 1, 4]
Determine and display the frequency of each rating.
Use the built-in functions, statistics module functions and NumPy functions to display the following response statistics: minimum, maximum, range, mean, median, mode, variance, and standard deviation.
Display a bar chart showing the response frequencies and their percentages of the total responses.
Hints:
Use a For loop to iterate list_responses and rate each product one by one.
Use a while True loop for input validation.
Use try-except block to handle input errors and prevent the program from crashing.
(It informs us about the invalid input and allows to try again until a valid rating is given).
Game (4 program + arcade manager or single mix game)
Create a mix of 2 games, which offer other students the opportunity to either rest or develop their brain skills through play. You can use a List (or another data structure we have covered) to be the environment for your world.
For example, a program where you enter a number and make the player guess if it is even or odd number. Congratulate the user if the guess is right. Otherwise give one more attempt or try another game.
The second game may be a program where you accept a string and create anagrams out of it and display it to the user.
Program Expectations
Each member must be able to explain the working of the programs and its logic. The program should be properly indented, proper comments should be given, variable names and data types should be chosen appropriately. The program should compile and execute to display the result. The student must use programming constructs available in Python and follow software engineering coding standards. Students may also refer to programming assignment project solutions concepts when reviewing project structure and implementation practices.
*Note: Need only Survey Part Only