CMIS
325 – Final Project

The ‘official’ requirements for the final project, as
presented in the course Syllabus/Project Descriptions are reproduced below:

Create and manage a phone book text data
file.

Create five correctly working programs:

menu

add

display

change

remove

Each of these programs should work together
as a unique application

Include documentation as header comment
blocks for each program.

Your final project will be graded based on:

functionality (50 percent)

proper style: indentation, use of white
space, variable names (10 percent)

adherence to requirements (30 percent)

user-friendly application (10 percent)

Please be aware that grading will be done according to
the scheme included above and do not forget to include documentation as
required.

From Assignment 7 you already have the structure for
the final project, thus the task for this week is to add two new functions, for
changing an entry in the phone book, and for removing an entry. Updates are
required in the main part of the script to include the two new options in the
menu, and there is also a supplementary requirement for the Add function: now
you have to check that the phone number is typed in the format ddd-ddd-dddd
(Please do not forget to make this change! There is a post in the Assignment 7
conference about how to proceed for this test.)

More detailed requirements for the two new functions
are presented next. In both functions the phone book file must be searched for
a certain line, and that line, if found, is either modified, or deleted. The
search will use as ‘key’ the last name and first name of a person. In case
there is no such line in the phone book, both functions should return with a
message informing the user that the key is not present in the file. To simplify
the requirements, assume that there is at most one entry in the phone book for
a given person.

Function Delete

This function requires from the user the Last Name and
First Name of a person and searches the phone book for a corresponding entry.
If no such entry is found, the function displays a message informing the user;
if the entry is found, that line must be removed from the file, and then the
function informs the user about the success of the operation. The function
requires an acknowledgement from the user (type any character) to return to
menu display.

Function Change

This function must change the phone number of a
specified person (Last Name First Name.) It asks the user to type Last Name,
First Name and New Phone Number. If there is no entry for the specified person,
the function displays a message informing the user; if the entry is found, that
line is replaced with a line containing the name of the person and the new
phone number; then the function informs the user about the success of the
operation. The function requires an acknowledgement from the user (type any
character) to return to menu display.

Notes:

1. This time the functions can have the simple names:
add, display, change, remove.