联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2023-10-26 08:14

Diploma in Information Technology

Problem Solving

Instruction for CA3 Group Assignment

October 2023 Semester


Assessment

100 marks (This assignment constitutes 40% of the overall assessment)


Deliverables

There are Four (4) deliverables in this assignment, students must complete ALL components.

1.Written project report (6%)

2.Python codes (20%)

3.User guides with sample inputs/outputs (4%)

4.Oral Presentation (10%)


The Task

The objective of this project is to allow students to design and implement a mini program.  You are to use flowchart to design your program, with clear steps and flows indicated. You need to use Python programming language to code all the programs, according to the project requirement.


In your report, write a short description, in 500 words, on your program design. You need to include the flowchart of your mini program in the report. You will also include screenshot samples on how the program should run in the report.


In your Python codes, include comments to explain the purpose of each section.


Assessment Marks Allocation

Component AssessedMarks Allocation

1Part 1 – Report with flowchart15

2Part 2a – Main Programs (Python)40

Part 2b – Additional Features10

3Part 3 – User guides with screenshots10

4Part 4 – Oral Presentation25

Total100





The Case

Ms Chong started flower arrangement as a hobby in 2016, and posting her arrangements and bouquets on Instagram. Little did she know what her pictures and arrangements would be so popular. Friends and even strangers started asking her to sell them flowers.


With a large social media following and growing side business, Ms Chong has decided to go all in and run her florist business full-time with the name “Beautiful Blooms”. She will require a system to manage the buying of flowers, viewing orders and changing the status of orders.


For a start, Beautiful Blooms has decided to offer a limited selection of flowers arranged under 5 categories as shown below:


CategorySample Picture

Romantic

Birthday

Grand Opening

Condolence

Anniversary



Details of all the products can be found in Appendix A.


Currently, all orders can taken manually. Every order must include the item code, item category, add-ons (if any), customer name, delivery address, recipient name, message for recipient, special instructions (if any) and lastly delivery date and time.



As an intern in IMDA (Infocomm Media Development Authority), your supervisor has assigned you to help Beautiful Blooms automate their sales process, inventory management and order management.  


Project Requirement

After several rounds of discussion, Beautiful Blooms would like to have the following essential features to be included:

Inventory management that includes setting up products, adding and removing products and pricing updates.

Sales management that allows consistent order taking, taking delivery details, update of order status etc.

Further features to be integrated in the application are the ability to filter products by category and sorting by price.

Based on you understanding, the application should display the below main menu to allow Beautiful Blooms to repeatedly perform the 2 key features.

@@@@ Beautiful Blooms @@@@

1.Inventory management

2.Sales management

0.Exit

Enter option:

Before presenting the main menu, your application needs to load the existing from “Products.txt” (Appendix A) into a collection*.

* you can decide to implement using either Dictionary or List.

Details of the 2 key features are presented below:

1.Inventory management


This feature allows the user to perform the following: (through a sub-menu)

a.View /Update blooms

b.Add new blooms

c.View / Update add-ons

d.Add new add-on

e.Back to main menu


a.This feature will list product details, as shown in Appendix A. At the end of the list, the program will display a prompt:

To update an item, enter the item code. Or enter 0 to go back to previous menu.


If there is no item with item code, display appropriate error message and return to sub-menu.


Program will display the item name, price, and status, if the item code exists.

User can enter the new price and/or new status to proceed with the update.


Any updates should also be effected into “Products.txt”


b.To setup a new item, these data elements should be collected:

Name of item

Item code: this has to be unique. Can be manually entered or automatically generated

Price.

Category: There are 5 fixed categories – Romantic, Birthday, Grand Opening, Condolence, Anniversary


The new item is created, added into the collection, with status “Available”. The “Products.txt” file is also updated with this new item.


c.This feature will list all the available add-ons, as shown in Appendix B. At the end of the list, the program will display a prompt:

To update an item, enter the item code. Or enter 0 to go back to previous menu.


