Lab#1
Lab#1
Rubric
Functionality Marks
1. GUI 0.5 *4
1.1 Main window (0.5 mark)
1.2 Window to facilitate bucket level creation (0.5 mark)
1.3 Window to facilitate object level operation (0.5 mark)
1.4 Switch from one window to another properly (0.5 mark)
2. Bucket level operations 1+1+2+1+2+1
2.1 Get all buckets within your AWS account (1 marks)
2.2 Display the result of 2.1 in Datagrid (1 mark)
2.3 Create bucket successfully (2 marks)
2.4 The newly created bucket should be displayed in Datagrid (1 mark)
2.5 Delete the selected bucket (2 marks)
2.5.1 If the selected bucket is not empty, empty the bucket first
2.5.2 Delete the bucket
2.6 The deleted bucket should be removed from the Datagrid (1 mark)
3. Object Level Operation 1+2+1+2+1+1
3.1 All buckets are listed in comboBox (1 mark)
3.2 Get all objects existing in the selected bucket (2 marks)
3.3 Display the result of 3.2 in the Datagrid (1 mark)
3.4 Upload selected object(s) (2 marks)
3.5 The newly upload object(s) should be displayed in DataGrid (1 mark)
3.6 Download selected object(s) and save locally (1 mark)
4. Overall (i.e., readability, maintainability, efficiency, etc.) 2
Implement a WPF app to facilitate users to access AWS S3 service. More specifically, after your
application has been launched, the user should see a GUI similar to the one below.
Lab #1 Page 1 of 3
API Engineering COMP306
Figure 1
When user click on “Bucket Level Operations” button, the window shown in Figure 2 should be displayed. Please
note that all existing buckets within your AWS account (e.g., bucket name and created date) should to be listed in a
DataGrid
Figure 2
This window facilitates bucket level operations. To create a bucket, the user needs to input bucket name. The user
can also delete the selected bucket.
User clicks on “Object Level Operations” button from the main window, the window shown in Figure 3 should be
displayed with all existing buckets’ name listed in the comboBox.
Figure 3
Lab #1 Page 2 of 3
API Engineering COMP306
After the user selects a bucket from the comboBox, all objects (e.g., object name and the object size) existing in this
selected bucket should be listed in the dataGrid; After successful uploading, the newly uploaded object should be
listed in the dataGrid; the selected object(s) should be downloaded and stored in your local machine
Lab #1 Page 3 of 3