ITAP1001 Software Development Fundamentals Assignment

ITAP1001
Software Development Fundamentals
Assignment
March 2020
Assignment
Weightage: 25%
Submission deadline: Session 12
The purpose of assessment is to assess students on the following Learning Outcomes:
LO1: Use problem solving techniques and program design methods to translate a problem description to a formal program specification with core programming concepts, such as computer storage and data types, decision structures, loops and object-oriented programming concepts, and error handling
LO2: Differentiate various object-oriented programming constructs, including classes, inheritance, polymorphism, and encapsulation.
____________________________________________________________________________________ Objective(s)
This is an individual assessment. In this assignment, you are required to develop a Visual C# program using Visual Studio. The aim of the assignment is to prepare students to adapt their knowledge and understanding gained in the unit into changing demands relevant to the software development.
Assignment Description
Write a C# code that creates objects and classes with their member functions for KrisFlyer, a Singapore Airlines Loyalty program. You are asked to write an inheritance hierarchy discount system that benefits KrisFlyer members program to calculate their profit.
A brief about KrisFlyer is that it is useful for those who fly on Singapore Airlines (its partners like Virgin Australia and Air New Zealand) frequently. KrisFlyer miles can be earned through credit cards, flying and bonus miles promotions. The miles can be redeemed for award flights in all categories. It has three types of memberships namely Basic, Elite Silver and Elite Gold. When registered for the first time, all the customers get instant access to the basic membership level of KrisFlyer. In 2020, Singapore Airlines offers a flat 10%, 20% and 30% discount to its Basic, Elite Silver and Elite Gold members respectively for all services provided. Customers without membership receive no discount. The students have to implement basic OOPs concepts such as inheritance, polymorphism and encapsulation.
Inheritance
Base class: Create an inheritance hierarchy to represent various types of memberships. Use KrisFlyer as the base class of the hierarchy, then include derived classes Basic, Elite Silver and Elite Gold that deriver from KrisFlyer. Base class KrisFlyer should have data members representing name, membership, flight, price for flight, number of passengers for the members. The constructor should initialize these data members. Ensure that flight price and number of passengers contain positive values. KrisFlyer should include a public member function calculateCost() that returns a double indicating the cost by multiplying the price for flight by the number of passengers.
Derived class: Basic, Elite Silver and Elite Gold should inherit the functionality of base class KrisFlyer, but also include a data member that represents a discount that the reward program has offered recently. All the derived class’s constructor should receive a value to initialize this data member. In 2020, Singapore Airlines offers a flat 10%, 20% and 30% discount to its Basic, Elite Silver and Elite Gold members respectively for all services provided. All the derived members should redefine calculateCost() so that it applies the discount to the booked flights. It shall compute the total bill if a customer purchases y tickets for a price of $x for each flight for their visit using Krisflyer.
Your system shall consist of four classes: 1. KrisFlyer (base class), derived classes including Basic, Elite Silver, Elite Gold.
Polymorphism
Implement a method display() that displays all the records of the system. Another form of the method display(string cust_name) that displays records related to the customer name passed in the argument.
Encapsulation
Define the instance variables private/ public so that they cannot/can be accessed from outside the class. Implement getter and setter method for the variables in the program.
Write a program that implements basic Object-oriented concepts including encapsulation polymorphism and inheritance. Also, the program is expected to get the basic input from the user based on either console/Desktop.
The student is expected to do the following tasks:
1. Draw the class diagram of the given scenario
2. Write the c# classes with suggested data members and functions
3. Write the base and derived classes for implementing inheritance in the program.
4. Implement polymorphism and encapsulation to check for accessibility of data members and different form of the data member
5. Write the main logic that takes input from the user members with their bookings
6. Write the code to display the output as displayed (it is a sample)
Expected output
The given output is a sample. The student is free to use creative ideas to display the output of the program. It needs to be an interactive session where the user feeds in dynamic information.
KrisFlyers Reward Discount system
Basic 10%
Elite silver 20%
Elite gold 30%
Hello, Input based on your requirement
1. To input new entry 2. Display a single record:
3. Display all records
4. Exit
1
Enter the name of the customer : XYZ
Enter the membership type : Basic
Enter the price for flight in dollars ($): 1200
Enter the number of passengers : 2
Hello, Input based on your requirement
1. To input new entry 2. Display a single record:
3. Display all records
4. Exit
2
Enter the name of the customer
XYZ
| Name | Price | No | Total | discount | Discounted Price |
| XYZ | $1200 | 2 | $2400 | 10% | $2160 |
Hello, Input based on your requirement
1. To input new entry 2. Display a single record:
3. Display all records
4. Exit
3
| Name | Price | No | Total | discount | Discounted Price |
| XYZ | $1200 | 2 | $2400 | 10% | $2160 |
| ABC | $1000 | 1 | $2000 | 10% | $1800 |
Code related Guidelines
1. Your c# console-based application should include the following:
a. The code should have a consistent, professional and well-organized appearance.
b. Carefully chosen, meaningful identifier names
c. Code is well organized: clear, simple, & DRY (Don’t repeat Yourself)
d. Thoughtful comments, where needed, expressed in concise, precise English.
e. Code should compile without errors
2. The developed system takes input and handles the error in friendly manner.
3. Your project must adhere to OOPS concepts with implementation guidelines including modularity, reusability, extensibility, maintainability and adaptability.
___________________________________________________________________________________
Submission Guidelines
• Follow the links in Moodle to upload your report on or before the deadline. The report must be submitted on the LMS in the respective link i.e. ITAP1001 Project – (Melbourne/Sydney).
• The c# console-based application developed must be submitted in a zip folder on the LMS in the available link. The zip folder should include:
o A document that consists of introduction, requirements, proposed class diagram with the attributes, screen shots and output with references.
o The c# project folder o A readme.txt file, which include your information.
• Follow the links in Moodle to upload your answer on or before the deadline. Late penalty applies on late submission, 10% per day would be deducted.
• Incidence of plagiarism will be penalized.
_____________________________________________________________________________________
Marking Guide: 50 Marks (scale to 25%)
The project will be marked out of 50 and will contribute 25% towards the assessment of this unit.
Rubrics for MITS5502 Project
Task Description with sub-task Marks
Class Diagram Appropriate Class diagram for the given case study in the report 5
OOPS concepts Implemented effectively object-oriented concepts with classes that includes encapsulation, polymorphism and inheritance for the given program 15
Input The program when run generates series of clear messages to get the input from the user. 10
Error-free output Program logic is correct with no errors/redundant conditions. The program generates the expected output 10
Demonstration Working demonstration of the project to the lecturer in week 12 10
Note: Assignments that fail to follow submission requirements will NOT be assessed.

