lOMoARcPSD| 59691467
TRƯỜNG ĐẠI HỌC HẢI PHÒNG
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP TỐT NGHIỆP
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG BẤT ĐỘNG SẢN
DỰA TRÊN NỀN TẢNG FLUTTER
Sinh viên thực hiện
Trần Văn Sơn
Mã sinh viên
:
203148201091
Lớp
CNTT1.K21
Khóa
K21
Giảng viên hướng dẫn
T
hS
.
Đào Thị Hưng
Hải Phòng, tháng
12
năm 2023
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
LỜI CẢM ƠN
Tớc hết, em xin bày tỏ lòng biết ơn sâu sắc tới cô ThS. Đào Thị Hưng, người
đã trực tiếp hướng dẫn và tận tình giúp đỡ em hoàn thành báo cáo thực tập này. Qua quá
trình làm báo cáo em cũng học hỏi được thêm rất nhiều kiến thức.
Đồng thời, em xin cảm ơn sự chỉ bảo của các anh chị trong Công ty Cổ phần
Thương mại Andin đã tạo điều kiện thực tập, tiếp xúc thực tế để môi trường rèn
luyện kỹ năng đã học ở trường lớp, biết được hoạt động thực tế của công ty.
Cuối cùng, em xin chân thành cảm ơn các thầy, giáo trong khoa Công nghệ
thông tin, Trường Đại học Hải Phòng, đặc biệt cảm ơn Đào Thị Hưng đã hướng
dẫn, giúp đỡ em trong suốt quá trình thực hiện đề tài.
Trong quá trình hoàn thiện báo cáo thực tập sẽ không tránh khỏi những sai sót,
hạn chế. vậy, em mong nhận được những ý kiến đóng góp của thầy để giúp em
hoàn thành bài báo cáo thực tập.
Một lần nữa em xin chân thành cảm ơn!
Sinh viên thực hiên
Trần Văn Sơn
Table of Contents
LỜI CẢM ƠN...............................................................................................................i
DANH MỤC BẢNG BIỂU..........................................................................................v
MỤC LỤC HÌNH ẢNH...............................................................................................v
LỜI MỞ ĐẦU.............................................................................................................vi
CHƯƠNG 1: GIỚI THIỆU CÔNG CỤ VÀ NGÔN NGỮ LỰA CHỌN.................1
1.1. Môi trường cài đặt............................................................................................1
1.2. Giới thiệu về Visual Studio Code.....................................................................1
1.2.1. Visual Studio Code dành cho những đối tượng nào?...............................1
1.2.2. Những tính năng nổi bật của Visual Studio Code.....................................1
1.3. Giới thiệu ngôn ngữ lập trình Dart...............................................................2
1.3.1. Dart là gì?....................................................................................................2
1.3.2. Lí do nên sử dụng Dart...............................................................................3
1.3.3. Tính năng của Dart.....................................................................................4
1.4. Giới thiệu về Flutter.......................................................................................6
1.4.1. Flutter là gì?................................................................................................6
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
1.4.2. Lí do nên sử dụng Flutter?.........................................................................6
1.5. Giới thiệu về Androi Studio...........................................................................7
1.5.1. Android Studio là gì ?.................................................................................7
1.5.2. Lịch sử hình thành......................................................................................8
1.5.3. Tính năng của Android Studio...................................................................8
CHƯƠNG 2: KHẢO SÁT HỆ THỐNG...................................................................10
2.1. Khảo sát sơ bộ...............................................................................................10
2.1.1. Giới thiệu chung về công ty......................................................................10
2.2. Khảo sát chi tiết............................................................................................11
2.2.1. Thực trạng hoạt động và nhu cầu của công ty.....................................12
2.2.2. Một số quy trình bán hàng của công ty.....................................................12
2.2.3. Yêu cầu của công ty sau khi khảo sát.........................................................12
2.3. Danh sách các trang.....................................................................................13
2.3.1. Yêu cầu hệ thống.......................................................................................13
2.3.2. Yêu cầu chức năng....................................................................................14
2.3.3. Yêu cầu phi chức năng..............................................................................14
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.............................................15
3.1. Danh sách Actor và UseCase.......................................................................15
3.1.1. Danh sách Actor.:......................................................................................15
3.1.2. Danh sách các UseCase.............................................................................15
3.2. Biểu đồ UseCase tổng quát..........................................................................16
3.3. Biểu đồ usecase phân rã...............................................................................16
3.3.1. Biểu đồ usecase phân rã quản lý người dùng..........................................16
3.3.2. Biểu đồ usecase phân rã quản lý thông tin cá nhân................................18
3.3.3. Biểu đồ usecase phân rã quản lý danh mục bất động sản.....................19
3.3.4. Biểu đồ usecase phân rã quản lý thông tin bất động sản.......................20
3.3.5. Biểu đồ usecase phân rã liên hệ với khách hàng....................................21
3.4. Biểu đồ hoạt động.........................................................................................23
3.4.1. Biểu đồ hoạt động Đăng nhập..................................................................23
3.4.2. Biểu đồ hoạt động đăng xuất....................................................................24
3.4.3. Biểu đồ hoạt động quên mật khẩu...........................................................25
3.4.4. Biểu đồ hoạt động chỉnh sửa....................................................................26
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
3.5. Biểu đồ tuần tự.............................................................................................27
3.5.1. Biểu đồ tuần tự đăng nhập.......................................................................27
3.5.2. Biểu đồ tuần tự chức năng quên mật khẩu.............................................28
3.5.3. Biểu đồ tuần tự chức năng đăng ký.........................................................29
3.5.4. Biểu đồ tuần tự chức năng đăng sản phẩm.............................................30
3.6. Biểu đồ thực thể............................................................................................30
CHƯƠNG 4: CÀI ĐẶT THỰC NGHIỆM........................................................31
4.1. Chức năng đăng nhập..................................................................................31
4.2. Chức năng đăng ký.......................................................................................32
4.3. Chức năng quên mật khẩu...........................................................................33
4.4. Chức năng trang chủ....................................................................................34
4.5. Chức năng hiển thị danh sách khách hàng.................................................35
4.6. Chức năng nhắn tin......................................................................................36
KẾT LUẬN................................................................................................................37
TÀI LIỆU THAM KHẢO.........................................................................................39
DANH MỤC BẢNG BIỂU
Bảng 1 Danh sách các Actor của hệ thống...................................................................33
Bảng 2 Danh sách các UseCase của hệ thống..............................................................34
Bảng 3 Danh sách mô tả các UseCase của biểu đồ phân rã quản lý người dùng..........36
Bảng 4 Danh sách mô tả các UseCase biểu đồ phân rã quản lý thông tin cá nhân.......38
Bảng 5 Danh sách mô tả các UseCase quản lý danh mục bất động sản.......................39
Bảng 6 Danh sách mô tả các UseCase quản lý thông tin bất động sản.........................41
Bảng 7 Danh sách mô tả các UseCase liên hệ với khách hàng.....................................42
MỤC LỤC HÌNH ẢNH
Hình 1 Biểu đồ UseCase tổng quát..............................................................................17
Hình 2 Biểu đồ phân rã quản lý người dùng................................................................18
Hình 3 Biểu đồ UseCase phân rã cho quản lý thông tin cá nhân..................................19
Hình 4 Biểu đồ UseCase phân rã cho quản lý danh mục các bất động sản..................20
Hình 5 Biểu đồ UseCase phân rã cho quản lý thông tin cá nhân..................................21
Hình 6 Biểu đồ UseCase phân rã liên hệ với khách hàng............................................22
Hình 7 Biểu đồ hoạt động đăng nhập...........................................................................24
Hình 8 Biểu đồ hoạt động đăng xuất............................................................................25
Hình 9 Biểu đồ hoạt động quên mật khẩu..............................................................26
Hình 10 Biểu đồ hoạt động chỉnh sửa..........................................................................27
Hình 11 Biểu đồ tuần tự đăng nhập.............................................................................28
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Hình 12 Biểu đồ tuần tự quên mật khẩu.......................................................................29
Hình 13 Biểu đồ tuần tự đăng ký.................................................................................30
Hình 14 Biểu đồ tuần tự đăng sản phẩm......................................................................31
Hình 15 Giao diện đăng nhập......................................................................................32
Hình 16 Giao diện đăng ký..........................................................................................33
Hình 17 Giao diện quên mật khẩu................................................................................34
Hình 18 giao diện trang chủ.........................................................................................35
Hình 19 giao diện trang khách hàng............................................................................36
Hình 20 giao diện trang nhắn tin..................................................................................37
LỜI MỞ ĐẦU
1. Lý do chọn đề tài.
Lựa chọn đề tài phát triển ứng dụng bất động sản một quyết định nhiều lợi ích
và lý do hợp lý. Dưới đây là một số lý do phổ biến để chọn đề tài này:
- Tiềm năng thị trường: Lĩnh vực bất động sản có tiềm năng phát triển lớn và thu
hút sự quan tâm của nhiều người. Việc phát triển một ng dụng di động trong
lĩnh vực này có thể mang lại nhiều cơ hội kinh doanh và tăng trưởng doanh thu.
- Tính cần thiết và tăng cường trải nghiệm người dùng: Với sự phổ biến của điện
thoại di động ứng dụng di động, việc cung cấp một ứng dụng bất động sản
cho khách hàng sẽ cung cấp một trải nghiệm thuận tiện và nhanh chóng. Người
dùng thể dễ dàng tìm kiếm, xem thông tin chi tiết, đặt lịch hẹn thực hiện
giao dịch bất động sản ngay trên điện thoại di động của họ.
- Tận dụng công nghệ và xu hướng mới: Việc phát triển ng dụng bất động sản
cho phép công ty tận dụng các công nghệ và xu hướng mới như trí tuệ nhân tạo,
thực tế ảo, blockchain định vị địa lý. Các tính năng công nghệ này thể
cung cấp giá trị gia tăng cho ứng dụng thu hút được sự quan tâm của khách
hàng.
- Tối ưu a quy trình kinh doanh: Một ứng dụng bất động sản tùy chỉnh thể
giúp công ty tối ưu hóa quy trình kinh doanh và tương tác với khách hàng. Việc
tự động hóa các hoạt động như m kiếm, theo dõi ghi nhận thông tin bất động
sản, giao dịch tương tác khách hàng thể giúp tiết kiệm thời gian tăng
cường hiệu suất làm việc.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
- Cạnh tranh và htrợ khách hàng: Đối mặt với sự cạnh tranh cao trong ngành bất
động sản, việc có một ứng dụng di động riêng có thể giúp công ty nổi bật và tạo
điểm khác biệt. Khách hàng cũng thể tận hưởng lợi ích từ việc sử dụng ng
dụng để tìm kiếm và đặt mua bất động sản một cách dễ dàng và thuận tiện.
Tổng kết lại, lựa chọn đề tài phát triển ứng dụng bất động sản mang lại nhiều lợi
ích kinh doanh cung cấp trải nghiệm người dùng tốt hơn. cho phép tận
dụng tiềm năng thị trường, tận dụng công nghệ mới, tối ưu hóa quy trình kinh
doanh và tạo điểm khác biệt trong sự cạnh tranh.
2. Mục tiêu nghiên cứu.
- Xây dựng một nền tảng ứng dụng bất động sản đáng tin cậy và chất lượng cao.
- Cung cấp công cụ tìm kiếm và xem thông tin bất động sản hiệu quả.
- Tạo ra một môi trường tương tác và giao tiếp thuận tiện.
- Tích hợp công nghệ mới và xu hướng đổi mới.
- Tăng cường tính minh bạch và tin cậy trong giao dịch bất động sản.
- Tóm lại, mục tiêu của đề tài phát triển ứng dụng bất động sản xây dựng một
nền tảng ứng dụng đáng tin cậy, cung cấp công cụ tìm kiếm xem thông tin
hiệu quả, tạo môi trường tương tác thuận tiện, tích hợp công nghệ mới tăng
cường tính minh bạch trong giao dịch bất động sản.
3. Nội dung nghiên cứu.
- Tổng quan về lĩnh vực bất động sản.
- Đánh giá thị trường bất động sản.
- Ứng dụng công nghệ trong lĩnh vực bất động sản.
- Quy trình giao dịch bất động sản.
- Trải nghiệm người dùng trong ứng dụng bất động sản.
- Quản lý thông tin bất động sản.
- Ứng dụng và tiềm năng của nghiên cứu.
4. Phạm vi nghiên cứu.
- Nghiên cứu và phân tích thị trường.
- Xác định yêu cầu và tính năng.
- Thiết kế giao diện người dùng hấp dẫn.
- Xây dựng cơ sở dữ liệu bất động sản.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
- Tích hợp dịch vụ bất động sản.
- Tối ưu hiệu suất và tốc độ.
- Bảo mật và bảo vệ thông tin.
- Kiểm thử và đánh giá.
- Triển khai và quảng bá.
- Liên tục cải tiến và bảo trì.
5. Cấu trúc bài báo cáo.
Nội dung báo cáo gồm 5 chương:
Chương 1: Giới thiệu công cụ và ngôn ngữ lập trình.
Chương 2: Khảo sát hệ thống.
Chương 3: Phân tích thiết kế hệ thống.
Chương 4: Cài đặt và thực nghiệm.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
CHƯƠNG 1: GIỚI THIỆU CÔNG CỤ VÀ NGÔN NGỮ LỰA CHỌN
1.1. Môi trường cài đặt.
Việc lựa chọn công nghệ sao cho phù hợp với ứng dụng muốn phát triển điều
quan trọng. Với sự phát triển của công nghệ thông tin như hiện nay, nhiều công nghệ
mới ra đời, xuất hiện nhiều ngôn ngữ mới để đáp ứng cho nhiều nhu cầu khác nhau
thuộc các lĩnh vực khác nhau.
Dart một ngôn ngữ còn khá mới mẻ và đầy hứa hẹn về các công nghệ mới để phát
triển và hơn thế nữa.
Đề tài: “Xây dựng ứng dụng thần số học dựa trên nền tảng flutter ” được xây dựng
dựa vào kiến thức nghiệp vụ kết hợp với công nghệ hiện có trong ngôn ngữ.
- Phân tích thiết kế hệ thống: UML
- Công nghệ sử dụng: Flutter
- Môi trường phát triển: Visual Studio Code, Android Studio, Inteliji
- Ngôn ngữ lập trình: Dart - Lưu trữ dữ liệu Firebase.
1.2. Giới thiệu về Visual Studio Code.
1.2.1. Visual Studio Code dành cho những đối tượng nào?
VSCode thích hợp sử dụng cho nhiều đối tượng khác nhau như:
- Lập trình viên chuyên nghiệp.
- Người yêu thích công việc lập trình hoặc đang theo học chuyên ngành công
nghệ thông tin.
- Tester.
- Các data administrator.
Nhìn chung, hầu hết những người yêu thích và quan tâm đến lập trình đều có
thể sử dụng Visual Studio Code phục vcho công việc cũng như mục đích
học tập cá nhân.
1.2.2. Những tính năng nổi bật của Visual Studio Code.
- Intellisense
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Intellisense là sự kết hợp giữa trí tuệ nhân tạocode auto-complete. Nó sẽ
cung cấp hàng loạt các đề nghị, gợi ý và tả ngắn khi chúng ta đang viết
code. Những gợi ý sẽ được tính toán dựa trên nhiều nhân tố như: pháp,
ngôn ngữ lập trình, hàm, biến,…
- Tích hợp sẵn Git
Git trên Visual Studio Code sẽ cung cấp cho bạn tất cả các git action bản
như: push, commit code,… Đặc biệt, qua từng phiên bản khác nhau ttính
năng hỗ trợ Git ngày càng đầy đủ và tiện ích.
- Debugger
Hỗ trợ debug một nh năng hữu ích của VSCode. Theo mặc định, VSCode
chỉ đính kèm chương trình Debug hỗ trợ riêng cho Node JS. Tuy nhiên, bạn
hoàn toàn thể cài đặt thêm extension để thể debug cho những ngôn ngữ
khác theo nhu cầu sử dụng.
- Tích hợp Terminal
Terminal chương trình giao diện cửa sổ dòng lệnh. Đây một tính năng
vô cùng quan trọng với lập trình viên. Khi sử dụng VSCode, bạn thể m
một hoặc thể mở nhiều tab terminal tại thư mục bạn đang làm việc, giúp
nâng cao hiệu quả công việc.
- Khả năng mở rộng và tùy chỉnh
Visual Studio Code cung cấp cho người dùng khả năng tùy chỉnh tuyệt vời
như: tùy chỉnh theme, kích thước, font chữ, keyboard shortcut, coding style,
tùy chỉnh tính năng… một cách linh hoạt. Bên cạnh đó, bạn cũng thể tùy
chỉnh trên từng workshop vô cùng tiện lợi.
- Code Spell Checker
Tính năng này cho phép người dùng kiểm tra tên hàm, các comment, tên biến
sai chính tả một cách nhanh chóng. Từ đó giúp bạn có thể chỉnh sửa dễ dàng
và nhanh chóng hơn.
Ngoài ra, VSCode còn cung cấp rất nhiều tính năng hữu ích khác.
1.3. Giới thiệu ngôn ngữ lập trình Dart.
1.3.1. Dart là gì?
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Dart là ngôn ngữ lập trình mới, được phát triển bởi Google, hiện đã được chấp
thuận bởi tổ chức Ecma. Dart được sử dụng để xây dựng các loại ứng dụng:
web, server, di động (IOS và Android với công cụ Flutter).
Dart một ngôn ngữ lập trình hiện đại mục đích chung, cấp cao, được phát
triển ban đầu bởi Google. Đây ngôn ngữ lập trình mới xuất hiện vào năm
2011, nhưng phiên bản ổn định của đã được phát hành vào tháng 6 năm
2017. Dart không quá phổ biến vào thời điểm đó, nhưng đã trở nên phổ
biến khi được sử dụng bởi Flutter.
Dart là một ngôn ngữ lập trình động, dựa trên lớp, hướng đối tượng với phạm
vi đóng từ vựng. Về mặt pháp, khá giống với Java, C và JavaScript.
Nếu bạn biết bất kỳ ngôn ngữ lập trình nào trong số này, bạn thể dễ dàng
học ngôn ngữ lập trình Dart.
Dart một ngôn ngữ lập trình nguồn mở được sử dụng rộng rãi để phát
triển ứng dụng di động, ứng dụng web hiện đại, ứng dụng máy tính để bàn và
Internet of Things (IoT) bằng cách sử dụng khung Flutter. Nó cũng hỗ trợ một
số khái niệm nâng cao như giao diện, mixin, lớp trừu tượng, tổng thể trường
giao diện kiểu. là một ngôn ngữ biên dịch hỗ trợ hai loại kthuật
biên dịch.
AOT (Ahead of Time) Nó chuyển đổi mã Dart sang JavaScript được tối
ưu hóa với sự trợ giúp của trình biên dịch dar2js chạy trên tất cả các trình
duyệt web hiện đại. Nó biên dịch mã tại thời điểm xây dựng.
JOT (Just-In-Time) – Nó chuyển đổi byte trong máy (mã gốc), nhưng
chỉ mã cần thiết.
1.3.2. Lí do nên sử dụng Dart.
- Dart một ngôn ngữ độc lập với nền tảng hỗ trợ tất cả các hệ điều hành như
Windows, Mac, Linux, v.v.
- một ngôn ngữ mã nguồn mở, nghĩa sẵn miễn phí cho tất cả mọi
người. Nó đi kèm với giấy phép BSD và được công nhận bởi tiêu chuẩn ECMA.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
- là một ngôn ngữ lập trình hướng đối tượng hỗ trợ tất cả các tính năng của oops
như kế thừa, giao diện và các tính năng kiểu tùy chọn.
- Dart rất hữu ích trong việc xây dựng các ứng dụng thời gian thực vì tính ổn định của
nó.
- Dart đi kèm với trình biên dịch dar2js để truyền Dart thành JavaScript chạy
trên tất cả các trình duyệt web hiện đại.
- Máy ảo Dart độc lập cho phép mã Dart chạy trong môi trường giao diện dòng lệnh.
- Công cụ Dart có thể o cáo hai loại sự cố trong khihóa, cảnh báo và lỗi. Cảnh
báo là dấu hiệu cho thấy của bạn thể một số vấn đề, nhưng không m
gián đoạn quá trình thực thi của mã, ngược lại lỗi có thể ngăn chặn việc thực thi mã.
1.3.3. Tính năng của Dart.
Dart một ngôn ngữ lập trình ớng đối tượng, nguồn mở, chứa nhiều nh năng
hữu ích. Đây ngôn ngữ lập trình mới hỗ trợ một loạt các tiện ích lập trình như giao
diện, bộ sưu tập, lớp, kiểu động tùy chọn. được phát triển cho máy chủ cũng như
trình duyệt. Dưới đây là danh sách các tính năng quan trọng của Dart.
Nền tảng độc lập:
- Dart hỗ trợ tất cả các hệ điều hành chính như Windows, Linux, Macintosh, v.v. Dart
có Máy ảo riêng được gọi Dart VM, cho phép chúng tôi chạy Dart trong mọi
hệ điều hành.
Hướng đối tượng:
- Dart là một ngôn ngữ lập trình hướng đối tượng và hỗ trợ tất cả các khái niệm oops
như lớp, kế thừa, giao diện c tính năng tùy chọn. cũng hỗ trợ các khái
niệm nâng cao như mixin, abstract, các lớp, hệ thống kiểu chung được sửa đổi
mạnh mẽ.
Đồng nhất:
- Dart một ngôn ngữ lập trình không đồng bộ, nghĩa hỗ trợ đa luồng sử
dụng Isolates. Các vùng cách ly các thực thđộc lập liên quan đến các luồng
nhưng không chia sẻ bộ nhớ thiết lập giao tiếp giữa các quá trình bằng cách truyền
thông điệp. Thông điệp nên được nối tiếp nhau để tạo hiệu quả truyền thông.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Việc tuần tự hóa thông báo được thực hiện bằng cách sử dụng một nh chụp nhanh
được tạo ra bởi đối tượng đã cho sau đó truyền đến một vùng cách ly khác để giải
mã.
Thư viện mở rộng:
- Dart bao gồm nhiều thư viện tích hợp hữu ích bao gồm SDK (Bộ phát triển phần
mềm), lõi, toán học, không đồng bộ, toán học, chuyển đổi, html, IO, v.v. cũng
cung cấp sở để tổ chức mã Dart thành các thư viện với không gian tên riêng.
có thể sử dụng lại bằng câu lệnh nhập.
Dễ học:
- Như chúng ta đã thảo luận trong phần trước, học Dart không phải nhiệm vụ của
Hercules vì chúng ta biết rằng cú pháp của Dart tương tự như Java, C #, JavaScript,
kotlin, v.v. nếu bạn biết bất kỳ ngôn ngữ nào trong số này thì bạn có thể học Dart dễ
dàng.
Biên dịch linh hoạt:
- Dart cung cấp sự linh hoạt để biên dịch nhanh chóng. hỗ trợ hai loại quy
trình biên dịch, AOT (Ahead of Time) JIT (Just-in-Time). Dart được truyền
bằng ngôn ngữ khác có thể chạy trong các nhà sản xuất web hiện đại.
Nhập An toàn:
- Dart là ngôn ngữ an toàn kiểu, có nghĩa là nó sử dụng cả kiểm tra kiểu tĩnh và kiểm
tra thời gian chạy để xác nhận rằng giá trị của một biến luôn khớp với kiểu tĩnh của
biến, đôi khi nó được gọi là kiểu gõ âm thanh.
- Mặc loại là bắt buộc, nhưng chú thích loại là tùy chọn vì loại nhiễu. Điều này làm
cho dễ đọc hơn. Ưu điểm khác của ngôn ngữ an toàn kiểu chữ khi chúng ta
thay đổi phần mã, hệ thống sẽ cảnh báo chúng ta về sửa đổi chúng ta đã sửa trước
đó.
Các đối tượng:
- Dart coi mọi thứ như một đồ vật. Giá trị gán cho biến là một đối tượng. Các hàm, số
và chuỗi cũng một đối tượng trong Dart. Tất cả các đối tượng kế thừa từ lớp Đối
tượng.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Hỗ trợ trình duyệt:
- Dart hỗ trợ tất cả các trình duyệt web hiện đại. Nó đi kèm với trình biên dịch dart2js
để chuyển đổi Dart thành JavaScript được tối ưu hóa phù hợp với tất cả các
loại trình duyệt web.
1.4. Giới thiệu về Flutter.
1.4.1. Flutter là gì?
Flutter được phát triển nhằm giải quyết bài toán thường gặp trong mobile Fast
Development và Native Performance. Nếu như React Native chỉ đảm bảo Fast Development
code native thuần chỉ đảm bảo Native Performance thì Flutter làm được cả 2 điều
trên.Flutter được viết bởi ngôn ngữ dart do Google phát triển.
Flutter là một bộ SDK đa nền tảng, các ứng dụng Flutter có thể hoạt động trên cả iOS
Android. như một thủ thuật khôn khéo để tương thích được với framework UI trên cả
hai hệ điều hành này. Các ứng dụng này không biên dịch trực tiếp với các ứng dụng native
của Android và iOS.
Đóng gói cả một engine đi kèm cùng ứng dụng sẽ làm cho kích thước bộ cài đặt lớn
hơn hẳn. Trang Hỏi đáp của Flutter cho biết, một ứng dụng “trống” thông thường sẽ chỉ
khoảng 6-7MB trên Android, vì vậy dù là ứng dụng nào, phần kích thước tăng lên cũng là rất
nhiều. Nhưng lợi ích của việc này là các ứng dụng này sẽ rất nhanh.
Flutter được thiết kế từ đầu để đạt tới tốc độ khung hình 60fps. Trong khi đây không
phải là một con số hiếm gặp trên iOS, nhưng với Android, bạn có thể cảm thấy sự khác biệt
rõ rệt ngay lập tức. Cũng nhờ việc xuất xưởng cùng với cả một nền tảng cho ứng dng của
mình, các nhà phát triển sẽ tránh được nhiều vấn đề về sự phân mảnh của Android.
1.4.2. Lí do nên sử dụng Flutter?
Phát triển ứng dụng nhanh chóng: Tính năng hot reload của nó giúp bạn nhanh chóng
và dễ dàng thử nghiệm, xây dựng giao diện người dùng, thêm tính năng và sửa lỗi nhanh
hơn. Trải nghiệm tải lại lần thứ hai, mà không làm mất trạng thái, trên emulator, simulator
và device cho iOS và Android.
UI đẹp và biểu cảm: Thỏa mãn người dùng của bạn với các widget built-in đẹp mắt
theo Material Design và Cupertino (iOS-flavor), các API chuyển động phong phú, scroll tự
nhiên mượt mà và tự nhận thức được nền tảng.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Truy cập các tính năng và SDK native: Làm cho ứng dụng của bạn trở nên sống động
với API của platform, SDK của bên thứ ba và native code. Nó cho phép bạn sử dụng lại mã
Java, Swift và ObjC hiện tại của mình và truy cập các tính năng và SDK native trên iOS
Android.
Phát triển ứng dụng thống nhất: Flutter có các công cụ và thư viện để giúp bạn dễ
dàng đưa ý tưởng của mình vào cuộc sống trên iOS và Android. Nếu bạn chưa có kinh
nghiệm phát triển trên thiết bị di động, thì Flutter là một cách dễ dàng và nhanh chóng để
xây dựng các ứng dụng di động tuyệt đẹp. Nếu bạn là một nhà phát triển iOS hoặc Android
có kinh nghiệm, bạn có thể sử dụng Flutter cho các View của bạn và tận dụng nhiều code
Java / Kotlin / ObjC / Swift hiện có của bạn.
- Đặc điểm nổi bật o Fast Development: Tíng năng Hot Reload hoạt động trong
milliseconds để hiện thị giao diện tới bạn. Sử dụng tập hợp các widget có thể
customizable để xây dựng giao diện trong vài phút. Ngoài ra Hot Reload còn giúp
bạn thêm các tính năng, fix bug tiết kiệm thời gian hơn không cần phải thông qua
máy ảo, máy android hoặc iOS.
o Expressive and Flexible UI: rất nhiều các thành phần để xây dựng giao diện
của Flutter cùng đẹp mắt theo phong cách Material Design Cupertino, hỗ
trợ nhiều các APIs chuyển động, smooth scrolling...
o Native Performance: Các widget của fluter kết hợp các sự khác biệt của các nền
tảng dụ như scrolling, navigation, icons, font để cung cấp một hiệu năng tốt
nhất tới iOS và Android.
1.5. Giới thiệu về Androi Studio.
1.5.1. Android Studio là gì ?
Chức năng của Android Studio là cung cấp giao diện để tạo các ứng dụng và xử lý phần
lớn các công cụ quản lý file phức tạp đằng sau hậu trường. Ngôn ngữ lập trình được sử dụng ở
đây Java và Dart và được cài đặt riêng trên thiết bị của bạn. Android Studio rất đơn giản, bạn
chỉ cần viết, chỉnh sửa và lưu các dự án của mình các file trong dự án đó. Đồng thời, Android
Studio sẽ cấp quyền truy cập vào Android SDK.
Google đã nỗ lực rất nhiều để làm cho Android Studio trở nên mạnh mẽ và hữu ích nhất
thể. cung cấp những gợi ý trực tiếp trong khi viết code thường đề xuất những thay
đổi cần thiết để sửa lỗi hoặc làm code hiệu quả hơn. Ví dụ, nếu không sử dụng biến, biến đó sẽ
được đậm bằng màu xám. khi bắt đầu gõ một dòng code, Android Studio sẽ cung cấp
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
danh sách gợi ý tự hoàn thành để giúp bạn hoàn thiện dòng code đó. Chức năng này rất hữu ích
khi bạn không nhớ được chính xác cú pháp hoặc để tiết kiệm thời gian.
Android is an source code open based on Linux Kernel dành riêng cho tất cả các thiết
bị di động (điện thoại, bảng máy tính, đồng hồ thông minh, …)
Là chính thức IDE và được sử dụng rộng rãi trong ứng dụng Android phát triển. Nó
được phát triển bởi Google và sử dụng nó để tạo ra những ứng dụng mà bạn sử dụng hàng
ngày.
Phần mềm thư viện ng như các tiện ích ng cụ. Hỗ trợ nhiều n giúp bạn thể
được xây dựng cũng như kiểm tra và hỗ trợ bạn gỡ bỏ các lỗi của ứng dụng Android.
Hỗ trợ bạn các điều hành như Windows, Mac OS X, Linux và đặc biệt là định thức IDE
của google. To phát triển các ứng dụng của Android gốc thay thế cho các dự án của công cụ
phát triển android trên IDE của eclipse.
1.5.2. Lịch sử hình thành.
- Android studio được công bố lần đầu tiên vào năm 2013 tại hội nghị Google I / 0.
Được công bố rộng khắp thế giới vào năm 2014 với rất nhiều phiên bản khác nhau.
- Tớc khi phát hành Android studio, các thành viên lập trình thường sử dụng các
công cụ hỗ trợ như Eclipse IDE. Hay một IDE của Java được hỗ trợ trên nhiều ngôn
ngữ khác nhau.
- Việc tạo ứng dụng bởi Android Studio sẽ dễ dàng hơn với các chuyên gia phần
mềm.
1.5.3. Tính năng của Android Studio.
- Build được các biến và tạo được nhiều file APK.
- Code of template to support are features of the information app.
- Gradle support – based một cách linh hoạt.
- Với GitHub tích hợp giúp bạn xây dựng được các ứng dụng tính ng một cách
phổ biến.
- Chỉnh sửa được bố cục một cách đa dạng với các hoạt động kéo thả linh hoạt.
- Help Capture is being offset, also well as well as used to use the same version and
a some of problem liên quan.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
- Tích hợp lên google Cloud Platform, giúp bạn thể dễ dàng tích hợp được app
engine và google cloud Messaging.
- Giúp phỏng được phần mềm để tiến hành sửa chữa nâng cấp được các sản
phẩm khi cần.
- Các trình soạn thảo mã và công cụ Intell cung cấp các tính năng cao
- Instant Run giúp thay đổi các ứng dụng đang chạy không cần xây dựng APK
mới.
- Hỗ trợ được C++ và NDK.
- Giúp Sâu firebase và các ứng dụng sau click chuột.
- Công cụ build dựa trên Gradle.
- Các wizard tích hợp giúp các lập trình viên có thể tạo ứng dụng từ các mẫu có sẵn.
- Chức năng dò và sửa lỗi nhanh để hướng Android.
CHƯƠNG 2: KHẢO SÁT HỆ THỐNG
2.1. Khảo sát sơ bộ.
2.1.1. Giới thiệu chung về công ty.
Công ty Cổ phần Thương mại Andin có tên quốc tế là ANDIN TRADING JOINT
STOCK COMPANY (ANDIN JSC) trước đây tên Công ty TNHH Công nghệ
Dịch vụ Minh Hiền (Minh Hien Solutions - MHS) được ra đời o ngày 6 tháng 7 năm
2017.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Nơi đăng địa chỉ Doanh nghiệp: Số 7/B259 khu T2, P. Thành Tô, Q. Hải An,
Thành phố Hải Phòng, Việt Nam.
Mã số thuế: 0201797716
Ra đời với sứ mênh “Phát triển phần mềm, website tính trải nghiệm caọ thông
qua tốc độ, sự linh hoạt kế thừa, tính dễ dùng nâng cao hiệu quả công việc của
khách hàng.” MHS đã tự lựa chọn cho mình con đường đi lên lấy chất ợng uy tín
hàng đầu.
Sau môt t ời gian đúc kết kinh nghiêm, đ
ào tạo xây dựng được môt độ i ng
ũ chuyên nghiêp t ì ngày 28 tháng 5 năm 2022 thương hiêu Andin c ính thức được ra
đời, mang một sứ mệnh mới: “Website - nơi Khách hàng trở về).
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
ANDIN JSC do ông ĐĐức Hùng làm chủ tịch HĐQT, được biết đến một
Doanh nghiệp hoạt động trong lĩnh vực Công nghệ thông tin gồm: Thiết kế website,
Phát triển phần mềm, ứng dụng; cung cấp c giải pháp thương mại điện tử dành cho
Doanh nghiệp đòi hỏi nhân sự trong Andin luôn cần được trau dồi, tu dưỡng ý thức
được sứ mênh mỗi vị trí trong công ty. 
Đối tượng Khách hàng của ANDIN JSC là các chủ Doanh nghiệp.
Dưới đây là các phòng ban của công ty:
2.2. Khảo sát chi tiết.
2.2.1. Thực trạng hoạt động và nhu cầu của công ty
Những năm gần đây khi mà công nghệ thông tin đang phát triển bùng nổ, rất nhiều nhà
quản lý đã áp dụng những công nghệ tiên tiến vào trong công việc kinh doanh. Trong số đó
việc sử dụng phần mềm bán ng để giúp cho việc quản cửa hàng trở n thuận tiện, dễ
dàng đang được nhiều người lựa chọn hơn bao giờ hết. chính điều này đang tạo nên sự
khác biệt vượt trội hơn so với những đối thủ cạnh tranh sử dụng các phương pháp quản
truyền thống. Vậydo tại sao phần mềm bán hàng online lại đang được yêu thích như vậy,
chúng ta có thể tìm hiểu nhược điểm của phương pháp quản lý truyền thống.
lOMoARcPSD| 59691467
Tờng Đại học Hải Phòng
Trong kinh doanh, bán hàng thì người quản lý phải lo mọi thứ từ việc tìm nguồn hàng,
vận chuyển, bảo quản kho, tìm khách hàng bằng nhiều ch marketing quảng cáo. Rồi
đến việc bán hàng, làm sao để có thể cân đối được thu – chi và có lãi để tái đầu tư tiếp. Tiếp
đó, phải quan tâm quản như thế nào cho hàng hoá không bị hỏng hay bị thất thoát. Với
phương pháp làm thủ công, chủ cơ sở kinh doanh sẽ gặp phải những khó khăn sau đây:
Danh mục mặt hàng quá nhiều gây khó tra cứu, xác định giá bán.
Lập hoá đơn bán hàng, phiếu xuất hàng thủ công, thiếu chuyên nghiệp, dễ sai sót.
Mất nhiều thời gian cho việc tính toán công nợ, tồn kho, doanh số bán hàng.
Thật khó trả lời ngay được câu hỏi: Cửa hàng đang còn những mặt hàng gì, số ợng
bao nhiêu ? Công nợ thực tế của khách hàng A đến thời điểm hiện tại.
Sử dụng phần mềm quản n hàng sẽ giải quyết được các yêu cầu trên một cách tự
động, nhanh chóng và chính xác. Như vậy, một hệ thống quản lý bán hàng mới sẽ được xây
dựng. Nơi khách hàng, nhân viên quản thể tương tác với nhau một cách trực
quan, đồng thời giúp cho hiệu quả công việc tăng cao nhằm tăng lên uy tín của công ty đối
với khách hàng, nâng cao khả năng quay lại của khách hàng trong tương lai.
2.2.2. Một số quy trình bán hàng của công ty
Hiện nay, ANDIN JSC có 2 nhóm dịch vụ chính:
Thiết kế website
Cho thuê máy chủ: Hosting, domain, SSL.
2.2.3. Yêu cầu của công ty sau khi khảo sát
Giao diện của phần mềm dễ sử dụng.
Thực hiện được các quy trình như trên.
Các danh mục đều các chức năng chính: thêm, sửa, xóa. Một số danh mục sẽ
có phần xem chi tiết, tìm kiếm dữ liệu.
Báo cáo thống kê
2.3. Danh sách các trang.
2.3.1. Yêu cầu hệ thống.
- Quản lý người dùng:
Hệ thống cần hỗ trợ đăng ký và đăng nhập cho người dùng.
Người dùng có thể quản lý thông tin cá nhân và cập nhật hồ sơ của mình.

Preview text:

lOMoAR cPSD| 59691467
TRƯỜNG ĐẠI HỌC HẢI PHÒNG
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP TỐT NGHIỆP
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG BẤT ĐỘNG SẢN
DỰA TRÊN NỀN TẢNG FLUTTER
Sinh viên thực hiện : Trần Văn Sơn Mã sinh viên : 203148201091 Lớp : CNTT1.K21 Khóa : K21
Giảng viên hướng dẫn
: T hS . Đào Thị Hưng
Hải Phòng, tháng 12 năm 2023 lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng LỜI CẢM ƠN
Trước hết, em xin bày tỏ lòng biết ơn sâu sắc tới cô ThS. Đào Thị Hưng, người
đã trực tiếp hướng dẫn và tận tình giúp đỡ em hoàn thành báo cáo thực tập này. Qua quá
trình làm báo cáo em cũng học hỏi được thêm rất nhiều kiến thức.
Đồng thời, em xin cảm ơn sự chỉ bảo của các anh chị trong Công ty Cổ phần
Thương mại Andin đã tạo điều kiện thực tập, tiếp xúc thực tế để có môi trường rèn
luyện kỹ năng đã học ở trường lớp, biết được hoạt động thực tế của công ty.
Cuối cùng, em xin chân thành cảm ơn các thầy, cô giáo trong khoa Công nghệ
thông tin, Trường Đại học Hải Phòng, đặc biệt cảm ơn cô Đào Thị Hưng đã hướng
dẫn, giúp đỡ em trong suốt quá trình thực hiện đề tài.
Trong quá trình hoàn thiện báo cáo thực tập sẽ không tránh khỏi những sai sót,
hạn chế. Vì vậy, em mong nhận được những ý kiến đóng góp của thầy cô để giúp em
hoàn thành bài báo cáo thực tập.
Một lần nữa em xin chân thành cảm ơn!
Sinh viên thực hiên Trần Văn Sơn Table of Contents
LỜI CẢM ƠN...............................................................................................................i
DANH MỤC BẢNG BIỂU..........................................................................................v
MỤC LỤC HÌNH ẢNH...............................................................................................v
LỜI MỞ ĐẦU.............................................................................................................vi
CHƯƠNG 1: GIỚI THIỆU CÔNG CỤ VÀ NGÔN NGỮ LỰA CHỌN.................1
1.1. Môi trường cài đặt............................................................................................1
1.2. Giới thiệu về Visual Studio Code.....................................................................1 1.2.1.
Visual Studio Code dành cho những đối tượng nào?...............................1 1.2.2.
Những tính năng nổi bật của Visual Studio Code.....................................1 1.3.
Giới thiệu ngôn ngữ lập trình Dart...............................................................2 1.3.1.
Dart là gì?....................................................................................................2 1.3.2.
Lí do nên sử dụng Dart...............................................................................3 1.3.3.
Tính năng của Dart.....................................................................................4 1.4.
Giới thiệu về Flutter.......................................................................................6 1.4.1.
Flutter là gì?................................................................................................6 lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng 1.4.2.
Lí do nên sử dụng Flutter?.........................................................................6 1.5.
Giới thiệu về Androi Studio...........................................................................7 1.5.1.
Android Studio là gì ?.................................................................................7 1.5.2.
Lịch sử hình thành......................................................................................8 1.5.3.
Tính năng của Android Studio...................................................................8
CHƯƠNG 2: KHẢO SÁT HỆ THỐNG...................................................................10 2.1.
Khảo sát sơ bộ...............................................................................................10 2.1.1.
Giới thiệu chung về công ty......................................................................10 2.2.
Khảo sát chi tiết............................................................................................11 2.2.1.
Thực trạng hoạt động và nhu cầu của công ty.....................................12
2.2.2. Một số quy trình bán hàng của công ty.....................................................12
2.2.3. Yêu cầu của công ty sau khi khảo sát.........................................................12 2.3.
Danh sách các trang.....................................................................................13 2.3.1.
Yêu cầu hệ thống.......................................................................................13 2.3.2.
Yêu cầu chức năng....................................................................................14
2.3.3. Yêu cầu phi chức năng..............................................................................14
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.............................................15 3.1.
Danh sách Actor và UseCase.......................................................................15 3.1.1.
Danh sách Actor.:......................................................................................15 3.1.2.
Danh sách các UseCase.............................................................................15 3.2.
Biểu đồ UseCase tổng quát..........................................................................16 3.3.
Biểu đồ usecase phân rã...............................................................................16 3.3.1.
Biểu đồ usecase phân rã quản lý người dùng..........................................16 3.3.2.
Biểu đồ usecase phân rã quản lý thông tin cá nhân................................18 3.3.3.
Biểu đồ usecase phân rã quản lý danh mục bất động sản.....................19 3.3.4.
Biểu đồ usecase phân rã quản lý thông tin bất động sản.......................20 3.3.5.
Biểu đồ usecase phân rã liên hệ với khách hàng....................................21 3.4.
Biểu đồ hoạt động.........................................................................................23 3.4.1.
Biểu đồ hoạt động Đăng nhập..................................................................23 3.4.2.
Biểu đồ hoạt động đăng xuất....................................................................24 3.4.3.
Biểu đồ hoạt động quên mật khẩu...........................................................25 3.4.4.
Biểu đồ hoạt động chỉnh sửa....................................................................26 lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng 3.5.
Biểu đồ tuần tự.............................................................................................27 3.5.1.
Biểu đồ tuần tự đăng nhập.......................................................................27 3.5.2.
Biểu đồ tuần tự chức năng quên mật khẩu.............................................28 3.5.3.
Biểu đồ tuần tự chức năng đăng ký.........................................................29 3.5.4.
Biểu đồ tuần tự chức năng đăng sản phẩm.............................................30 3.6.
Biểu đồ thực thể............................................................................................30
CHƯƠNG 4: CÀI ĐẶT VÀ THỰC NGHIỆM........................................................31 4.1.
Chức năng đăng nhập..................................................................................31 4.2.
Chức năng đăng ký.......................................................................................32 4.3.
Chức năng quên mật khẩu...........................................................................33 4.4.
Chức năng trang chủ....................................................................................34 4.5.
Chức năng hiển thị danh sách khách hàng.................................................35 4.6.
Chức năng nhắn tin......................................................................................36
KẾT LUẬN................................................................................................................37
TÀI LIỆU THAM KHẢO.........................................................................................39
DANH MỤC BẢNG BIỂU
Bảng 1 Danh sách các Actor của hệ thống...................................................................33
Bảng 2 Danh sách các UseCase của hệ thống..............................................................34
Bảng 3 Danh sách mô tả các UseCase của biểu đồ phân rã quản lý người dùng..........36
Bảng 4 Danh sách mô tả các UseCase biểu đồ phân rã quản lý thông tin cá nhân.......38
Bảng 5 Danh sách mô tả các UseCase quản lý danh mục bất động sản.......................39
Bảng 6 Danh sách mô tả các UseCase quản lý thông tin bất động sản.........................41
Bảng 7 Danh sách mô tả các UseCase liên hệ với khách hàng.....................................42
MỤC LỤC HÌNH ẢNH
Hình 1 Biểu đồ UseCase tổng quát..............................................................................17
Hình 2 Biểu đồ phân rã quản lý người dùng................................................................18
Hình 3 Biểu đồ UseCase phân rã cho quản lý thông tin cá nhân..................................19
Hình 4 Biểu đồ UseCase phân rã cho quản lý danh mục các bất động sản..................20
Hình 5 Biểu đồ UseCase phân rã cho quản lý thông tin cá nhân..................................21
Hình 6 Biểu đồ UseCase phân rã liên hệ với khách hàng............................................22
Hình 7 Biểu đồ hoạt động đăng nhập...........................................................................24
Hình 8 Biểu đồ hoạt động đăng xuất............................................................................25 Hình 9
Biểu đồ hoạt động quên mật khẩu..............................................................26
Hình 10 Biểu đồ hoạt động chỉnh sửa..........................................................................27
Hình 11 Biểu đồ tuần tự đăng nhập.............................................................................28 lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Hình 12 Biểu đồ tuần tự quên mật khẩu.......................................................................29
Hình 13 Biểu đồ tuần tự đăng ký.................................................................................30
Hình 14 Biểu đồ tuần tự đăng sản phẩm......................................................................31
Hình 15 Giao diện đăng nhập......................................................................................32
Hình 16 Giao diện đăng ký..........................................................................................33
Hình 17 Giao diện quên mật khẩu................................................................................34
Hình 18 giao diện trang chủ.........................................................................................35
Hình 19 giao diện trang khách hàng............................................................................36
Hình 20 giao diện trang nhắn tin..................................................................................37 LỜI MỞ ĐẦU
1. Lý do chọn đề tài.
Lựa chọn đề tài phát triển ứng dụng bất động sản là một quyết định có nhiều lợi ích
và lý do hợp lý. Dưới đây là một số lý do phổ biến để chọn đề tài này:
- Tiềm năng thị trường: Lĩnh vực bất động sản có tiềm năng phát triển lớn và thu
hút sự quan tâm của nhiều người. Việc phát triển một ứng dụng di động trong
lĩnh vực này có thể mang lại nhiều cơ hội kinh doanh và tăng trưởng doanh thu.
- Tính cần thiết và tăng cường trải nghiệm người dùng: Với sự phổ biến của điện
thoại di động và ứng dụng di động, việc cung cấp một ứng dụng bất động sản
cho khách hàng sẽ cung cấp một trải nghiệm thuận tiện và nhanh chóng. Người
dùng có thể dễ dàng tìm kiếm, xem thông tin chi tiết, đặt lịch hẹn và thực hiện
giao dịch bất động sản ngay trên điện thoại di động của họ.
- Tận dụng công nghệ và xu hướng mới: Việc phát triển ứng dụng bất động sản
cho phép công ty tận dụng các công nghệ và xu hướng mới như trí tuệ nhân tạo,
thực tế ảo, blockchain và định vị địa lý. Các tính năng và công nghệ này có thể
cung cấp giá trị gia tăng cho ứng dụng và thu hút được sự quan tâm của khách hàng.
- Tối ưu hóa quy trình kinh doanh: Một ứng dụng bất động sản tùy chỉnh có thể
giúp công ty tối ưu hóa quy trình kinh doanh và tương tác với khách hàng. Việc
tự động hóa các hoạt động như tìm kiếm, theo dõi và ghi nhận thông tin bất động
sản, giao dịch và tương tác khách hàng có thể giúp tiết kiệm thời gian và tăng
cường hiệu suất làm việc. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
- Cạnh tranh và hỗ trợ khách hàng: Đối mặt với sự cạnh tranh cao trong ngành bất
động sản, việc có một ứng dụng di động riêng có thể giúp công ty nổi bật và tạo
điểm khác biệt. Khách hàng cũng có thể tận hưởng lợi ích từ việc sử dụng ứng
dụng để tìm kiếm và đặt mua bất động sản một cách dễ dàng và thuận tiện.
Tổng kết lại, lựa chọn đề tài phát triển ứng dụng bất động sản mang lại nhiều lợi
ích kinh doanh và cung cấp trải nghiệm người dùng tốt hơn. Nó cho phép tận
dụng tiềm năng thị trường, tận dụng công nghệ mới, tối ưu hóa quy trình kinh
doanh và tạo điểm khác biệt trong sự cạnh tranh.
2. Mục tiêu nghiên cứu.
- Xây dựng một nền tảng ứng dụng bất động sản đáng tin cậy và chất lượng cao.
- Cung cấp công cụ tìm kiếm và xem thông tin bất động sản hiệu quả.
- Tạo ra một môi trường tương tác và giao tiếp thuận tiện.
- Tích hợp công nghệ mới và xu hướng đổi mới.
- Tăng cường tính minh bạch và tin cậy trong giao dịch bất động sản.
- Tóm lại, mục tiêu của đề tài phát triển ứng dụng bất động sản là xây dựng một
nền tảng ứng dụng đáng tin cậy, cung cấp công cụ tìm kiếm và xem thông tin
hiệu quả, tạo môi trường tương tác thuận tiện, tích hợp công nghệ mới và tăng
cường tính minh bạch trong giao dịch bất động sản.
3. Nội dung nghiên cứu.
- Tổng quan về lĩnh vực bất động sản.
- Đánh giá thị trường bất động sản.
- Ứng dụng công nghệ trong lĩnh vực bất động sản.
- Quy trình giao dịch bất động sản.
- Trải nghiệm người dùng trong ứng dụng bất động sản.
- Quản lý thông tin bất động sản.
- Ứng dụng và tiềm năng của nghiên cứu.
4. Phạm vi nghiên cứu.
- Nghiên cứu và phân tích thị trường.
- Xác định yêu cầu và tính năng.
- Thiết kế giao diện người dùng hấp dẫn.
- Xây dựng cơ sở dữ liệu bất động sản. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
- Tích hợp dịch vụ bất động sản.
- Tối ưu hiệu suất và tốc độ.
- Bảo mật và bảo vệ thông tin.
- Kiểm thử và đánh giá.
- Triển khai và quảng bá.
- Liên tục cải tiến và bảo trì.
5. Cấu trúc bài báo cáo.
Nội dung báo cáo gồm 5 chương:
Chương 1: Giới thiệu công cụ và ngôn ngữ lập trình.
Chương 2: Khảo sát hệ thống.
Chương 3: Phân tích thiết kế hệ thống.
Chương 4: Cài đặt và thực nghiệm. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
CHƯƠNG 1: GIỚI THIỆU CÔNG CỤ VÀ NGÔN NGỮ LỰA CHỌN
1.1. Môi trường cài đặt.
Việc lựa chọn công nghệ sao cho phù hợp với ứng dụng muốn phát triển là điều
quan trọng. Với sự phát triển của công nghệ thông tin như hiện nay, nhiều công nghệ
mới ra đời, xuất hiện nhiều ngôn ngữ mới để đáp ứng cho nhiều nhu cầu khác nhau
thuộc các lĩnh vực khác nhau.
Dart là một ngôn ngữ còn khá mới mẻ và đầy hứa hẹn về các công nghệ mới để phát triển và hơn thế nữa.
Đề tài: “Xây dựng ứng dụng thần số học dựa trên nền tảng flutter ” được xây dựng
dựa vào kiến thức nghiệp vụ kết hợp với công nghệ hiện có trong ngôn ngữ.
- Phân tích thiết kế hệ thống: UML
- Công nghệ sử dụng: Flutter
- Môi trường phát triển: Visual Studio Code, Android Studio, Inteliji
- Ngôn ngữ lập trình: Dart -
Lưu trữ dữ liệu Firebase.
1.2. Giới thiệu về Visual Studio Code.
1.2.1. Visual Studio Code dành cho những đối tượng nào?
VSCode thích hợp sử dụng cho nhiều đối tượng khác nhau như:
- Lập trình viên chuyên nghiệp.
- Người yêu thích công việc lập trình hoặc đang theo học chuyên ngành công nghệ thông tin. - Tester. - Các data administrator.
Nhìn chung, hầu hết những người yêu thích và quan tâm đến lập trình đều có
thể sử dụng Visual Studio Code phục vụ cho công việc cũng như mục đích học tập cá nhân.
1.2.2. Những tính năng nổi bật của Visual Studio Code. - Intellisense lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Intellisense là sự kết hợp giữa trí tuệ nhân tạo và code auto-complete. Nó sẽ
cung cấp hàng loạt các đề nghị, gợi ý và mô tả ngắn khi chúng ta đang viết
code. Những gợi ý sẽ được tính toán dựa trên nhiều nhân tố như: cú pháp,
ngôn ngữ lập trình, hàm, biến,… - Tích hợp sẵn Git
Git trên Visual Studio Code sẽ cung cấp cho bạn tất cả các git action cơ bản
như: push, commit code,… Đặc biệt, qua từng phiên bản khác nhau thì tính
năng hỗ trợ Git ngày càng đầy đủ và tiện ích. - Debugger
Hỗ trợ debug là một tính năng hữu ích của VSCode. Theo mặc định, VSCode
chỉ đính kèm chương trình Debug hỗ trợ riêng cho Node JS. Tuy nhiên, bạn
hoàn toàn có thể cài đặt thêm extension để có thể debug cho những ngôn ngữ
khác theo nhu cầu sử dụng. - Tích hợp Terminal
Terminal là chương trình giao diện cửa sổ dòng lệnh. Đây là một tính năng
vô cùng quan trọng với lập trình viên. Khi sử dụng VSCode, bạn có thể mở
một hoặc có thể mở nhiều tab terminal tại thư mục bạn đang làm việc, giúp
nâng cao hiệu quả công việc.
- Khả năng mở rộng và tùy chỉnh
Visual Studio Code cung cấp cho người dùng khả năng tùy chỉnh tuyệt vời
như: tùy chỉnh theme, kích thước, font chữ, keyboard shortcut, coding style,
tùy chỉnh tính năng… một cách linh hoạt. Bên cạnh đó, bạn cũng có thể tùy
chỉnh trên từng workshop vô cùng tiện lợi. - Code Spell Checker
Tính năng này cho phép người dùng kiểm tra tên hàm, các comment, tên biến
sai chính tả một cách nhanh chóng. Từ đó giúp bạn có thể chỉnh sửa dễ dàng và nhanh chóng hơn.
Ngoài ra, VSCode còn cung cấp rất nhiều tính năng hữu ích khác.
1.3. Giới thiệu ngôn ngữ lập trình Dart. 1.3.1. Dart là gì? lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Dart là ngôn ngữ lập trình mới, được phát triển bởi Google, hiện đã được chấp
thuận bởi tổ chức Ecma. Dart được sử dụng để xây dựng các loại ứng dụng:
web, server, di động (IOS và Android với công cụ Flutter).
Dart là một ngôn ngữ lập trình hiện đại có mục đích chung, cấp cao, được phát
triển ban đầu bởi Google. Đây là ngôn ngữ lập trình mới xuất hiện vào năm
2011, nhưng phiên bản ổn định của nó đã được phát hành vào tháng 6 năm
2017. Dart không quá phổ biến vào thời điểm đó, nhưng nó đã trở nên phổ
biến khi được sử dụng bởi Flutter.
Dart là một ngôn ngữ lập trình động, dựa trên lớp, hướng đối tượng với phạm
vi đóng và từ vựng. Về mặt cú pháp, nó khá giống với Java, C và JavaScript.
Nếu bạn biết bất kỳ ngôn ngữ lập trình nào trong số này, bạn có thể dễ dàng
học ngôn ngữ lập trình Dart.
Dart là một ngôn ngữ lập trình mã nguồn mở được sử dụng rộng rãi để phát
triển ứng dụng di động, ứng dụng web hiện đại, ứng dụng máy tính để bàn và
Internet of Things (IoT) bằng cách sử dụng khung Flutter. Nó cũng hỗ trợ một
số khái niệm nâng cao như giao diện, mixin, lớp trừu tượng, tổng thể trường
và giao diện kiểu. Nó là một ngôn ngữ biên dịch và hỗ trợ hai loại kỹ thuật biên dịch.
AOT (Ahead of Time) – Nó chuyển đổi mã Dart sang mã JavaScript được tối
ưu hóa với sự trợ giúp của trình biên dịch dar2js và chạy trên tất cả các trình
duyệt web hiện đại. Nó biên dịch mã tại thời điểm xây dựng.
JOT (Just-In-Time) – Nó chuyển đổi mã byte trong mã máy (mã gốc), nhưng chỉ mã cần thiết.
1.3.2. Lí do nên sử dụng Dart.
- Dart là một ngôn ngữ độc lập với nền tảng và hỗ trợ tất cả các hệ điều hành như Windows, Mac, Linux, v.v.
- Nó là một ngôn ngữ mã nguồn mở, có nghĩa là nó có sẵn miễn phí cho tất cả mọi
người. Nó đi kèm với giấy phép BSD và được công nhận bởi tiêu chuẩn ECMA. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
- Nó là một ngôn ngữ lập trình hướng đối tượng và hỗ trợ tất cả các tính năng của oops
như kế thừa, giao diện và các tính năng kiểu tùy chọn.
- Dart rất hữu ích trong việc xây dựng các ứng dụng thời gian thực vì tính ổn định của nó.
- Dart đi kèm với trình biên dịch dar2js để truyền mã Dart thành mã JavaScript chạy
trên tất cả các trình duyệt web hiện đại.
- Máy ảo Dart độc lập cho phép mã Dart chạy trong môi trường giao diện dòng lệnh.
- Công cụ Dart có thể báo cáo hai loại sự cố trong khi mã hóa, cảnh báo và lỗi. Cảnh
báo là dấu hiệu cho thấy mã của bạn có thể có một số vấn đề, nhưng nó không làm
gián đoạn quá trình thực thi của mã, ngược lại lỗi có thể ngăn chặn việc thực thi mã.
1.3.3. Tính năng của Dart.
Dart là một ngôn ngữ lập trình hướng đối tượng, mã nguồn mở, chứa nhiều tính năng
hữu ích. Đây là ngôn ngữ lập trình mới và hỗ trợ một loạt các tiện ích lập trình như giao
diện, bộ sưu tập, lớp, kiểu gõ động và tùy chọn. Nó được phát triển cho máy chủ cũng như
trình duyệt. Dưới đây là danh sách các tính năng quan trọng của Dart. Nền tảng độc lập:
- Dart hỗ trợ tất cả các hệ điều hành chính như Windows, Linux, Macintosh, v.v. Dart
có Máy ảo riêng được gọi là Dart VM, cho phép chúng tôi chạy mã Dart trong mọi hệ điều hành. Hướng đối tượng:
- Dart là một ngôn ngữ lập trình hướng đối tượng và hỗ trợ tất cả các khái niệm oops
như lớp, kế thừa, giao diện và các tính năng gõ tùy chọn. Nó cũng hỗ trợ các khái
niệm nâng cao như mixin, abstract, các lớp, hệ thống kiểu chung được sửa đổi và mạnh mẽ. Đồng nhất:
- Dart là một ngôn ngữ lập trình không đồng bộ, có nghĩa là nó hỗ trợ đa luồng sử
dụng Isolates. Các vùng cách ly là các thực thể độc lập có liên quan đến các luồng
nhưng không chia sẻ bộ nhớ và thiết lập giao tiếp giữa các quá trình bằng cách truyền
thông điệp. Thông điệp nên được nối tiếp nhau để tạo hiệu quả truyền thông. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Việc tuần tự hóa thông báo được thực hiện bằng cách sử dụng một ảnh chụp nhanh
được tạo ra bởi đối tượng đã cho và sau đó truyền đến một vùng cách ly khác để giải mã. Thư viện mở rộng:
- Dart bao gồm nhiều thư viện tích hợp hữu ích bao gồm SDK (Bộ phát triển phần
mềm), lõi, toán học, không đồng bộ, toán học, chuyển đổi, html, IO, v.v. Nó cũng
cung cấp cơ sở để tổ chức mã Dart thành các thư viện với không gian tên riêng. Nó
có thể sử dụng lại bằng câu lệnh nhập. Dễ học:
- Như chúng ta đã thảo luận trong phần trước, học Dart không phải là nhiệm vụ của
Hercules vì chúng ta biết rằng cú pháp của Dart tương tự như Java, C #, JavaScript,
kotlin, v.v. nếu bạn biết bất kỳ ngôn ngữ nào trong số này thì bạn có thể học Dart dễ dàng. Biên dịch linh hoạt:
- Dart cung cấp sự linh hoạt để biên dịch mã và nhanh chóng. Nó hỗ trợ hai loại quy
trình biên dịch, AOT (Ahead of Time) và JIT (Just-in-Time). Mã Dart được truyền
bằng ngôn ngữ khác có thể chạy trong các nhà sản xuất web hiện đại. Nhập An toàn:
- Dart là ngôn ngữ an toàn kiểu, có nghĩa là nó sử dụng cả kiểm tra kiểu tĩnh và kiểm
tra thời gian chạy để xác nhận rằng giá trị của một biến luôn khớp với kiểu tĩnh của
biến, đôi khi nó được gọi là kiểu gõ âm thanh.
- Mặc dù loại là bắt buộc, nhưng chú thích loại là tùy chọn vì loại nhiễu. Điều này làm
cho mã dễ đọc hơn. Ưu điểm khác của ngôn ngữ an toàn kiểu chữ là khi chúng ta
thay đổi phần mã, hệ thống sẽ cảnh báo chúng ta về sửa đổi mà chúng ta đã sửa trước đó. Các đối tượng:
- Dart coi mọi thứ như một đồ vật. Giá trị gán cho biến là một đối tượng. Các hàm, số
và chuỗi cũng là một đối tượng trong Dart. Tất cả các đối tượng kế thừa từ lớp Đối tượng. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng Hỗ trợ trình duyệt:
- Dart hỗ trợ tất cả các trình duyệt web hiện đại. Nó đi kèm với trình biên dịch dart2js
để chuyển đổi mã Dart thành mã JavaScript được tối ưu hóa phù hợp với tất cả các loại trình duyệt web.
1.4. Giới thiệu về Flutter.
1.4.1. Flutter là gì?
Flutter được phát triển nhằm giải quyết bài toán thường gặp trong mobile là Fast
Development và Native Performance. Nếu như React Native chỉ đảm bảo Fast Development
và code native thuần chỉ đảm bảo Native Performance thì Flutter làm được cả 2 điều
trên.Flutter được viết bởi ngôn ngữ dart do Google phát triển.
Flutter là một bộ SDK đa nền tảng, các ứng dụng Flutter có thể hoạt động trên cả iOS
và Android. Nó như một thủ thuật khôn khéo để tương thích được với framework UI trên cả
hai hệ điều hành này. Các ứng dụng này không biên dịch trực tiếp với các ứng dụng native của Android và iOS.
Đóng gói cả một engine đi kèm cùng ứng dụng sẽ làm cho kích thước bộ cài đặt lớn
hơn hẳn. Trang Hỏi đáp của Flutter cho biết, một ứng dụng “trống” thông thường sẽ chỉ
khoảng 6-7MB trên Android, vì vậy dù là ứng dụng nào, phần kích thước tăng lên cũng là rất
nhiều. Nhưng lợi ích của việc này là các ứng dụng này sẽ rất nhanh.
Flutter được thiết kế từ đầu để đạt tới tốc độ khung hình 60fps. Trong khi đây không
phải là một con số hiếm gặp trên iOS, nhưng với Android, bạn có thể cảm thấy sự khác biệt
rõ rệt ngay lập tức. Cũng nhờ việc xuất xưởng cùng với cả một nền tảng cho ứng dụng của
mình, các nhà phát triển sẽ tránh được nhiều vấn đề về sự phân mảnh của Android.
1.4.2. Lí do nên sử dụng Flutter?
Phát triển ứng dụng nhanh chóng: Tính năng hot reload của nó giúp bạn nhanh chóng
và dễ dàng thử nghiệm, xây dựng giao diện người dùng, thêm tính năng và sửa lỗi nhanh
hơn. Trải nghiệm tải lại lần thứ hai, mà không làm mất trạng thái, trên emulator, simulator
và device cho iOS và Android.
UI đẹp và biểu cảm: Thỏa mãn người dùng của bạn với các widget built-in đẹp mắt
theo Material Design và Cupertino (iOS-flavor), các API chuyển động phong phú, scroll tự
nhiên mượt mà và tự nhận thức được nền tảng. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Truy cập các tính năng và SDK native: Làm cho ứng dụng của bạn trở nên sống động
với API của platform, SDK của bên thứ ba và native code. Nó cho phép bạn sử dụng lại mã
Java, Swift và ObjC hiện tại của mình và truy cập các tính năng và SDK native trên iOS và Android.
Phát triển ứng dụng thống nhất: Flutter có các công cụ và thư viện để giúp bạn dễ
dàng đưa ý tưởng của mình vào cuộc sống trên iOS và Android. Nếu bạn chưa có kinh
nghiệm phát triển trên thiết bị di động, thì Flutter là một cách dễ dàng và nhanh chóng để
xây dựng các ứng dụng di động tuyệt đẹp. Nếu bạn là một nhà phát triển iOS hoặc Android
có kinh nghiệm, bạn có thể sử dụng Flutter cho các View của bạn và tận dụng nhiều code
Java / Kotlin / ObjC / Swift hiện có của bạn.
- Đặc điểm nổi bật o Fast Development: Tíng năng Hot Reload hoạt động trong
milliseconds để hiện thị giao diện tới bạn. Sử dụng tập hợp các widget có thể
customizable để xây dựng giao diện trong vài phút. Ngoài ra Hot Reload còn giúp
bạn thêm các tính năng, fix bug tiết kiệm thời gian hơn mà không cần phải thông qua
máy ảo, máy android hoặc iOS.
o Expressive and Flexible UI: Có rất nhiều các thành phần để xây dựng giao diện
của Flutter vô cùng đẹp mắt theo phong cách Material Design và Cupertino, hỗ
trợ nhiều các APIs chuyển động, smooth scrolling...
o Native Performance: Các widget của fluter kết hợp các sự khác biệt của các nền
tảng ví dụ như scrolling, navigation, icons, font để cung cấp một hiệu năng tốt nhất tới iOS và Android.
1.5. Giới thiệu về Androi Studio.
1.5.1. Android Studio là gì ?
Chức năng của Android Studio là cung cấp giao diện để tạo các ứng dụng và xử lý phần
lớn các công cụ quản lý file phức tạp đằng sau hậu trường. Ngôn ngữ lập trình được sử dụng ở
đây là Java và Dart và được cài đặt riêng trên thiết bị của bạn. Android Studio rất đơn giản, bạn
chỉ cần viết, chỉnh sửa và lưu các dự án của mình và các file trong dự án đó. Đồng thời, Android
Studio sẽ cấp quyền truy cập vào Android SDK.
Google đã nỗ lực rất nhiều để làm cho Android Studio trở nên mạnh mẽ và hữu ích nhất
có thể. Nó cung cấp những gợi ý trực tiếp trong khi viết code và thường đề xuất những thay
đổi cần thiết để sửa lỗi hoặc làm code hiệu quả hơn. Ví dụ, nếu không sử dụng biến, biến đó sẽ
được tô đậm bằng màu xám. Và khi bắt đầu gõ một dòng code, Android Studio sẽ cung cấp lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
danh sách gợi ý tự hoàn thành để giúp bạn hoàn thiện dòng code đó. Chức năng này rất hữu ích
khi bạn không nhớ được chính xác cú pháp hoặc để tiết kiệm thời gian.
Android is an source code open based on Linux Kernel dành riêng cho tất cả các thiết
bị di động (điện thoại, bảng máy tính, đồng hồ thông minh, …)
Là chính thức IDE và được sử dụng rộng rãi trong ứng dụng Android phát triển. Nó
được phát triển bởi Google và sử dụng nó để tạo ra những ứng dụng mà bạn sử dụng hàng ngày.
Phần mềm thư viện cũng như các tiện ích công cụ. Hỗ trợ nhiều hơn giúp bạn có thể
được xây dựng cũng như kiểm tra và hỗ trợ bạn gỡ bỏ các lỗi của ứng dụng Android.
Hỗ trợ bạn các điều hành như Windows, Mac OS X, Linux và đặc biệt là định thức IDE
của google. To phát triển các ứng dụng của Android gốc thay thế cho các dự án của công cụ
phát triển android trên IDE của eclipse.
1.5.2. Lịch sử hình thành.
- Android studio được công bố lần đầu tiên vào năm 2013 tại hội nghị Google I / 0.
Được công bố rộng khắp thế giới vào năm 2014 với rất nhiều phiên bản khác nhau.
- Trước khi phát hành Android studio, các thành viên lập trình thường sử dụng các
công cụ hỗ trợ như Eclipse IDE. Hay một IDE của Java được hỗ trợ trên nhiều ngôn ngữ khác nhau.
- Việc tạo ứng dụng bởi Android Studio sẽ dễ dàng hơn với các chuyên gia phần mềm.
1.5.3. Tính năng của Android Studio.
- Build được các biến và tạo được nhiều file APK.
- Code of template to support are features of the information app.
- Gradle support – based một cách linh hoạt.
- Với GitHub tích hợp giúp bạn xây dựng được các ứng dụng tính năng một cách phổ biến.
- Chỉnh sửa được bố cục một cách đa dạng với các hoạt động kéo thả linh hoạt.
- Help Capture is being offset, also well as well as used to use the same version and a some of problem liên quan. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
- Tích hợp lên google Cloud Platform, giúp bạn có thể dễ dàng tích hợp được app
engine và google cloud Messaging.
- Giúp mô phỏng được phần mềm để tiến hành sửa chữa và nâng cấp được các sản phẩm khi cần.
- Các trình soạn thảo mã và công cụ Intell cung cấp các tính năng cao
- Instant Run giúp thay đổi các ứng dụng đang chạy mà không cần xây dựng APK mới.
- Hỗ trợ được C++ và NDK.
- Giúp Sâu firebase và các ứng dụng sau click chuột.
- Công cụ build dựa trên Gradle.
- Các wizard tích hợp giúp các lập trình viên có thể tạo ứng dụng từ các mẫu có sẵn.
- Chức năng dò và sửa lỗi nhanh để hướng Android.
CHƯƠNG 2: KHẢO SÁT HỆ THỐNG
2.1. Khảo sát sơ bộ.
2.1.1. Giới thiệu chung về công ty.
Công ty Cổ phần Thương mại Andin có tên quốc tế là ANDIN TRADING JOINT
STOCK COMPANY (ANDIN JSC) trước đây có tên là Công ty TNHH Công nghệ và
Dịch vụ Minh Hiền (Minh Hien Solutions - MHS) được ra đời vào ngày 6 tháng 7 năm 2017. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Nơi đăng ký địa chỉ Doanh nghiệp: Số 7/B259 khu T2, P. Thành Tô, Q. Hải An,
Thành phố Hải Phòng, Việt Nam. Mã số thuế: 0201797716
Ra đời với sứ mênh “Phát triển phần mềm, website có tính trải nghiệm caọ thông
qua tốc độ, sự linh hoạt và kế thừa, tính dễ dùng và nâng cao hiệu quả công việc của
khách hàng.” MHS đã tự lựa chọn cho mình con đường đi lên lấy chất lượng và uy tín hàng đầu.
Sau môt tḥ ời gian đúc kết kinh nghiêm, đ ̣ ào tạo và xây dựng được môt độ i ng ̣
ũ chuyên nghiêp tḥ ì ngày 28 tháng 5 năm 2022 thương hiêu Andin cḥ ính thức được ra
đời, mang một sứ mệnh mới: “Website - nơi Khách hàng trở về). lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
ANDIN JSC do ông Đỗ Đức Hùng làm chủ tịch HĐQT, được biết đến là một
Doanh nghiệp hoạt động trong lĩnh vực Công nghệ thông tin gồm: Thiết kế website,
Phát triển phần mềm, ứng dụng; cung cấp các giải pháp thương mại điện tử dành cho
Doanh nghiệp đòi hỏi nhân sự trong Andin luôn cần được trau dồi, tu dưỡng và ý thức
được sứ mênh mỗi vị trí trong công ty. ̣
Đối tượng Khách hàng của ANDIN JSC là các chủ Doanh nghiệp.
Dưới đây là các phòng ban của công ty:
2.2. Khảo sát chi tiết.
2.2.1. Thực trạng hoạt động và nhu cầu của công ty
Những năm gần đây khi mà công nghệ thông tin đang phát triển bùng nổ, rất nhiều nhà
quản lý đã áp dụng những công nghệ tiên tiến vào trong công việc kinh doanh. Trong số đó
việc sử dụng phần mềm bán hàng để giúp cho việc quản lý cửa hàng trở nên thuận tiện, dễ
dàng đang được nhiều người lựa chọn hơn bao giờ hết. Và chính điều này đang tạo nên sự
khác biệt vượt trội hơn so với những đối thủ cạnh tranh sử dụng các phương pháp quản lý
truyền thống. Vậy lý do tại sao phần mềm bán hàng online lại đang được yêu thích như vậy,
chúng ta có thể tìm hiểu nhược điểm của phương pháp quản lý truyền thống. lOMoAR cPSD| 59691467
Trường Đại học Hải Phòng
Trong kinh doanh, bán hàng thì người quản lý phải lo mọi thứ từ việc tìm nguồn hàng,
vận chuyển, bảo quản kho, tìm khách hàng bằng nhiều cách marketing và quảng cáo. Rồi
đến việc bán hàng, làm sao để có thể cân đối được thu – chi và có lãi để tái đầu tư tiếp. Tiếp
đó, phải quan tâm quản lý như thế nào cho hàng hoá không bị hỏng hay bị thất thoát. Với
phương pháp làm thủ công, chủ cơ sở kinh doanh sẽ gặp phải những khó khăn sau đây:
• Danh mục mặt hàng quá nhiều gây khó tra cứu, xác định giá bán.
• Lập hoá đơn bán hàng, phiếu xuất hàng thủ công, thiếu chuyên nghiệp, dễ sai sót.
• Mất nhiều thời gian cho việc tính toán công nợ, tồn kho, doanh số bán hàng.
Thật khó trả lời ngay được câu hỏi: Cửa hàng đang còn những mặt hàng gì, số lượng
bao nhiêu ? Công nợ thực tế của khách hàng A đến thời điểm hiện tại.
Sử dụng phần mềm quản lý bán hàng sẽ giải quyết được các yêu cầu trên một cách tự
động, nhanh chóng và chính xác. Như vậy, một hệ thống quản lý bán hàng mới sẽ được xây
dựng. Nơi mà khách hàng, nhân viên và quản lý có thể tương tác với nhau một cách trực
quan, đồng thời giúp cho hiệu quả công việc tăng cao nhằm tăng lên uy tín của công ty đối
với khách hàng, nâng cao khả năng quay lại của khách hàng trong tương lai.
2.2.2. Một số quy trình bán hàng của công ty
Hiện nay, ANDIN JSC có 2 nhóm dịch vụ chính: • Thiết kế website
• Cho thuê máy chủ: Hosting, domain, SSL.
2.2.3. Yêu cầu của công ty sau khi khảo sát
Giao diện của phần mềm dễ sử dụng.
• Thực hiện được các quy trình như trên.
• Các danh mục đều có các chức năng chính: thêm, sửa, xóa. Một số danh mục sẽ
có phần xem chi tiết, tìm kiếm dữ liệu. • Báo cáo thống kê
2.3. Danh sách các trang.
2.3.1. Yêu cầu hệ thống.
- Quản lý người dùng:
• Hệ thống cần hỗ trợ đăng ký và đăng nhập cho người dùng.
• Người dùng có thể quản lý thông tin cá nhân và cập nhật hồ sơ của mình.