0% found this document useful (0 votes)
114 views4 pages

ADI Assignment Spring 2024 - Winter 2024 (5423)

The document outlines requirements for developing a freelance platform program. It includes tasks to create class, activity and use case diagrams, implement the software design with C# code, and write a report on software quality and maintenance measures.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views4 pages

ADI Assignment Spring 2024 - Winter 2024 (5423)

The document outlines requirements for developing a freelance platform program. It includes tasks to create class, activity and use case diagrams, implement the software design with C# code, and write a report on software quality and maintenance measures.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Unit:

Analysis, Design and Implementation


Assignment title:
Freelance Platform
Spring 2024 – Winter 2024

Important notes
● Please refer to the Assignment Presentation Requirements for advice on how
to set out your assignment. These can be found on the NCC Education
website. Hover over ‘About Us’ on the main menu and then navigate to
‘Policies and Procedures’ then scroll to the ‘Student Support’ area.
● You must read the NCC Education document Academic Misconduct Policy
and ensure that you acknowledge all the sources that you use in your work.
These documents are available on the NCC Education website. Hover over
‘About Us’ on the main menu and then navigate to ‘Policies and Procedures’
then scroll to the ‘Student Support’ area.
● You must complete the Statement and Confirmation of Own Work. The form
is available on the NCC Education website. Hover over ‘About Us’ on the
main menu and then navigate to ‘Policies and Procedures’ then scroll to the
‘Student Support’ area.
● Please make a note of the recommended word count. You could lose marks if
you write 10% more or less than this.
● You must submit a paper copy and digital copy (on disk or similarly
acceptable medium). Media containing viruses, or media that cannot be run
directly, will result in a fail grade being awarded for this assessment.
● All electronic media will be checked for plagiarism.
Scenario
You are assigned the task of developing a program for a freelance platform. The program
aims to connect freelancers with clients, providing a platform for hiring and completing
various freelance projects.

The freelance platform program should allow users to create profiles as either freelancers
or clients. Freelancers can showcase their skills, expertise, and portfolio, while clients can
post projects for which they need help. The program should ensure that usernames are
unique and passwords meet the following security requirements. The password must be
between EIGHT (8) and TWELVE (12) characters long and contain at least ONE (1)
lowercase and ONE (1) uppercase letter.

Once logged in, freelancers see a dashboard that displays available projects based on
their skills and interests. Clients, on the other hand, can view a list of freelancers with
relevant skills and expertise. They can also post new projects with detailed descriptions,
timelines, and budgets.

The program should include a bidding system, where freelancers can submit proposals for
projects in which they are interested. Clients can review the proposals, freelancer profiles,
and past work to make informed decisions.

Your program will need to meet the following requirements:

● Set up the GUI.

● Allow a freelancer or client to create a new account.

● Enable users to create profiles as either freelancers or clients.

● Enable a freelancer to:


o Set up a profile that includes details such as skills, expertise, portfolio, and
past work.
o Browse and bid on available projects.
o Use a dashboard to manage ongoing projects and deadlines.
o View the completed projects.

● Enable a client to:


o Create a profile of their contact details.
o View freelancer profiles.
o Post projects with detailed descriptions, budgets, and timelines.
o Leave reviews and ratings for completed projects.

● The program should have a user-friendly and intuitive interface for easy navigation
and use.

● Provide appropriate errors help messages, and guidance for users.

Page 2 of 4
Analysis, Design and Implementation © NCC Education Limited 2024
Task 1 – 25 Marks
Class Diagram

Draw a class diagram to represent the system structure. The class diagram should be
drawn with a suitable CASE tool and show attributes, operations, scope, and relationship
of classes to each other with multiplicity. The use of abstract classes and sub-classes
(where appropriate) will attract additional marks.
Provide a justification for why each class was selected for inclusion, and how its
relationship to other classes was derived.

Task 2 – 20 Marks
Activity diagram

Draw an activity diagram to show the classes involved when a client wants to create a new
account. Your diagram should clearly show which function is associated with each class.

Task 3 – 10 Marks
Use case diagrams

Draw a use-case diagram to capture the requirements listed in the scenario. The use case
diagram should incorporate each of the user activities indicated in the brief.

Task 4 – 30 Marks
Software implementation

Write and deploy code to implement your system design for the requirements listed in the
scenario. The code should appropriately handle input and output. Your software should
implement a GUI that allows users to perform all the operations required above.

You must include an appropriate level of coupling and cohesion between the classes and
any inheritances and encapsulations that represent the system.

All code should be written in C# for this assignment.

Page 3 of 4
Analysis, Design and Implementation © NCC Education Limited 2024
Task 5 – 15 Marks
Software Quality and Maintenance

Write a short report of TWO HUNDRED (200) words answering the following THREE (3)
questions concerning software quality and maintenance.

a) Define what refactoring means and explain why refactoring is important.

b) There are various measures that can be used to assess the quality of software.
Describe FOUR (4) measures that can be applied to your solution to assess its
quality.

c) Explain preventive maintenance. Give TWO (2) examples of what this type of
maintenance involves.

Submission requirements

● Your program must be submitted as a zip file of the full project.

o No marks will be awarded for code written in a language other than C#.

o Whatever IDE you use, it should be possible to open and run the project
directly from the extracted archive.

● Diagrams and materials associated with the tasks above should be presented in a
Word-processed document.

● All references and citations must use the Harvard Style.

Candidate checklist

Please use the following checklist to ensure that your work is ready for submission.

Have you read the NCC Education document Academic Misconduct


Policy and ensured that you have acknowledged all the sources that
you have used in your work?


Have you completed the Statement and Confirmation of Own Work
form and attached it to your assignment? You must do this.


Have you ensured that your work has not gone over or under the
recommended word count by more than 10%?


Have you ensured that your work does not contain viruses and can
be run directly?

Page 4 of 4
Analysis, Design and Implementation © NCC Education Limited 2024

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy