Vẫn là Hoàng đây, hôm rồi có bạn nhắn hỏi về “Vấn đề giao tiếp trong nhóm, kiểu làm sao để giao tiếp hiệu quả giữa dev, tester, design với BA”
Với kinh nghiệm làm việc và quản lý một vài đội nhóm, từ BA, PO, PM, QC tới UI Design, mình xin phép chia sẻ kinh nghiệm cá nhân đế các bạn đọc có cùng thắc mắc.
Trong bài này mình đổi cách xưng hô tí nhé, vì người đặt câu hỏi là 1 bạn nữ nhỏ hơn mình vài tuổi, nên mình xin phép xưng “Anh” “Em”
Ý chính từ ý kiến cá nhân
1. Hiểu những việc họ làm sẽ giúp em giao tiếp dễ với họ.
2. Nên chia sẻ nghiệp vụ với họ (họp nhóm/họp 1-1) để giới thiệu rõ nghiệp vụ, business rule, luồng, Đặc biệt là chia sẻ trên tinh thần mình hiểu, mình tự tin, và mục đích chia sẻ để họ hiểu thay vì qua loa cho xong việc.
3. Nói chuyện vui vẻ/ tâm sự chuyện thường ngày với họ.
1. Hiểu sâu về công việc của các bộ phận khác:
Ví dụ em thử học 1 khoá về dev sơ sơ, mò thử vài cái cơ bản về dev xem sao… or design thì thử học 1 khoá về design nhỏ trên youtube.
A thì nghĩ 1 số bạn nói là dư, nhưng với kinh nghiệm của anh, nhờ biết các kiến thức này mà từ lúc intern anh làm việc với mọi người rất suôn sẻ
Anh từng dev game, hiểu độ khó của việc dev ra sao, từng code web, từng code mobile app (Swift), code cả app trên win, đa phần là lúc còn sinh viên với những năm làm thêm freelancer, nên khi nói chuyện với dev, dù vấn đề khó anh vẫn nói chuyện với họ rất bình thường, thậm chí có thể trao đổi technical sâu với CTO trong công ty và CTO đối tác.
Từng làm QC Manual & Auto => a làm việc với QC cũng rất mượt =]], kiểu có thể nói chuyện về việc test như nào, đặt priority test ra sao, test plan kiểu gì, kiểm soát tiến độ, dùng phương pháp nào để test, dùng tool nào, Auto thì đang sài ngôn ngữ nào, Xpath hay code, sài thư viện nào, tool auto nào…
Design thì anh cũng tự vẽ & trao dồi thêm kinh nghiệm từ Design nữa. Nên bản thân cũng tự có thêm skill, nhiều lúc làm với Design thì biết cách diễn giải với ngôn ngữ của Design, dùng đúng các khái niệm như Auto-layout, Responsive, Hi-fi design, Prototype, Wireframe, Mockup, Component, Section, Animation,…
2. Chia sẻ kiến thức nghiệp vụ một cách toàn diện
Em hãy tổ chức các buổi họp nhóm hoặc 1-1 để giới thiệu chi tiết về nghiệp vụ, business rule và luồng công việc.
Chia sẻ với tinh thần tự tin, hiểu rõ và mong muốn truyền đạt kiến thức, không chỉ đơn thuần là hoàn thành nhiệm vụ.
Giải thích cả bức tranh tổng thể, từ bài toán kinh doanh đến cách hệ thống tạo ra giá trị cho người dùng.
Ví dụ thực tế:
Anh sẽ không chỉ chia sẻ những phần của họ, mà anh chia sẻ từ bài toán business, làm sao kiếm ra tiền, cách nhìn nhận từ users, ví dụ như nay có mấy phần FE không cần hiểu là tính năng chạy như thế nào, chỉ cần share userflow & data đó từ BE trả ra là bạn tích hợp được rồi, nhưng anh lại chia sẻ thêm là vì sao nó phải chạy như vậy, phía BE phải dùng công thức như nào để bạn làm, biết đâu lúc code bạn cũng phát hiện ra bug từ Be trả kết quả sai thì sao 😀
Rồi hôm bữa ngồi chia sẻ về 1 dự án kiểu dạng nhận tiền users để mang đi đầu tự động thông qua Smart Contract, thì anh cũng chia sẻ luồng user bỏ tiền, rồi hệ thống làm gì, có công thức gì mà giúp tiền users đi đến những nơi khác và kiếm lợi nhuận, trường hợp nào sẽ lỗ, trường hợp nào sẽ lời, lỗ thì hệ thống phải làm sao, lời thì sao, … từ đó mà Design có thể bổ sung những trường hợp báo rủi ro lỗ, thêm các bước xác nhận risk trong đầu tư, … Mà vì được nghe rõ về Business => Designer họ cũng sẵn sàng chia sẻ kinh nghiệm design, chỉ tip design => Mình cũng được nâng cao kỹ năng desgin.
3. Nói chuyện vui vẻ như bạn bè.
Anh nghĩ công việc & chuyện đời thường mọi người cứ vui vẻ với nhau, làm việc khoẻ hơn rất nhiều, anh không chỉ áp dụng với trong team, mà còn áp dụng với đối tác đồ nữa.
Xưa làm mảng mobile banking, anh cũng hay đi ăn với bạn bên bank. Nên khi cần gì rắc rối nhờ họ là họ giúp mình ngay.
Các ý bổ sung, hơi thiên về kỹ năng
Anh em nên thống nhất 1 quy trình làm việc chung, ví dụ như stand-up meeting hằng ngày. Thẳng thắn chia sẻ/trao đổi/ chỉ ra lỗi sai của nhau trong khi làm việc
Làm gì cũng có plan, ví dụ sprint plan.
Làm rõ mục tiêu/kết quả của sprint/dự án/phase
Sử dụng công cụ tracking hiệu quả, như anh là sài Trello/Jira, kéo task liên tục, thường la mấy đứa để nó update task đúng.
Đánh version/commit code rõ ràng (này bạn Dev Lead hay nhắc nhở mấy đứa dev trong team =)) commit không rõ ràng là bị ăn chửi =)) )
Anh cũng hay hỏi mọi người ý kiến, chia sẻ idea để phát triển dự án, với 1 phần họ cảm thấy mình tôn trọng họ.
Nên dùng cách giao tiếp khác nhau với đối tượng khác nhau, ví dụ Designer => thì em không thể dùng các từ ngữ kỹ thuật bên Dev để nói chuyện.
Cập nhật tài liệu thường xuyên (wiki, SRS, URD, User Stories,…)
Tổ chức mấy buổi review UI cho các bên, Tester/BA/Dev cũng nên join. rồi nhờ mọi người cho ý kiến nữa.
Tăng cường chat, đặc biệt là chat nhóm, tránh chat riêng (Direct Message)
Nên tổ chức retrospective, anh lâu lâu thấy team không ổn, hoặc dự án nó đi sai với kế hoạch là anh làm ngay, anh không follow agile là hết sprint là làm, anh làm ít hơn, chỉ khi cần thiết thôi. => mọi người góp ý, nhìn nhận sai sót, đưa ra phản hồi để xây dựng.
Khi diễn giải nghiệp vụ => Nên sài biểu đồ nhiều vô, ít chữ thôi => Đi từ tổng quan đến chi tiết.
Kết bài
Hi vọng với những kinh nghiệm và ý kiến cá nhân sẽ giúp bạn đọc sẽ giao tiếp hiệu quả hơn nữa khi làm việc với QC, Dev, Designer.
Hãy để lại comment hoặc chia sẻ đến bạn bè nếu thấy hay nhé.
Dưới đây là các task vụ trong BA/PO/PM mình đã áp dụng AI để thực hiện. Nhưng trước khi đọc phần này, bạn nhớ đọc phần 1 nhé, phần 1 là những nhận định cá nhân chung về các công cụ AI.
Viết user story và Acceptance Criteria
Role của mình cũng hay viết User Story, và việc xử dụng AI để viết và để viết hiệu quả mình thường sử dụng ChatGPT để thực hiện task vụ này.
Bạn có thể xem video dưới đây để hiểu cách viết nhé.
Dĩ nhiên là với AC, bạn có thể viết theo syntax “GWT” Given When Then
Scenario 1: Successful Admin Login
Given an administrator is on the Shared Login Page for Teachers and Admins, And the administrator has a valid Email and Password, When the administrator enters the correct Email and Password, And clicks the “Login” button, Then the system should authenticate the administrator, And redirect the administrator to the Admin Dashboard, And display the Admin Dashboard interface.
Và từ đó suy ra Decision Table
Tip từ bản thân mình cho phần viết này là bạn hãy input thật rõ chi tiết về User story bạn muốn, hoặc add những idea bạn đã nghĩ ra cho phần User story và bảo AI bổ sung hoặc viết chỉnh chu hơn cho User Story.
Thường thì mình có idea về tasks, và cũng hơi hơi làm biết để làm chi tiết, hoặc cụ thể hoá theo 1 cách đầy đủ => Đây là cơ hội để nhờ AI hỗ trợ =))
Mình đưa ví dụ, bạn có thể tự áp dụng thêm nha.
Như ví dụ dưới đây mình có idea về làm tròn số và có nhiều trường hợp khác nhau, mình cứ mô tả theo cách mình hiểu.
Cuối cùng với những dòng mình viết kiểu khá dài dòng, AI có thể đọc hiểu và viết gọn lại cho mình => Thậm chí mình biết ae Dev đang dùng ngôn ngữ lập trình nào, mình copy mẫu luôn cho họ.
Hay ví dụ như viết checklist, testcase mình cũng mô tả rồi nhờ AI hỗ trợ làm rõ và viết ra các cases
Với trường hợp viết testcase như này, bạn cần input thật rõ business rule cho AI để nó viết cho đầy đủ, thậm chí bạn cũng phải suy luận, đọc và kiểm tra lại xem AI đã viết đủ và đúng chưa nữa.
Vẽ Diagram
Mình sử dụng kết hợp ChatGPT + Mermaid hoặc ChatGPT + Draw.io
Các loại biểu đồ mà ChatGPT có thể hỗ trợ gồm:
Flowchart => Tận dụng làm Activity Diagram luôn cũng được
State diagram
Grantt chart
Sequence Diagram (Mình hay sài nhất)
Class diagram
ERD
User Journey
Object Diagram
Mình thì hay sài Flow chart và sequence nhất, mấy loại khác thì mình hay sài kiểu khác hơn. Các bạn cứ thử mò và tìm cách sử dụng nhé, nhớ là tự mày mò => tìm được “AI Prompting” và sử dụng nó nhiều lần để thuần thục nhé.
Bước 1: Cứ nói chuyện với AI (Prompting), sau đó khi AI đã hiểu được bài toán => Bảo tạo ra diagram (với loại Mermaid), ví dụ: “Tạo sequence diagram cho tính năng đăng nhập của giáo viên, các actor trong hệ thống gồm: Teacher, UI, BE, AuthService, sử dụng syntax Mermaid”
Bước 2: Copy đoạn code được tạo ra từ AI, bỏ vào một trong những công cụ hỗ trợ view từ Code sang Diagram.
Mermaid Live Editor: https://mermaid.live/ => Cứ copy code và bỏ vào bình thường theo loại bạn muốn
Dùng Markdown, có thể sài trên github, visual studio code, thì trước đoạn code bạn bổ sung “`mermaid
Hiển thị trên draw.io thì bạn làm theo như hình dưới đây, sau đó paste code vào và nhấn lưu để hiển thị.
Mình hay sài Mermaid/Draw.io nên dùng cách này, các bạn cũng có thể sài những format khác như PlanUML, StartUML nhé.
Vẽ wireframe/mockup
Nói thật với các bạn là có nhiều người nhắn tin hỏi mình về AI để vẽ mấy wireframe/mockup, mà thực sự mình rất ít khi sài :D. Kiểu giống như là cả team mình sài Figma, xong rồi mình đi sài những công cụ khác để vẽ rồi copy qua, khi cần edit nó cũng bất tiện ấy.
Một phần là khi vẽ wireframe, rõ là bước này chính là bước Elicitation của mình luôn, hay đặt câu hỏi, phân tích tới đâu vẽ tới đó, vừa visualize ý tưởng lên cho dễ hình dùng khi phân tích
Chưa kể là mình vẽ wireframe khá là nhanh :v không tốn mấy thời gian, tốn là tốn thời gian ngồi suy nghĩ luồng nghiệp vụ sao cho hợp lý ấy.
Điểm mình quan tâm ở công cụ này đó là làm sao để mình sài, và khi có kết quả được tạo ra => Khi mình bàn giao dự án cho người khác, họ vẫn tiếp tục sử dụng được resource mình đã tạo ra trước đó và họ điều chỉnh, chỉnh sửa. => Các bạn nhớ chọn công cụ phù hợp nhé. Mình thì mình vẫn trung thành với Figma 😀
Ngoài việc sử dụng AI để vẽ, mình còn dùng Pinterest, Behance để tham khảo các ideas để vẽ Wireframe sao cho hợp lí.
Viết lệnh SQL
Mình cũng hay sài để kiểu query, hoặc thậm chí các vấn đề hơi thiên về code tíu là mình sài AI để hỗ trợ.
Dĩ nhiên là yêu cầu người viết cũng cần có kiến thức sẵn về SQL để thực hiện đọc hiểu và xác thực tính chính xác của câu lệnh cho AI tạo ra.
Phần này khá phổ biến nên có rất nhiều AI hỗ trợ, mình thì sài Poe có sẵn ChatGPT, Claude, thì mình sẵn sài những con này luôn.
Bạn có thể xem video dưới đây biết biết cách sài nha.
Mình làm ở mảng blockchain, và dự án đi khá nhanh. Như một bài mình từng đề cập trước đây là khi làm các dự án Blockchain, tỉ lệ cao là hay đi copy lẫn nhau rất nhiều, ví dụ ứng dụng A có trên blockchain Ethereum, nhưng loại ứng dụng A lại chưa có trên một mạng mới, ví dụ Sei blockchain, thì mình sẽ tham khảo các dự án đã build sẵn đó (dự án A), đọc code, đọc tài liệu, cách nó hoạt động.
Các bạn có thể tham khảo các tip sau để nghiên cứu các Domain Knowledge mà các bạn chưa hiểu, hoặc chưa làm qua để học thêm cái mới, hoặc là dự án bắt buộc làm nhưng mình có kiến thức chưa đủ nhiều.
Mình sài Poe, và sài lõi Claude.AI (Claude-3.5-Sonnet) để thực hiện
Mình có những tips sau cho bạn để thực hiện.
Tip 1: Yêu cầu tóm tắt.
Thường thì các dự án blockchain hay có whitepaper, hoặc docs cho Developer, Users.
Thì mình sẽ tải file về, hoặc gửi link docs cho AI, bảo nó tóm tắt nhanh để mình hiểu.
Bước này chính là bước để mình hiểu tổng quan về cách dự án nó hoạt động.
Thậm chí có thể kêu AI vẽ lưu đồ để hiểu cách mà hệ thống đang chạy.
Trong quá trình tóm tắt, có thể bạn chưa hiểu hết thì có thể hỏi lại kỹ hơn để nó giải thích
Tip 2: Hỏi lại những gì AI trả lời/giải thích, để nó trả lời rõ hơn.
Ở bước này bạn có thể đặt lại câu hỏi với ý rõ hơn cho từng phần nhỏ, vì AI cũng không phải thần thánh do đó đôi lúc trả lời thiếu ý, hoặc chưa hiểu rõ kiến thức đó => Hỏi lại
Tip 3: Giải thích như một trẻ em
Thật ra nhiều lúc AI trả lời cũng hơi hơi khó hiểu, do đó bạn hãy bảo nó giải thích như một đứa trẻ em (độ tuổi cỡ 10 hoặc nhỏ hơn), thì nó sẽ giải thích và ví dụ đơn giản để bạn dễ hiểu.
Tip 4: Đặt Q/A, hoặc kiểu câu hỏi giả định
Thường thì trong quá trình giải thích, bạn cần hỏi ngược lại AI khá là nhiều, một trong những câu hỏi mình hay đặt ra là câu hỏi “Giả định”
Ví dụ ở bài toán này mình sẽ hỏi lại là “Có khi nào tiền người dùng bỏ vào Vault thì sẽ bị giảm lợi nhuận (tiền bị âm) không?”
Tip 5: Bảo AI cung cấp thêm keyword để nghiên cứu
Khi bạn nghiên cứu, thường có nhiều từ khoá để bạn học thêm kiến thức liên quan đến dự án, do đó việc hỏi thêm keyword để tự nghiên cứu đi details hơn sẽ giúp bạn hiểu dự án hơn.
Sau khi có danh sách => Bạn bảo nó tiếp tục giải thích các keyword đó.
Tip 6: Sử dụng thêm nhiều nguồn tài liệu khác nhau
Ngoài ra bạn nên cung cấp nhiều nguồn tài liệu khác nhau để AI học và cùng trao đổi => Từ đó nắm rõ kiến thức hơn.
Đọc code và giải thích cách code hoạt động
Như bài toán ở trên, lúc mình tìm hiểu thì cần đụng tới code, hoặc như bài toán subscription mình từng viết trước đây thì cần đọc hiểu API.
Do đó mình luôn nhờ ChatGPT/Claude hỗ trợ trong việc giải thích code, mình thì hay tải code về + attach code vào trong AI để nó đọc và giải thích cách hoạt động.
Và từ đó sẽ hiểu nghiệp vụ của dự án chi tiết hơn => Mà hiểu rồi thì lúc thực hiện checklist, viết các case test cụ thể hơn
Hỗ trợ phần UX Writing
AI có 1 lợi thế rất tốt về ngôn ngữ, do đó mình luôn tận dụng để AI hỗ trợ mình trong việc viết các UX writing khi làm UI cho các dự án.
Ví dụ như 1 tooltip mình không biết phải nên hiển thị gì cho gọn mà đọc dễ hiểu, mình viết những ý của mình ra, rồi bảo AI nó viết lại một số câu phù hợp, và mình đọc cũng như chọn lựa cái nào phù hợp nhất.
Viết docs cho user (User Guide)
Mình hay sài AI để viết docs, đặc biệt là docs viết tiếng Anh.
Input đầu vào là mình hay bảo nó re-write lại nhưng viết hay hơn, dùng từ vựng của level B1 trở xuống (thường mình bảo nó viết theo trình độ A2-B1)
Ở phần này bạn chat và cung cấp ngữ cảnh đầy đủ, ideas từ bạn nó sẽ viết lại khá hay.
Bạn có thể đọc docs này của seitrace.com, mình dùng AI hỗ trợ rất nhiều.
Này chắc các bạn cứ search google là ra nhiều video hướng dẫn lắm. Mình thường nghĩ ra 1 ideas, và trong đầu mình đã phân tích sẵn những cái mình muốn, nhưng nằm ở mức chưa quá rõ ràng details, nhưng về mặt tổng quan đã có.
Lúc này mình sẽ xem AI là một người bạn chuyên gia trong mảng đó, và mình sẽ hỏi đáp, rồi chia sẻ + hỏi cảm nghĩ của con AI về cái ý tưởng đó, rồi bảo nó cho những ý tưởng tương tự 😀
Cái này hơi mơ hồ, với lại mình không thể chia sẻ mấy cái đoạn chat mình đã nói chuyện với AI, các bạn tự nghiên cứu thêm nhé, mình chỉ share ideas thôi.
Tóm tắt nội dung cuộc họp
Otter.ai => Công cụ này các bạn search và sài đi 😀 hịn đó.
Kiểu như vào google meet hoặc một công cụ họp khác như Team, Zoom => sẽ bật con AI lên để sử dụng, nó sẽ hỗ trợ việc ghi lại nội dung cuộc họp, rồi tóm tắt.
Với việc sử dụng cả tháng nay mình thấy nó ghi nhận và tóm tắt khá chính xác nha.
Nó còn tạo sẵn luôn các action cần phải thực hiện luôn (kiểu như tasks – đầu việc)
Theo công cụ này bảo thì nó hiện tại đang hỗ trợ English (US, UK), Spanish, French.
“We currently only support transcribing in English, Spanish, and French; however, we hope to support more languages in the future. Stay tuned!”
Thiệt là mình sài AI hỗ trợ phần viết khá nhiều, đặc biệt là viết tiếng Anh, xưa môn ngữ văn, viết văn có 5/10 điểm à => Tiếng Anh viết cũng dỡ.
Mình cứ viết ý, bảo AI nó re-write lại, hoặc thậm chí là copy từ nguồn khác :v chả lẽ viết lại y chang => Bỏ qua AI nó đổi lại cho :)))
Mà nó viết format khá ok á nha, ae cứ thử nhé.
Mình đã áp dụng cho:
Viết email
Viết nội dung tuyển dụng
Viết Report
Chỉnh sửa proposal
…
Học tiếng Anh
Đối với mình, để làm BA mà sử dụng tiếng Anh giao tiếp được thì trình độ khoảng rơi vào C1 (theo chuẩn IELTs, một số chuẩn khác C1 đôi lúc cũng hơi ảo, kiểu dễ)…
Thì việc mình nâng cao trình độ tiếng Anh lên việc dùng AI cũng là một lựa chọn tốt.
Hoặc sài con ChatGPT 4o á, cũng đang hỗ trợ khá tốt, mình đã test rồi, nhưng bạn nào đã có kỹ năng nói rồi thì luyện với nó sẽ tốt hơn với việc các bạn mới. => Này các bạn cứ search youtube là có mấy video test á.
Viết code/build app
Mình thì lai lai giữa BA, PM, QC, UI Design, rồi cả Dev nữa… không quá giỏi dev nhưng hiểu logic và có thể tự build 1 sản phẩm từ A->Z dạng như CRM, mini app, các app không quá nặng về hạ tầng.
Do đó việc dùng AI hỗ trợ việc code là 1 lợi thế rất lớn với mình 😀
Mình có dùng con Claude Sonnet và Cursor AI. Ae có thể search hoặc nt hỏi mình để sharing thêm nha.
Kết bài
Ở trên là những công cụ AI mình đã sử dụng để phục vụ cho việc làm IT Business Analyst, hi vọng các bạn có nguồn tham khảo cũng như trải nghiệm và có thể áp dụng vào công việc thực tế.
Mới gần đây thôi,… cỡ đâu 14-15 tháng trước, có một anh giới thiệu công cụ kiểu vẽ để present và phát khảo nhanh ý tưởng mà dân Defi (Decentralized Finance – ý nói những người hay nghiên cứu, chơi và build sản phầm tài chính phi tập trung) hay sử dụng.
Từ ngày mình biết tới nó mình sài hơi bị nhiều, vì kiểu nhìn nó như bản vẻ tay, vô cùng thân thiện.
Một số ưu điểm mà mình nghĩ nó over hợp với BA.
À mà đâu phải hợp mỗi BA, mình thấy hợp với nhiều người á chứ, cứ liên quan đến phát khảo idea, present đồ các kiểu là over hợp hết.
Dưới là một số ưu điểm mà mình thấy
Phác Thảo Ý Tưởng Nhanh Chóng: Excalidraw cho phép bạn nhanh chóng phác thảo ý tưởng, tạo wireframe và sketch với giao diện đơn giản, trực quan. Có sẵn một số mẫu để kéo ra sử dụng từ library, giúp phát khảo ý tưởng rất nhanh.
Present Dễ Dàng: Với Excalidraw, việc chia sẻ và trình bày ý tưởng cho team của bạn trở nên dễ dàng hơn bao giờ hết. Bạn có thể vẽ, chỉnh sửa và cùng làm việc với đồng nghiệp chỉ qua một link mà không cần phải tạo tài khoản.
Lưu trữ local/lưu cloud linh hoạt: Khi tạo xong wireframe, có thể lưu lại file vào local sau đó có thể mở ra sử dụng sau đó, hoặc thay vì lưu local, mình có thể lưu trên cloud và sẽ có 1 link để mình truy cập và sử dụng sau này, khi mở link thì những gì mình đã vẽ sẽ còn lưu lại.
Có hỗ trợ export ra hình ảnh png, sgv, copy phần đã chọn để paste (dạng image) vào nơi khác.
Free, không cần tài khoản: Sử dụng hoàn toàn miễn phí, cứ mở link https://excalidraw.com/ lên là sử dụng thôi, và có thế bật lên chế độ cùng chỉnh sửa, nhiều người cùng tham gia edit và phát hoạ ý tưởng trên cùng 1 Canvas.
Thư viện wireframe: Hiện có nhiều thư viện wireframe có thể bạn thêm vào, và kéo thả từ khung thư viện, nào là icons, khung frame web, mobile, wireframe mẫu sẵn, …
Text to diagram (AI): Hiện tại có hỗ trợ text to diagram để lên diagram, flow chart, sequence, class nhanh chóng (bạn xem hình mình để mẫu nhé). => mình có thấy tính năng wireframe to code,… ae có thể sài ChatGPT thử nghiệm thử nhé.
Các công cụ (tools) cơ bản mà một ứng dụng vẽ wireframe cần có như: Thêm hình vuông, hình tròn, ellipse, hình thoi, mũi tên, đường thẳng, đường cong, vẽ pen, thêm text, thêm image, xoá, hỗ trợ group layers, add frame, đổi màu, …
Hỗ trợ tính năng present: Laser pointer, import video, web embed, …
Nhưng vẫn có 1 nhượt điểm đó là thực sự so sánh với những công cụ chuyên cho công việc của chính công cụ đó thì Excalidraw sẽ không bằng.
Ví dụ như vẽ diagram để trình bày trong tài liệu, thì sẽ không thể ngon bằng các công cụ Visio, Draw.io, LucidChart
Hay vẽ wireframe, mockup thì không thể ngon bằng sketch, xd, hay figma được.
Nhưng nếu chỉ xét khía cạnh present và thực hiện nhanh khi đang present, thì công cụ này tuyệt vời với những tính năng và ưu điểm mình nói ở trên.
Thực tế đối với mình khi xử dụng, mình vẽ phát hoạ nhanh bằng Excalidraw lúc đang call với mọi người khi trình bày ý tưởng, hoặc thảo luận về luồng, cách thức hoạt động, cấu trúc hệ thống.
Rồi khi document details lại thì sẽ screenshot màn hình của Excalidraw rồi copy bỏ vào Figma nếu liên quan đến wireframe/mockup => Rồi vẽ lại = figma cho đầy đủ, chỉnh chu. Còn nếu là diagram thì sẽ bỏ vào draw.io rồi vẽ lại để có sản phẩm cuối cùng.
Dưới đây là một số hình minh hoạ, bạn có thể xem qua nhé.
Vẽ sketch/wireframe với Excalidraw.com
Image 1 of 5
Kết bài
Mình hi vọng với bài chia sẻ này, bạn có thể thấy công cụ này hữu ích với công việc của bạn, và giúp bạn tối ưu công việc của mình bởi việc sử dụng nó :D.
Cách đây hơn hai tháng, mình có làm một dự án từ đầu, có luồng đăng nhập bằng email.
Mình có cùng làm với một bạn BA khoảng 2 năm kinh nghiệm, khi mà chia sẻ cho bạn ấy về những lưu ý các loại đăng nhập với email và cách tìm hiểu về UX để thiết kế luồng cho hợp lý với mong đợi của sản phẩm, thì bạn ấy bảo mình là mặc dù đi làm gần 2 năm nhưng lần đầu biết thêm những luồng đăng nhập với email mới này.
Nên sẵn dịp mình chia sẻ với mọi người
Các luồng đăng nhập với email có thể Business Analyst chưa biết hết.
Danh sách luồng đăng nhập với email mình biết
Đăng nhập với email và mật khẩu
Luồng này chắc ai cũng biết hết rồi nhỉ? Người dùng sẽ dùng email và password để đăng nhập, hệ thống sẽ kiểm tra email và password có tồn tại và hợp lệ, nếu có thì sẽ cho phép đăng nhập.
Mật khẩu ở đây có thể được thay thế bằng mã code hoặc dãy mã số,… tuỳ hệ thống.
2. Luồng đăng nhập với email → Sau đó nhập mật khẩu.
Người dùng nhập email, và nhấn tiếp tục, hệ thống sẽ kiểm tra và biết được email này tồn tại trong hệ thống → Sẽ đi tiếp màn hình nhập mật khẩu.
Luồng này thì người dùng không cần phải thoát ra khỏi luồng đang thực hiện, vẫn cùng nằm trên 1 nhóm màn hình (về mặt UI)
Và người dùng cũng cần mật khẩu để đăng nhập, sau khi nhập chính xác mật khẩu sẽ cho phép đăng nhập vào tài khoản.
3. Luồng đăng nhập với email, hệ thống sẽ gửi 1 link vào email để đăng nhập
Khi nhập email, hệ thống sẽ kiểm tra xem có tồn tại tài khoản với email đã nhập hay không, nếu tồn tại thì nhận được 1 email có link, người dùng sẽ nhấn vào link đó trong email để mở ra 1 tab mới và đăng nhập.
Thường luồng này sẽ làm cho người không đi liên tục luồng đăng nhập trên 1 UI mà phải vào email và mở link để có 1 UI mới tiếp tục cho đăng nhập. ⇒ Luồng này thường người dùng không cần tạo mật khẩu.
Hoặc có thể kết hợp nhấn vào link và nhập mật khẩu/mã bảo mật để tiếp tục đăng nhập.
Với luồng đăng nhập qua link trong email này, thì luồng đăng ký cũng được thế kế tương tự khi nhập email mới sẽ gửi một link đến email cho bạn đăng ký tài khoản.
4. Luồng đăng nhập với email, và dùng OTP từ email để đăng nhập.
User sẽ nhập email và nhấn tiếp tục, hệ thống sẽ gửi OTP đến email, trên UI thì sẽ chuyển qua màn hình nhập OTP để đăng nhập.
Thường luồng này cũng không cần mật khẩu cho tài khoản.
Về UX thì người dùng không cần phải thoát ra khỏi luồng giao diện đăng nhập, vẫn cùng trên 1 nhóm màn hình liên tục để nhập OTP. Người dùng chỉ cần vào email check OTP và nhập vào để thực hiện đăng nhập.
5. Đăng nhập với mật khẩu & cùng nhập thêm OTP.
Luồng này thường tăng thêm sự bảo mật cho đăng nhập.
Người dùng phải nhập mật khẩu, rồi còn nhập thêm OTP đúng đã gửi về email để xác thực đó chính là bạn thì mới cho đăng nhập.
Luồng này vẫn cần mật khẩu.
Ta có thể biến thể thành các loại luồng khác ví dụ: nhập email + password → Sau đó authen thêm OTP.
Luồng này nhằm tăng thêm bảo mật cho login với mật khẩu và người dùng không cần phải thoát ra khỏi luồng hiện tại, vẫn cùng trên 1 nhóm màn hình để nhập Password, OTP.
6. Đăng nhập với email → và đó dùng session đã đăng nhập được xét primary để xác thực đăng nhập.
Thường email ở đây đóng vai trò như một định danh của người dùng, và phát hiện tài khoản có thể đăng nhập bằng xác thực của một session (primary) đã đăng nhập trên ứng dụng.
Luồng này có rất nhiều trường hợp.
1. Chọn phương thức scan QR từ ứng dụng đã đang đăng nhập để xác thực (dĩ nhiên có nhiều options cho người dùng chọn, QR là một trong những option)
Người dùng nhập email và nhấn tiếp tục, hệ thống biết được email này tồn tại tài khoản và cho phép vào luồng đăng nhập, kèm theo đó tài khoản được phép đăng nhập từ 1 primary session thì hiển thị option chọn QR để đăng nhập.
Lúc này trên app đã đăng nhập tài khoản với email và được xét primary có thể quét để cấp quyền đăng nhập qua QR.
2. Dùng OTP gửi đến message/notification trong App đang có session đăng nhập
Tương tự như QR, nhưng khi đăng nhập, sẽ gửi 1 mã OTP đến message hoặc notification trên ứng dụng đã đăng nhập trên ứng dụng mobile và từ đó người dùng có thể dùng OTP để đăng nhập.
Đăng nhập này không cần sài mật khẩu
3. Đăng nhập với email và mật khẩu, nhưng cần xác thực cho phép đăng nhập trên device mới từ session primary.
Người dùng nhập email và mật khẩu -> nhấn tiếp tục, nếu tài khoản tồn tại và hợp lệ thì sẽ vào màn hình chờ xác thực từ session primary.
Từ ứng dụng trên mobile (primary device) có hiển thị yêu cầu đăng nhập trên thiết bị mới, lúc này người dùng sẽ chấp nhận để hệ thống cho phép người dùng đăng nhập trên thiết bị mới với email và password.
Kết bài
Hi vọng những chia sẽ trên sẽ giúp bạn biết thêm các luồng đăng nhập với email, từ đó có thể áp dụng phù hợp với dự án của bạn.
Nếu có luồng nào mình còn thiếu cho đăng nhập với email, bạn có thể để lại bình luận nhé, mình sẽ cập nhật bài viết.
Thời gian rồi mình có tìm hiểu để xây dựng các dự án liên quan đến blockchain, và mình cũng đã chìm đắm gần hai năm trong nó rồi. Hôm nay lại rãnh rỗi chia sẻ một số kiến thức về những thứ mình làm đến anh em, cũng như giúp anh em có thêm kiếm thức về Blockchain Business Analyst.
Chủ đề hôm nay là “Token Launchpad có những tính năng gì?”, và tính năng nào quan trọng để từ đó anh em nào vô tình tìm thấy bài viết này có thể rút ngắn được thời gian nghiên cứu và có thể tham khảo để áp dụng cho dự án của các bạn.
Trên thị trường blockchain ngày nay có rất nhiều launchpad, mình tìm hiểu và có những ngày canh kèo để mua launchpad hi vọng có kèo ngon x10 x20 x100. Nên cũng tự hiểu được nỗi niềm của anh em người dùng, từ đó rút ra kinh nghiệm cũng như để build những sản phẩm tương tự.
Trước hết mình sẽ giải thích một số thuật ngữ để anh em biết về launchpad và blockchain nhé.
Các bạn xem bài về các thuật ngữ mình hay dùng khi xây dựng token launchpad ở link dưới nhé
Cơ chế của Token Launchpad (Ở đây là IDO Launchpad) như thế nào?
Cơ chế mô tả ở đây chỉ là một cơ chế chung chung cho token launchpad (IDOs), tuỳ thuộc vào cách hoạt động, mô hình của mỗi dự án khác nhau mà có thể sẽ có sự thay đổi.
Thường các đội ngũ phát triển dự án trên blockchain sẽ có ý tưởng, và xây dựng dự án trên blockchain. Tại thời điểm này họ sẽ xây dựng các Dapp/Business cho riêng họ. Và họ quyết định phát hành tokens.
Tạo token
Bên dự án họ sẽ xây dựng và tạo ra tokens trên blockchain.
Bước tạo tokens có thể đội ngũ họ tự xây dựng smart contract riêng theo cơ chế của dự án, hoặc có thể sử dụng một số công cụ để tạo tokens với cơ chế có sẵn.
Liên hệ launchpad
Bên dự án muốn thực hiện gọi vốn sẽ liên hệ các bên launchpad để được phép đăng bán/gọi vốn/public sale trên các kênh launchpad đó.
Bước này có thể thực hiện từ sớm trước khi tạo token
Tạo pool trên token launchpad
Khi 2 bên đã thoả thuận, thì bên launchpad sẽ tạo pool, đặt các dữ liệu như thông tin dự án, thông tin vesting, hệ thống quản lý vesting, số lượng gọi vốn (softcap, hardcap), ngày xuất hiện trên trang chủ – trong danh sách pool, ngày chấp nhận whitelist, ngày thông báo kết quả whitelist, ngày cho phép swap, các giai đoạn swap, ngày kết thúc mua bán, điều kiện kết thúc mua, ngày được phép claim tokens về ví (theo vesting rule), danh sách đặc biệt, …. rất nhiều thông tin khác nhau tuỳ thuộc vào cơ chế hoạt động của dự án launchpad.
Chuyển tokens từ chủ sở hữu/đội ngũ dự án lên pool
Vì là thường các dự án launchpad sẽ viết smart contract để thực hiện các lệnh mua token theo cơ chế đã đặt ra, và được audit nên pool trên smart contract khá an toàn, và cũng nhờ pool này mà người dùng có thể chủ động swap token và lệnh sẽ được thực hiện thông qua blockchain vô cùng minh bạch, do đó chuyển tokens lên pool giống như mình mang hàng của mình bày ra chợ bán, đợi tới ngày được phép bán thì người mua tới mua trên chợ một cách tự động.
Và tuỳ cơ chế mà có thể chính đội ngũ launchpad cũng không thể rút tokens về được.
Thực hiện luồng whitelist/social tasks
Thường thì whitelist sẽ giúp cho một số lượng người chơi/nhà đầu tư được quyền mua tokens hoặc được quyền ưu tiên mua tokens, do đó sẽ có nhiều phương pháp để làm whitelist, ví dụ như:
Cho chia sẻ, like, follow bài viết trên các trang mạng xã hội.
Cho đi staking đạt được một số rules để có quyền whitelist
Tham gia các activity của dự án Whitelist có thể hiểu như một cái vé hoặc một danh sách đặt biệt được thêm vào trong rules của pool và từ đó pool sẽ tự động nhận dạng và cho phép người trong danh sách whitelist được thực hiện giao dịch hoặc có thể là discount.
Ngoài ra có thể tham gia dạng lottery nữa, sau khi có vé bạn cần phải bước qua bước lottery để được nằm trong số những người may mắn trở thành whitelist.
Nếu users được quyền swap token
Nếu pool đó có whitelist thì xét điều kiện whitelist để users/investors được mua
Nếu pool có yêu cầu KYC thì cũng xét thêm điều kiện KYC
Nếu pool không yêu cầu whitelist thì có thể bán dạng public không qua whitelist
Nếu pool có discount hoặc điều kiện đặc biệt như nắm giữ token để có quyền mua thì cũng xét để users được phép swap
Claim tokens
Thường sau khi swap tokens, tokens không được chuyển ngay tới ví của users/investors mà sẽ đợi đến thời gian claim, user có thể vào và nhấn nút để nhận tokens.
Và giờ đa số các dự án uy tín luôn có cơ chế vesting, thì tuỳ thuộc vào đó mà launchpad cũng có thể có cơ chế vesting và áp dụng cho pool, và phân phát lượng tokens đã swap thành từng đợt claim khác nhau
List DEX
Tuỳ thuộc vào dự án launchpad khác nhau mà cơ chế này tự động hoặc làm tay.
Nhưng mình thấy mấy dự án launchpad xịn xịn hay tự động lắm, xét giờ sau khi xong bước swap là cho tự động list lên DEX luôn.
Rút tiền về túi chủ dự án
Sau khi launchpad xong, có thể chỉ cần xong bước swap thôi, là chủ dự án có thể rút tiền về túi để có tiền phục vụ cho các công đoạn phát triển dự án như marketing, trả lương nhân viên, shill, duy trì dự án, ….
Tiền add vào LP trong DEX (hoặc nếu có cơ chế list DEX tự động) thì tiền LP sẽ tự động trừ ra và chủ dự án không thể rút về, mà hệ thống sẽ tự động add LP sau khi lệnh được kích hoạt.
Tiền sẽ được rút từ pool contract address về ví của nhà đầu tư hoặc ví tạo pool, tuỳ cơ chế được định nghĩa.
Cancel
Các pool không phải cứ tạo ra là lúc nào cũng thành công, mà sẽ có những trường hợp pool bị cancel. Do đó sẽ có các rule hỗ trợ việc cancel pool, và cho phép chủ dự án rút tiền về, cũng như hoàn tiền về cho nhà đầu tư nếu nhà đầu tư đã swap tokens (thường bước cancel sẽ nằm trước bước claim tokens, hoặc có thì phải thực hiện tay sau đó vì không biết tokens về tay investors thì sẽ di chuyển đi đâu rồi)
ví dụ pool không đạt được soft-cap (cancel tự động)
dự án thay đổi kế hoạch
pool cài đặt sai (thường có một số thông tin cấu hình mà sai, khi đã đưa vào pool có thể không thay đổi được)
Model overview
Thành phần
Mô tả
Interface/UI
Là giao diện hiển thị (thường là trên Dapp), giúp cho người dùng giao tiếp/kết nối với hệ thống như đăng nhập, kết nối ví, đăng ký tham gia launchpad, xem thông tin dự án, swap tokens, claim tokens, …
Server
Là layer logic, giúp tiếp nhận thông tin từ interface, xử lý logic, kết nối với tầng database offchain, smart contract, và các bên thứ 3 khác.
Phần logic của app sẽ nằm tại đây.
Database (off chain)
Là nơi lưu trữ dữ liệu offchain của dự án.
Khi bạn tham gia các dự án blockchain và đủ hiểu thì bạn sẽ quen với việc dữ liệu nào nên nằm ở database offchain và dữ liệu nào nên trên on-chain.
Smart contract
Smart contract cũng tương tự như Server, nhưng tầng này bộ giao thức xử lý các điều khoản trên on-chain
Đôi lúc chúng ta có thể chỉ cần gọi lệnh trên smart contract trực tiếp (thông qua explorer như bnbscan, solscan, etherscan,…) mà không cần thông qua server để thực hiện các bước như tham gia pool, swap tokens, claim tokens,…
Blockchain
Tầng lưu trữ dữ liệu on-chain, tranx.
Admin system
Admin system là một hệ thống gồm Interface và server riêng
Nhằm mục đích quản trị hệ thống, tạo pool, chỉnh sửa thông tin pool (nếu có), cài đặt các cấu hình trên dự án, quản trị về profit, tiền đầu vào – ra, ….
Cấu hình này có thể vừa cấu hình dữ liệu on-chain và off-chain.
Wallet provider/user account system
Có thể gọi đây là một tài khoản ngân hàng và user dùng nó đăng nhập hay kết nối vào hệ thống. Khi thực hiện giao dịch, hệ thống sẽ gọi đến và yêu cầu xác nhận như bình thường mọi người xác nhận giao dịch trên momo hay các ví điện tử.
Xác nhận ở đây là kiểu bạn trao quyền để thực hiện một lệnh gì đó, và việc bạn trao quyền như này sẽ được dữ liệu blockchain lưu trữ lại.
Ngoài việc xác nhận giao dịch (có tiền) thì còn xác nhận dạng những giao dịch không có tiền kiểu như xác nhận bạn đồng ý làm một việc gì đó.
Social task system
Ở đây có thể là một hệ thống bên thứ 3 hoặc tự xây dùng để hỗ trợ việc làm tasks của người dùng.
Ví dụ như 1 tài khoản họ follow twitter, thả tym, tweet, đọc bài facebook, …. và được hệ thống social này ghi lại đã hoàn thành những công việc này, trả dữ liệu về cho hệ thống Launchpad để ghi nhận, từ đó có thể có những điều kiện phù hợp để xét whitelist.
Ngoài ra có thể thiết kế whitelist manual để làm riêng biệt hỗ trợ cho việc truyền thông hay activity trong cộng đồng của dự án. Và thêm danh sách này trước thời điểm cho phép swap tokens.
Staking system
Staking system là một hệ thống hoạt động để user có thể stake token của dự án vào, và từ những dữ liệu stake đó + mechanism → Chọn ra người được whitelist.
Nói chung chỗ này tuỳ thuộc vào mechanism của từng launchpad riêng, có thể dựa vào dữ liệu staking, hay phải hold token trong ví, hay là có volume giao dịch hay 1 số điều kiện khác, tuỳ mà điều chỉnh theo mong muốn từ chủ launchpad. |
Tính năng thường gặp
Dựa theo model overview, cơ chế cơ bản của Token Launchpad, mình có thể đưa ra một số tính năng thường gặp như sau.
Trên trang admin
Tính năng
Giải thích/vì sao cần?
Đăng nhập/Đăng xuất
Đăng nhập vào hệ thống/ đăng xuất hệ thống
Thường các dự án mình làm là đăng nhập bằng wallet luôn thay vì đăng nhập bằng user name/password – vì thường các pool muốn được thay đổi hay tạo cần một wallet xác nhận, confirm cũng như được quyền thao tác. Mức độ quan trọng: Cao
Phân quyền
Phân quyền theo cơ chế dự án, thường phân ra super admin và các managers để quản lý từng nhóm project owners/pools.
Cần thì phát triển phân quyền lớn hơn cho các team kế toán, vận hành, phân tích dữ liệu, … Mức độ quan trọng: Trung bình (này có thể set cứng cũng được)
Danh sách pool
Hiển thị các pools Mức độ quan trọng: Cao
Tạo/chỉnh sửa/Cancel pool
Tạo pool và cài đặt thông số pool
Chỉnh sửa pool – thường bị hạn chế vì dữ liệu của pool thường là on-chain và được hoạt động bởi smart contract
Cancel pool nhằm huỷ pool đang hoạt động, và để làm tính năng này nên chú ý cơ chế roll back để trả tiền về lại cho nhà đầu tư (nếu đã swap) và ai trả phí/ multiple sender. Mức độ quan trọng: Cao
Whitelist/whitelist manual
Công cụ hỗ trợ quản lý whitelist/manual whitelist Mức độ quan trọng: TB Cao (giờ đa số đều áp dụng whitelist cho launchpad hết rồi, nên cơ chế này khá quan trọng)
Withdraw
Cơ chế rút tiền từ pool về sau khi thực hiện xong giai đoạn launchpad của một pool. Hoặc rút tiền ngang về khi pool bị cancel. Có thể kết hợp cơ chế commission, fee giữa chủ Launchpad và project owner.
Thường sẽ cấu hình ai sẽ là chủ pool và ai là project owner để việc rút tiền được thực hiện đúng người. Và dữ liệu này khó thay đổi vì đã đẩy vào pool config. Mức độ quan trọng: Cao
Profit report
Bảng report để xem lợi nhuận, chi phí các kiểu… Mức độ quan trọng: Trung bình/Thấp
Trên trang user interface
Tính năng
Giải thích/vì sao cần?
Đăng nhập/connect wallet
Giúp user có thể đăng nhập hoặc connect wallet vào dự án để khi thực hiện lệnh hay tham gia pool thì sẽ lấy tài khoản/wallet đó join pool/tham gia pool Mức độ quan trọng: Cao
Thông báo/notification
Giúp user nhận thông tin về dự án, quản bá dự án Mức độ quan trọng: Trung bình
Pool
Danh sách pool detail, cơ chế sort/filter và có thể xem chi tiết từng pool
Mỗi pool thì có cơ chế có thể khác nhau nhưng cần có bước swap và claim tokens – do đó thường trong pool detail nêu rõ thông tin ngày giờ swap, claim, tỉ lệ swap,… Mức độ quan trọng: Cao
Active pool
Active thì pool mới hiển thị và user có thể swap được – nhằm mục đích tránh tạo pool bị lỗi cũng như trong thời gian chờ để launch thì chưa active ra – kiểu giống giống như draft/ chưa publish post Mức độ quan trọng: Cao/trung bình
Cancel pool
Pool đang hoạt động, có sự cố có thể huỷ pool ngay lập tức hoặc là gọi vốn không đủ Có thể phát triển tính năng hide pool để hide tạm thời để điều chỉnh cho phù hợp và hiển thị trở lại. Mức độ quan trọng: Cao
Max buy
Hạn chế user buy trong FCFS ⇒ Mua nhiều thì nắm tỉ lệ token cao ⇒ dễ điều phối dự án. Mức độ quan trọng: Cao
Joined pool
Danh sách các pool đã tham gia, history các kiểu – tại đây user có thể track lại đã tham gia cái nào, và từng bước ra sao, đã chi bao nhiêu tiền, lời lỗ trên dự án đó như thế nào Mức độ quan trọng: Trung bình
Lottery
Cơ chế đăng ký tham gia (có thể có điều kiện) và từ đó chạy raffle để chọn ra những bạn được whitelist Mức độ quan trọng: Tuỳ dự án – trung bình
Whitelist manual
Cơ chế nạp một danh sách đặc biệt vào pool một cách manual để trở thành whitelist
Thường là dự án muốn một số thành viên trong dự án/đối tác/hỗ trợ việc marketing thì sẽ có một danh sách đặc biệt Mức độ quan trọng: Tuỳ dự án – Trung bình cao
Guarantee Whitelist
Cơ chế những người được whitelist sẽ có chắc chắn một slot để swap token trong một khoản thời gian nhất định, người khác mua trước thì mình vẫn có phần.
Mức độ quan trọng: Tuỳ dự án – caoThường Guarantee whitelist sẽ có đi kèm với FCFS – để tránh trường hợp những người trong guarantee họ không mua hết → vẫn còn cho người khác mua
Hoặc kết hợp với FCFS whitelist tuỳ theo cơ chế nhất định do chủ sản phẩm đưa ra.Guarantee cũng có 2 loại:
– Một là chỉ đảm bảo slot trước, user có tiền mua hay không, hoặc mua bao nhiêu đó thì tuỳ
– Một là user phải bị lock một số tiền trước (kiểu như trả trước/hoặc bị tạm giữ trước) để user đó tới giờ mua sẽ swap đúng số slot đã đặt ⇒ Lúc này thì sẽ không có dư token sau vòng guarantee sale.
FCFS Whitelist
Cơ chế những người được whitelist sẽ được quyền mua trong một khoảng thời gian nhất định, nhưng không cam kết sẽ còn phần để mua – ai trong danh sách whitelist tới mua/swap trước thì được trước, ai tới sau mất phần thì chịu. Mức độ quan trọng: Tuỳ dự án – cao
FCFS
Cơ chế bất kỳ ai (nhưng cũng có thể có điều kiện như phải KYC hoặc có nắm giữ một đồng token nào đó) tham gia swap token – ai tới trước thì có phần trước, ai tới sau mất phần ráng chịu. Mức độ quan trọng: Tuỳ dự án – cao
Vesting
Như mô tả ở cách hiểu vesting ở phần định nghĩa trên, thường sẽ hiển thị chi tiết kế hoạch vesting của những người swap token, và cơ chế giúp user claim token theo từng giai đoạn đó – có thể tự động gửi tới user, hoặc user phải vô claim, hoặc chủ dự án gửi tay
Thường kết hợp với cơ chế locktoken Mức độ quan trọng: Tuỳ dự án – cao
CCY
Hỗ trợ nhiều tiền tệ trên cùng một chain, đôi lúc là hỗ trợ multi chain/multi CCYs
Ví dụ: Trên chain BNB – Thường được raise với BNB và BUSD, hoặc support cả USDT. Mức độ quan trọng: Tuỳ dự án – cao
KYC
Định danh khách hàng
– Người tham gia swap/investor
– Chủ dự ánTính năng này cũng tuỳ định nghĩa mỗi dự án launchpad khác nhau mà thiết kế cho phù hợp. Mình thấy KYC này hay sài của một bên thứ 3 nào đó thay vì bên Launchpad tự thiết kế riêng. Mức độ quan trọng: Trung bình
Tự động listing DEX
Sau khi xong vòng swap, thì có thể chủ động list lên một sàn DEX nào đó theo công thức đã định sẵn và thời gian định sẵn. Mức độ quan trọng: Thấp (Có thể làm tay)
Cơ chế thu phí user
User swap phải trả phí hoặc làm một việc gì đó phải trả phí cho launchpad – cơ chế này rất rộng tuỳ thuộc vào đội ngũ BD rất nhiều, từ đó tích hợp tương ứng với hệ thống Launchpad Mức độ quan trọng: Tuỳ dự án – trung bình/thấp
Cơ chế thu phí dự án
Dự án phải trả một lượng phí cho launchpad và phí này có thể được tích hợp vào hệ thống hoặc làm manual và quản lý bên ngoài hệ thống cũng được. Mức độ quan trọng: Tuỳ dự án – trung bình/thấp
Leaderboard
Tuỳ dự án mà định nghĩa các bảng top khác nhau như top pool bán nhanh nhất, top pool thành công nhất, hoặc top user tham gia nhiều nhất, volume nhiều nhất…. Mức độ quan trọng: Thấp
Discount mechanism
Tính năng giúp cho việc bán giá thấp hơn/giảm giá cho một số lượng user nhất định trong một khoản thời gian nhất định Mức độ quan trọng: Trung bình thấp
Anti-bot
Cơ chế giúp cho việc né bot mua tokens hay chiếm lĩnh thị phần =))
Này cũng tuỳ dự án – thường nếu tích hợp KYC vào thì sẽ né dễ hơn Mức độ quan trọng: Trung bình thấp
Hệ thống đi kèm
Các hệ thống hay tính năng đi kèm theo cho một Token Launchpad
Staking – giúp user stake token
DEX – hỗ trợ việc listing
Bounty/Quest – Tặng quà, vật phẩm khi đạt được một số yêu cầu hoặc chạm được volume từ Token Launchpad, hoặc ngược lại nhận được quyền whitelist cho một số dự án từ bounty /quest system
Máy tạo token (Token Machine) – hệ thống tạo token tự động theo một cơ chế nhất định, hoặc có thể cho phép người dùng tự đặt logic cho cơ chế của token – mình hay gọi là studio.
User Identity, profile – Hệ thống quản lý user hoặc định danh user ngoài ra còn hiển thị profile user, achievement về tham gia Token Launchpad, tham gia Defi, Degen.
KYC – Hệ thống hỗ trợ việc định danh khách hàng/project owner, giúp cho dự án an toàn hơn, không bị thao tám dự án dễ dàng.
Safu – công cụ đo dự an toàn của dự án
Research page – Trang phân tích chi tiết về dự án, chia sẻ thông tin kiến thức hay nhận định về dự án – giúp những tay mơ hay những kẻ đã hiểu biết – biết thêm về dự án
Vesting – hệ thống có thể hỗ trợ việc vesting
Multisig wallet – Dạng đa chữ ký – hiện nay có nhiều đội ngũ với các thành viên được kết hợp ngẫu nhiên/gặp nhau trực tuyến làm cho việc trust nhau không cao, thậm chí là anh em làm việc lâu năm cùng xây một dự án. Tránh việc một thành viên trong dự án tự quyết định hay bán token của họ, làm ảnh hưởng tới dự án – nên công cụ giúp việc xử lý việc ký đồng thuận để xử lý một việc gì đó, đơn giản như việc bán token thì cần 3/4 người/hoặc thiết bị cùng ký thì mới thực hiện được. Này có thể tích hợp vào Token Launchpad để việc đảm bảo team dự án có thành viên tự chủ động bán tháo.
Một số lưu ý khi làm Token Launchpad
Các bạn đọc thêm bài về lưu ý khi làm Token Launchpad ở đây nhé
Xây dựng một Token Launchpad, phải có một số hiểu biết về thị trường, trải nghiệm và từ đó rút ra những bài học hay ho để áp dụng vào dự án của bản thân.
Cơ chế hoạt động của Token Launchpad thật ra dễ hơn rất nhiều hệ thống ở thị trường web2, do đó khi nắm chắc kiến thức hệ thống và phân tích thì trở thành một Blockchain Business Analyst khá là dễ
On-chain thực tế cũng là một bộ server và database
Các kiến thức ở trên có phần nào sẽ giúp các bạn hiểu rõ thêm một ứng dụng Dapps hoạt động như nào, và các thành phần của nó.
Một hệ thống thường kết hợp với nhiều hệ thống bên thứ 3 để hoạt động được đầy đủ.
Mình cũng hơi bận nên viết bài đôi lúc lủng củng về câu cú, cách viết nên các bạn thông cảm nhé. Khi có thời gian rãnh mình sẽ viết thêm. Hi vọng qua bài viết trên sẽ giúp cho các bạn hiểu biết thêm về lĩnh vực Blockchain BA.
Dưới đây là một số thuật ngữ mà mình hay sài cũng như nói chuyện với các bên khi xây dựng một token launchpad.
Launchpad
Thường được đi kèm với hình ảnh tên lửa được phóng lên bầu trời, với ý nghĩa là một nơi bệ phóng Token giúp cho các dự án dễ tiếp cận với nhà đầu tư, hay còn gọi là gọi vốn đầu tư dựa theo lượng users của công cụ launchpad đó hoặc ngược lại.
Vì là bệ phóng nên Launchpad có nhiều loại như ICO – Initial Coin Offering (Lần đầu phát hành token/coin), IDO – Initial Dex Offering – (Lần đầu phát hành token trên sàn DEX), IEO – Initial Exchange Offering (Lần đầu chào bán token trên sàn giao dịch crypto), IGO – Initial Gaming Offering (Lần đầu chào bán/phát hành NFTs/Mystery Boxes/Token liên quan đến GameFi), INO – Initial NFT Offering (Lần đầu phát hành NFT)
Token & Coin
Bạn tham khảo thêm nhiều bài viết để hiểu rõ hơn nhé. Để tránh mình mô tả ngắn gây hiểu sai lệch về 2 khái niệm này. Các từ khoá liên quan: Tiền điện tử, Crypto, Tiền mã hoá, …
White paper
Là một tài liệu để trình bày ý tưởng, kế hoạch phát triển dự án, kiến trúc hệ thống, phân chia token, dự báo tăng trưởng, … Nhằm mục đích chia sẻ minh bạch thông tin về dự án đến nhà đầu tư.
DYOR
Do your own research – bạn tự nghiên cứu về dự án để biết rằng dự án đó tốt không? Những người đi shill dự án chỉ là chia sẻ thông tin – họ không chịu trách nhiệm gì về việc đầu tư của bạn
ROI
Return On Investment – tỷ suất hoàn vốn, là chỉ số đo lường những khoản thu được so với chi phí bỏ ra (thường ở đây là tiền và thời gian).
Ví dụ bạn đầu tư 100$ và sau 1 năm bạn bán ra 500$ ⇒ ROI = ((500$-100$)/100$)*100% = 400%
KYC
Know your customer = quy trình xác minh danh tính của người dùng hoặc chủ dự án. Nhằm biết được người chủ dự án hoặc người tham gia là người thật.
Staking
Staking được hiểu là việc mang một lượng coins/tokens nhất định khoá lại để nhận được một lượng phần thưởng nhất định.
Ngoài ra bạn có thể tìm hiểu thêm Proof of Stake để rõ thêm nhé.
Smart Contract
Là bộ giao thức tự động thực hiện những điều khoản/thoả thuận giữa các bên dựa trên công nghệ blockchain.
Thường là smart contract sẽ được viết code và xử lý các logic mà được ví như những điều khoản trong hợp đồng.
Nhưng vì hợp đồng thường cũng có lỗ hỗng → có thể điều chỉnh hợp đồng cho phù hợp, nên smart contract cũng có upgradable.
Blockchain
Blockchain thì đóng vai trò như một bộ database phi tập trung, lưu trữ thông tin theo từng khối (block) và được liên kết với nhau bằng mã hoá, cứ theo thời gian thì các block này càng dài tạo thành một chuỗi (chain)
Vì là phi tập trung nên dữ liệu được nằm phân tán ở nhiều máy tính khác nhau, và các thông tin được liên kết với nhau và không thể phá vỡ nên thông tin cũng không thể bị thay đổi dưới bất cứ hình thức nào.
Từ này mình hay sài để chỉ các công nghệ blockchain/nền tảng khác nhau.
Ví dụ như Binance Chain, Etherium Chain, Solana Chain ⇒ Multi chain là đa chuỗi/đa nền tảng khác nhau.
Off-chain
Là các giao dịch xử lý và lưu trữ nằm ngoài blockchain
On-chain
Là các giao dịch xử lý và lưu trữ nằm trên blockchain
Audit
Là hành động kiểm tra code trên smart contract xem đã code tốt/có đảm bảo được bảo mật hay chưa? Nếu có lỗ hỗng bảo mật thì báo lại đội ngũ phát triển dự án điều chỉnh để tránh rủi ro về lỗi và hackers.
Một cái hay nữa là thường Audit giúp cho dự án uy tín hơn nhiều, và thu hút thêm nhà đầu tư.
Thường các dự án blockchain liên quan khá nhiều tới tài sản (coin/token) nên cần được audit cẩn thận bởi những đội ngũ có trình độ cao.
Nhưng không phải dự án nào audit rồi cũng an toàn 100% nha 😀
Pool
Mình định nghĩa từ này trong các launchpad mình tham gia, cũng như build.
Pool ở đây nghĩa là một nơi/một cái hồ/một contract address được sinh ra để chưa tokens/coins/NFTs/… từ đó dựa vào cơ chế xây dựng trên smart contract mà phân phối tokens sao cho phù hợp theo logic đã được định nghĩa.
Đôi lúc lại hiểu nó như một dự án launchpad.
Social task
Là các nhiệm vụ nhà đầu tư phải làm như chia sẻ lên facebook, theo dõi một bài viết, nhấn like, bình luận một bài viết, truy cập trang web,…
Mục đích tuỳ thuộc vào cơ chế hoạt động của dự án, có thể là để có quyền được tham gia launchpad của pool, hoặc có cơ hội, hoặc được quyền nhận miễn phí tokens,…
Whitelist
Kiểu như một danh sách các wallet hoặc một định danh nào đó đã được chọn lọc để có quyền tham gia một chương trình đặc biệt nào đó. Cụ thể ở đây là được quyền tham gia pool.
Tokenomics
= Token + economics: Thường là mô tả về cách token hoạt động trong nền kinh tế như: Tổng số lượng tung ra là bao nhiêu? vốn hoá như thế nào? phân bổ tokens ra sao? Các tiện ích gồm những gì?
FCFS
First Come First Served – ai đến trước thì được tham gia trước, thường là dành cho các pool được tham gia rộng rãi tới mọi người, và ai nhanh tay thì được tham gia trước.
Allocation
Sự phân bổ tokens, nhưng còn được hiểu là phần tokens được dành riêng cho một nhà đầu tư, một tổ chức đầu tư.
Ví dụ như cái bánh 10 phần chia cho 5 người, mỗi người 2 phần.
Thì 2 phần này là allocation của 1 người nào đó được chia.
Raffle
Là kiểu xổ số – quay ngẫu nhiên để chọn những người chiến thắng.
Vesting
Một nhà đầu tư nào đó tham gia để mua tokens, nhưng mà không phải được lấy toàn bộ token và ưng bán đi lúc nào thì bán. Mà phải được dự án giữ lại hoặc khoá lượng tokens đó lại, và chỉ được mở ra theo lộ trình nhất định. Quá trình này gọi là vesting → Nhằm tránh nhà đầu tư xả hàng hàng loạt hoặc thao túng thị trường → giúp cho dự án an toàn hơn, có thời gian để phát triển dự án.
DEX
Decentralized Exchange – là loại sàn giao dịch crypto phi tập trung. Thường mấy IDO Launchpad pool xong sẽ list trên DEX.
Lưu ý
Sẽ có những khái niệm trong blockchain mà bài viết này không thể mô tả hết được, bạn vui lòng tìm kiếm thêm trên google nhé.
Upgradeable Smart Contract: Thường thì khi phát triển sẽ có đôi lúc cần update lại smart contract để cho phù hợp với nhu cầu BD, nên việc để smart contract ở upgradeable giúp cho việc thay đổi sau này, dĩ nhiên là thay đổi sẽ nên audit lại Mình bị dính một vụ để Smart Contract không thay đổi được – từ đó bó thay để chỉnh sửa khi mong muốn cập nhật.
Audit kỹ: Audit giúp cho smart contract an toàn, tránh bị hack – do đó nếu có chi phí/budget thì hãy đầu tư cho audit thật kỹ. Nhiều dự án đã bị hack rồi 😀
Chưa kể cơ chế launchpad là pool nắm giữ token và tiền investors đã swap – nên tránh hack/đảm bảo security là yếu tố quan trọng hàng đầu.
Một số bên Audit được biết đến trong thị trường Crypto:
Cơ chế nên định nghĩa đầy đủ từ ban đầu – định nghĩa rõ cơ chế ban đầu giúp cho tiết kiệm khá nhiều thời gian, chi phí để phát triển dự án. Thay đổi càng nhiều thì ảnh hưởng tới tiến độ và chi phí.
Có cơ chế Cancel pool – cơ chế này mình thấy cực kì quan trọng vì phía dự án đôi lúc sẽ có 1 bất trắc gì đó hoặc lỡ gọi vốn không đủ mình có thể thực hiện cancel pool ngay. Cơ chế này có thể làm manual hoặc tự động cancel và hoàn tiền cho user theo điều kiện.
Nên có tính năng whitelist manual – vì có một số trường hợp đặc biệt sẽ được mua token mà không cần thông qua các bước như user bình thường như partner, anh em trong dự án,…
Quan tâm đến cơ chế realtime database – việc cập nhật dữ liệu real time rất quan trọng, đôi lúc cập nhật chậm làm cho việc thực hiện swap token không suôn sẻ hoặc đang thấp được phép mua, nhấn vào thì mua không được…. nên cần suy nghĩ về cơ chế này để dữ liệu cập nhật được sớm nhất trên client/interface.
Hiển thị thông tin cơ bản chung chung ra ngoài – Việc tìm/săn dự án trên launchpad là chuyện của nhiều Degen hay làm, do đó nếu interface hỗ trợ show một số thông tin cơ bản nhưng mà quan trọng cho những tay săn, họ có thể xem từ vòng danh sách thay vì phải nhảy vào từng pool đọc chi tiết → Tay săn có thể lựa từ bên ngoài và xem chi tiết dự án nào đó nếu cần.
Cơ chế vesting nên hiển thị rõ ràng – Nhà đầu tư rất quan trọng việc vesting khi tham gia Launchpad, nên hiển thị thông tin Vesting càng rõ ràng càng tốt.
Dự án KYC phải đánh rõ để tăng độ trust ⇒ Do đó tích hợp tính năng KYC là một điều nên làm.
Hiển thị warning rõ ràng để người dùng biết tiền đi đâu rồi, khi nào tiền, token về, trao quyền cho ai/hệ thống nào, làm việc gì ? Vì hiện tại trên crypto khá nhạy cảm về tiền bạc, và cũng như sự thiếu hiểu biết của người sử dụng → Do đó càng rõ ràng chi tiết thì càng tốt. Dĩ nhiên là cần kết hợp các thông tin/dữ liệu này sao cho hợp lý tránh complex UX.
Decimals – là số dư đằng sau dấu phẩy, thường nó lại dính tới Decimals của tokens nữa, nên cần chú ý về điểm này khi làm tròn số.
Money flow: Dòng tiền trong dự án – khá liên quan đến cơ chế business – và suy nghĩ kỹ để thiết kế tiền chạy từ túi user sang túi của project owners/launchpad owners như thế nào cho phù hợp. Mình bị mắc phải lỗi này khi bị phụ thuộc vào một 3rd system quá nhiều – từ đó làm cho money flow bị lệch, khó quản lý – nên phải làm tiếp 1 ver để nâng cấp, làm tốn nhiều chi phí.
Mình là một user của Adobe XD, phải nói là cực kỳ thích sài ẻm. Bắt đầu sử dụng từ phiên bản Beta đầu tiên tên ”Adobe Experience Design CC” vào tháng 03/2016, và còn sài đến hiện tại với tên chính thức là Adobe XD.
Mình sài Adobe XD từ việc làm đồ án thời sinh viên, đến khi đi làm thì sài ẻm trong công việc hằng ngày, đặc biệt là với công việc Business Analyst. Và ngay cả những lúc làm freelancer với anh em cũng mang XD ra để thiết kế dạng product design cho các dự án của team. Và cái hay của Adobe XD là được sử dụng miễn phí với phiên bản Starter Plan.
Nên khi đi làm việc mình sử dụng quen và thích sài XD là một chuyện thường tình. Trong lúc làm dự án với anh em trong công ty, mọi người thì sài Axure, mình thì sài XD nên không đồng bộ được, nên mình lên chị google tìm cách đồng bộ các source từ 2 bên với nhau – chưa kịp tìm được cách đồng bộ source, thì vô tình mình lượm được mẹo review wireframe/mockup dễ hơn khi kết nối XD và Axure Cloud.
Lưu ý là bài viết này dành cho những bạn thích sài XD (miễn phí) và muốn sử dụng thêm mẹo này, thay vì sài những công cụ có sẵn như Figma (miễn phí và trả phí), Axure (trả phí),…hoặc chính bản gốc Axure XD Share (bị giới hạn cho phiên bản Starter)
Tình huống review wireframe/mockup mà Business Analyst thường dùng.
Dưới đây là những tình huống review wireframe/mockup hay gặp:
Gặp khách hàng/đồng nghiệp (KH/ĐN) trực tiếp, mở file lên để review
Gửi nguyên file source cho KH/ĐN để họ mở trên phần mềm của họ và xem (điều không được hay đó là có thể khách hàng có thể không sài chung phần mềm với mình, do đó họ không mở được luôn, nên sẽ có trường hợp sài cách thứ 3 và thứ 4 dưới đây)
Export file hình ảnh/pdf và gửi cho khách hàng để họ xem và đánh giá trên hình ảnh, có thể là note comment ngay trên hình ảnh luôn.
Copy hình bỏ vô file word offline hoặc docs online cho khách hàng xem và review với tính năng comment trên word/docs (hoặc tool công cụ như excel,…).
Export ảnh ra và copy ảnh lên phần mềm cho phép review online (Ví dụ như Axure, Invision,…)
Sử dụng tính năng sharing and reviewing của công cụ đó (Ví dụ như Adobe XD Share designs and collaborate, Balsamiq sharing and collaborating) – nhưng công cụ này sài nhiều có trả phí.
Đối với bản thân mình thì từng sử dụng tất cả các cách trên, và mình dần dần chuyển đổi dần qua cách mới tốt hơn. Và mẹo mình chia sẻ ở bài viết này chính là cái mình thấy tiện và dễ sử dụng nhất, do đó chia sẻ cho anh em để dùng thử, biết đâu lại thích như mình.
Note: Bạn đọc nào chưa sài 1 trong 6 cách trên thì comment ở dưới, mình viết hướng dẫn cụ thể cho nhé.
Mẹo mà Hoàng hay sài
Đây là một tính năng trên Axure Cloud – gọi là Publishing Artboard Projects, tính năng này giúp user publish source từ các phần mềm khác: Sketch, Adobe XD, Figma, lên Axure Cloud và chia sẻ cho những thành viên khác, và có cả chia sẻ public – được comment không cần tài khoản Axure Cloud (Đây là điểm khác so với Figma).
Đặc điểm:
Hoàn toàn miễn phí (adobe XD starter + Axure Cloud)
Được sài XD theo mong muốn của bạn (giống mình, thay vì sài các tool tương tự)
Bước 5: Trong XD, chọn artboard muốn chia sẻ để publish lên Axure Cloud.
Bước 6: Trên top menu, chọn Plugins > Axure > Export Selection to Axure Cloud. (Lưu ý là phải mở app Axure Cloud trước nha, không mở nhiều khi lỗi không hoạt động được)
Bước 7: Trong Axure Cloud App, bạn chọn workspace và artboard project mà muốn publish lên. Nếu chưa có sẵn thì bạn tạo mới “Create New Project” và đặt tên dự án “Project Name” – và lưu ý bạn chọn Project size cho phù hợp nhé, ví dụ thiết kế ở size Iphone 12 thì chọn iPhone 12 (390 x 844)
Bước 8: Nhấn Upload, sau đó chia sẻ cho KH/ĐN để comment – và ở đây bạn cũng có thể chia sẻ với mật khẩu (Access Code) hoặc dạng private cho tài khoản cụ thể.
Bước 3: Chấm 1 điểm bằng click chuột trái vào vị trí muốn comment
Bước 4: Add comment
Bước 5: Nhấn Post
Bước 6: Bạn có thể comment bởi đăng nhập hoặc a guest (điền email bất kỳ)
Bước 7: Team review tất cả, sau đó BA hoặc các bên khác có thể update lại wireframe/mockup
Bước 8: Mark Resolved các comment nào đã được giải quyết, hoặc delete comment.
Áp dụng cho chia sẻ Wireframe từ Balsamiq.
Cơ bản thì mình copy image từ Basamiq qua XD, rồi share lên Axshare để mọi người có thể thảo luận và comment trên đó. Các bước mình thường thực hiện như sau:
Bước 1: Chọn vùng cần copy trên balsamiq
Bước 2: Nhấn Command + C (trên MacOS) để copy vùng chọn. (Đọc thêm phần hướng dẫn export/copy image ở hướng dẫn ở balsamiq để biết thao tác trên Windows nhé, xưa mình nhớ phím tắt nó phải 3 nút lận mới copy được)
Bước 3: Nhấn Command + V (trên MacOS) để paste hình ảnh lên XD
Mình trình bày ở XD như sau:
Bước 4: Share lên Axure Cloud như hướng dẫn ở trên (Project Size thì chọn Auto Web), sau đó copy link gửi cho KH/ĐN
Phía trên là mẹo sử dụng Axure Cloud để chia sẻ wireframe/mockup đến ĐN/KH để dễ dàng review và comment cho một Business Analyst. Giảm thiểu chi phí cho cá nhân người sử dụng khi được sử dụng miễn phí cả Adobe XD Starter và Axure Cloud, khi mà công ty các bạn không/chưa hỗ trợ trả phí cho việc sử dụng phần mềm trả phí.
Dĩ nhiên có nhiều công cụ, tính năng tương tự nhưng đây là mẹo dành riêng cho Adobe XD Starter, đặc biệt là đối với các bạn thích dùng Adobe XD Starter giống mình.