KIT502 Semester 1, 2023 University of Tasmania
1
KIT502 ASSIGNMENTS 1 & 2
Our Client: Tassie Green Energy Trading Company (TaGET)
Important Rules for Group Assignment |
• The assignment is group-based with 4 members from this unit (no individual work is allowed). It is recommended that all members in the group are in the same tutorial. However, you have an option to form outside of the allocated tutorial. It is your responsibility to ensure of arranging the regular meeting times to progress in the assignment. • Meeting minutes include date and time of meeting, agreed tasks with due date to be recorded. • You need to register in a Group in MyLO in your first tutorial in week 2. (Registration will be available by Week 3 ONLY for late enrollment cases.) • There is no difference in the scope of work regardless of the number of group members (All groups should complete the same requirement no matter how many members are in the group – an exception applies ONLY when one member left the group, i.e. 3 members are withdrawn the unit). • You will receive the individual mark based on the peer and self-evaluation for the assignments. Individual mark may vary from the group mark as peer and self-evaluation will be reflected on the mark. You MUST complete the peer and self-evaluation after the assignment submission if you have any issue with your group member EVEN THOUGH you have already informed or discussed the issue with the unit coordinator. |
Introduction
Tassie Green Energy Trading Company (TaGET) provides a renewable energy (Solar and Wind) trading
service in Tasmania. To provide the timely service, it has been decided to develop a web site where seller
and buyer can trade a renewable energy.
How to use TaGET Services
The service is purely based on online services, any seller or buyer must register to the system first by
providing, name, email address, password, trading position (seller, buyer or both) and postal address. All
information in the registration is mandatory.
By registering to the system, each user will have an account set-up with a balance of 0 dollar. Buyer
must deposit funds into the account to buy a renewable energy (i.e., it is similar to the CAPS printing
system. You pay first then use it later) and the payment from the buyer goes into the corresponding
seller’s account. When a buyer searches for available renewable energy, they can specify the type of the
energy (solar, wind or both). Buyer and Seller only can make a trade within the same Zone. For example,
buyer in Zone A cannot buy a renewable energy from the seller in Zone B. When the trading is
confirmed, the average price will be applied (Please refer to page 6 – The Price Rule: for price detail).
KIT502 Semester 1, 2023 University of Tasmania
2
Different privilege of users:
• Service manager (can do all)
• Seller (can sell the renewable energy)
• Buyer (can buy the renewable energy)
Planning and Development Consideration
Planning the site
• Plan a site overall in the first place is a crucial step to construct a site. Understand the client’s
needs and plan accordingly. For example, planning a design theme for the whole site with
variations of the theme that may be used for sub sections is recommended.
Develop using the appropriate tools
• HTML for static content
• CSS and Bootstrap for formatting
• JavaScript, Ajax and jQuery for client-side interactivity
• PHP for dynamic content and server-side interactivity (only for Assignment 2).
• MySQL or SQLite for data storage and retrieval (only for Assignment 2).
• Laravel framework (only for Assignment 2)
Apply consistent structure
• The files for the web site will be stored in a single folder (directory) – the name of this folder is
the same as your group number. The files must be organised into chosen sub-folders (i.e. subfolder for CSS or sub-folder for images, etc.) in a logical way.
• All layout and other details of the appearance of website are controlled by valid CSS rules or
Bootstrap. You place the overall CSS rules in an external style sheet. You also can use Bootstrap
for the appearance and responsive action.
• All client-side behaviour of the website (the response to mouse clicking or keyboard reaction) are
controlled by valid JavaScript/Ajax/jQuery
• All data is stored in a data base (e.g MySQL database)
KIT502 Semester 1, 2023 University of Tasmania
3
Description of Assignment 1 (20%)
For Assignment 1, you work ONLY on client side. As you are including SCRIPTING though, it will validate
the information from users at registration; other parts are rather planning stage, with limited
functionalities. Nevertheless, you must plan thoroughly for assignment 2 at this stage. A thorough
planning will help you to progress smoothly in assignment 2. REMEMBER that the workload of assignment
2 is MUCH BIGGER than assignment 1.
The portion of Assignment 1, the assigned 20%, is given generously to compensate the time you might
need to organising admin matters such as getting to know each other, scheduling the regular meeting
time, etc. in the group. The percentage doesn’t reflect the workload in assignments 1 and 2.
The following section indicates possible sections grouped into different pages. However, the structure of
the website is up to your group’s decision.
Homepage
This is starting/entry point to the trading system which will have:
• A link to a registration page
• Login/logout section
• A form to search the available renewable energy.
For Assignment 1 the login/logout section does not need to authenticate a user as we don’t implement
database access yet.
Registration page
This is where new users can register to the system. Further details are in the How to use TaGET Services
section above.
Proper input validation must be applied at this point including:
• Double entry password check
• Password contains:
o 5-10 characters in length
o Contain at least 2 uppercase letters, 1 number and one of special characters
For assignment 1, the registration page does not need to store the registration data.
Trading Page
It will display:
• A list of renewable energy available with the volume (kWh) and price
• A button or link to “buy” or “sell”. A seller can sell the renewable energy by submitting the
information about the energy (type, volume and price) while a buyer can buy the renewable
energy available by submitting the volume they want to buy.
KIT502 Semester 1, 2023 University of Tasmania
4
For assignment 1, the trading page does not need to store any changes to the list or the items in it (i.e. no
database access is required).
Master Trading Page
This is where a service manager creates, edits or removes the type of renewable energy and the price
related to the trading. The service manager can update market price of renewable energy,
administration fee and tax rate.
In this page, the service manager also can see the all the trading history made between seller and buyer.
For assignment 1, the master trading page does not need to store any changes to the list or the items in
it. However, you need to design how the database tables will be designed for the whole assignment (see
below).
Planning for database tables (ER diagram for the web site)
You are required to design your database tables to complete for assignment 1. You do not need to create
actual tables in the server yet, but you must present how you are going to make the database tables for
Assignment 2. You are required to clearly indicate the relationship between different tables using primary
key and foreign key in your database design.
To draw your database design, you may use any software such as startUML, word, paint, or etc., and handdrawn diagrams are equally acceptable.
You MUST read the assignment 2 specification below carefully to design your database for assignment 2.
KIT502 Semester 1, 2023 University of Tasmania
5
Description of Assignment 2 (30%)
Homepage
For assignment 2 the login/logout section must authenticate a user. The site now fully functional for
assignment 2, so interaction with database as well as the necessary interaction between the client and
the server sides must work.
Registration page
The registration page stores the registration data.
Dashboard
It is ONLY for the registered user.
For the registered seller and buyer, a summary of the market is provided – i) current trading price, ii)
current available volume of the energy by the type, iii) the graph of trading price changed over time and
iv) the graph of traded energy over time (All of this information is from the database).
For the service manager, it will display the information as the dashboard for seller and buyer. It also
displays the summary of the users (i.e., the number of registered buyer and seller depending on the
Zone).
Trading Page
It will display the list of available renewable energy in the database with their details.
When a buyer searches for available renewable energy using the search form by specifying an energy
type and/or Zone, it displays the list of available renewable energies with their details.
The conditions are:
• A customer who has not registered in the system can search the renewable energy and see the
list of available renewable energy only; but the customer cannot process further.
• Only seller and buyer who are registered and activated can make a trade. Once a user registered
into the system, they are recorded as “activated” until the service manager deactivates the
users.
• Logged in buyer can buy the energy by submitting the information. The validation of form is
required for the type of energy and volume. The buying price is automatically calculated based
on the rule (trading average price + administration fee + tax).
o It will not allow the buyer to buy the energy more than their account balance can pay
for.
o It will not allow the buyer to buy the energy volume which exceeds the volume available
within the Zone and the type of energy. For example., A buyer is in Zone A and Zone A
has a 500kWh for Solar and 100kWh for Wind. The buyer cannot buy more than
500kWh for Solar and 100kWh for Wind.
• Trading condition can depend on developer’s decision. You can apply First-In-First-Out (FIFO)
strategy for the trade or one-to-one trading. For example, if you are applying FIFO strategy,
KIT502 Semester 1, 2023 University of Tasmania
6
buyer selects the type and put the amount, then the system automatically selects the seller and
the corresponding volume based on FIFO. If you are applying one-to-one trading, the buyer
selects the specific seller that they want to trade from the list given. Whichever you use, the
instruction to the user must be direct them clearly.
• Once the trade is settled, the credit balance of the buyer is reduced by the traded price while
the balance of the corresponding seller is increased after subtracting the administration fee
from the traded price (i.e., seller received = Trading price – administration fee).
• Logged-in seller can sell the energy by submitting the information of type of energy, volume and
selling price. Form validation is required: type of energy, volume and selling price. The selling
price per unit should be between +/- of average market price per unit, which is updated by the
service manager.
The Price Rule:
• Market price: The price per unit updated by service manager. It is assumed that the service
manager will update the market price on a daily/weekly/or monthly basis.
• Administration fee: The service fee of using the system which is set up by the service manager.
• Tax rate: The tax rate applied on trading is updated by the service manager.
• Seller price: the price per unit that seller updated with available energy into the system. The
seller price should be between +/- 10% of the latest market price.
• Average price: the average of the seller price (per unit) in the market. The system will average all
sellers’ price of the available renewable energy in the market regardless of the zone. The
average price is rounded up to 2 decimal places.
• Trade price: (average price * volume) + Administration fee + Tax
o Tax = (average price * volume) * tax rate
• Seller received price = Trading price – Administration fee.
Profile
This page can only be accessed while a user is logged in.
• Registered customers (buyer, seller and service manager) can change their account details
including password and postal address. They cannot change email address and name.
• A buyer can view their account balance and deposit more funds while a seller can view their
account balance that is received from the buyer.
• For customers, they can see the trading history. They also can download the trading history into
file (e.g., excel, pdf, word, etc.)
For assignment 2 the user account page retrieves and updates the user’s account details as required.
Master Trading Page
This page is only be accessed by the service manager and required to interact with the database. This is
where a service manager creates, edits or removes the type of renewable energy and the price related
to the trading. The service manager can update market price of renewable energy, administration fee
and tax rate.
KIT502 Semester 1, 2023 University of Tasmania
7
In this page, the service manager also can see the all the trading history made between seller and buyer.
The service manager also can modify and delete the list of available renewable energy.
User Management Page
This page is only be accessed by the service manager. The system manager can
• See the list of buyers and sellers with their information.
• Add or remove the buyer/seller
• Activate or inactivate the buyer/seller For example, if buyer/seller is inactivated, they cannot
make any transaction for trading.
The summary of the rule for using the system
Search the energy |
View the list of available energy |
View the summary of the market including price (Access to dashboard) |
Settle the trading | |
Activated buyer/seller | Y | Y | Y | Y |
Inactivated buyer/seller |
Y | Y | Y | N |
Unregistered User | Y | Y | N | N |
KIT502 Semester 1, 2023 University of Tasmania
8
Due date
Assignment 1: Week 6 Wednesday the 29th of March 5pm
Assignment 2: Week 13 Wednesday, the 24th of May 5pm
Submission method
Submission will be via both MyLO and Usermin. You are required to submit Readme file to MyLO. The
Readme file must include the path to your groups account in Usermin (ictteachwww.its.utas.edu.au/your-group-number/theassignmentfilename). All the files for your assignment
should be in your group folder of Usermin. The last modified dates matter.
Readme.txt file of Assignment 2 must include login credentials for service manager with any required
information.
Group Work (Peer and Self-evaluation)
Your final mark for assignment 1 and 2 will be revised based on the peer and self-evaluation (Please
refer to the rule below). Please make sure that you have completed the peer and self-evaluation with
qualitative comments. If one of your members has not completed peer and self-evaluation, the final
mark won’t be released.
Rule for Individual mark for group work
Your individual mark is calculated based on the average peer evaluation mark received from the group
members and your self-evaluation mark. Your individual mark will be adjusted as (Group Mark * Average
of peer and self evaluation mark/100). An example is below.
Group Mark Received 80
Peer Evaluation mark
Group member 1 70
Group member 2 80
Group member 3 90
Yourself 100
Average 85
Individual Mark (Group Mark Received * Average of Peer evaluation mark/100)=80 * 85/100 68
You only be able to see the group mark for Assignment 1. Individual mark for both Assignment 1 and
Assignment 2 will be released at the end of the semester when Assignment 2 mark is released.
Marking Information
Your submitted work will be marked in Usermin. If your assignment does not work properly in the
environment or the same version of a browser in our lab, the work will not be marked.
KIT502 Semester 1, 2023 University of Tasmania
9
Academic Integrity
At the University of Tasmania, academic integrity requires all students to act responsibly, honestly,
ethically, and collegially when using, producing, and communicating information with other students
and staff members. The University community is committed to upholding the Statement on Academic
Integrity.
Breaches of academic integrity such as plagiarism, contract cheating, collusion and so on are counter to
the fundamental values of the University. A breach is defined as being when a student:
a. fails to meet the expectations of academic integrity; or
b. seeks to gain, for themselves or for any other person, any academic advantage or advancement
to which they or that other person is not entitled; or
c. improperly disadvantages any other member of the University community.
The University and any persons authorised by the University may submit your assessable works to a text
matching service, to obtain a report on possible breaches such as plagiarism or contract cheating.
Substantiated breaches can result in a range of sanctions which are outlined in the Student Academic
Integrity Ordinance.
More information is available from the Academic Integrity site for students on the Student Portal.
KIT502 Semester 1, 2023 University of Tasmania
10
Assignment 1
Criteria | HD | DN | CR | PP | NN |
Overall structure is clear and functions with the given specification are completed (ILO 1) 50% |
Have implemented a site that provides the functions that best support the users’ needs using current best practice. All of the required functionalities are correctly implemented |
Have implemented the majority of the requirements in a manner that makes the site functional and easily accessible. |
Have fully implemented the basic functions required for the site to an acceptable level and / or not all functions are implemented or operated correctly. |
Have identified and attempted to provide only the basic functional requirements, and/or not all functions are implemented or operate correctly. |
Have not included enough requirements to meet the basic functional requirements and /or the majority of the functions are not implemented or operate correctly. |
Design and implement a web site to meet the specification. Right tools used for appearance (ILO 2) 20% |
Have designed and completed all the requirements to a high standard. Have provided logical and meaningful implemented with minimal mistakes and minimal incorrect spelling/typing errors. Useful and meaningful |
Have a site that has a consistent tone and style with each section divided logically and meaningfully with minimal mistakes and minimal incorrect spelling/typing errors. Useful and meaningful comments included for the majority of |
Have divided the content of each section in a logical and meaningful way. There are minimal incorrect spelling/typing errors. Some useful and meaningful comments included in the code. |
Have divided the content of main sections in a logical and meaningful way some meaningful comments included in the code with an incorrect spelling/typing error. |
Some attempt to apply design principles evident, but not to the required standard and / or not consistently applied with no clear separation of design and content. A few meaningful comments included in the code. |
KIT502 Semester 1, 2023 University of Tasmania
11
comments included for all key aspects all the code. |
the key aspects of the code. |
||||
Database design in ER diagram (ILO 3) 30% |
Have considered all necessary data and it can be stored in successfully. Fully ready to convert it to SQL statements |
Have considered all necessary data and it can be stored in successfully. Fully ready to convert it to SQL statements with minor issues |
Have considered most of possible situations. A little adjustment could be possible |
Have considered fundamental tables. Major adjustment may be recommended |
Fail to provide the database tables |
KIT502 Semester 1, 2023 University of Tasmania
12
Assignment 2
Criteria | HD | DN | CR | PP | NN |
Overall structure is clear and functions with the given specification are completed (ILOs 1, 2, and 3) 20% |
Have implemented a site that provides the functions that best support the users’ needs using current best practice |
Have implemented the majority of the requirements in a manner that makes the site functional and easily accessible |
Have fully implemented the basic functions required for the site to an acceptable level and / or not all functions are implemented or operate correctly |
Have identified and attempted to provide only the basic functional requirements, and / or not all functions are implemented or operate correctly |
Have not included enough requirements to meet the basic functional requirements and / or the majority of the functions are not implemented or operate correctly |
Access management: • Registration • sign-in and out • different access levels (ILOs 1 and 2) 20% |
All the requirement completed in professional manner |
Registration, sign in, sign out, the working fine and attempted to implement the access level |
Registration, sign in, sign out completed |
Registration, sign in completed |
Registration completed |
Functionalities • Form validation • All functions related to: – Dashboard (Web manager, Seller and buyer) – Trading page (Including the trading process) – Profile – Master trading page |
Implemented all required functions in a professional manner |
Implemented any 70% of the functions |
Implemented any 60% of the functions |
Implemented any 50% of the functions |
Attempted or implemented any one of the functions |
KIT502 Semester 1, 2023 University of Tasmania
13
– User management Page (ILOs 1 and 2) 50% |
|||||
Design of site and user • Consistency • Usability • Sufficient comments in coding • Works for different devices • Readme.txt file including login credential, any other optional information • File structure • No spelling errors (ILO3) 10% |
Have completed all the requirements to a high level, with a consistent, professional look and feel throughout. In addition to useful and meaningful comments in the code, human readable comments included for better maintainability |
Have designed and completed all the requirements to a high standard. Have provided logical and meaningful implementation with minimal mistakes and minimal incorrect spelling/typing errors Useful and meaningful comments included for all key aspects of the code |
Have a site that has a consistent tone and style with each section divided logically and meaningfully Useful and meaningful comments included for the majority of the key aspects of the code |
Have divided the content of each section in a logical and meaningful way Some useful and meaningful comments included in the code |
Some attempt to apply design principles evident, but not to the required standard and / or not consistently applied with no clear separation of design and content. |
KIT502 Semester 1, 2023