Build a student record managing system application

Assignment Help Programming Languages
Reference no: EM131944

Part A)

Question: Make a Student inheritance hierarchy. This must comprise the given requirements:

i) Make the Student class. Student can be the super class and an abstract class. At least one method on Student will be abstract.

ii) Student class holds the attributes first name, last name, student ID, GPA, status and mentor. All the attributes will be inherited by subclasses.

iii) Prepare suitable overloaded constructors for the super class, Student.

iv) Student has an abstract method, calculateTuition(), that can be implemented in the subclasses Undergraduate, Graduate and Part-time, making use of the polymorphism principle.

v) Prepare the subclasses Undergraduate, Graduate, and Part-time, that inherits from the Student class. Every subclass will encapsulate the specialization of Student.

vi) Prepare an abstract method, update(). Whenever this method is called, the database entry for the student is updated.

vii) Prepare an abstract method, add() method. Whenever this method is called, the database entry for the student is made.

viii) Prepare an abstract method, delete(). Whenever this method is called, the database entry for the student is deleted.

ix) Prepare an abstract method, query(). Whenever this method is called, a query is made to the database to retrieve the information and is then printed to the screen.

Question: Create subclasses. This must comprise the given requirements:

i) Prepare the subclass Undergraduate that inherits from Student. Undergraduate has the additional attribute, "level" (freshman, sophomore, junior, senior).

ii) Prepare the subclass Graduate, which inherits from Student. Graduate has additional attributes, "thesisTitle", and "thesisAdvisor".

iii) Prepare the subclass Part-time that inherits from Student. Part-time students are working adults. Part-time students have an attribute, "company" that is the name of their sponsoring employer.

iv) Incorporate the method of information hiding by making suitable attributes private and creating getters and setters to access and modify each and every private attribute.

v) Prepare overloaded constructors for each Student type. The super class constructor must be used by each and every subclass's constructors to set such attributes found in the super class. Prepare adequate constructors for each class to initialize the instance variables (attributes) of an object, either by initial values passed into the constructor or default values employed if none is passed in. All values passed in must be verified for validity.

Question: Implement the given methods using polymorphism. This must comprise the given requirements:

i) Implement calcuateTuition() method as shown:

• Status of resident: undergraduate tuition = number of credit hours 200
• Status of nonresident: undergraduate tuition = number of credit hours 400
• Status of resident: undergraduate part time = number of credit hours 250
• Status of nonresident: undergraduate part time = number of credit hours 450
• Status of resident: graduate = number of credit hours 300
• Status of nonresident: graduate = number of credit hours 350

ii) Student objects must know how to show the information. Override the toString() method on each subclass. Use inheritance to display attributes given by super class by calling super.toString() method.

Question: Override the given methods. This must include the given requirements:

i) For each subclass, implement method query(). Whenever this method is called, a query is made to the database to retrieve the information and then the information is printed to the screen. If proper, use toString() within the print() method.
ii) For each subclass, implement method update(). Whenever this method is called, the database entry for the student is updated.
iii) For each subclass, implement method add() method. Whenever this method is called, the database entry for the student is made.
iv) For each subclass, implement method delete(). Whenever this method is called, the database entry for the student is deleted.

Question: Make an application that tests the given requirements:

i) Application has to allow the user to add, update, delete, and query any student type.

Note: The application may have a graphical user interface (GUI) or can be run from the command prompt. It have to be clear how to use the application. Prompts must be clearly worded and mechanics of the prompt or receive input should work well. If essential, give a short user manual that explains how to use the application.

Part B: Prepare UML Use Case Diagrams which could be inserted into a Software Requirement Specification (SRS) document which captures all functional needs for this application. Use the task description in part A to elicit the needs. You will only be needed to document the functional needs and provide Use Case diagrams. You don't have to complete a complete SRS document.

Question: Document the functional requirements with UML use case diagrams for each requirement.

For each functional requirement give the following:

• Requirement number and title.
• Description of the functionality.
• Input.
• Results of processing or output.
• Error handling or recovering requirements outlined.
• UML use case diagrams (It is very important that your UML use case diagrams are complete and proper UML 2.0 Modeling notation is used).

Part C: Make UML Class and Sequence Diagrams which could be inserted into a Software Design Specification (SDS) document. (It is very significant that your UML diagrams are complete and proper UML 2.0 Modeling notation is used. Your design should be an object-oriented design.) You will only be needed to submit the class and sequence diagrams and not have to complete a SDS document.
Question: Your UML Diagrams must comprise the following:
a) Comprehensive Class Diagrams: Show all classes and all relationships among all classes. These must comprise the following:

• Relationships: Your object oriented design will require you to diagram all class relationships using correct UML 2.0 Modeling notation that minimally comprises:
- Inheritance
- Association Relationships
• Multiplicity: Note any multiplicity in the relationships (example: 1-1, 1-many, and so on) using correct UML 2.0 Modeling notation.
• Attributes: For each and every class, all attributes with types (example: int, double and so on) and access control (example: private, public, protected) need to be noted using proper UML 2.0 Modeling notation.
• Methods: Methods with signatures and access control must be given. All methods have to be indicated, comprising all constructors, setters and getters.
• Abstract Classes and Interfaces: Any abstract classes and interfaces employed in your design should be properly indicated by using UML 2.0 Modeling notation.
b) Sequence Diagrams: Model the object interactions needed for each functional scenario. For each Use Case provided in the functional requirements section, at least one sequence diagram must be given to model the interaction between the objects within the application.

Part D: Develop a test plan which includes test cases which test all functional requirements of the system.

Note: The test plan is on the whole approach to how the application will be tested. The test cases are the steps a tester will take to test a single behavior. Pass/Fail criteria need to be given for each test case; all test cases must have been run, and the Pass/Fail section must be completed. For each functional requirement, one or more test cases must be provided.
Note: All compiler and runtime errors should be corrected before you submit. Your application must correctly satisfy all requirements. Your application must have passed all test cases before being submitted for evaluation.

1) The test plan must comprise at least the following sections:
• Title Page.
• Introduction: Brief description (suggested length of 1-2 paragraphs) of the application under test.
• Overview of Testing Strategy: See part D1a.
• Resource Requirements: Discuss hardware and software required to complete the test plan.
• List of Features to Test: A simple table is sufficient. If features are numbered, the feature number can be used in your test cases.
• Acceptance Criteria: Identify the standards that must be met when considering if the application is ready for release. In your case, this means that the application should be ready to be submitted for grading.
• Test Cases: Should be submitted as an appendix to the test plan
a) In the "Overview of Testing Strategy" section, compare white box testing, black box testing, unit testing, and integration testing and how they can be used to verify your application.
• Identify which testing strategy you will use.

2) Execute the test plan, comprising running all test cases.
a) Discuss the results of each test case in the "Test Cases" section. (A Pass/Fail value should be indicated as a result for each test case.)

Reference no: EM131944

Questions Cloud

The implementation of server side of the application : Implementation of dynamic content, server side (backend) and database for your web site using Microsoft Visual Studio 2012
Prepare an income statement for july : Prepare the journal entries to record the transactions in July using normal costing, Calculate the over applied or under applied overhead for July. Utilize the proration method to prepare a journal entry to close this balance, Prepare a schedule of ..
Create a memo on the state of the companys industry : Create a memo on the ‘state of the company's industry' and associated risk factors.
Build a student record managing system application : Build a student record managing system application
Build a student record managing system application : Build a student record managing system application
Evaluate the internal rate of return for each project : Evaluate the internal rate of return for each project
Study and modify the postgresql source code : Write a Assignment to study and modify the PostgreSQL source code, with a focus on one of the core modules - the buffer manager
Calculation of cost of capital for western communications : Calculation of cost of capital for Western Communications
Determine the inputs, outputs, relevant formulas : determine the inputs, outputs, relevant formulas

Reviews

Write a Review

Programming Languages Questions & Answers

  Programming assignment

If the user wants to read the input from a file, then the output will also go into a different file . If the user wants to read the input interactively, then the output will go to the screen .

  Questions on programing problem with the process of analysis

Questions on Programing Problem with the process of analysis and reflection that went on as you developed the project.

  Explain about lexical analyzer

Explain about Lexical Analyzer

  Hierarchy of processes

Write a program that creates a hierarchy of processes using the fork() system call.

  What are the contents of given register

Memory location 2000H has the word 5000H stored in it. What does each location contain after INC BYTE PTR[2000H]. Also after DEC WORD PTR[2000H]

  Evaluate the fibonacci series

Write a program to evaluate the first 20 numbers of Fibonacci series.

  Programming problem

Programming Problem can be solved by a program that performs three basic tasks-Input Data, Process Data, and Output Results.

  Design a program that models the worms behavior

Design a program that models the worm's behavior.

  Program to perform a search of an employee list

Write a /bash/bin program to perform a search of an employee list.

  Accuracy and completeness of computations

Analysis right and you have to develop a plausible argument to "prove" that your analysis is correct

  Travelling salesman problem

Travelling Salesman Problem on the L1-metric plane.

  Computer sales and repair store system

It is required to design a relational database system for a "realistic" application

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd