Assignment 1 Frontsheet - 7436
Assignment 1 Frontsheet - 7436
P1 P2 P3 M1 M2 D1
Assessor Feedback:
*Please note that constructive and useful feedback should allow students to understand:
a) Strengths of performance
b) Limitations of performance
c) Any improvements needed in future assessments
Feedback should be against the learning outcomes and assessment criteria to help students understand how these
inform the process of judging the overall grade.
Feedback should give full guidance to the students on how they have met the learning outcomes and
assessmentcriteria.
Resubmission Feedback:
*Please note resubmission feedback is focussed only on the resubmitted work
* Please note that grade decisions are provisional. They are only confirmed once internal and external
moderation has taken place and grades decisions have been agreed at the assessment.
VU Duc Toan
Programme: BTEC
Plagiarism
Plagiarism is a particular form of cheating. Plagiarism must be avoided at all costs and students who break
the rules, however innocently, may be penalised. It is your responsibility to ensure that you understand
correct referencing practices. As a university level student, you are expected to use appropriate
references throughout and keep carefully detailed notes of all your sources of materials for material you
have used in your work, including any material downloaded from the Internet. Please consult the relevant
unit lecturer or your course tutor if you need any further advice.
Student Declaration
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the
consequences of plagiarism. I declare that the work submitted for assessment has been
carried out without assistance other than that which is acceptable according to the rules of the
specification. I certify I have clearly referenced any sources and any artificial intelligence (AI)
tools used in the work. I understand that making a false declaration is a form of malpractice.
1. Introduction
Welcome to FPTJobMatch, an advanced web platform designed to revolutionize the job posting and recruitment
process. FPTJobMatch not only simplifies but also enhances the recruitment experience for both employers and job
seekers. With a friendly and easy-to-use interface, this software helps optimize every aspect of the job posting,
profile management, and candidate selection process.
FPTJobMatch provides a comprehensive solution, meeting all the needs of the ever-evolving job market. From
posting job advertisements to finding and selecting suitable candidates, FPTJobMatch helps you save time and
improve recruitment efficiency.
Join us to explore FPTJobMatch's groundbreaking features, bringing a new era in effective job connection and
recruitment. Experience the innovation and convenience that FPTJobMatch brings, making recruitment easier and
more effective than ever!
1.1Document Purpose
This document specifies the software requirements for the FPTJobMatch platform, version 1.0. FPTJobMatch is an
innovative web-based application designed to revolutionize the recruitment and job application process. This
Software Requirements Specification (SRS) provides a detailed outline of the features and functionalities that are
part of this release. It aims to streamline and enhance the hiring experience for both employers and job seekers by
offering a user-friendly interface that simplifies job postings, resume management, and applicant selection.
The scope of this SRS covers the core components of the FPTJobMatch system, including job posting, candidate
database management, and applicant tracking functionalities. This document encompasses all critical aspects of the
platform necessary for its initial deployment, ensuring that the primary objectives of simplifying and improving the
recruitment process are met. It does not cover potential future enhancements or additional modules that may be
integrated into the system in subsequent versions. By focusing on these essential elements, this SRS aims to provide
a clear and comprehensive guide for the development and implementation of FPTJobMatch version 1.0.
1.2Product Scope
FPTJobMatch is an advanced web platform designed to improve the recruitment and job search process. This
software provides powerful tools to optimize and simplify steps from posting job ads, managing candidate profiles
to selecting and interviewing. With a friendly and easy-to-use interface, FPTJobMatch not only helps employers
save time and effort but also creates a convenient and effective job search experience for candidates.
2. Overall Description
2.1Product Overview
FPTJobMatch is an intermediary platform between employers and job seekers, designed to digitize and optimize the
recruitment process. This product acts as a bridge, helping employers easily post recruitment ads, manage candidate
profiles and select the most suitable candidates. At the same time, it provides job seekers with an intuitive interface
to search and apply for job positions that match their skills and experience. By taking advantage of modern
technology, FPTJobMatch helps simplify and improve the efficiency of the entire recruitment process.
General Diagram
Below is a diagram illustrating how FPTJobMatch interacts with the environment and is used in specific contexts:
Diagram Explanation
Employers: Employers use FPTJobMatch to post job advertisements, manage candidate profiles and select
suitable candidates.
Job Seekers: Job seekers use FPTJobMatch to search for jobs and apply for suitable positions.
FPTJobMatch: An intermediary platform that provides the necessary interface and tools to connect employers
and job seekers.
Admin Dashboard: Admin dashboard allows managing the entire system, tracking and analyzing recruitment
data.
This diagram demonstrates how FPTJobMatch connects and supports interactions between employers and job
seekers, while providing effective system management and analysis tools.
- Published Recruitment:
- User management:
- Customer support:
This functionality is designed to provide a comprehensive and convenient experience for both employers and job
seekers, helping to optimize the recruitment and job search process.
3. Specific Requirements
3.1Functional Requirements
User requirements for FPTJobMatch
Recruiters need to be able to easily create, edit and manage job postings. The platform must provide an intuitive and
user-friendly interface that allows recruiters to enter job information, job descriptions, candidate requirements, and
other relevant details. In addition, employers can edit and update job postings at any time.
Employers require an intuitive dashboard to track and manage applications effectively. The dashboard should
clearly display all received resumes, allowing recruiters to filter and sort by a variety of criteria such as submission
date, review status, and job fit.
Recruiters need automated tools to screen and shortlist candidates based on predefined criteria. The system must be
able to automatically screen resumes based on criteria such as skills, experience and education. Employers can set
these criteria so that the system can automatically evaluate and rank candidates.
Recruiters require communication tools to interact directly with potential candidates through the platform. The
platform should integrate an internal messaging system, allowing recruiters to send and receive messages from
candidates, schedule interviews, and send notifications related to the hiring process.
Recruiters need analytics and reporting tools to evaluate the effectiveness of their recruiting efforts. The system
must provide detailed reports on the number of applications received, conversion rates from application to interview
and from interview to hire, as well as the average time for each stage of the recruitment process. use..
Job seekers need a user-friendly interface to create and update their profiles and resumes. The platform must
provide easy-to-use profile creation tools, allowing users to input personal information, work experience, skills, and
other details. Users should also be able to update this information easily.
Job seekers need a search function to find job postings that match their skills, experience, and preferences. The
search functionality should allow users to filter job postings by various criteria such as location, job field, salary,
and specific skill and experience requirements.
Job seekers need tools to track the status of their applications and receive notifications about any updates. The
system must provide real-time notifications when there are changes to the status of a user's application, such as
when the application is reviewed, an interview is scheduled, or a final decision is made.
Job seekers require tools to customize their job applications, such as cover letter templates and resume builders. The
platform should provide professional templates for cover letters and resumes that users can customize with their
personal information and specific job requirements.
Job seekers need a communication system to interact with potential employers and schedule interviews. The system
should integrate messaging and email features, allowing users to directly communicate with employers, ask
questions, and conveniently arrange interviews.
Home: The landing page of the platform, providing general information about FPTJobMatch, including an overview,
contact information, and options to sign up or log in.
Employer Dashboard: A dedicated section for employers to manage job postings, applications, screening processes,
communication with candidates, and view recruitment analytics and reports.
Job Seeker Dashboard: A personalized area for job seekers to manage their profiles, search for jobs, track
application statuses, customize their applications, and communicate with employers.
Admin Dashboard: Admin area for managing users, viewing system-wide analytics, and providing support through
FAQs and direct contact options.
This site map outlines the hierarchical structure of the FPTJobMatch system, illustrating how users navigate through
different functionalities and services offered by the platform.
4. Technical Design
Employer:
Job Posting:
Attributes: JobPostingID (PK), EmployerID (FK), Title, Description, Requirements, Location, Salary, DatePosted
Relationships:
Application:
Relationships:
Job Seeker:
Relationships:
Employer:
Employers can manage job postings, including creating, editing, and deleting them.
JobPosting:
Application:
Applications link job seekers to job postings, including the status of the application.
JobSeeker:
Job seekers can manage their profiles, including creating and editing their information and resumes.
Message:
ScreeningCriteria:
Screening criteria are used to evaluate job applications based on predefined requirements.
Admin:
Methods: manageUsers()
Report:
Reports provide analytics and insights for employers and job seekers.
Analytics:
Analytics are used to generate reports and view statistics about the recruitment process.
This class diagram captures the core components and their interactions within the FPTJobMatch system,
providing a clear overview of how different parts of the system are structured and related.
4.3Activity Diagram
This Gantt chart provides a visual representation of the project timeline, including key tasks, durations, and
dependencies, helping to plan and track progress effectively throughout the FPTJobMatch project.
5. Risk Assessment
Risk Assessment
1. Technical Risks:
- Performance Issues: Slow response times or system lag affecting user experience.
3. Market Risks:
4. Financial Risks:
- Budget Overruns: Exceeding allocated funds due to unforeseen expenses or scope changes.
- Data Protection Regulations: Failure to comply with data privacy laws such as GDPR or CCPA.
Mitigation Plan
1. Technical Risks:
- Mitigation: Conduct thorough testing and validation during the development phase to identify and address
integration, scalability, and security issues early.
2. Operational Risks:
-Mitigation: Implement robust monitoring and alerting systems to quickly identify and resolve downtime and
performance issues. Regular backups and data redundancy measures should be in place to mitigate data loss risks.
- Mitigation: Conduct market research to understand user needs and competitor offerings. Continuously adapt and
innovate to stay ahead of market trends.
4. Financial Risks:
- *Mitigation*: Implement strict budget controls and regularly review expenses against projections. Explore
diverse revenue streams such as premium features, advertising, or subscription models to ensure financial
sustainability.
- Mitigation: Stay informed about relevant regulations and ensure compliance throughout the development and
operation of the platform. Engage legal counsel to review contracts, terms of service, and privacy policies to
mitigate legal risks.
Contingency Plan
In addition to mitigation strategies, it's essential to have a contingency plan in place to address unforeseen risks or
emergencies. This plan may include:
- Establishing emergency response protocols for critical issues such as data breaches or system failures.
- Developing backup plans for key operations, such as alternative hosting providers or redundant data centers.
- Regularly updating risk assessments and mitigation plans based on changing circumstances or new information.
Evaluation Report
6. Design Tools
Evaluating Enterprise Architect (EA) against trewen criteria (outcomes and compatibility) will help you determine
whether the tool is right for your project. Below is a preliminary assessment basis based on the criteria:
Activated:
- Advantages: EA provides a rich range of UML functions and diagrams, allowing you to create complex diagrams
such as class diagrams, activity diagrams, and sequence diagrams.
- Disadvantages: Communicator can be complicated for beginners, requires time to get used to.
- Advantages: EAs often have good and stable performance when working with projects with many documents and
charts.
- Cons: May sometimes slow down or close the application, especially when dealing with large files.
- Advantages: EA has a large and strong user community, providing useful resources and technical support from
the community.
- Cons: Online support may not be as fast and have a unique interface for users without a premium service support
plan.
Compatibility:
- Pros: EA integrates well with project management and version control tools like Jira, SVN, and Git, helping to
enhance project management.
- Advantages: EA supports many platforms and popular programming languages, including Java, C++ and .NET.
- Disadvantages: Need to check skills before using EA for platforms or language installers that are not officially
supported.
- Advantages: EA has the ability to import and export data from and to common formats such as XMI and XML,
helping to integrate data with other systems.
- Disadvantages: May require customization and adjustment to ensure full compatibility with existing system.
Summary:
Enterprise Architect is a powerful and flexible UML tool that has good compatibility with many platforms and
development tools. However, the interface is complex and requires skill testing for compatibility before developing
it in a project. For large and complex projects, EA can be an effective choice.
- HTML is the base markup language used to create the structure of a web page.(Bão, M., 2020)
- CSS is used to create types, colors, and layouts for HTML elements on a web page.
- It allows you to create beautiful and unique websites by setting formatting rules.
3. JavaScript:
- JavaScript is the programming language behind the client used to create activities and interactions on a website.
- It provides popular libraries and frameworks like React.js, Vue.js, and AngularJS for developing complex user
interfaces.
- Bootstrap is a popular CSS framework used to build front-end web applications quickly and easily.
- It provides a tool and pre-designed CSS classes to create component interfaces suitable for different devices.
- Tailwind CSS is a modern CSS framework that takes a different approach, using predefined CSS classes to create
custom interfaces.
- It allows you to create more personalized and efficient user interfaces than using reused CSS classes.
- SASS (Syntically Awesome Stylesheets) and LESS (Leaner CSS) are two popular types of CSS preprocessors
used to create coded CSS that is easier to read and maintain.
- We provide features like variables, nested styles, and mixins to increase the operability and reuse of CSS.
Choosing the right front-end technology depends on the specific needs of the project, the development team's
capabilities, and the goals of the web application. Combining these technologies in a robust and flexible way will
help you build beautiful and efficient user interfaces.
Language installer:
- C# (C Sharp): Object-oriented language developed by Microsoft, famous for its simplicity and type safety.
- PHP (Hypertext Preprocessor): Used for server development, popular in building websites and applications.(PHP,
2019)
- Java: High-level language, platform independent, suitable for many types of applications with JVM.
- Windows and IIS (Internet Information Services) Operating system and web server used for project development,
facilitating the distribution of benefit information on the network.
Database:
- SQL Server: Database management system developed by Microsoft, supporting transactional applications and
business analysis.
- MongoDB: System managed NoSQL database documentation, used for structured and unstructured data.
Storage:
- Microsoft Azure and Firebase: Provide cloud services and support tools to manage and develop web and mobile
applications.
Frame:
- .NET Framework: Programming framework developed by Microsoft for Windows, supporting many different
types of applications and programming languages.
Through the use of these technologies, we are able to build a robust and flexible support infrastructure for the
project web.
1. Waterfall model:
Strength:
- Easy to understand and implement: Linear calculation configuration, easy to understand and develop.
- *Suitable for projects with fixed requirements: When requirements are clearly defined and do not change much,
Waterfall is an ideal choice.
- Full documentation: Each production stage is fully documented, helping to maintain work and expand the project.
Weakness:
- Cannot preview the final product: Customers can only view the product when completed, without the opportunity
to give early feedback.
2. Scrum model:
Strength:
- City of customer participation: Customers are regularly involved and provide feedback, helping to increase the
objectivity of the product.
- Increase creativity and productivity: Boost team creativity and productivity through short Sprints.
Weakness:
- High connection requirements: *Requires active connection and participation from all stakeholders.
- Difficult to manage large requests: Not suitable for projects with large and complex requirements.
- Calculation plan: The project has a difficult duration and required resources for each Sprint.
3. V model:
Strength:
- Suitable for projects with fixed requirements: Easily managed for projects with fixed and changing requirements.
- Increased quality assurance All stages of development are tested and quality checked.
- Clear documentation: Each phase has clear documentation, helping to maintain work and expand the project.
Weakness:
- Difficulty adapting to change: Inactivity and difficulty adapting to changes in requirements or environment.
- Large waiting times: Development steps have to wait until the previous stage is completed, leading to large
waiting times.
- Calculation plan: Difficult to calculate the time and resources needed for each stage.
Using the Scrum framework for the development of FPTJobs can bring several benefits and challenges:
2. Flexibility: Scrum is well-suited for projects with changing requirements or uncertain business environments. The
ability to adapt to changing priorities and requirements during each sprint allows for greater flexibility in
development.
3. Stakeholder Involvement: Scrum encourages active involvement of stakeholders throughout the development
process. Regular sprint reviews and sprint demos provide opportunities for stakeholders to provide feedback and
steer the direction of the product.
4. Transparency: Scrum promotes transparency through its various ceremonies such as daily stand-ups, sprint
planning, sprint review, and sprint retrospective meetings. This transparency helps in identifying and addressing
issues early in the development process.
5. Faster Time-to-Market: By breaking down the project into manageable chunks and delivering working
increments of the product at the end of each sprint, Scrum can lead to faster time-to-market compared to traditional
waterfall approaches.
1.Learning Curve:Scrum requires a mindset shift and may require time for the team to fully understand and adopt its
principles and practices. Team members, especially those new to Scrum, may initially struggle to adapt to the new
way of working.
2. Estimation Challenges: Estimating the effort required for each sprint and accurately predicting the velocity of the
team can be challenging, especially in the early stages of the project. This can lead to issues with sprint planning
and delivery commitments.
3. Dependency Management: Scrum teams work in cross-functional units, but dependencies between teams or
external dependencies can still pose challenges. Coordinating dependencies and ensuring smooth integration of
work across teams can be complex.
5. Risk of Scope Creep: While Scrum offers flexibility, frequent changes in requirements or scope during sprints
can lead to scope creep if not managed properly. This can impact the predictability and stability of the development
process.
Overall, while Scrum offers many benefits for the development of FPTJobs, it also comes with its own set of
challeges that need to be carefully managed to ensure successful implementation.
References
Bão, M., 2020. HTML là gì? Nền tảng lập trình web cho người mới bắt đầu. [online]. [Online]
bizflycloud.vn., 2023. Mysql là gì? Tổng hợp thông tin chi tiết nhất về Mysql. [online]. [Online] Available at:
https://bizflycloud.vn/tin-tuc/mysql-la-gi-tai-sao-nen-su-dung-mysql 20200917180705499.htm# [Accessed 20 4
2024].
CO., L. -. 1. D. b. H.-H., 2021. CSS Framework là gì? Tại sao nên sử dụng CSS Framework khi thiết kế web.
[online]. [Online]
[Accessed 20 4 2024].
Gillis, A., 2020. What is a Web Server and How Does it Work? [online]. [Online] Available at:
https://www.techtarget.com/whatis/definition/Web-server.
[Accessed 20 4 2024].
Hanna, K., 2023. What is Google Firebase? - Definition from WhatIs.com. [online]. [Online]
[Accessed 20 4 2024].
[Accessed 20 4 2024].
Microsoft, 2022. What is Azure—Microsoft Cloud Services | Microsoft Azure. [online]. [Online]
[Accessed 20 4 2024].
[Accessed 20 4 2024].
[Accessed 20 4 2024].
[Accessed 20 4 2024].
www.greenacademy.edu.vn., 2022. CSS LÀ GÌ? ỨNG DỤNG CỦA NGÔN NGỮ CSS. [online]. [Online]
css#:~:text=CSS%20l%C3%A0%20vi%E1%BA%BFt%20t%E1%BA%AFt%20c%E1%BB%A7a
[Accessed 20 4 2024].
[Accessed 20 4 2024].