If there is no item with item code, display appropriate error message and return to sub-menu.


Program will display the item name, price, and status, if the item code exists.


User can enter the new price and/or new status to proceed with the update.


Any updates should also be effected into “Addons.txt”


d.To setup a new add-on, the following information must be added:

Name of the item

Item code. This must be unique. It can be manually entered or auto generated.

Price


The new addon is created,added to the collection, with the status ‘Available’. The ‘Addons.txt’ file is also updated with this new item.


2.Sales management


This feature allows to take orders, view orders and update orders according to their process. These options should be presented in the sub-menu)

a.Create order

b.View order

c.Back to main menu


a.When creating an order, the list of products is first displayed. At the end of the list, 3 options are displayed:


1) Filter products by category

2) Sort products by price

3) Order item


If “1” is entered, then these options will be displayed:

   1) Romantic

    2) Birthday

    3) Grand Opening

    4) Condolence

    5) Anniversary

    0) Go back

Select filter category


User can select the category by entering the appropriate number. For example, if the user enters “2”, then only products in the “Birthday” category will be displayed. At the end of the list, these options will be displayed:


    1) Order item

    2) Back to filter category

    3) Back to main menu


If user enters “1”, the user will proceed to the Order item section (see below)


If “2) Sort products by price” option is chosen”, then the products will be listed in ascending order of price. At the end of the list, these options will be displayed:


    1) Order item

     2) Back to main menu


Order item section

When user chooses “Order item”, a prompt will be shown:

Please enter item code:


System should validate item code and only allow available items to be selected.

Next, the system will display the list of add-ons, e.g:

Available add-ons:

A001      Chocolates                                   $8

A002      Customized Handwritten card     $12

A003      Soft Toy                                       $16

Enter item code for addon, or 0 to skip.


Next, the system will prompt the user to enter:

- customer name

- recipient’s name

- message for recipient (limited to 300 characters)

- Store pickup or Delivery? ($35 for delivery)

(if delivery is selected, the below information will be required)

- delivery address

- delivery date

- same day delivery? (Additional charge of $35 applies).


The system will be display a summary as shown below:

----------     Order Summary       ---------

Item:        Angel Eyes     R001         $85

Addon:    Chocolates     ADD001         $8


Delivery date:  28 Aug 2023

Same day delivery:  No                   $0

Delivery charges:                             $35

Total                                                  $128


Customer’s name: Tony Lin

Recipient’s name: Linda Foo

Message for recipient:

I love you XOXO

Delivery address: 123 ABC St, Singapore 12345

-------------------------------------------------

Enter 1 to confirm, 2 to edit info, 0 to cancel :


If “1” is entered, an Order ID is generated. Order ID will follow this format: BBO-23-XXXX, where XXXX is a running number starting from 0001. The order is saved with the status “Open”. If “2” is entered, the user will be prompted to enter all information starting from customer name, then shown the summary again. If 3 is entered, nothing is saved.                          



b.When view order option is selected, the list of orders will be displayed.

- Only orders with “Open” is shown by default.

- At the end of the list, the following options are shown:

1) Edit/Cancel order

2) Filter order by status

3) Back to main menu


If “1” is selected, the user will be prompted to enter the order number. If order number exists, options will appear depending on its current status:


Current statusOptions

Open- Cancel order

- Change to Preparing

Cancelled- Set back to Open

Preparing- Change to Ready

Ready- Change to Preparing

- Change to Closed

ClosedNo option to change


If “2” is selected, the user can choose the option to filter (see the different status above), and only Orders with that status will be shown.



Below are suggestions for BONUS features for consideration. You do not have to incorporate all of them and you may include your own additional features.

a. Using Python Date library

   - Set delivery fee to increase by $10 if delivery falls on Sat or Sun.

   - Change order status to “Deliver today” if order delivery is currently today and not Ready yet.


b. Use OOP

- Use Objects to manage Products and Orders


c. Product popularity rating

  - Add option to add a rating for products e.g 4.5/5 by 8 users

  - Option to sort items by rating




Instructions for CA3 Report, Python Codes and User Guides

Cover Page

The cover page should include the institution name (and institution logo) the programme and the module name, the semester and year and date of submission. All these must be centralised in the page.

Write FULL Name and Student number as in the register on the cover. Students should a keep a copy of assignment submitted.


Python Codes

Suggested IDE and version: Wing Personal 7, Python 3.8.2 and above

Please zip all your Python codes into single file and upload it together with the report. If you used any additional Python library apart from the standard package, you need to include them in the submission.


Referencing

No referencing is needed for program designs and codes.



Font and Spacing

Font: Times New Roman

Font size: 12 and 1.5 for line spacing.


Penalty Marks for Late Submission of Assignment

By one day: 20% to be deducted from total marks.

More than one day: submission will NOT be graded.


Plagiarism and Collusion

Students are not allowed to reuse old assignments or submit projects from previous semesters or copy largely from sources, particularly from the Internet web.

The submitted report must show evidence that this is students’ own work. No marks will be awarded if there are no workings or reasonable explanations. Please be reminded that plagiarism and collusion is a serious offence, and all cases will be referred to the administration. Grades will be withheld if the submission is suspected of plagiarism or collusion till investigations are completed.



Important Dates of CA3 Report

CA3 Individual Assignment Deadline: 13 Nov 2023 11.59 a.m.

Submit your project via Canvas, submission must be completed in order for reports to be graded.



Lecturer Contact

You should contact your lecturer via your SIM email whenever you have any issue about your project.




Appendix A

Current list of items offered by Beautiful Blooms.


Item CodeItem NameCategoryPriceStatus

R001Angel EyesRomantic$128Available

R002Hearts on FireRomantic$158Available

R003Purple RushRomantic$288Available

B001Sweet NothingsBirthday$98Available

B002Summer SurpriseBirthday$158Available

GO001SavannahGrand Opening$158Available

GO002The Tropics Grand Opening$168Available

C001TranquillityCondolence$151Available

C002MemoriesCondolence$151Available

A001Garden of HeartsAnniversary$128Available

A002Treasured Blooms Anniversary$188Available

A003Ray of LightAnniversary$288Available


File: Products.txt

R001,Angel Eyes,Romantic,128,Available

R002,Hearts on Fire,Romantic,158,Available

R003,Purple Rush,Romantic,288,Available

B001,Sweet Nothings,Birthday,98,Available

B002,Summer Surprise, Birthday,158,Available

GO001,Savannah,Grand Opening,158,Available

GO002,The Tropics,Grand Opening,168,Available

C001,Tranquility,Condolence,151,Available

C002,Memories,Condolence,151,Available

A001,Garden of Hearts,Anniversary,128,Available

A002,Treasured Blooms,Anniversary,188,Available

A003,Ray of Light,Anniversary,288,Available



Appendix B

List of add-ons available.


Item CodeNamePriceStatus

ADD001Chocolates8Available

ADD002Customized Handwritten card12Available

ADD003Soft Toy16Available


File: Addons.txt

ADD001,Chocolates,8,Available

ADD002,Customized Handwritten card,12,Available

ADD003,Soft Toy,16,Available


Marking Rubric

CriteriaExcellentVery GoodGoodAcceptableWeak

Project Report (6%)

Description of the ProgramStudent has provided detailed and step-by-step description of the programStudent has provided step-by-step description of the programStudent has provided sufficient description of the programStudent has provided limited description of the programStudent has provided short description of the program

Appropriate FlowchartStudent has used multiple appropriate flowcharts to describe the program completelyStudent has used multiple appropriate flowcharts to describe the programStudent has used some flowcharts to describe the programStudent has attempted to use flowcharts to describe the programStudent has attempted to use flowchart to describe the program but were not sufficient

Clarity of PresentationStudent has provided clear, detailed and concise presentationStudent has provided clear and concise presentationStudent has provided clear presentationStudent has provided clear presentation to some extentStudent has attempted to provide a clear presentation

Creativity of PresentationStudent has used a variety of creative software and tools to present the assignmentStudent has used many creative software and tools to present the assignmentStudent has used some amount of creative software and tools to present the assignmentStudent has used a couple of creative software and tools to present the assignmentStudent has used at least one creative software or tools to present the assignment

Python Codes (20%)

Understanding of the ProjectStudent has demonstrated high level of understanding of the project requirements that are both stated in the task and those not mentionedStudent has demonstrated some understanding of the project requirements that are both stated in the task and those not mentionedStudent has demonstrated high level of understanding of the project requirements that are stated in the task Student has demonstrated basic understanding of the project requirements that are stated in the task Student has demonstrated sufficient understanding of the project requirements that are stated in the task

Application of programming modulesStudent is able to apply majority of the topics learnt in this projectStudent is able to apply many topics learnt in this projectStudent is able to apply some topics learnt in this projectStudent is able to apply at least two topics learnt in this projectStudent is able to apply at least one topic learnt in this project

Intellectual FeaturesStudent has demonstrated efficient use of intelligent algorithm in majority of the codesStudent has demonstrated the use of intelligent algorithm in most of the codesStudent has demonstrated some use of intelligent algorithm in the codesStudent has demonstrated basic use of intelligent algorithm in the codesStudent has demonstrated sufficient use of intelligent algorithm in the codes

Additional FeaturesStudent has added substantial number of additional features to the programStudent has added a good number of additional features to the programStudent has added some number of additional features to the programStudent has added a couple of additional features to the programStudent has added at least one additional feature to the program

User InterfaceStudent has created excellent user interface for the programStudent has created good user interface for the programStudent has created sufficient and simple user interface for the programStudent has created basic user interface for the programStudent has created poor user interface for the program

User Guides (4%)

Screenshot SamplesStudent has provided clear, detailed, and step-by-step screenshots guide on the program Student has provided step-by-step screenshots guide on the program Student has provided sufficient screenshots guide on the program Student has provided limited screenshots guide on the program Student has provided very little screenshots guide on the program

DataStudent has used appropriate and detailed test data on the program to illustrate the input and outputStudent has used appropriate test data on the program to illustrate the input and outputStudent has used sufficient test data on the program to illustrate the input and outputStudent has used some test data on the program to illustrate the input and outputStudent has used very limited test data on the program to illustrate the input and output

Oral Presentation (10%)

Clarity of PresentationStudent has provided clear, detailed, and concise presentationStudent has provided clear and concise presentationStudent has provided clear presentationStudent has provided clear presentation to some extentStudent has attempted to provide a clear presentation

Delivery StyleExcellent control of volume, pace

and diction; no distracting

gestures; visual aids used effectivelyGood volume and energy;

good pace and diction; few or no distracting

gestures; visual

aids used adequatelyAverage volume and energy; generally

good pace and diction; some distracting

gestures or posture; visual aids could be

improvedMore volume/energy needed at times;

pace too slow or fast; some distracting

gestures or posture; visual aids could be

improvedLow volume or energy; pace too slow

or fast; poor diction; distracting

gestures or posture; visual aids poorly used

ContentAll information was relevant and appropriate to requirements of the assignmentMost information was relevant and appropriate to requirements of the assignmentMost information relevant; some topics needed expansion or shortenedInformation was valid but not explicitly related to the assignmentInformation was not relevant or directly related to the assignment

Q & A SessionAnswers

questions with authority and

accuracyProvides good, clear answers to questionsProvides adequate

answers to questionsSome

difficulty answering questionsUneasiness or inability to answer

questions

Overall Impression GradeStudent was very well prepared for the entire presentationStudent was well prepared for the most parts of the presentationStudent was prepared for most parts of the presentationStudent appeared prepared for some parts of the presentationStudent was clearly unprepared for the presentation


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp