IT232 Project Submission Guidelines
IT232 Project Submission Guidelines
The document illustrates the use of methods in object-oriented programming through two examples. The first example is a Java program that defines methods for arithmetic operations like addition, multiplication, and average calculation. These methods are called based on the user's selection, thus showcasing functional abstraction . The second example involves a Student class with methods for setting and retrieving student attributes and changing the major. This demonstrates encapsulation and method invocation within objects .
The sequential structure of the program, which starts by gathering user input then processing it through a clear series of steps (prompts for input, selection of operation, execution), reflects fundamental software design principles such as procedural abstraction and modular design. It ensures that each step of the process is handled logically and efficiently, promoting easy understanding, maintenance, and debugging .
The use of switch-case statements in the Java program allows for efficient execution of different operations based on user input. They serve to simplify code readability by clearly defining potential execution paths, depending on the user's choice. This approach is preferable when there are multiple discrete execution paths derived from a single input value, thereby enhancing code organization and reducing the chance for logical errors .
The document outlines several measures to ensure academic integrity in submissions: submissions must be made as both a Word file and a PDF using an assignment template; files must not be compressed, and submissions attempting to bypass SafeAssign through manipulative techniques (e.g., misspellings, removed spaces, or converting text to images) will receive zero marks. Email submissions are not accepted, and late submissions will also result in zero marks. It is emphasized that work should be original and not copied from others .
The source code uses a Scanner object to interact with the user. It prompts the user to input two integers and choose an operation ('a' for addition, 'b' for multiplication, 'c' for average) by displaying a menu of options. The user's choice is captured using the next().charAt(0) method, and a switch-case structure is used to call the appropriate operation method based on the input .
If a student attempts to manipulate their assignment submission to avoid plagiarism detection, such as by misspelling words, removing spaces, or changing character sets, the potential impact is severe. The document states that such attempts will result in a zero mark for the assignment. This penalty aims to deter academic dishonesty and uphold integrity .
The Java program incorporates data encapsulation by using private fields within the Student class and providing public getter and setter methods to access and modify these fields. Encapsulation is important as it restricts direct access to some of the object's components, thus maintaining integrity and preventing unauthorized modification of object data. This approach supports information hiding and enhances maintainability and flexibility in code design .
The document clearly states that any submissions that are late will receive a zero mark. Additionally, submissions that do not adhere to the specified format—such as not using the assignment template, submitting files in a compressed format, or using incorrect file types—will also result in a zero mark .
The submission requirements promote responsibility and accountability by making students directly responsible for uploading correct files in specified formats and ensuring originality. Students must check their submissions for adherence to guidelines, as non-compliance results in zero marks with no leniency. This instills a sense of ownership and caution in managing their academic work .
The role of constructors in the Java class example is to initialize objects with specific attribute values. The class provides a default constructor for creating a Student object without setting attributes immediately and a parameterized constructor that takes four arguments to initialize the attributes (id, name, GPA, and major) at the time of creation. This allows for flexibility and precision in instantiating objects with desired initial states .