Assessment Task 2-Software Engineering Project
Assessment Task 2-Software Engineering Project
Submission Details: Submit a Google Doc and a PDF version of the report.
Include all relevant project files (HTML, CSS, Database, Excel files, video, etc.) in a zipped folder and submit
via Google Classroom.
Task Description
You will develop a software project that addresses a real-world problem or opportunity, applying
the skills learned in Years 11 and 12. For this project, you are required to design and develop a
secure Progressive Web Application (PWA) for a client. The application should provide a
seamless, reliable, and user-friendly experience across devices, including offline functionality.
The solution must be developed using Python and the Flask framework to implement back-end
logic, server-side processing, and secure client–server communication. HTML and CSS should be
used to structure and style the user interface, while JavaScript should support interactivity, form
validation, and dynamic front-end behaviour. Additional libraries or APIs may be used where
appropriate, but their selection must be justified and documented.
The secure PWA must include features such as user authentication, secure and encrypted
data storage, and may incorporate push notifications to enhance user engagement. You must
also develop an intuitive, user-friendly interface that prioritizes accessibility and usability,
ensuring the application is easy to navigate for a wide range of users.
Throughout the development process, you must ensure the application follows security best
practices, including protection of user data and safe handling of user interactions. This project will
demonstrate your ability to apply software development skills to solve a practical problem while
meeting real-world security and usability requirements.
Project Requirements
Develop the software project, project documentation, and presentation within the following four key stages:
● Collaboration Tools:
○ Identify and justify the use of collaboration tools to support team communication
and document management.
● Team Roles & Responsibilities:
○ Define the roles and responsibilities of each team member (if applicable) to ensure
clarity in task assignments.
● Management Practices:
○ Explain how tasks, documents, and project progress will be managed using the
selected tools.
○ Conduct and document regular, at least three-minute, meetings using the provided
Meeting Minutes template to record key decisions, discussions, and action points.
● Development Approaches
○ Research and justify various software development approaches, including
Waterfall, Agile, and WAgile, that are applicable to your project.
● Quality Assurance Focus:
○ Briefly describe how communication methods and collaborative efforts will support
quality assurance processes throughout the project.
● Front-end: Develop and implement a user-friendly interface (UI) that supports secure and
intuitive data input and interaction..
● Back-end: Implement the system logic, data processing, and storage components (e.g.
databases and server-side functions), ensuring data integrity and security.
● Architecture: Present a clear system architecture (e.g. client-server model) that outlines
how components interact and where data flows.
● Algorithm Documentation: Annotate your code and interface to show how they reflect
the design developed in Stage 2.3. Where design decisions evolved, justify the changes.
● Version Control: Utilise version control systems (e.g., Git) to track changes and manage
code revisions.
● Cybersecurity Risks: List and briefly explain the potential security threats that your
proposed system could face.
● Write a Security Summary Report: In your report, show your understanding of web
vulnerabilities and explain how your system protects against them. Your report should:
1. Identify vulnerabilities you considered in your login system.
2. Explain the techniques you used to protect against them (e.g., hashing
passwords, sanitising input) and show evidence.
3. Justify your approach by explaining why your chosen techniques are effective and
appropriate for your system.
● Mitigation Strategies: Outline specific actions and best practices you applied to reduce
risks.
● Effectiveness Evaluation:
o Evaluate how effectively the system solves the identified problem by considering
both qualitative and quantitative metrics.
● Challenges and Solutions:
o Reflect on the challenges encountered during development, including issues
related to code performance, and document the strategies applied to overcome
these challenges.
● Future Enhancements:
o Propose improvements such as:
▪ Additional security features.
▪ UI/UX enhancements.
▪ Expanded system functionalities.
● Overall Impact:
o Summarise the overall effectiveness of the software engineering solution,
integrating insights from the testing phase and feedback received.
● Final Presentation:
o Develop and deliver a 4-minute project video using presentation software that
includes:
▪ Introduction: An overview of the problem, objectives, and system design.
▪ System Demonstration: A demonstration of the developed solution,
showcasing key features including the user interface, core functionality,
underlying code, authentication processes, data handling, and implemented
security measures.
▪ Reflection: Discussion of project strengths, challenges faced, and future
improvements.
Marking Criteria
● Planning your project with tools like Gantt charts and budgets
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Identifies a real-world Identifies a relevant Describes a problem or Provides a vague or The problem is unclear
Defining the problem or opportunity problem or opportunity opportunity with minimal poorly supported or unrelated.
problem and clearly with strong using some supporting supporting evidence. problem. User or system Requirements are
requirements evidence (interviews, evidence. Defines clear Identifies users and gives requirements are basic missing, unrealistic, or
case studies, scenarios). but less specific user and general information or incomplete. copied. Lacks
Defines specific user and stakeholder needs. understanding of
stakeholder needs stakeholders.
clearly.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Investigating Comprehensively Effectively compares Describes one or more Identifies an Little or no understanding
implementation investigates and suitable implementation methods with some implementation method of implementation
methods compares methods and explains comparison; justification with limited explanation. methods. The selection
implementation methods how the selected method is present but lacks Justification is minimal or lacks rationale or is
with clear links to project meets project needs and depth or clear linkage to partially relevant. inappropriate.
needs. The method is stakeholder the project or users.
expertly justified with expectations.
evidence of stakeholder
and project alignment.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Identifying Clearly explains and Thoroughly identifies Identifies affected users Provides a limited or Fails to identify relevant
affected supports who is impacted who is affected and or groups with some vague mention of stakeholders, and the
stakeholders using direct evidence provides supporting relevant detail. The stakeholders with explanation is inaccurate
from interviews, case evidence. The analysis of explanation of impact is minimal explanation or or unsupported.
studies, and research. impact is mostly well basic. evidence.
The impact is analysed in developed.
depth.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
System Accurately outlines Thoroughly outlines Lists several system Identifies a few Requirements are
requirements critical features, system features and features and users with a requirements or users. missing or unrelated.
and scope functionalities, data users with defined general understanding of The scope is unclear or Lacks understanding of
requirements, users, and boundaries. Most the scope. Some underdeveloped. system scope and
system boundaries. The requirements are requirements are boundaries.
scope is well defined, appropriate and justified. relevant.
and constraints are
clearly justified.
Total Mark
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Clearly identifies and Selects appropriate tools Lists collaboration tools Mentions basic tools or Fails to identify tools or
Collaboration justifies appropriate tools and gives valid and team roles; some roles with minimal [Link] absent
and with clear reasoning for [Link] team justification is provided explanation and unclear or incorrect.
choice. Clearly defines roles and responsibilities but lacks detail or clarity. link to project needs. No clear management
Management
all team roles with clear, with minor [Link] Describes some Minimal explanation of plan or documented
effective responsibilities task/document management practices management and few or meetings.
aligned to project needs. management using and includes basic poorly detailed meeting Lacks understanding of
Explains and documents selected tools; meeting meeting records. minutes. approaches, ethics, or
effective task/document minutes included with Describes one or more Brief or vague mention of communication needs.
management; includes relevant decisions and development development method or
detailed, regular meeting [Link] approaches and ethics and minimal
minutes (3+), clearly development addresses basic ethical stakeholder engagement
outlining actions and key approaches and issues and plan.
[Link] discusses some communication
compares Waterfall, social/ethical concerns strategies.
Agile, WAgile; integrates and gives reasonable
relevant social/ethical strategies for
issues; outlines strong stakeholder
communication communication.
strategies and QA
contribution.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Project Planning Develops a detailed Provides a Gantt chart A Gantt chart includes The timeline or budget Incomplete or missing
Gantt chart with all tasks, with most tasks and main tasks and the lacks clarity or detail and Gantt chart and/or
accurate dates, and dependencies.A budget is basic with few dependencies are budget.
dependencies. reasonable and mostly some omissions. shown. Poor planning with little
Comprehensive budget complete budget. Shows understanding of Attempts planning but to no risk or QA
covering all potential Applies suitable project planning methods; lacks detail in risk or QA consideration.
costs. management strategies; includes basic risk/QA areas.
Applies advanced project risk and quality are considerations.
management techniques mostly considered.
and integrates risk
assessment and QA
planning seamlessly.
Criteria Extensive (10-9) Thorough (8-7) Sound (6-5) Basic (4-3) Limited (2-0)
Modelling Tools Creates accurate, Models are mostly Some modelling tools Limited use of modelling No meaningful modelling
detailed DFDs, system correct and complete, are used with a basic tools; diagrams may be or understanding is
flowcharts, and with a clear link to project structure and incomplete or unclear. shown.
wireframes clearly components. understanding. Vague or limited No explanation of the
aligned to system Describes the back-end Some understanding of explanation of the back- back-end role or QA.
functions. role and how modelling back-end contribution; end or QA link to
Explains how back-end aids QA with moderate mentions QA in basic modelling.
engineering contributes clarity. terms.
to overall project success
and QA; models support
integration and
refinement.
Total Mark
Teacher You demonstrated proficiency in these areas:
Feedback
Criteria Extensive (15-13) Thorough (12-10) Sound (9-7) Basic (6-4) Limited (3-0)
Design and Builds a well-designed Develops a functional Constructs a working Attempts a basic user Fails to develop or omits
Development and secure front-end and front-end and back-end interface and basic interface or backend core front-end or back-
back-end system with system with good system features. function. Limited end structure. Little or no
intuitive user interaction usability. Provides clear Architecture is present structure or poor evidence of architecture
and strong data integrity. architecture and partial but lacks clarity or implementation. Some or alignment with Stage
Presents a clear client- alignment with Stage 2.3. completeness. Some parts may not align with 2.3. No version control or
server style system Justifies some design reference to Stage 2.3. plans. Minimal use of Git just screenshots of
architecture. Annotations decisions. Version Minimal version control is or annotations.. code..
show how the build control is evident and used.
aligns with Stage 2.3 and mostly used effectively.
fully justify any design
changes. Strong use of
Git to show version
control
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
System Clearly explains The integration and Basic explanation of Limited understanding of No clear plan for
Integration & integration with implementation method integration and some integration and/or vague integration or method of
Implementation hardware/APIS; selects was well discussed with justification of the deployment method. implementation.
and justifies appropriate minor gaps. implementation method.
deployment method
aligned to project
context.
Criteria Extensive (10-9) Thorough (8-7) Sound (6-5) Basic (4-3) Limited (2-0)
Risk Analysis Clearly identifies and Identifies and explains Describes some Lists basic threats but Fails to identify relevant
and explains multiple relevant relevant threats with common threats; provides minimal threats or provides
Cybersecurity and realistic security appropriate examples; explanation is generally explanation or shows inaccurate/missing
threats (e.g., XSS, SQL demonstrates solid correct but lacks depth or misunderstanding of [Link] little
injection). Shows deep understanding of risk [Link] [Link] or no understanding of
understanding of [Link] most vulnerabilities and some security concepts at a web vulnerabilities or
potential impact on relevant vulnerabilities protections but with basic level; includes [Link]
[Link] outlines and associated limited explanation or generic or partially justification or misleading
major web vulnerabilities protections; inconsistent links to correct explanations
and comprehensively demonstrates good system [Link] [Link] or [Link] to
explains techniques used understanding of web justification, though generic justification describe effective
to address them (e.g., security reasoning may be partial provided; lacks link to mitigation strategies.
input validation, [Link] or [Link] system [Link]
password hashing). justification for most general strategies, some a few strategies with
Links vulnerabilities techniques; rationale is of which are partially limited application or
directly to implemented mostly appropriate and applicable. detail.
[Link] the use relevant. Explains and
of each security measure applies multiple
with a clear rationale strategies that are
supported by industry appropriate and effective
practices or for risk reduction.
[Link] and
applies several effective
risk mitigation strategies
and best practices (e.g.,
HTTPS, rate limiting,
code review). Strategies
are realistic and tailored
to the system.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Logbook and Maintains a detailed, Records regular log Provides logbook entries Submits minimal log Logbook is absent,
Annotated consistent logbook that entries with clear with key updates. entries with few or poorly maintained, or
Evidence documents all stages of explanations. Includes Includes some annotated unclear annotations or lacks relevant
development, including annotated screenshots screenshots, but they are screenshots. screenshots and
issues and solutions. that cover most major limited in number or annotations.
Presents well-annotated features of the system. clarity.
screenshots that clearly
demonstrate key
processes and decisions.
Total Mark
Criteria Extensive (10-9) Thorough (8-7) Sound (6-5) Basic (4-3) Limited (2-0)
Test Plan Designs and documents Constructs a detailed Outlines a test plan that Attempts a test plan with Demonstrates little or no
Development a comprehensive, test plan covering most addresses key functional minimal detail. Identifies evidence of testing. May
structured test plan that key areas. Applies and usability areas. a few testing aspects but mention feedback or
evaluates all aspects of appropriate testing Applies some testing lacks clarity and depth. testing superficially
functionality, usability, methods and makes techniques. Responds to feedback in without structure or
accuracy, boundary considered use of Acknowledges and uses a limited way. purpose.
conditions, and outputs. feedback to improve the feedback to a basic
Applies and justifies solution. degree.
testing methodologies
and optimisation
techniques. Incorporates
and responds to
feedback critically.
Criteria Extensive (10=9) Thorough (8-7) Sound (6-5) Basic (4-3) Limited (2-0)
System Analyses and evaluates Explains system Describes system Lists limited performance Provides minimal or no
Performance and system performance performance and effectiveness with some outcomes. Mentions evaluation. Fails to
Reflection using qualitative and evaluates effectiveness. supporting evidence. some issues or identify issues or
quantitative measures. Describe challenges and Identifies basic challenges without clear suggest meaningful
Identifies and explains improvements made. challenges and reflection. improvements.
key challenges. Justifies Suggests relevant proposes simple
applied solutions. enhancements. improvements.
Proposes thoughtful,
forward-looking
enhancements.
Criteria Extensive (5) Thorough (4) Sound (3) Basic (2) Limited (1-0)
Final Presentation Delivers a highly Presents a clear and Outlines the project and Attempts to present the Fails to communicate
engaging and well-organised video. key features with a basic project, but lacks clarity, key elements of the
professional video Communicates project explanation. structure, or detail. project. The presentation
(approx. 4 minutes). aims and system Demonstrates the Some features are is disjointed, unclear, or
Explains the problem features accurately. system but with limited shown but not clearly incomplete..
and design clearly. Includes relevant depth or clarity. explained.
Demonstrates the insights and some
system effectively using reflection.
visuals and narration.
Provides deep insights
and reflects thoughtfully
on the process.
Total Mark
Student Reflection