Đang tải... (xem toàn văn)
5 View customer When the staff needs to inspect the customer information or find a specified customer, he will go to the view customer screen and find the customer.. 8 Edit customer stat
Trang 1VIETNAM NATIONAL UNIVERSITY HO CHI MINH CITY UNIVERSITY OF INFORMATION TECHNOLOGY
FACULTY OF SOFTWARE ENGINEERING
Ho Chi Minh City, December 2023
Trang 2OBSERVE (Instructor's)
Trang 3LIST OF GROUP MEMBERS
Trang 5TÀI LIỆU VỀ ODOO TIẾNG VIỆT (do cá nhân biên dịch)Error! Bookmark not
defined.
Trang 6Acknowledgments
To successfully complete this project, I am fortunate to have received valuable assistance and support from respected teachers Therefore, I would like to dedicate the opening pages to express my gratitude to those who have accompanied me during this period
Firstly, I would like to extend my deep appreciation to all the professors at the University of Information Technology in general and the Software Engineering Department in particular Special thanks to Ph.D Nguyen Trinh Dong, who has been an inspiring figure, providing dedicated guidance and support in terms of knowledge He has created a conducive environment for me to learn, exchange ideas with peers, and collaborate with fellow researchers
Despite putting in significant effort to perfect the thesis, it is inevitable that there may be some shortcomings and limitations I sincerely hope to receive understanding and constructive feedback from respected teachers
Trang 7CHAPTER 1 : OVERVIEW OF TOPIC
1.1 Initial problem
To keep up with the rapid pace of global economic development in general and Vietnam in particular, businesses require high operational productivity in a competitive business environment They need to meet the demands in management, market, and customer service
Recognizing this need, I decided to choose the topic "DEVELOPING AN ENTERPRISE MANAGEMENT SUPPORT SYSTEM BASED ON ODOO" for my thesis (supervised by Ph.D Nguyen Trinh Dong) With the open potential for Enterprise Resource Planning (ERP) systems today, Odoo Framework is gradually gaining a prominent position in the Vietnamese market With a dedicated research and development team, Odoo is consolidating its position in the list of versatile platforms catering to the needs of businesses and organizations of various sizes, offering both Community and Enterprise versions
As a student with limited financial resources, I chose to develop the product on the Community version and operate the website on local hosting TripleC simulates a business based on real-world needs that have not yet been approached by enterprise resource planning systems TripleC promises to be a powerful tool for businesses in system management, applicable to human resources management, customer care, planning, and project management to expand business potential, reach more customer groups, and significantly reduce time in business operations It aims to provide a better experience with the current workload."
1.2 Solutions
To successfully complete the project, it is necessary to research the following aspects: • Conduct specific research on the workflow, requirements, and needs of the business in the areas of human resources management, customer care, planning, and project management
• Identify the essential fields for the enterprise management system, including functions and features, information and data, security requirements, and user interaction requirements
Trang 81.3 Project objectives
Building the TripleC website
• Successfully implementing the basic functions of a business resource management website
• Applying to human resources management, customer care, planning, and project management systems
Used tools :
• Tools for analysis and design: draw.io, plantuml
• Tools for application development and database management: Odoo 14 • Project management tool: Github
• Text editing tools: Excel, Word."
Trang 9application Thus, ERP is an optimal solution for businesses, and Odoo ERP stands out as one of the most valuable software options to implement this solution effectively
• Understanding the workflow of the components within a business is crucial for utilizing Odoo efficiently
• Since Odoo is open-source, developers can program additional modules (addons/extensions) to meet specific user needs and must adhere to the principles corresponding to the Odoo-provided framework
Odoo introduction
• Odoo Homepage: https://www.odoo.com/
• Odoo source code is hosted on Github: https://github.com/odoo/odoo
• Formerly known as OpenERP 5/post/odoo-the-new-openerp-156)
(https://www.odoo.com/blog/odoo-news-• Current Odoo version as of 2023: v16.0
• Two versions of Odoo: Odoo Community (free, open-source on Github) and Odoo Enterprise (paid); https://www.odoo.com/page/editions
• Odoo provides cloud services odoo.sh: https://www.odoo.sh/
• Odoo offers both free and paid modules on the store: https://apps.odoo.com/apps • User documentation for Odoo:
https://www.odoo.com/documentation/17.0/applications.html • Developer documentation:
https://www.odoo.com/documentation/17.0/developer.html
• Odoo partners: https://www.odoo.com/partners; when your business needs consulting/customization/implementation of Odoo solutions, you should contact Odoo partners rather than Odoo directly If you contact Odoo directly, they will refer you to the most suitable partner
Odoo Technical Platform
• Primary programming language: Python • CMS backend: Python
• Frontend: Backbone JS, jQuery, underscore.js, D3.js
Trang 10• DBMS: Postgres • Proxy: Nginx
Odoo's operational flow provides components such as:
• User login/logout management
• MVC architecture: Model - View - Controller
• ORM binding: Creating Python classes -> mapping to tables in the Postgres database
Customization on the Odoo framework makes software development significantly faster than starting from scratch, presenting a substantial advantage Currently, no competitive rival has been found on the Python platform
Trang 11CHAPTER 2 : SURVEY AND ANALYSIS OF REQUIREMENT SPECIFICATIONS
2.1 Survey of the Current Situation 2.1.1 Survey method
Interview Method: The students develop a series of questions and then conduct direct interviews at selected businesses, chosen in advance, to gather common points regarding the current operational status and challenges faced in system management However, the focus is primarily on inquiries related to computer literacy, interface requirements, and functionalities
Survey Participants: Management personnel Q&A Table
What is the scale of the business? Small and medium-sized enterprises
Business departments? Includes 2 departments: Human Resources and Customer Care, along with other departments related to the nature of the business
Responsibilities of each department? Human Resources Department: Manage attendance, recruitment and training of personnel,employee information management
Customer Care Department: Manage customer information, handle and process complaints, show appreciation to
customers
Employee attendance method? Employees use a time clock machine for attendance
Trang 12Information required from customers? Customers need to provide their name and phone number
In case a customer refuses to provide information, what happens?
If a customer refuses to provide information or provides false information, they may be denied reception and complaint resolution/support
Does the business have Internet access? Yes Does the business provide computers to
employees?
The business usually provides computers to managers; other employees are required to use their personal computers during work
Does the business need store management software?
User-friendly, easy to operate
2.1.2 Current organization status
Overall model description :
Management department The highest responsible department in the store It oversees, reviews, and makes decisions regarding the store's operations It ensures proper allocation of human resources and monitors detailed reports on the store's performance (revenue, customer volume, bestselling items, monthly reports, etc.)
Trang 13Human Resources Department Manages information on departments and employees within the business
Oversees attendance management
Manages recruitment and training processes
Administers reward and penalty systems Customer Care Department: Manages customer information
Handles and resolves complaints and support requests
Manages transaction points and decisions related to customers
2.1.3 Current state of informatics
Software and Hardware Requirements Compliance
Management Department Staff Department Hardware component CPU : Intel Core i3-8100
RAM : 4GB
Hard Disk : 256GB (HDD) Video Card : Intel HD Graphics 630
CPU Intel : Intel Core 4130
i3-RAM : 4GB
Hard Disk : 256GB (HDD) Video Card : Intel HD Graphics 4400
Software component Microsoft Windows 10 Operating System Licensed Version
2.2 Functional requirement 2.2.1 Requirement of customer
Trang 14Many type of filter
7 Delete Employee Move the employee to the contract termination list.
Many type of filter
9 Delete Candidate Add the candidate to the rejected candidate list, with corresponding rejection reasons, and send a thank-you email.
10 Schedule Interview Add candidates to the interview waiting list and send batch emails notifying them about the interview details.
11 Search Interview Results
Many type of filter
12 Provide Results to Candidates
Send batch emails notifying candidates about the results Candidates failing the interview will be added to the rejected candidate list.
113
Create Training List Add candidates to the training list (candidates passing the training process will be added to the official employee list)
Fields include: training start date, candidate, training duration, process reports, etc.
Trang 1518 Admin Search for Employees
Many type of filter
Search for Customers
28 Evaluate customer Evaluate customers based on potential/customer policy violations/customer notes.
229
- CPU: 2-core or higher - OS : Android 4.4, IOS
Trang 16Smart phone RAM: 2GB or higher - Browser : Any browser with Cookies
Server system - CPU: 4-Core or higher - RAM: 8GB or higher
- OS: CentOS - Postgres
- Web Server: Nginx
2.3 Non-functional Requirements
Actor
with a staff member
Trang 17Actor
X: User has full permission to do the action
X(*): User has permission to do the action on his own items
X(**): User has permission to do the action on items sent to him only
X (1): reading permission is specified for each Error Form item regarding to Location of the item For example, items, which have Location = “London”, are only read by
employees of the location.
Trang 18send reset link with the time user click reset link must less than 15 minutes
If [clickDate - sendDate] > 15m: “Sent out of time bound message”
- If [submitDate - sendDate] > 15m: “Send reset link is out of date”
- Recipients list must not be empty
- Send mail with the template below:
From [Current user] or [current department]
Subject [Email title] - [current user] or [current department]
Body
Dear [recipient],
This is an email sent by system, compose by [current user], if this is a spam, you can report here [link report] [Email content]
Trang 19- note must not be empty
Trang 20medium-Promises to bring many interface innovations, thereby supporting users to easily access and use the product, improve work efficiency, save time and costs in many aspects
• Project title: TripleC Enterprise Management System • Languages: Python, XAML
• Development environment: InteliJ, Odoo
• Project management tools: Github, Google Drive, Odoo
• Quality requirements: the software is simple, efficient, user-friendly and ensures an aesthetic that inspires users
• Legal conditions and bases: legal
Trang 21exception and must cope with the diversity of products and various operational tasks, including human resources and customer care, which require significant costs in terms of both manpower and resources A user-friendly, comprehensive, and visually appealing management system with multitasking features is essential for both business owners and employees, aligning with the project's objectives
2.4.5.2 Project Benefits
For businesses/organizations, the digitization of management processes will significantly save costs and labor, enabling managers to invest their time more efficiently This, in turn, enhances the overall quality of business operations
2.5.5 Project Details
2.5.5.1 Scope
• Suitable for businesses with 5 - 50 employees
• Target audience: small and medium-sized enterprises, sole proprietorships
2.5.5.2 Technology Platform
The system will be developed online using the Odoo Framework, utilizing the Postgres database management system Currently, access is limited to local hosts through LogMeIn Hamachi However, with successful implementation and financial support for server construction, users will access the website via web browsers on various platforms The system will be built online using AWS as the platform and Postgres as the database management system Users can access the application via Android or iOS smartphones
This project aims to provide a comprehensive and efficient management solution for
small to medium-sized enterprises, enhancing overall operational efficiency and reducing costs
2.5.6 Evaluation
Trang 222.5.6.1 Risks
Several potential issues may arise for auditors or initial system administrators
Odoo, being a relatively new platform, poses challenges in terms of learning and seeking assistance
Familiarization may take some time due to specialized operations and business-oriented requirements
The software currently can only be accessed via the local host using LogMeIn Hamachi However, with successful implementation and financial support, users will be able to access the website through web browsers on various platforms
There is significant competition with major competitors due to the rapid development of various store management software in the market
2.5.6.2 Economic Impact
The project promises high economic efficiency by saving labor, time, and costs
It holds potential for software coverage in rural areas, where access to large-scale website systems is limited
2.6 Usecase & Diagram 2.6.1 General usecase
Trang 232.6.1.1 Description of Actors
the system
report for other staffs
2.6.1.2 Description of Use Cases
1 Authenticate Staff need to authenticate before doing anything in the system 2 Change password When the staff thinks that the old password isn’t secure
anymore or he just simply wants to update to the new password, he can change the password
3 Reset password If the staff forgets his password, he can request the AMS to reset his password, the reset password link will be sent via email, the staff can access that link and change the password to the new one
Trang 244 Send mass email Sometimes, the staff needs to send a lot of emails to all staff of a department or something like that, so he can use this feature to send a mass email immediately
5 View customer When the staff needs to inspect the customer information or find a specified customer, he will go to the view customer screen and find the customer
6 Contact customer The staff can contact a customer with his contact information when the staff is viewing the customer’s detailed profile
7 View customer request Any customer can send requests to the staff to help them, these requests are distributed to all customer service staff, customer service staff can view those requests and then resolve it 8 Edit customer status Evaluate by statuses: potential customers/policy
violations/customer notes
9 View request VIew all reporting requests that other staff assigned to you 10 Reject report request If the staff feels that a report request seems unreasonable, he
can reject it with the reason why that request is invalid
11 Request report When a staff member needs to know more about a department's business status, he can request other staff who are responsible for that field of the business to make a report
12 Cancel report request When the report request is not necessary anymore, the staff who is the owner of the report request can cancel the report request, so that other staff don’t need to make the report 13 Create report Company staff can create reports and post them to the
company's database
14 Change staff profile Modify staff profile (name, phone, address, citizen id)
15 View timekeeping list The human resource staff member can view the timekeeping list
16 Note in timekeeping list The human resource staff member can create a note in the timekeeping list
17 Add timekeeping list The human resource staff member can add an item to the timekeeping list
18 Add staff When a new employee joins the company, the human resource staff can add a new staff account for the new employee
19 View staff The staff member can view the staff profile
20 Terminate the labor contract with a staff member
The staff member can terminate the labor contract with a staff member
21 View applicants The staff member can view the applicant list 22 Make interview
appointment
The staff member can make an interview appointment
Trang 2523 View interview result The HR staff member can view the interview result of all applicants
24 Reject applicant The HR staff member can reject applicants 25 Create training lists The HR staff member can create training lists 26 Send interview result to
30 View department The HR staff member can view the department 31 View department's change
history
The HR staff member can view the department’s change history
32 Edit staff permission The HR staff member can edit the staff permission
2.6.2 Usecase specification
UC-1 Authenticate
ID and Name: UC-1 Authenticate
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Staff Secondary Actors:
Account Management System (AMS)
Description: Staff need to authenticate before doing anything in the system
Trigger: None
Preconditions: None
Postconditions: Staff authenticate successfully to the system
Trang 26Normal Flow:
Alternative Flows: 1.1 The staff has already logged in to the system recently
1 The staff uses an arbitrary function in the system
2 AMS detects that the staff has logged in to the system recently, so AMS doesn’t require the staff to login again but allows the staff to continue his operation
Exceptions: 1.0.E1 The credential information of the staff is invalid
1 AMS informs the staff that his credential information is invalid 2 The staff re-enters username and password
2a If the username and password is valid, AMS informs the staff that he has successfully logged in
2b If the username and password is invalid, allow the staff to re-enter the credential information
Trang 272c If it’s the 4th try, the staff won’t have permission to try again within 30 minutes
Business rule
Activity BR code Description
- Username and password must have at least 6 character
- Username must not contain space
UC-2 Change password
UC-2 Change password
ID and Name: UC-2 Change password
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Staff Secondary Actors:
Account Management System (AMS)
Description: When the staff thinks that the old password isn’t secure anymore or he just simply wants to update to the new password, he can change the password
Trigger: None
Preconditions: The staff password is the old password
Postconditions: POST-1 The staff’s password is updated to the new one
POST-2 All devices that have already logged in will be logged out instantly
Trang 28Normal Flow:
Alternative Flows: 2.1 The staff change password by accessing the reset password
link
1 The staff enters the new password 2 times
2 AMS examines the new password and changes the staff’s password to the new one
3 AMS informs via email that the staff’s password has changed
Trang 29UC-3 Reset password
ID and Name: UC-3 Reset password
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Staff Secondary Actors:
Account Management System (AMS)
Description: If the staff forgets his password, he can request the AMS to reset his password, the reset password link will be sent via email, the staff can access that link and change the password to the new one
Trigger: None
Preconditions: The staff password is the old password
Postconditions: POST-1 The staff’s password is updated to the new one
POST-2 All devices that have already logged in will be logged out instantly
Trang 31reset link must less than 15 minutes
If [clickDate - sendDate] > 15m: “Sent out of time bound message”
- If [submitDate - sendDate] > 15m: “Send reset link is out of date”
UC-4 Send mass email
ID and Name: UC-4 Send mass email
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Staff Secondary Actors:
Account Management System (AMS)
Description: Sometimes, the staff needs to send a lot of emails to all staff of a department or something like that, so he can use this feature to send a mass email immediately
Trigger: None
Preconditions: None
Postconditions: The email is instantly sent to all staff specified
Trang 32Normal Flow:
Alternative Flows: None
Exceptions: 4.0.E1 Some email addresses not found
1 AMS displays the list of email addresses that can not be found 2 The staff changes these misspelling email addresses
3 AMS resent the email to the new email addresses
3a If there are any email addresses that can not be found, return to step 1
3b Else AMS informs that the email is successfully sent
Trang 334 Return to step 2 of normal flow
- Send mail with the template below:
From [Current user] or [current department]
Subject [Email title] - [current user] or [current department]
Body
Dear [recipient],
This is an email sent by system, compose by [current user], if this is a spam, you can report here [link report] [Email content]
Thank you
Permission rules:
- Current user must have the permission to send mass email
UC-5 View customer
ID and Name: UC-5 View customer
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Customer service staff
Secondary Actors:
Customer Service System (CSS)
Trang 34Description: When the staff needs to inspect the customer information or find a specified customer, he will go to the view customer screen and find the customer
Trigger: None
Preconditions: PRE-1 The staff has already logged in
PRE-2 The staff has permission to view the customer list
Postconditions: POST-1 The system displays a list of customers that match the staff filter
POST-2 The staff can view the detailed information of a specified customer
Normal Flow:
Alternative Flows: 5.1 View detailed customer information
Trang 351 In the customer list screen, the staff selects a customer that he wants to view detailed information
2 CSS displays the detailed profile of the specified customer to the screen
Exceptions: None
Business rule
Activity BR code Description
UC-6 Contact customer
ID and Name: UC-6 Contact customer
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Customer service staff
Secondary Actors:
Customer Service System (CSS)
Description: The staff can contact a customer with his contact information when the staff is viewing the customer’s detailed profile
Trigger: None
Preconditions: PRE-1 The staff has already logged in
PRE-2 The staff has permission to view the customer profile
Postconditions: The staff successfully contacts the customer
Trang 36Normal Flow:
Alternative Flows: None
Exceptions: 6.0.E1 The system can not contact the customer
1 CSS informs the staff that the system can not contact the customer
2a If the contact information is misspelling, the staff can update it 2b The staff marks the customer unable to contact
- message must not be empty
UC-7 View customer request
ID and Name: UC-7 View customer request
Created By: Hoàng Giang Date Created: 14/10/2023
Trang 37Primary Actor: Customer service staff
Secondary Actors:
Customer Service System (CSS)
Description: Any customer can send requests to the staff to help them, these requests are distributed to all customer service staff, customer service staff can view those requests and then resolve it
Trigger: None
Preconditions: PRE-1 The staff has already logged in
PRE-2 The staff has permission to view the list of customer requests
Postconditions: List of customer requests is displayed on the screen
Normal Flow:
Alternative Flows: None
Trang 38Exceptions: None
Business rule
Activity BR code Description
UC-8 Edit customer status
ID and Name: UC-8 Edit customer status
Created By: Hoàng Giang Date Created: 14/10/2023
Primary Actor: Customer service staff
Secondary Actors:
Customer Service System (CSS)
Description: Evaluate by statuses: potential customers/policy violations/customer notes
Trigger: Adding a new customer Evaluate frequently
Preconditions: PRE-1 The staff has already logged in
PRE-2 The staff has permission to edit customer status
Postconditions: Customer status is updated to the new one
Trang 39Normal Flow:
Alternative Flows: None
Exceptions: None
Business rule
Activity BR code Description
Select new status BR7 Submitting rules:
- status must be valid
UC-9 View request
ID and Name: UC-9 View request
Created By: Hoàng Giang Date Created: 14/10/2023
Trang 40Primary Actor: Staff Secondary Actors:
Report System (RS)
Description: VIew all reporting requests that other staff assigned to you
Trigger: None
Preconditions: The staff has already logged in
Postconditions: Reporting request list is displayed on the screen
Normal Flow: 9.0 View request
1 The staff choose to view all the reporting requests 2 The staff selects the desired filter
3 RS displays all requests that match the filter and their reporting status
Alternative Flows: None
Exceptions: None
Business rule
Activity BR code Description
UC-10 Reject report request
ID and Name: UC-10 Reject report request
Created By: Hoàng Giang Date Created: 14/10/2023