Giải pháp
Để có thể hoàn thành được đề tài thì cần phải nghiên cứu những nội dung như sau:
• Tìm hiểu về ngôn ngữ Dart và framework Flutter để hỗ trợ cho việc lập trình trên thiết bị di động
• Tìm hiểu về UI/UX design, design thinking và công cụ thiết kế như Adobe illustrator, Figma để hỗ trợ thiết kế font-end cho sản phẩm
• Nghiên cứu về thần số học, các thuật toán để tính toán ra ý nghĩa của những con số trong thần số học giúp giải mã bản thân
• Tìm hiểu một vài app có sẵn về thần số học trên các kho Appstore, CH Play
Mục tiêu đề tài
Mục tiêu chính của dự án là áp dụng hiệu quả các kiến thức đã tích lũy từ quá trình đọc và nghiên cứu Chúng tôi hướng tới việc phát triển một phần mềm di động hoàn chỉnh với giao diện thân thiện, khả năng xử lý thuật toán chính xác, nhằm mang lại trải nghiệm tối ưu cho người dùng.
Xây dựng ứng dụng di động mang đến giải pháp giải mã bản thân, cho phép người dùng khám phá ý nghĩa của các con số liên quan đến tên và ngày sinh của mình Ứng dụng này tích hợp các chức năng giải đáp thông tin chi tiết, cùng với các hiệu ứng animation sinh động khi thực hiện các tác vụ, tạo trải nghiệm thú vị và hấp dẫn cho người dùng.
Phạm vi đề tài
Do thời gian hạn chế và kiến thức rộng lớn về ngôn ngữ Dart cùng framework Flutter, nhóm chỉ có thể thực hiện các chức năng và animation cơ bản của ứng dụng, đồng thời đánh giá những ưu điểm và khuyết điểm nổi bật nhất của ứng dụng di động.
Nhóm phát triển phần mềm di động đã tập trung vào các chức năng chính, bao gồm việc giải mã bản thân và con người dựa trên nhân số học, thực hiện các thao tác cơ bản trên thiết bị di động, và quản lý trải nghiệm người dùng một cách hiệu quả.
Công cụ sử dụng
• Công cụ dùng để phân tích, thiết kế: Adobe illustrator, Figma
• Công cụ phát triển ứng dụng di động: Android studio
• Công cụ quản lý dự án: Github, Notion, Teams, Messenger
• Công cụ soạn thảo văn bản: Microsoft Word
Khảo sát và đánh giá các ứng dụng về thần số học hiện có
• Nhà phát triển Viet Startup Joint Stock Company cung cấp công cụ tín toán những con số bí ẩn liên quan đến vận mệnh cuộc đời của mỗi người
Ứng dụng nổi bật với các biểu đồ và dashboard trực quan, giúp hiển thị thông tin một cách dễ hiểu Trải nghiệm người dùng được tối ưu hóa với màu sắc bắt mắt và hình vẽ hợp lý Ngoài ra, hiệu suất của ứng dụng ổn định, không gây hiện tượng giật lag trong quá trình sử dụng.
Ứng dụng này nhận được nhiều đánh giá tích cực từ người dùng với điểm số 4.4 trên Appstore Ngoài ra, nó cũng được cập nhật và nâng cấp thường xuyên, nhanh chóng.
Một số hạn chế của dịch vụ bao gồm việc sử dụng quá nhiều chữ để truyền tải thông tin, gây rối mắt cho người đọc Ngoài ra, các tính năng nâng cao thường yêu cầu người dùng phải trả phí Cuối cùng, mã OTP đôi khi không được nhận, gây bất tiện cho quá trình sử dụng.
Nhà phát triển indie Hanh Nguyen tin rằng có một mối liên hệ chặt chẽ giữa các con số trong tên và ngày sinh, và những yếu tố này mang ý nghĩa sâu sắc về giá trị và bản chất thật sự của con người.
Ứng dụng này nổi bật với khả năng cung cấp thông tin về bí mật của những con số và bản chất của người dùng thông qua các con số Nó cũng giúp dự đoán về tương lai và các cột mốc quan trọng trong cuộc đời con người.
Giao diện ứng dụng được thiết kế ấn tượng và bắt mắt, với màu sắc phù hợp với chức năng sử dụng Hiệu suất của ứng dụng ổn định, không gây giật lag trong quá trình sử dụng Người dùng đã để lại nhiều nhận xét tích cực, với điểm đánh giá 4.3 trên Appstore Ứng dụng cũng được cập nhật và nâng cấp thường xuyên, nhanh chóng.
Một số hạn chế của ứng dụng bao gồm chức năng quá đa dạng, gây bối rối cho người dùng mới trong việc lựa chọn; thiếu hướng dẫn sử dụng cụ thể; và phông chữ không phù hợp với giao diện của ứng dụng.
Công nghệ
Cross platform là nền tảng cho phép phát triển ứng dụng đa dạng, chỉ với một mã nguồn duy nhất Điều này giúp bạn dễ dàng triển khai và sử dụng trên nhiều nền tảng khác nhau, từ đó tiết kiệm thời gian và công sức trong quá trình phát triển.
Mã nguồn đa nền tảng mang lại nhiều ưu điểm nổi bật, bao gồm khả năng triển khai trên nhiều hệ điều hành, giúp tiếp cận một lượng lớn người dùng Dự án có thể được triển khai nhanh chóng, tiết kiệm chi phí và nhân lực, với yêu cầu lập trình viên chỉ cần nắm vững một ngôn ngữ và framework nhất định Một số nền tảng sử dụng native rendering giúp mang lại trải nghiệm mượt mà hơn cho người dùng Hơn nữa, quá trình bảo trì, nâng cấp và cập nhật trở nên đơn giản và dễ dàng, đồng thời giao diện và trải nghiệm người dùng được thống nhất trên tất cả các nền tảng.
Khuyết điểm của ứng dụng này bao gồm hiệu suất chậm hơn so với ứng dụng gốc, với một số hạn chế trong việc tương tác với hệ điều hành và phần cứng Bên cạnh đó, giao diện và trải nghiệm người dùng có thể không đồng nhất với hệ điều hành, gây khó khăn trong việc sử dụng Cuối cùng, quá trình kiểm thử và phát hành ứng dụng có thể kéo dài do yêu cầu tính tương thích.
7 o Có thể có hiện tượng “code-loss” (mất tính năng, giao diện) do hạn chế của nền tảng phát triển ứng dụng Cross Flatform
• Sau khi nghiên cứu và tìm hiểu, nhóm tụi em quyết định sử dụng
Cross Platform là giải pháp lý tưởng để phát triển ứng dụng di động nhờ vào sự tiện lợi trong thiết kế giao diện và khả năng hoạt động trên cả hai nền tảng Android và iOS Bên cạnh đó, thời gian xây dựng ứng dụng bằng công nghệ này cũng nhanh hơn nhiều so với ứng dụng native.
Flutter là framework UI di động do Google phát triển, giúp tạo ra giao diện chất lượng cao cho iOS và Android một cách nhanh chóng Nó cho phép lập trình viên và tổ chức sử dụng mã nguồn có sẵn để tối ưu hóa quá trình phát triển ứng dụng.
The advantages of this technology include its strong animation capabilities and high-performance application development It facilitates near-direct communication with native components, ensuring seamless integration Additionally, it utilizes a static language with modern syntax, featuring a flexible compiler that supports both AOT (Ahead-of-Time) compilation for production builds and JIT (Just-in-Time) compilation for development, allowing for efficient hot reloading.
You can run mobile emulators directly in your web browser, making it convenient for development Built-in performance metrics allow developers to effectively monitor app performance Additionally, it can be used to build bundles or frameworks that integrate with native apps to enhance performance.
Khuyết điểm của framework này bao gồm việc bộ render UI được đội ngũ phát triển viết lại gần như hoàn toàn, không tương thích với UI có sẵn của Framework native, dẫn đến việc tiêu tốn nhiều bộ nhớ Người dùng cần phải học thêm ngôn ngữ DART, cũng như các khái niệm như bloc pattern và DART Streaming Hơn nữa, do là một framework còn mới, mặc dù cộng đồng đang phát triển nhanh chóng, nhưng tại Việt Nam, nó chỉ mới nổi lên trong khoảng 2 năm gần đây.
Sau khi nghiên cứu và tìm hiểu về framework Flutter, nhóm chúng tôi nhận thấy rằng Flutter rất phù hợp với các mục tiêu của chúng tôi, bao gồm việc sử dụng animation cao và yêu cầu hiệu suất ứng dụng Bên cạnh đó, ứng dụng cũng sẽ được phát triển trên nhiều nền tảng và cần sự hỗ trợ từ Google.
Numerology
Thần số học, hay còn gọi là số bí thuật, là niềm tin vào mối quan hệ giữa các con số và các sự kiện tâm linh Nó khám phá sự tương quan giữa các chữ cái trong danh xưng và các yếu tố mang tính tinh thần.
9 này thông thường liên quan với siêu linh, cùng với thuật chiêm tinh và các nghệ thuật bói toán tương tự khác
Cách tính các con số
Theo trường phái Pythagoras, không có Con số chủ đạo nào bằng 1, do đó, các Con số chủ đạo sẽ nằm trong khoảng từ 2 đến 11 Đặc biệt, số 4 được hình thành từ tổng 22 sẽ được ghi là 22/4 để phân biệt với số 4 thông thường.
Để tính Con số chủ đạo, bạn cần cộng tất cả các con số trong ngày, tháng và năm sinh dương lịch Kết quả sẽ là một con số tổng có hai chữ số Tiếp tục cộng cho đến khi con số này nằm trong khoảng từ 2 đến 11 Lưu ý đặc biệt: nếu con số 4 được tạo thành từ số 22, thì con số này sẽ được giữ nguyên là 22/4.
• Ví dụ: Ngày tháng năm sinh dương lịch của bạn là:
27/5/1983 Hãy cộng từng con số này lại để được một con số tổng Cụ thể: 2 + 7 + 5 + 1 + 9 + 8 + 3 = 35 Cộng tiếp 3 + 5
= 8 Vậy Con số chủ đạo của trường hợp này là 8
2.2.2.2 Theo tên o Viết ra bảng chữ cái từ ‘A’ đến ‘Z.’ Lấy một tờ giấy, viết ra toàn bộ
Trong tiếng Anh, có 26 chữ cái được sắp xếp theo hàng ngang, mỗi chữ cái mang một giá trị số riêng biệt Bạn cũng có thể trình bày các chữ cái theo chiều dọc, nhưng cần đảm bảo chúng được viết theo thứ tự và gọn gàng.
11 o Quy đổi từng chữ cái bằng một con số từ 1 đến 9 Bắt đầu với chữ
A Viết số 1 bên cạnh chữ A; tiếp tục ghi bên cạnh các chữ cái tiếp theo với các số tương ứng theo thứ tự Ví dụ, chữ B tương ứng với số 2.
2, chữ C tương ứng với số 3 Khi đến chữ ‘I’ tương ứng với số 9, bạn hãy quay trở lại từ số 1 và cứ thế tiếp tục đến hết bảng chữ cái
Trong thần số học, có tổng cộng 9 chữ số, vì vậy khi chuyển đổi chữ cái thành số, bạn cần sử dụng tất cả các chữ số từ 1 đến 9, thay vì chỉ giới hạn trong các số từ 1 đến 8.
• Hệ thống này cũng có thể được tóm tắt như sau:
Để xác định con số tương ứng với tên của bạn, hãy viết đầy đủ tên của mình, bao gồm cả tên lót nếu có Bạn có thể tìm thấy tên đầy đủ này trong giấy khai sinh hoặc thẻ căn cước.
Nếu tên của bạn bao gồm các yếu tố như truyền thống từ đời trước, ví dụ như John Smith II, hoặc có các tiền tố và hậu tố đặc biệt, hãy chắc chắn ghi rõ những phần này nếu chúng là một phần của tên chính thức và đầy đủ của bạn.
• Dùng tên mới nếu bạn đã chính thức đổi tên, vì hiện tại bạn xác định bản thân bằng cái tên mới
• Bạn có thể sử dụng biệt hiệu, nhưng kết quả sẽ không hoàn toàn chính xác
Để quy đổi tên của bạn thành các số tương ứng, hãy thay thế mỗi chữ cái trong tên bằng giá trị số của nó Sau đó, ghi lại các con số tương ứng bên dưới từng chữ cái trong tên bạn.
• Có thể bạn sẽ có vài chữ cái giống nhau, nhưng điều đó không thành vấn đề
Nếu tên bạn là John Jacob Smith, bạn có thể quy đổi các chữ cái trong tên thành các con số tương ứng: chữ J sẽ là số 1, chữ O là số 6, chữ H là số 8, và các chữ cái khác cũng sẽ được chuyển đổi theo cách tương tự.
Để tính tổng các con số tương ứng với các chữ cái trong tên của bạn, hãy sử dụng máy tính hoặc giấy bút Nếu tên của bạn có 20 chữ cái, bạn cần cộng tất cả 20 con số lại với nhau Kết quả cuối cùng sẽ là một số có hai chữ số.
• Ví dụ, BATMAN sẽ là số 2+1+2+4+1+5, tương ứng với số 15
Để rút gọn tổng số thu được thành số có một chữ số, bạn cần cộng tất cả các chữ số lại với nhau Nếu tổng số là hai hoặc ba chữ số, hãy tách chúng ra và cộng lại Ví dụ, với tổng số 25, bạn sẽ tính 2 + 5 để có kết quả là 7 Số 7 này sẽ là con số thực sự tương ứng với tên của bạn.
Số Chủ đạo 2 là một con số đặc biệt và hiếm gặp, chỉ xuất hiện khi tổng các con số là 20, dẫn đến việc những người mang Con số chủ đạo 2 ít hơn so với các con số chủ đạo khác Những người này thường nhạy cảm, khiêm tốn và luôn sẵn lòng giúp đỡ người khác.
Số Chủ đạo 3 nổi bật với tư duy sắc bén và khả năng lý luận tốt Những người mang Số 3 thường có đầu óc nhanh nhạy, tính hài hước và tư duy linh hoạt, điều này giúp họ đạt được thành công trong sự nghiệp Tuy nhiên, khi có tâm lý tiêu cực, họ có thể gây ấn tượng không tốt, trở nên trịch thượng, gia trưởng và có xu hướng thích chỉ đạo người khác.
Người Số 4 có xu hướng thực tế và thích hành động, họ ưu tiên thực hiện công việc thay vì chỉ thảo luận về giá trị của nó Đặc điểm này giúp họ tập trung vào kết quả và hiệu quả công việc.
Khảo sát hiện trạng nhu cầu giải mã bản thân
Nhóm đã phát triển một phương pháp điền form trên mạng xã hội, bao gồm các câu hỏi giúp người dùng khám phá và hiểu rõ bản thân thông qua thần số học Phương pháp này nhắm đến đối tượng là các bạn trẻ, đồng thời cũng chú trọng đến thói quen sử dụng điện thoại di động và các ứng dụng phổ biến hiện nay.
• Bảng câu hỏi được khảo sát: o Họ và tên o Tuổi o Bạn có điện thoại di động không
▪ Không o Hệ điều hành bạn đang sử dụng
▪ IOS o Thời gian dành ra để sử dụng điện thoại trong một ngày
▪ Lớn hơn 6 giờ o Bạn có hiểu rõ bản thân mình không ?
▪ Không o Nếu được, bạn có muốn hiểu rõ bản thân mình hơn không?
20 o Bạn có nghe tới Numerology (Nhân số học) bao giờ chưa?
▪ Chưa bao giờ nghe tới
▪ Đã biết o Bạn đã sử dụng ứng dụng thần số học trên điện thoại nào chưa? (Điền tên ứng dụng đó)
Phân tích đặc tả yêu cầu
Các use-case trong ứng dụng
Mô tả các use case
Tên use case Main numbers
Kịch bản Người dùng muốn xem các ý nghĩa con số
Sự kiện kích hoạt Người dùng điền thông tin tên và ngày sinh sau đó ấn nút tiếp theo
Mô tả Hệ thống tính toán các con số thông qua ngày sinh và tên của người dùng nhập vào
Màn hình hiển thị các con số như soul urge, personality, expression, destiny, attitude, life path number
Tiền điều kiện Ngày sinh phải phù hợp
Tên không có kí tự đặc biệt hoặc số
Hậu điều kiện Màn hình hiển thị chủ đề, con số, ý nghĩa con số
Dòng sự kiện Người dùng điền tên và ngày sinh, chọn giới tính sau đó ấn nút “tiếp theo”
Hệ thống tính toán các con số Màn hình hiển thị dần chủ đề, con số, nội dung
Tên use case Year number cycle
Kịch bản Người dùng muốn xem các ý nghĩa của con số cá nhắn năm nay
Sự kiện kích hoạt Người dùng nhấn nút “Year Number Cycle” trên menu side
Mô tả Hệ thống tính toán ý nghĩa con số năm nay thông qua ngày tháng sinh của người dùng Màn hình giải thích nôi dụng của year number cycle
Tiền điều kiện Ngày sinh phải phù hợp
Hậu điều kiện Màn hình hiển thị chủ đề, con số, ý nghĩa con số
Dòng sự kiện Người dùng điền tên và ngày sinh, chọn giới tính sau đó ấn nút “tiếp theo”
Người dùng nhấn nút “Year Number Cycle” trên menu side Hệ thống tính toán các con số
Màn hình hiển thị nội dung giải thích year number cycle
Hệ thống hiển thị dần chủ đề, con số, nội dung year number cycle của người dùng đó
Tên use case Life Cycle Period
Kịch bản Người dùng muốn xem chu kì cuộc sống
Sự kiện kích hoạt Người dùng nhấn nút “Life Cycle Period” trên menu side
Mô tả Hệ thống tính toán ý nghĩa của các chu kì cuộc sống
Màn hình giải thích nôi dụng của Life Cycle Period
Tiền điều kiện Ngày sinh phải phù hợp
Tên người dùng không chưa kí tự đặc biệt
Hậu điều kiện Màn hình hiển thị chủ đề, con số, ý nghĩa con số
Dòng sự kiện Người dùng điền tên và ngày sinh, chọn giới tính sau đó ấn nút “tiếp theo”
Người dùng nhấn nút “Life Cycle Period” trên menu side
Hệ thống tính toán các con số Màn hình hiển thị nội dung giải thích life cycle period
Hệ thống hiển thị dần chủ đề, con số, nội dung life cycle period của người dùng đó
Tên use case Address Number
Kịch bản Người dùng muốn xem ý nghĩa của địa chỉ nhà
Sự kiện kích hoạt Người dùng nhấn nút “Address Number” trên menu side
Mô tả Hệ thống tính toán ý nghĩa của địa chỉ nhà
Màn hình giải thích nôi dụng của địa chỉ nhà
Tiền điều kiện Địa chỉ nhà điền vào không có kí tự đặc biệt
Hậu điều kiện Màn hình hiển thị chủ đề, con số, ý nghĩa con số
Dòng sự kiện Người dùng điền tên và ngày sinh, chọn giới tính sau đó ấn nút “tiếp theo”
Người dùng nhấn nút “Address Number” trên menu side
Hệ thống tính toán các con số Người dùng điền chỉ nhà và ấn nút “Tiếp theo”
Màn hình hiển thị nội dung giải thích địa chỉ nhà
Hệ thống hiển thị dần chủ đề, con số, ý nghĩa địa chỉ nhà của người dùng đó
Tên use case Phone Number
Kịch bản Người dùng muốn xem ý nghĩa của số điện thoại
Sự kiện kích hoạt Người dùng nhấn nút “Phone Number” trên menu side
Mô tả Hệ thống tính toán ý nghĩa của số điện thoại
Màn hình giải thích nôi dụng của số điện thoại
Tiền điều kiện Số điện thoại không chứa kí tự đặc biệt, số và không rỗng
Hậu điều kiện Màn hình hiển thị chủ đề, con số, ý nghĩa con số
Dòng sự kiện Người dùng điền tên và ngày sinh, chọn giới tính sau đó ấn nút “tiếp theo”
Người dùng nhấn nút “Phone Number” trên menu side
Hệ thống tính toán các con số Người dùng điền số điện thoại và ấn nút “Tiếp theo”
Màn hình hiển thị nội dung giải thích ý nghĩa của số điện thoại
Hệ thống hiển thị dần chủ đề, con số, ý nghĩa số điện thoại của người dùng đó
Form điền thông tin
Side menu
Màn hình hiện thị thông tin giải mã các con số chính
Giải mã số năm bản thân
Giải nghĩa năm bản thân
Giải mãi các bản thân trong khoảng năm tương lai
Giải mã bản thân thông qua số điện thoại
Form điền số điện thoại
Giải mã bản thân thông qua địa chỉ nhà
Kết quả đạt được
• Hiểu được thần số học, cách thức tính toán các con số ngày sinh, tên số điện thoại, địa chỉ nhà thống qua thần số học
• Hiểu được UI/UX trong quá trình phát triển ứng dụng phần mềm
• Flutter: Frame work hỗ trợ người dùng phát triển phần mềm cross- platform
• Dart: Ngôn ngữ phát triển ứng dụng
• Adobe illustrator: Phần mềm hỗ trợ design Ứng dụng: Numerology
• Onboarding: Giới thiệu ứng dụng và thần số học
• Form: Điền, xác thực nội dụng điền vào form để lấy dữ liệu phục vụ tính toán các con số
• Các screen: hiển thị chủ đề, hình ảnh, nội dung cùng với các animation
Các chức năng của bài viết bao gồm tính toán các con số chủ đạo, các vòng lặp, con số năm cá nhân, chu kỳ vòng đời, con số địa chỉ nhà và ý nghĩa của số điện thoại.
• Text to speech: hỗ trợ đọc các text hiển thị trên màn hình
Hạn chế 49
• Text quá nhiều khiến người dùng cảm thấy bối rối
• Hệ thống chưa có database lưu trữ thông tin người dùng
• Code chưa tối ưu, code rule chưa thống nhất, còn rườm rà
• Các widget, model chưa hợp lý cũng như tái sử dụng nhiều