The post ITAP1001 Software Development Fundamentals Assignment appeared first on Essay Bishops.

Order a unique copy of this paper
(550 words)

Approximate price: $22

Basic Guarantees
  • Free title page and bibliography
  • Free unlimited revisions
  • Plagiarism-free papers
  • Money-back guarantee
  • 24/7 support
On-demand options
  • Writer’s samples
  • Progressive delivery
  • Plagiarism report
  • Copies of used sources
  • Expert Proofreading
Paper format
  • 275 words per page
  • 12 pt Arial/Times New Roman
  • Double or single line spacing
  • Any citation style (APA, MLA, Chicago/Turabian, Harvard)

Our guarantees

Writing quality papers is a TOP priority. One expert takes one order at a time.
The service package includes topic brainstorm, research, drafting, proofreading, plagiarism check, citation formatting, and revisions.

Money-back guarantee

We appreciate how valuable your time is. Hence, we make sure all custom papers are 100% original and delivered within the agreed time frame

Read more

Zero-plagiarism guarantee

Each paper is written from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.

Read more

Free-revision policy

We see it as our duty to follow all instruction the client provides. If you feel the completed paper does not meet your exact requirements, we will revise the paper if you let us know about the problem within 14 business days from the date of delivery.

Read more

Privacy policy

Your email is safe, we use your personal data for legal purposes only and in accordance with personal data protection law. Your payment details are also secure, as we use only reliable payment systems.

Read more

Fair-cooperation guarantee

You can easily contact us with any question or issues you need to be addressed. Also, you have the opportunity to communicate directly with assigned writer, e-mail us, submit revision requests, chat with us online, or call our toll-free on our site. We are always available to our customers.

Read more

Calculate the price of your order

550 words
We'll send you the first draft for approval by September 11, 2018 at 10:52 AM
Total price:
$26
The price is based on these factors:
Academic level
Number of pages
Urgency
-->