Assessment 1 Detail 
Quizzes assess students’ ability to understand theoretical materials. The quiz will be either multiple  choice questions or short questions relevant to the lecture materials. 
There will be three quizzes on Week 4, 6 and 8. The students must attempt the online quizzes  individually using the unit site. In total, quizzes are worth 10% of the unit grade. There will be no  practice attempt. The quizzes need to be completed in one sitting during tutorial time. 
Assessment 1 Marking Criteria and Rubric 
Assessment 2: Laboratory Practicum 
Due date:   | Week 3, 5, 7  | 
Group/individual:   | Individual/ Invigilated  | 
Word count/Time provided:   | (Equiv. 2000 words)  | 
Weighting:   | 10%  | 
Unit Learning Outcomes:   | ULO1, ULO2, ULO3, ULO4  | 
Assessment 2 Detail 
There are weekly lab activities and exercises that assess students’ understanding of theoretical  materials. The students must attempt the weekly lab activities individually and submit them using  the unit site. In total, the lab activities are worth 10% of the unit grade. 
Assessments 2 Marking Criteria and Rubric 
The assessment will be marked out of 100 and will be weighted 10% of the total unit mark. The  marking criteria and rubric are shown on the following page. 
Assessment 2 Marking Criteria and Rubric
Marking Criteria   | Not Satisfactory   (0-49% of the criterion   mark)  | Satisfactory  (50-64% of the criterion  mark)  | Good  (65-74% of the criterion  mark)  | Very Good  (75-84% of the criterion  mark)  | Excellent  (85-100% of the criterion  mark)  | 
Week-2 lab activities  (20%)  | Fails to demonstrate a  clear understanding of  the concept of   Techniques for   analysing programming  problems and   answering the lab   activities questions.  | Demonstrates a clear  understanding of   Techniques for   analysing programming  problems and   answering the lab   activities questions.  | Demonstrates an   ability to apply the   understanding of   Techniques for   analysing programming  problems mostly   correctly and   answering the lab   activities questions.  | Demonstrates an   ability to correctly   apply the   understanding of the  concept of Techniques  for analysing   programming problems and answering the lab  activities questions  | Demonstrates a high  ability to correctly   apply the   understanding of   Techniques for   analysing programming  problems and   answering the lab   activities questions. The answer is clear,  concise, correct and  complete.  | 
Week-3 lab activities  (20%)  | Fails to demonstrate a  clear understanding of  Repetition Structures and functions concept  and answer the lab   activities question.  | Demonstrates a clear  understanding of the  concept of Repetition  Structures and   functions and answer  the lab activities  question.  | Demonstrates an   ability to correctly   understand the   concept of Repetition  Structures and   functions correctly and  answer the lab   activities question.  | Demonstrates an   ability to apply the   understanding of the  concept of Repetition  Structures and   functions correctly and  to answer the lab   activities questions  | Demonstrates a high  ability to correctly   understand Repetition  Structures and   functions concept and  answer the lab   activities questions. The answer is clear,  concise, correct and  complete.  | 
Week-5 lab activities  (20%)  | Fails to demonstrate a  clear understanding of  the concept of object oriented programming and to answer the lab  activities question.  | Demonstrates a clear  understanding of the  concept of object  oriented programming and answer the lab   activities question.  | Demonstrates an   ability to correctly   apply the concept of  object-oriented   programming correctly and answer the lab   activities question.  | Demonstrates an   ability to apply the   understanding of the  concept of object  oriented programming correctly and to answer  the lab activities  questions  | Demonstrates a high  ability to correctly   understand the   concept of object  oriented programming and answer the lab   activities questions. The answer is clear,  concise, correct and  complete.  | 
Week-7 lab activities  (20%)  | Fails to demonstrate a  clear understanding of  the Systems   development lifecycle  concept and answer  the lab activities  question.  | Demonstrates a clear  understanding of the  Systems development  lifecycle concept and  answer the lab   activities question.  | Demonstrates an   ability to apply the   concept of Systems  development lifecycle  correctly and answer  the lab activities  question.  | Demonstrates an   ability to apply the   understanding of the  concept of Systems  development lifecycle  correctly and to answer  the lab activities  questions  | Demonstrates a high  ability to understand  the concept of Systems  development lifecycle correctly and answer  the lab activities  questions.  The answer is clear,  concise, correct and  complete.  | 
Week-9 lab activities  (20%)  | Fails to demonstrate a  clear understanding of  the concept of UML to  answer the lab   activities question.  | Demonstrates a clear  understanding of the  concept of UML and  answer the lab   activities question.  | Demonstrates an   ability to understand  the concept of UML mostly correctly and  answer the lab   activities question.  | Demonstrates an   ability to apply the   understanding of the  concept of UML  correctly and to answer  the lab activities  questions  | Demonstrates a high  ability to apply UML correctly and answer  the lab activities  questions.  The answer is clear,  concise, correct and  complete.  | 
Assessment 3: Programming Project and Report 
Due date:   | Week 8  | 
Group/individual:   | Individual  | 
Word count/Time provided:   | Report 1000 words + Code (equiv. 2500 words)  | 
Weighting:   | 40%  | 
Unit Learning Outcomes:   | ULO1, ULO3  | 
Assessment 3 Detail 
Task 
Python Programming Assessment: Data Processing and Analysis 
Project Objective: 
The Python Programming Assessment aims to evaluate the students’ proficiency in using  functions and various data structures (lists, tuples, dictionaries) to process and analyse data.  The project should demonstrate their understanding of programming concepts, data  manipulation, and the effective use of functions and data structures. 
Project Description: 
You are assigned a data analysis project for a company named “DataTech Solutions.” The  company has provided you with a dataset containing information about their employees, and  they require you to perform specific data analysis tasks. You will store the data directly in  data structures within your Python program. 
Dataset Structure: 
The dataset consists of the following columns: 
1. Employee ID (integer) 
2. Employee Name (string) 
3. Department (string) 
4. Salary (float) 
5. Years of Experience (integer) 
Tasks: Create a Python program that uses data structures (lists, dictionaries) to perform the  following tasks: 
1. Load Data: 
• Manually create a list of dictionaries to represent the dataset.
2. Display Employee Information: 
• Create a function to display the information for a specific employee based on their  Employee ID. 
• Allow the user to input an Employee ID, and if the ID exists in the dataset, display the  corresponding employee information. 
3. Calculate Average Salary: 
• Create an algorithm (called Algorithm 1) to calculate the following: 
o Calculate and display the average salary of all employees. 
4. Department-wise Salary Distribution: 
• Create an algorithm (called Algorithm 2) to calculate the following: 
o Create a function that displays the salary distribution for each department. o The output should show the total number of employees and the average salary  for each department. 
5. Identify High Experience Employees: 
• Create a function that identifies employees with more than 10 years of experience. • Display the names and departments of these high-experience employees. 
6. Update Employee Salary: 
• Create a function that allows the user to update the salary of a specific employee  based on their Employee ID. 
• Prompt the user for the Employee ID and the new salary. 
Assessment Evaluation: 
• Proper usage of functions, lists, dictionaries, and data processing. 
• Correctness and accuracy of data analysis. 
• Clear and structured output presentation. 
• Error handling for user inputs. 
• Overall code organization, readability, and adherence to Python best practices. Your report will consist of: 
1. Your algorithm (pseudocode) 
2. Source code for your Python implementation 
Assessments 3 Marking Criteria and Rubric 
The assessment will be marked out of 100 and will be weighted 40% of the total unit mark. The  marking criteria and rubric are shown on the following page. 
Assessment 3 Marking Criteria and Rubric
Marking Criteria   | Not Satisfactory   (0-49% of the criterion   mark)  | Satisfactory  (50-64% of the criterion  mark)  | Good  (65-74% of the criterion  mark)  | Very Good  (75-84% of the criterion   mark)  | Excellent  (85-100% of the criterion  mark)  | 
Algorithms Content (10%)  | The Algorithm does  not meet the pass   criteria.  Missing many tasks,  use of decisions   incorrect  | Algorithms follow the  convention, contain  three notation errors,  and produce an  algorithm at a high  level.  | Algorithms have at  most one notation  error.  The algorithm   matches the   program code.  | Algorithms precisely  describe the algorithm  design.  Flowcharts do not   have any unnecessary  components.  | Algorithm design is  efficient in terms of  time and memory.  | 
Algorithms layout (10%)  | The Algorithm is   cluttered looking or  confusing. It is often  difficult to locate   important elements  | The Algorithm has a  usable layout, but it is  not easy to locate the  most important   elements.  | The Algorithm has  a usable layout. It  is easy to locate all of the important   elements.  | The Algorithm has an  attractive and usable  layout. It is easy to  locate all important  elements  | The Algorithm has an  exceptionally   attractive and usable  layout. It is easy to  locate all important  elements. Graphic   elements are used   effectively to organise  material.  | 
Identify correct   input/ output  (10%)  | Unable to identify  any input and output   | Able to identify only  one input or output  | Able to identify   some input and   output correctly  | Able to identify all  input and output   correctly  | Able to identify all  input and output   correctly and provide  alternative  | 
Appropriate choice  of variable names or  data structure  (10%)  | Unable to identify the  required data type or  data structure   | Able to identify the  required data type or  data structure but   does apply correctly  | Able to apply   required data type  or data structure  but does not   produce correct   results  | Able to apply required  data type or data   structure and produce  partially correct results  | Able to apply required  data type or data   structure and produce  correct results  | 
A correct choice of  sequential, selection  or repetition control  structure  (10%)  | Unable to identify the  required control   structure  | Able to identify   required control but  does apply correctly  | Able to apply the  required control   structure but does  not produce correct  results  | Able to apply the   required control   structure and produce  partially correct results  | Able to apply the   required control   structure and produce  correct results  | 
Free from syntax,  logic, and runtime  errors  (10%)  | Unable to run   program  | Able to run program  but have a logic error  | Able to run the   program correctly  without any logic  error  | Able to run the   program correctly   without any logic error  and display   inappropriate output  | Able to run the   program correctly   without any logic error  and display   appropriate output  | 
Validate input for  errors and out-of range data  (10%)  | The program   produces incorrect  results  | The program   produces correct   results but does not  display them   correctly. Does not  check for errors and  out-of-range data  | The program   produces correct  results but does not  display them   correctly. Does   little check for   errors and out-of range data  | The program works  and meets all   specifications. Does  some check for errors  and out-of-range data  | The program works  and meets all   specifications. Does  exceptional checking  for errors and out-of range data  | 
Program   functionality  (10%)  | Python code is   produced that does  not execute properly.  It may contain many syntax errors   | Functionality is   mainly implemented,  but the code may   contain minor syntax  or logical errors.  | Python code   produces correct  results.  | The program meets all  specifications.  | Python code contains  only necessary   functions, collections  statements and   variables.  | 
Program output  (10%)  | The program   produces completely  incorrect results.  | Program output has  significant formatting  errors.  | Program output has  minor formatting  errors.  | The program output  format is correct as  required.  | The program handles all exceptions and   errors correctly,  including those which  are not part of   specifications.  | 
Code style  (10%)  | Incomplete or largely  dysfunctional code.  | The student uses   many global   variables.  Most variables have  exact names.  The student only uses  a small number of  inline comments.  | Student avoids   unnecessary global  variables.  All variables have  meaningful names. Sufficient inline  comments are   present.  Indentation is   consistent   throughout.  Functions are used,  but they are not   generic (reusable).  | Code design is   modular, containing  several reusable   functions.  Named constants are  used instead of magic  numbers.  White space is   appropriately used for  code readability.  | Code includes function  header comments and  module-level   docstrings.  | 
Assessment 4: Case Study 
Due date:   | Week 11  | 
Group/individual:   | Group  | 
Word count/Time provided:   | 2000 words  | 
Weighting:   | 20%  | 
Unit Learning Outcomes:   | ULO2, ULO3, ULO4  | 
Assessment 4 Detail 
Assessment Specifications: E-Commerce Website Development  
Assignment Type: Case Study Analysis 
The purpose of this assessment is to analyze a case study regarding the development of an E Commerce website and identify key aspects including stakeholders, requirements, use cases, and  system classes. 
Case Study 
GreenLife Grocery is a prominent grocery chain with numerous outlets across the country,  specializing in organic and health-focused products. Historically, GreenLife Grocery has thrived  through its physical stores, offering an extensive range of fresh produce, health foods, and eco friendly products. Recognizing the shift in consumer behavior towards online shopping, particularly  for groceries, GreenLife Grocery is eager to establish an online presence. The goal is to create an E Commerce platform that facilitates online shopping, offering a seamless, user-friendly experience for  customers to purchase groceries from the comfort of their homes. 
The proposed E-Commerce website aims to provide functionalities such as browsing products,  adding items to a shopping cart, online payment, order tracking, and customer support. Moreover,  GreenLife Grocery intends to synchronize the online platform with their existing inventory systems  to ensure accuracy in stock levels and incorporate features like subscription-based purchases and  personalized product recommendations. 
The success of this venture is vital for GreenLife Grocery’s expansion and maintaining a competitive  edge in the grocery retail sector. The development of this E-Commerce website requires careful  planning, understanding customer needs, and a system that aligns with both the company’s and its  customers’ expectations. 
Assessment Tasks: 
As a system analyst, you are tasked with aiding GreenLife Grocery in the development of their new  E-Commerce website. Utilize your knowledge of information systems development and the Software  Development Life Cycle (SDLC) to analyze the provided case study and complete the following tasks: 
1. Identify and briefly describe the stakeholders for the proposed E-Commerce website. 2. Identify and briefly describe the most effective technique for gathering requirements for the  E-Commerce website.
3. Identify and briefly describe both functional and non-functional requirements for the E Commerce website. 
4. Identify the major use cases and actors for the new E-Commerce website and create use  case diagrams to represent them. 
5. Identify the major classes for the new E-Commerce website and develop UML domain model  class diagrams to illustrate the system’s structure. 
Assessments 4 Marking Criteria and Rubric 
 
