You are on page 1of 4

College of Computing and Informatics

Computer programming

Project Report Phase 1


Deadline: Sunday 21/02/2021 @ 23:59
[Total Mark for this project is 5]

Instructions:

This project report must be submitted on Blackboard (WORD format only) via the allocated
folder.
Only the group leader submit the report and the java classes.
You are advised to make your work clear and well-presented; marks may be reduced for poor
presentation.
Late submission will result in ZERO marks being awarded.
The work should be your own, copying from students or other resources will result in
ZERO marks.
Use Times New Roman font for all your answers.

Students Details:
Name1: ### (Leader) ID1: ### CRN: ###
Name2: ### ID2: ###
Name3: ### ID3: ###
Name4: ### ID4: ###
I. Project objective:
This project is an opportunity for you to practice your knowledge in Java. It will allow you to
develop your skills of working within a team, thanks to your interaction with your colleagues in
designing and creating a small program.

II. Project Description:


This project is about Caesar Cipher technique which is one of the earliest and simplest ciphers. It is
simply a type of substitution cipher where each letter of a given text is replaced by a letter some fixed
number of positions down the alphabet set {A, B, C … Z}. For example, with a shift of 1, A would be
replaced by B, B would become C, and so on. Thus, to encrypt a given text, we need an integer value
known as key which indicates the number of positions each letter of the text has to be moved down.

III. Project Phase 1:

In the first phase of this project, you will implement encryption operation of Caesar Cipher which will
transform a given plaintext into ciphertext. You have to create a Java program containing a class
called CaeserCipher to encrypt the plaintext into ciphertext.:

 The class must have two instance variables: message (plaintext) and key.
 The class must have a default constructor to initialize the instance variables with default values.
 The class must have a constructor that initializes the instance variables with specific values
passed as parameters.
 The class must have a method called encrypt to compute the ciphertext from plaintext.
 In this phase the size of the plaintext is fixed to 5 letters

The program will have a second class called CaesarCipherDemo that contains a main method to
perform the following:

 Ask the user to input the plaintext (5letters) and key.


 Instantiate the object of CaesarCipher class by using the plaintext and key information.
 Compute and display the ciphertext.

pg. 1
IV. Hint
The code below can help you to code the method encrypt.

String myString = "abcd";


//save the first character of the variable myString in the variable myChar
char myChar =myString.charAt(0);
//save the next character of myChar into the varaible newChar
char newChar = (char)(myChar+1);

V. Marking Criteria

Criteria Marks
The program is bugs-free /5
The source code is well documented (commented) and program uses standard
/5
Java naming conventions
CaeserCipher class is implemented correctly /10
CaeserCipherDemo class is implemented correctly /10
Encrypt methods work correctly /10
Output screenshots provided in the report /10
Total /50
Final Grade /5

Answer
1. Brief description

pg. 2
Provide a brief description of your program in this section.

2. Program code

Put the code of your program in this section. Do not forget to document (comment) on your code.

3. Screenshots
Put the different screenshots with a brief description in this section (at least 3 screenshots).

4. Difficulties Faced
Provide a brief account of difficulties and challenges faced during this phase of the project.

pg. 3

You might also like