首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
24LLP109代做、代写c/c++编程语言
项目预算:
开发周期:
发布时间:
要求地区:
24LLP109 – Digital Application Development
Coursework Report (100%)
The coursework report for this module consists of two parts:
• Part 1. Software development (60%): develop a car rental system using
Object-Oriented Programming principles.
• Part 2. Report (40%): write a 2000-word report about your
software development.
This assessment asks you to apply the skills and tools you’ve learned throughout
the module on a selection of different tasks. General guidelines are as follows:
Deadline: 3:00 pm (UK time) on 22 November 2024 (Friday) in Week 8.
• Requirements: You must not share your code with anyone. You are welcome
to discuss questions with other students, but don't share the answers. Applying
logical thinking to solve problems algorithmically is the core aim of the module,
and your solution must make sense to you. If someone asks you for the
answer, resist – just say no!
• Plagiarism: Your work must not be plagiarized. You are NOT allowed to use
ChatGPT or similar AI tools to generate any part of your code or your written
report. Rather than being an easy solution, remember that it is likely that these tools
will not produce working code on their own and you will need to fix the output. It is
easier if you write code that you understand than to decode/debug ChatGPT
output.
• Advice: Develop your answers incrementally. To perform a complicated task,
break it up into steps, perform each step on a different line, and check that each
intermediate result is what you expect.
• Remember your rubber duck – explain the code out loud or to someone
else and you will find the missing pieces.
• Remember that we do assignments to test our knowledge and get
feedback; it is ok if things are not perfect. If something does not work,
reflect on it through your comments and in your report. Do the best you can.
• It is better to receive a lower mark on your own work and use this
assignment to reflect on your knowledge than to copy or plagiarise, get a
good mark, and inevitably show up to a job interview or your first day of
work with no idea of your own skills. Be honest, value your own time, and
set yourself up for the best possible long-term outcome of this course.
2
Part 1: Software Development (60%)
This part is to build a car rental system using Object-Oriented Programming.
• Your rental shop has a stock of cars available for rent. These rules apply for
renting:
• When a car is not rented, it is available to the customer to rent.
• Once a car is rented, the car is assigned to the customer and
removed from the rental pool.
• When the car is returned by the customer, it is assigned back into the
rental pool.
• Three types of cars are available: hatchback, sedan, and SUV. Prices are
dependent on the length of rent as follows:
• Less than a week (< 7 days): Hatchback £30, sedan £50, SUV
£100 per day.
• A week or longer (≥ 7 days): Hatchback £25, sedan £40, SUV for
£90 per day.
• When renting a car:
• Prompt the customer for 1) the type of car, and 2) the no. of days
they would like to borrow the car.
• Check stock for availability. If available, display the following
message (or something similar) to the customer: “You have rented a
{ } car for { } days. You will be charged { } per day, We hope that you
enjoy our service." Update the stock accordingly.
• If unavailable, inform the customer that the car is out of stock.
• Upon returning a rented car:
• Update the stock accordingly,
• Issue a bill with more details including the type of vehicle rented,
rental period, rate per day, and total cost.
Step 1: Create your classes
Your program should have at least two main classes as follows (you can use further
subclasses as you deem appropriate):
• Customer(s) who can:
• Inquire about available stock and prices,
• Rent a car,
• Return a car they have previously rented.
• The Rental Shop(s) can:
• Issue a bill when the customer returns their car,
• Display available inventory and prices when a customer enquires,
• Process rent requests from customers after verifying stock availability.
3
Since classes are used, various numbers of customers/shops can be instantiated
as needed.
For simplicity, we assume that any one customer requests a rental of only
one type (hatchback, sedan, SUV) for a given number of days.
Step 2: Run your code
Create the main script (main.py) to run the classes you implemented. Import your
classes into your main script. When run, main.py should output a series of prompts
to the console, which allows a customer to interact with your classes via the
command line. Your implementation should include the following:
• Create instances of your classes. Initiate the car stock with, for
instance, 10 cars (4 hatchbacks, 3 sedans, 3 SUVs).
Via the command line, a customer should be able to perform different
transactions to rent and return (according to the rules on the previous page):
(1) Rent a specific car for a given number of days.
(2) View a display of the stock to see available vehicles.
(3) Return a previously rented car and receive a bill for the rental.
(4) Exit the rental platform.
Step 3: Extend your program
Create a VIP class for customers with a loyalty card. VIP customers have a special
rate of:
• VIP daily rate: Hatchback £20, sedan £35, SUV £80 per day.
• Hint: VIP class will inherit from the general Customer class
!! You must comment your code throughout !!
Demonstrate your understanding of your code using in-line comments. They do not
need to be full/complete sentences but should outline functions, class definitions,
and input/output arguments.
4
Part 2: Report (40%)
Each report should contain the following five sections for your software development.
The overall report should include approximately 2000 words (10% more or less).
There is no word limit for each section in the report; you should address each of the
required points as clearly and concisely as possible. The word limit does not include
any addition of a front page, list of contents, references, appendix, and
sections/blocks from the software code itself, which can be any length.
• Introduction
You should (1) give a clear overview of what your programs are intended to do.
Your introduction should also clearly explain (2) where the program might be
used in an industrial application and (3) how it relates to the field of digital
technologies in general.
• Program structure
(1) Explain in general how your program is structured. You can use a block diagram if
you wish or any appropriate method to show how the program you are submitting is
constructed. It should be possible to fully understand how the program works at a basic
level without necessarily reading your codes in detail: you should (2) explain how your
classes are organised, (3) how they work together (e.g., pass arguments), and (4) how
a customer interacts procedurally via the command line.
• Application development
(1) Define technical concepts that have been used generally (e.g., their basic function
and why they would be used) and (2) detail how they are used in your program
specifically. Choose three from: list, tuple, dictionary, control flows (while loops, if/else
statements, conditional statements), functions, and classes.
• Program functionality
Prove in this section that your codes do work by (1) showing the result of inputting test
data and (2) showing the output in screenshots for each of the above four actions with
specified requirements (you must demonstrate all requirements). Although you should
implement a working code, you should (3) note any parts that do not work, your
intended function and your attempt to implement it, and reflect on why the code does
not work as intended.
• Conclusion and further work (in the end of the report)
(1) Discuss critically the software you developed (e.g., what you have achieved, what
are the current limitations, are there any parts that do not fully work and need further
development?). Think about the real-world context and what else might be needed to
make your implementation usable by an actual company or customer.
!! You do not need to include references in your report !!; however, if you do
include references, they will not be included in the word count, and they must be
referenced correctly in-text and in bibliography using Harvard style. Incorrect
referencing will receive mark deductions.
5
Submitting your coursework
To submit your work on Learn, you will need to include:
1) your report in PDF version;
2) your Python codes in .py files for software development. You must put your Python
code files into one zipped folder and submit it.
Please make sure that your PDF and Python codes are clear to read and run after
opening your zip file!
Your code should be able to be run from ONLY the resources included in this
folder. Your code should not require the use of external libraries or resources that
must be downloaded.
!! REMEMBER: You must NOT include your name in your submission title or file, in
line with anonymous marking !!
You can instead use your ID number and name your files as follows:
.pdf --- Report
.zip --- Code, including all Python files needed to run the program
Grading
Your grade will be assessed on the overall quality of each part.
The overall quality of Part 1 (software development, 60%) will be assessed on both
correctness and style.
• Correctness: How well the program works according to specifications.
• Style: The quality of the code and documentation (including in-line comments)
Part 1 (Software Development, 60%) should be well-written and well-commented. You
are encouraged to format your code in accordance with Python style guidelines. It should
be clear enough for another programmer to understand it. For example, every function
written is commented in text, in your own words, which should describe its behaviour,
parameters, and returns, and highlight any special cases.
The overall quality of Part 2 (Report, 40%) will be assessed on the overall report and how
well the five sections are answered according to specifications.
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
代做 program、代写 c++设计程...
2024-12-23
comp2012j 代写、代做 java 设...
2024-12-23
代做 data 编程、代写 python/...
2024-12-23
代做en.553.413-613 applied s...
2024-12-23
代做steady-state analvsis代做...
2024-12-23
代写photo essay of a deciduo...
2024-12-23
代写gpa analyzer调试c/c++语言
2024-12-23
代做comp 330 (fall 2024): as...
2024-12-23
代写pstat 160a fall 2024 - a...
2024-12-23
代做pstat 160a: stochastic p...
2024-12-23
代做7ssgn110 environmental d...
2024-12-23
代做compsci 4039 programming...
2024-12-23
代做lab exercise 8: dictiona...
2024-12-23
热点标签
mktg2509
csci 2600
38170
lng302
csse3010
phas3226
77938
arch1162
engn4536/engn6536
acx5903
comp151101
phl245
cse12
comp9312
stat3016/6016
phas0038
comp2140
6qqmb312
xjco3011
rest0005
ematm0051
5qqmn219
lubs5062m
eee8155
cege0100
eap033
artd1109
mat246
etc3430
ecmm462
mis102
inft6800
ddes9903
comp6521
comp9517
comp3331/9331
comp4337
comp6008
comp9414
bu.231.790.81
man00150m
csb352h
math1041
eengm4100
isys1002
08
6057cem
mktg3504
mthm036
mtrx1701
mth3241
eeee3086
cmp-7038b
cmp-7000a
ints4010
econ2151
infs5710
fins5516
fin3309
fins5510
gsoe9340
math2007
math2036
soee5010
mark3088
infs3605
elec9714
comp2271
ma214
comp2211
infs3604
600426
sit254
acct3091
bbt405
msin0116
com107/com113
mark5826
sit120
comp9021
eco2101
eeen40700
cs253
ece3114
ecmm447
chns3000
math377
itd102
comp9444
comp(2041|9044)
econ0060
econ7230
mgt001371
ecs-323
cs6250
mgdi60012
mdia2012
comm221001
comm5000
ma1008
engl642
econ241
com333
math367
mis201
nbs-7041x
meek16104
econ2003
comm1190
mbas902
comp-1027
dpst1091
comp7315
eppd1033
m06
ee3025
msci231
bb113/bbs1063
fc709
comp3425
comp9417
econ42915
cb9101
math1102e
chme0017
fc307
mkt60104
5522usst
litr1-uc6201.200
ee1102
cosc2803
math39512
omp9727
int2067/int5051
bsb151
mgt253
fc021
babs2202
mis2002s
phya21
18-213
cege0012
mdia1002
math38032
mech5125
07
cisc102
mgx3110
cs240
11175
fin3020s
eco3420
ictten622
comp9727
cpt111
de114102d
mgm320h5s
bafi1019
math21112
efim20036
mn-3503
fins5568
110.807
bcpm000028
info6030
bma0092
bcpm0054
math20212
ce335
cs365
cenv6141
ftec5580
math2010
ec3450
comm1170
ecmt1010
csci-ua.0480-003
econ12-200
ib3960
ectb60h3f
cs247—assignment
tk3163
ics3u
ib3j80
comp20008
comp9334
eppd1063
acct2343
cct109
isys1055/3412
math350-real
math2014
eec180
stat141b
econ2101
msinm014/msing014/msing014b
fit2004
comp643
bu1002
cm2030
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!