Marking Criteria   | Not Satisfactory   (0-49% of the criterion   mark)  | Satisfactory  (50-64% of the criterion  mark)  | Good  (65-74% of the criterion  mark)  | Very Good  (75-84% of the criterion   mark)  | Excellent  (85-100% of the criterion  mark)  | 
Identify and briefly  describe the   stakeholders for the  proposed information  system.  (10%)  | Stakeholders are   identified with major errors.  | Stakeholders are   identified and   described for some   parts of the new   information system. Minor omissions.  | Stakeholders are   identified and   described for some  parts of the new   information system.  | Stakeholders are   identified and described  for most parts of the  new information system.  | Stakeholders are   identified and  described for the new information system.  | 
Identify and briefly  describe the best   gathering technique  for collecting the   proposed information  system requirements.  (10%)  | The best gathering   technique is identified  with significant errors.  | The best gathering   technique is identified  and described for some  parts of the new   information system. Minor omissions.  | The best gathering  technique is  identified and   described for some  parts of the new   information system.  | The best gathering   technique is identified  and described for most  parts of the new   information system.  | The best gathering   technique is identified  and described for the  new information system.  | 
Identify and briefly  describe Functional  and non-functional  requirements.  (25%)  | Functional and non functional   requirements are   identified with major errors.  | Functional and non functional   requirements are   identified and   described for some   parts of the new   information system. Minor omissions.  | Functional and non functional   requirements are   identified and   described for some  parts of the new   information system.  | Functional and non  functional requirements  are identified and   described for most parts  of the new information  system.  | Functional and non  functional requirements  are identified and  described for the new information system.  | 
Identify the major use  cases and actors for  the new information  system and draw use  case diagrams.   (25%)  | Use cases and use  case diagrams are  wrong.  | Few use cases are  identified for the new  information system.  | Some of the major  use cases are   identified with   mostly accurate   use case diagrams  for the new   information system  that show some  use cases and   actors.  | Major use cases are  Identified with mostly  accurate use case   diagrams for the new  information system  that show major use  cases and actors.  | Major use cases are  identified with   accurate use case   diagrams for the new  information system  that show major use  cases and actors.  | 
Identify the major   classes for the new  information system  and draw UML   domain model class  diagrams.  (20%)  | UML domain model  class diagrams have  major omissions  | UML domain model  class diagrams are  not always accurate  for new the   information system;  domain  classes and their   attributes are not  always accurate,  logical relationships  have some errors   among domain   classes.  | UML domain   model class   diagrams are   accurate for the  new Information  system; however,  Domain classes and  their attributes are  not always   accurate, logical  relationships have  some errors among  domain classes.  | UML domain model  class diagram is mainly  accurate for the new  information system;  identified all possible  domain classes and  some attributes,   showing logical   relationships among  all domain classes.  Some omissions.  | UML domain model  class diagram is   accurate for the new  information system;  identified all possible   domain classes and  some attributes,   showing logical   relationships among  all domain classes.  | 
Presentation, clarity  and reference.  (10%)  | The writing style is  not fluent or well   organised, and many  Grammatical and   spelling mistakes.  Word limit is ignored  completely.  Referencing is absent  /unsystematic.  | The writing style is  not always fluent or  well organised and  Grammar and   spelling contain   errors.   Word limit is   exceeded or falls   short by more than  20%.  The attempt at   referencing but not  Exactly according to  APA standard and  only a few references  are cited in the text.  | Mostly fluent   writing style   appropriate to the  assessment with  mostly accurate   grammar and   spelling.   Minor omissions  only.   Word limit is   exceeded or falls  short by more than  10%.  Some attempt at  Referencing and  according to the  APA standard.  Few references are  cited in the text  | Mostly Fluent writing  style appropriate to  the assessment with  accurate grammar and  spelling.  Word limit is   maintained.  Referencing is mainly  accurate and   according to the APA  standard.   Most of the references  are cited in the text.  | Fluent writing style  appropriate to the  assessment with   accurate grammar and  spelling.  Word limit is   maintained.  Referencing is mainly  accurate and   according to the APA  standard.   All references are   cited in the text.  | 
Assessment 5: Final Exam 
Due date:   | Week 12  | 
Group/individual:   | Individual  | 
Word count/Time provided:   | 1.5 hours (equiv. 1500 words)  | 
Weighting:   | 20%  | 
Unit Learning Outcomes:   | ULO2, ULO4  | 
Assessment 5 Detail 
The final exam assesses students’ ability to understand theoretical materials. The exam will be  multiple choice questions and short questions relevant to the lecture materials. 
The students must attempt the online exam individually using the subject site. The exam weighted  20% of the subject grade. There will be no practice attempt