Loading...
Tìm kiếm

Tag Archives: Analyst

Nhân dịp đầu năm 2024, BA Zone (Hoàng làm Admin tại cộng đồng này) ra mắt trang tin BA School. Với mục tiêu kết nối và mang lại giá trị cho cộng đồng. Đội ngũ BA Zone tổ chức một sự kiện miễn phí dành cho cộng đồng Business Analyst Việt Nam.

Sau một thời gian dài lắng nghe tâm sự về những khó khăn khi làm Business Analyst nhưng chưa biết bắt đầu từ đâu. Nhất là trong bối cảnh thị trường tuyển dụng BA ngày càng khó hơn như hiện tại. Ngoài kiến thức nền tảng, các doanh nghiệp lớn giờ đây đã đưa những yêu cầu về ứng viên cần có chứng chỉ BA quốc tế như CCBA, CBAP như một điều kiện bắt buộc cần có.

IIBA cũng đưa ra thống kê những ứng viên có chứng chỉ quốc tế có nhiều cơ hội việc làm tốt hơn và có mức lương cao hơn 12%.

Vậy nên đội ngũ Admin BA Zone đã quyết định tổ chức một buổi Workshop online để giúp các bạn tìm hiểu về nghề BA dễ dàng hơn. Đặc biệt là giúp các bạn đang làm Business Analyst có kế hoạch thi chứng chỉ quốc tế như CCBA, CBAP được thuận lợi hơn.

Trong buổi workshop này, chúng ta sẽ cùng nhau chia sẻ những nội dung:

Phần 1: Giới thiệu cộng đồng BA Zone

Phần 2: Lộ trình phát triển nghề Business Analyst

Phần 3: Giới thiệu tổ chức IIBA và các chứng chỉ BA Quốc Tế

Phần 4: Kinh nghiệm thi chứng chỉ CCBA và CBAP 

  • Cách ôn thi chứng chỉ BA hiệu quả, tiết kiệm chi phí
  • Cách đọc sách Babok v3 hiệu quả
  • Hướng dẫn làm đề thi thử
  • Những kinh nghiệm khi làm bài thi
  • Những vùng kiến thức trọng tâm cần biết khi thi CCBA/CBAP
  • Những mẹo làm bài giúp bạn tăng tỷ lệ đỗ chứng chỉ

Phần 5: Giao lưu, trao đổi cùng khán giả.

Buổi Workshop có sự góp mặt của các khách mời là đội ngũ Admin BA Zone:

Host chương trình:

  • Phúc Nguyễn – Founder BA Zone | Business Analyst Lead VNPAY
  • Hoàng Phan – Admin BA Zone | Co-Founder Cavies Labs

Chia sẻ nội dung chính về CCBA/CBAP:

Mai Thị Ánh Hồng | BA Lead Viettel AI

Certification of Capability in Business Analysis™ (CCBA®)

Certified Business Analysis Professional (CBAP®)

Project Management Professional (PMP)

ISTQB

Ms.Hồng có hơn 5 năm là Kỹ sư Giải pháp nghiệp vụ tại Viettel AI.

Tham gia phát triển nhiều sản phẩm lớn trong lĩnh vực Phân tích dữ liệu và Trí tuệ nhân tạo…Đặc biệt với vai trò Admin, Mentor BA Zone Ms. Hồng sẽ chia sẻ những kinh nghiệm rất hữu ích về kì thi CCBA và CBAP.

Hà Mạnh Trí Toàn | Senior Business Analyst

Bachelor of Business in Information Systems, Minor in Logistics and Supply Chain -RMIT

Master of IT – Major in Information Systems and Business Analysis – Griffith University – tại Úc
Certification of Capability in Business Analysis™ (CCBA®) – IIBA – 2020

Certified Business Analysis Professional (CBAP®) – IIBA – 2023

Trong quá trình làm Business Analyst, Mr.Toàn cũng đã thi 2 chứng chỉ BA chuyên nghiệp dành cho BA đó là chứng chỉ CCBA năm 2020 và chứng chỉ CBAP năm 2023. Đây là chứng chỉ cao nhất do IIBA quốc tế cấp. Đặc biệt Mr. Toàn còn chia sẻ kinh nghiệm thực tế khi du học Master BA dành cho các bạn quan tâm.

Với Workshop lần này, đội ngũ Admin mang đến những kiến thức, kinh nghiệm, trải nghiệm về nghề BA. Những kỹ năng nền tảng cần có để giúp BA phát triển hơn trong sự nghiệp.

Đặc biệt sự kiện online miễn phí vì cộng đồng – Bên cạnh đó các bạn sinh viên năm 4 tham gia sự kiện còn có cơ hội được tham gia chương trình “BA Zone Mentorship Program” miễn phí dành cho các bạn sinh viên muốn làm BA.

Với phương châm “Learning and Sharing Knowledge for BA”, mục tiêu của BA Zone là nơi học hỏi, chia sẻ và giúp cộng đồng BA phát triển.

Thời gian diễn ra sự kiện:

Đặc biệt sự kiện giới hạn chỉ có 100 vé tham gia, các bạn nhanh tay đăng ký. Chúng tôi sẽ gửi thông tin chi tiết đến email của bạn

Giới thiệu chung

Mình bắt đầu sử dụng công cụ Figma đã được gần 2 năm, trước đây rất lâu được nhiều bạn giới thiệu nhưng vì những công ty mình làm việc qua đều không sử dụng công cụ này.

Nhưng khi có cơ hội được vào một môi trường startup, nơi mà tất cả mọi thứ chưa được định hình, tự công cụ quản lý, process – quy trình, vận hành, đội ngũ, và cả những công cụ sử dụng để vẽ wireframe/mockup/design/prototype.

Do đó mà tại thời điểm đó mình mạnh dạng đề xuất quy trình vận hành, và tất cả công cụ cho đội ngũ công ty sử dụng (và đặc biệt là team Tech), những công cụ mình đề xuất gồm có:

  • Công cụ quản lý task/process: Sử dụng Jira hoặc Larksuite hoặc Notion
  • Công cụ viết tài liệu: Notion hoặc Confluence
  • Công cụ vẽ thiên về wireframe/mockup/prototype: Figma
  • Công cụ brainstorming: Figma & Miro
  • Công cụ vẽ diagram: Figma Jam và Draw.io
  • Kênh chat trao đổi: Sài mặc định công ty đang sài Telegram
  • Meeting: Google Meet/GG Calendar
  • Một số công cụ riêng cho team Dev như Github/Gitlab, CI/CD, DB: MongoDB, Postgre,… thì do ae chuyên về Dev tự đề xuất cho phù hợp mình follow theo.

Công cụ Figma

Giới thiệu xong rồi thì vào phần nói về Figma thôi.

Thực ra công cụ này được giới làm UX/UI biết tới nhiều hơn dùng để vẽ UI (User Interface) và làm về UX (User Experience), nhưng dĩ nhiên khi làm những công việc BA vẫn có thể sử dụng nó, vì dùng Figma ta có thể vẽ Wireframe, Sketch, Mockup,… rồi dùng để brainstorming, và vẽ cả diagram (thường mình vẽ activity diagram ở đây)

Vì sao mà mình lại đề xuất sử dụng Figma như vậy?

Thực tế là mình đã sử dụng qua rất nhiều công cụ dùng để vẽ wireframe/sketch/mockup, làm prototype và trao đổi với đồng nghiệp như là: Axure RP, Balsamiq Mockup, Adobe XD, Sketch, thậm chí từng làm việc với Photoshop để view wireframe/mockup khi đi làm cho các dự án/công ty. Và dùng thử qua các công cụ kiểu như FluidUI, Mockflow,… nhưng chưa áp dụng vào công việc thực tế.

Nhưng vì có những ưu điểm mà mình thấy nó đã hội tụ đủ mọi yêu cầu về công việc của mình:

  1. Miễn phí/paid: nếu mình áp dụng cho công ty thì sẽ dùng bản trả phí, còn nếu mình làm freelancer mình sài phiên bản miễn phí, tối đa là 3 figma files và 3 figjams. Nếu bạn dùng phiên bản Education (free 2 năm) thì sẽ không giới hạn số file, số pages và có thể cùng với những người khác edit chung 1 files, cuối bài viết mình sẽ hướng dẫn đăng ký.
  2. Vẽ wireframe và mockup: Dĩ nhiên công cụ này để vẽ UI/UX nên việc dùng để vẽ được wireframe và mockup là điều hiển nhiên được 😀
  3. Thiết kế prototype: Mình thường hay present design cho đối tác và anh em trong team, hoặc present trực tiếp với ae đội ngũ C-level, nên việc có tính năng prototype sẽ rất tiện để trực quan hoá một design/wireframe/idea hay luồng trong khi build một ứng dụng.
  4. Vẽ diagram, brainstorming: ở Figma có tính năng Figjam giúp vẽ diagram rất tiện, còn có hỗ trợ các widget như đếm giờ hay note trực tiếp trên canvas => dùng thảo luận brainstorming rất đã.
    Nhưng thực tế là mình sài draw.io cho việc vẽ diagram nhiều hơn :D, draw.io nó được tích hợp trong confluence nữa.
  5. Comment xuyên lục địa, cộng tác đa người dùng: yeah, tính năng này mình cực kì thích khi mà phải làm việc với nhiều stakeholders khác nhau, nên việc có thể cho nhiều người vào xem, phân quyền view only hoặc cho edit, và có thể comment góp ý trực tiếp trên chính xác vị trí đề xuất, tính năng này tuyệt vời hơn trên XD Cloud và Axure, Balsamiq cloud khi mà comment nó đôi lúc bị trật chỗ, chưa kể trên XD nó cho webview tách từng frame nằm trên 1 page rất khó để review, chưa biết nay đã update lại chưa :D. Yeah, cái này mình thích nhất á =)). Đã đã.
  6. Chia sẻ dễ dàng, nhiều người cùng vào xem mà không cần gì cả: Như mục 5 có nhắc, thì chỉ cần chuyển qua view with the link by anyone, thì ai có link đều có thể xem design mà không cần tài khoản, nên khi đó ai hỏi mà họ được quyền xem design => Đưa họ cái link là họ xem được rồi. Xưa mình sài Balsamiq desktop, nên việc share này cực kì mệt, chưa kể phần góp ý cứ screenshot rồi edit trên screenshot rất là mệt.
  7. Các thiết kế cùng nằm trên 1 canvas/project, zoom nhỏ ra để xem tổng quan và zoom to vào để xem chi tiết: Này thì mình nghĩ giờ nhiều công cụ đã hỗ trợ, nhưng bên figma có hỗ trợ mấy tính năng ở mục 5, 6 thành ra thấy tính năng này khá tiện.
  8. Tài nguyên phong phú (free & trả phí), mình có thể lên Figma Community và tải về các thiết kế có sẵn hoặc mẫu wireframe, nên khi mà thiết kế wireframe, mình hay dùng các component mình clone sẵn và gọi ra để sử dụng, nên vẽ rất tiện luôn. Ví dụ mình thường có các component sẵn như Popup thông báo (với nhiều style như 1 button, có nút close, hoặc popup có 2 button, …), Buttons, Tables, …
    Ngoài ra có các widget và plugin nơi mà mình dùng icon miễn phí (đôi lúc là trả phí), và nhiều thứ hay ho khác, bạn nên sài và thử nghiệm 😀
  9. Sử dụng component: Như mình chia sẻ ở trên, thì có component nên khi mình vẽ wireframe rất tiện luôn, đầu tiên là clone component qua 1 project mới, rồi sau đó khi vẽ sẽ gọi ra sử dụng và sửa content, thay vì phải vẽ từ đầu từng elements rất chi là cực. Nên rất là speed up thời gian mình hoàn thành tasks. 
  10. Dễ dàng học và sử dụng: Theo mình thì nếu bạn đã quen sử dụng 1 công cụ design thì việc sử dụng Figma rất chi là dễ, thậm chí là có thể bạn chưa sài nhiều thì tiếp cận nó rất dễ, trong cty mình nhiều bạn chưa sài bao giờ, mình chỉ làm 1 buổi seminar chia sẻ thôi thì về các bạn sài được hết mà gần như không có Q/A gì thêm, vì các bạn đó chỉ sài tính năng basic nên sẽ ít hỏi lắm 😀 còn ông nào làm chuyên design thì không kể tới nhá, mấy cái như variants, effects, auto layout, different states,…
  11. Kết hợp với team design, review design/luồng: Này thì như mục 5, 6 khi mà mình vẽ wireframe xong, cùng trên 1 project đó design sẽ mở page riêng và vẽ design trên đó, dữ liệu thiết kế được tổng hợp tại một nơi, rồi từ đó mình cũng review design trực tiếp bằng comment luôn, nghĩa là team BA/PO và UX/UI Design sài chung 1 project trên figma.
  12. Dùng như một công cụ để mình thiết kế banner/standee/…: Mình hay sài như này để thiết kế banner/standee/ rồi mấy hình cần thiết, mình xem nó như 1 công cụ giống Adobe Illustration (AI), bao gồm cả việc thiết kế logo luôn nha khi mà mình có thể export file vector hay export png, pdf,…
  13. Đôi lúc export ra được html để xem trước trên webview như một website thực sự: Này thì sau khi thiết kế ra xong, mình hay export ra html rồi mớ view trên các screen khác nhau, lý do là khi view trên canvas đôi lúc nó bị sai size và mình không nhận ra được sự khác thường, mình từng bị trường hợp này rồi khi thiết kế nhìn trên canvas nhìn rất ok, nhưng khi dev ra sản phẩm, layout nhìn rất là chán vì các element bị bự ra so với cách mình nhìn trên canvas,… màn hình bự cỡ 27, 32 inch thì không sao, chứ khi trên màn hình cỡ 14 inch là nhìn nó chán lắm. Nên tính năng này cũng là thứ cần thiết (dĩ nhiên là có thể làm kiểu prototype để view cũng đc, nhưng html giúp mình xem nó real hơn 1 tíu).

Còn mấy lý do khác thì giờ mình chưa nghĩ ra,… khi nào thấy có thêm thì mình bổ sung vào bài.

So sánh Figma với các công cụ khác

Thực ra tính không viết phần này, vì đa số các công cụ mình sài chưa hết tính năng đâu, chỉ sài 1 phần các tính năng, nên khi so sánh sẽ bị thiếu sót gì đó,.. nhưng mình cứ chia sẻ theo quan điểm và cách mình sử dụng để mọi người có thể thấy 1 cách nhìn nhận nào đó hé.

Chắc nói mấy cái hơn của Figma đi ha, tại giờ mình mê Figma quá nên …. à…

  1. So với Adobe XD:
    • Dễ comment, review hơn, trên XD lúc comment nó hay bị sai vị trí sao đó
    • Dễ sharing hơn, trên XD nó bị 1 lỗi là nó tự động zoom hơi bị to so với size mình thiết kế, chưa kể zoom in, zoom out không được mượt lắm
    • Mình thấy XD hỗ trợ phần component không được xịn như trên Figma lắm, sài Figma sướng hơn nhiều, chưa kể trên Figma có nhiều thư viện bao đã.
    • Thật ra mình thích cách dùng XD để thiết kế banner/standee, logo nha, xưa là sài XD làm việc đó không á
    • Trước khi sài Figma, thì công cụ chính mình sài là XD, nhưng khi sài Figma nhiều rồi thì lại sài Figma nhiều hơn.
    • XD giờ không có bản free nữa, xưa có giờ thì không còn.
    • XD thì mình chưa thử nghiệm làm việc với member khác kiểu nhiều người edit 1 file, nên k review chỗ này.
  2. So với Axure:
    • Axure xưa mình phải sài crack rất cực luôn, phải trả phí để sài (không biết giờ có bản free chưa), nhưng có bản cho students/teachers dùng free 1 năm.
    • Khúc làm prototype bên Axure hơi bị cực
    • Lúc vẽ wireframe mình cũng thấy cực nốt, cực hơn khi vẽ bên Figma rất nhiều, kiểu vẽ từng elements, rồi đổ dữ liệu vào, với lúc ra element nhìn như thời window hay kiểu UI của element nó cũ cũ sao đó.
    • Được cái nó hỗ trợ kiểu như Git để mà làm việc với team, nhưng mình lại thấy hơi phức tạp để sài.
    • Mình thấy công cụ này mà kiểu công ty bự bự sài sướng, crack để sài nên cũng giảm bớt chi phí sử dụng cũng ok.
    • Axure cũng có các thư viện khá là okela như Figma.
  3. So với Balsamiq:
    • Balsamiq mình sài ver 3, có key free, còn ver 4 thì phải trả tiền.
    • Sài ver desktop nên khi làm việc với members khác sẽ khó, phải export rồi gửi file xong import, quản lý version rất cực
    • Bản cloud thì buộc phải trả phí => cũng phần làm việc với team khá ok chỗ này, cũng ok chỗ quản lý version luôn.
    • Được cái Balsamiq mình thấy còn dễ sài hơn cả Figma, nhưng mà cũng bị giới hạn phần components và elements có sẵn, muốn sài xịn phải tự define ra khá là cực.
    • Balsamiq vẽ wireframe cũng nhanh, nhất là mấy cái liên quan đến table thì balsamiq là nhanh lắm (so với các công cụ khác)
    • Mình cũng có quay khoá hướng dẫn sử dụng Balsamiq, ae thử xem qua nhé.
Đọc thêm  Khoá học nghiệp vụ Blockchain cho Business Analyst

Cách đăng ký miễn phí Figma sài trong 2 năm (Education).

Bước 1: Truy cập Figma Education

Bước 2: Nhấn vào Get verify

Bước 3: Đăng ký tài khoản 

Với việc bạn có tài khoản thì bỏ qua bước đăng ký mà đi trực tiếp vào link apply student program nhé.

Bước 4: Điền thông tin sau khi đăng ký

  • Điền tên, Làm vị trí gì
  • Và cái số 3 phải chọn là “For teaching or taking a class

=> Sau khi tạo xong, check email các kiểu thì mở lại link: https://www.figma.com/education/apply 

Bước 5: Điền thông tin Get free Figma for Education

Nhớ là bạn đang đăng ký với Figma bạn là 1 sinh viên => bạn cần phải xác nhận bạn là sinh viên

Bằng cách điền các thông tin như sau:

  • Are you a student or an educator? chọn Student
  • What type of institution do you attend or work for? => Chọn K12 => Rồi 2 câu dưới chọn Agree, Agree
  • Why are applying for a free Figma Education plan: Bạn nên gõ tiếng Việt, ghi gì cũng được, đại loại là tui cần acc figma để làm bài tập, mình thì hay ghi bằng tiếng Anh “For doing assignment from teachers where I can design User Interface and Wireframe for application”
  • School name: School not listed
  • Full school name: nhập tên tiếng Anh của 1 trường đại học bất kỳ => Như mình học UIT thì mình điền đúng University of Information Technology – VNU HCM.
  • Nhâp địa chỉ Website của trường bạn đã khai báo ở trên: nhập đúng website chính của trường
  • Why is your primary field of study: Chọn bất kỳ theo ngành trường đó dạy, ví dụ mình chọn Information Technology hay kiểu kiểu vậy.
  • Expected graduation date: chọn tháng nào cũng được, năm 2024 trở đi, nên chọn từ năm hiện tại + 2 năm nữa là ok nhất.
  • Có 1 bước là upload lịch học, thì bạn cứ lên web chọn đại 1 lịch học nào đó điền, mình thì vào trực tiếp lịch kế hoạch năm file png của trường mình upload lên.Mình thấy là khi đăng ký tuỳ lúc nó ra form thông tin khác nhau, bạn điền sao cho hợp lý nhất là được nhé, lúc thì chỉ show có vài trường, lúc thì show 1 mớ thông tin. => Tuỳ cơ ứng biến thêm nhé.

Bước 6: Tạo team

Bạn chỉ cần điền tên Team rồi tạo thôi.

Sẽ có bước mời thành viên team => bạn có thể mời hoặc skip nhé, tuỳ mục đích.

Bước 7: Chọn gói dịch vụ và thanh toán (Free)

Lúc này bạn nhấn vào team => Sẽ có popup show ra và chọn Next cho team đó.

Sau đó chọn thanh toán (upgrade)

Vậy là giờ bạn đã có tài khoản Figma Edu được dùng như bản Professional trong 2 năm.

Kết bài

Như vậy là mình đã chia sẻ công cụ Figma, một công cụ tuyệt vời cho anh em Business Analyst, không chỉ là một công cụ để thiết kế mà còn có một công cụ để tư duy, trình bày và thực hiện ý tưởng của mình một cách chuyên nghiệp và hiệu quả, dù bạn làm trong team nhỏ hay lớn.

Và cũng đã chia sẻ luôn cách đăng ký tài khoản Figma Edu (free 2 năm).

Hi vọng giúp cho anh em nào chưa từng sử dụng tìm được công cụ mới hữu ích khi làm công việc Business Analyst nhé.

Các môi trường phát triển phần mềm

Mấy bữa trước ngồi chia sẻ cho một bạn BA mới vào làm mảng blockchain nắm thêm các môi trường phát triển phần mềm, nên sẵn có dịp viết lại để chia sẻ đến mọi người, có vẻ nó sẽ là kiến thức khá cũ với mọi người, nhưng đôi lúc bạn phân vân không biết được testing environment và staging environment khác nhau như thế nào, hay thỉnh thoảng lại bảo dev là “Deploy lên cho mình test với” thì dev hỏi lại “Deploy lên môi trường nào?”, hoặc thậm chí là bạn không biết khi nào gọi tên môi trường cho đúng và phù hợp, hi vọng dưới góc nhìn của một BA sẽ giúp bạn hiểu các môi trường này và áp dụng, triển khai nó một cách an toàn, hiệu quả.

Các môi trường trong phát triển phần mềm

Những môi trường mà mình nhắc đến trong bài viết hôm nay sẽ gồm có: Localhost (Development), Testing, Staging, Production, Sandbox, và một môi trường có thể hơi hơi lạ với một số người là Pilot, Devnet, Testnet.

Trước hết cho cái hình để bạn dễ hình dung hơn

Phân biệt các môi trường phát triển phần mềm
Phân biệt các môi trường phát triển phần mềm

Môi trường Development/Localhost:

  • Môi trường này là môi trường người Dev dựa theo tài liệu của BA và xây dựng tính năng trên máy của tính (local) của họ, người khác không thể truy cập server ngoài họ.
  • Database kết nối: Là database test, hoặc sandbox (tẹo mình sẽ giải thích sandbox là gì)
  • Người thực hiện test:
    • Người thực hiện test trên môi trường này chính là người Dev luôn, hoặc là một người Dev khác họ pull code về và chạy thử, test lại tính năng.
    • Đôi lúc team test nội bộ sẽ pull code của Dev xây dựng xong về test trên máy local của team test nội bộ luôn, nhưng mình nghĩ này có nhưng ít.
  • Vai trò của BA: Thường là hỗ trợ giải thích tính năng, nghiệp vụ, kiểm thử tính năng mới/hoặc bug fixed.

NOTE: BA cũng được xem như một phần của team test nội bộ

Đọc thêm  Khoá học nghiệp vụ Blockchain cho Business Analyst

Môi trường Testing:

  • Môi trường này thường là môi trường được đội ngũ team test nội bộ chạy kịch bản kiểm thử đã được thiết kế trước, giúp tìm lỗi và sự cố trong phần mềm, đảm bảo chất lượng phần mềm trước khi lên những môi trường tiệm cận production, hoặc production.
  • Còn về phần dev thì xem thử mấy tính năng họ code có tích hợp được với code có sẵn hay code của người khác chạy được trơn tru hay không?
  • Database kết nối: Là database test hoặc sandbox
  • Người thực hiện test:
    • Người thực hiện chính là nhóm kiểm thử nội bộ
    • Dev đôi lúc sẽ vào test để kiểm tra lỗi có bị như nhóm kiểm thử nội bộ đã report hay không.
  • Vai trò của BA: Thường là hỗ trợ kiểm thử, review bugs, đứng ra làm việc giữ tester và dev để xác nhận bug là bug thật hay có thể bỏ qua, giải quyết tranh cãi giữa họ, có thể dùng môi trường này để UAT (một số trường hợp).

Môi trường Staging:

  • Cũng là môi trường test nhưng tập trung vào phần tương thích và ổn định của phần mềm trước khi triển khai, môi trường này gần như sát với môi trường production.
  • Database kết nối: Là database test hoặc sandbox, đôi lúc có thể cắm trên database production hoặc là lấy database production clone ra và đổi hay dấu đi những thông tin nhạy cảm như email, số điện thoại, id nhận notification,…
    • Tại vì khúc này môi trường cần gần giống với production để khi go live tránh xảy ra lỗi hoặc sự cố không đáng xảy ra nên cần phải có configuration/phần cứng, service tương tự với production.
    • Có những cái khi mà dev chạy trên local/testing env thì thấy ngon nghẻ, nhưng đẩy lên production cái sinh ra lỗi => Cũng là một lý do để có môi trường staging để tạo cơ hội cho dev tìm lỗi liên quan đến configuration, tính tương thích với phần cứng.
  • Người thực hiện test:
    • Người thực hiện chính là khách hàng hoặc nhóm kiểm thử nội bộ
    • Dev kiểm tra lỗi do KH hoặc tester report.
    • Đôi lúc vẫn có thể cho một số nhóm user đặc biệt test cùng (kiểu như sài thử và đưa ra feedback)
  • Vai trò của BA: UAT, follow nắm thông tin từ khách hàng khi họ test, trao đổi nghiệp vụ nếu cần, review lại bugs, confirm một số bugs có tranh cãi.

Môi trường Production:

  • Là môi trường chạy thật với người dùng và dữ liệu thật
  • Database kết nối: Là database thật.
  • Người thực hiện test:
    • Tester thực hiện test khi release sản phẩm
    • Dev kiểm tra lỗi do người dùng cuối report
    • BA follow hoặc kiểm tra lỗi do người khác report.
    • Người dùng cuối sử dụng
  • Vai trò của BA: Tương tác với người dùng cuối hoặc nhận thông tin từ bên khác liên quan đến lỗi, giải quyết vấn đề phát sinh, hỗ trợ người dùng, hoặc phân tích dữ liệu/ux để tìm ra những giải pháp tốt hơn cho phần mềm.

Môi trường Pilot:

  • Môi trường này mình mới biết từ năm 2019 khi làm các dự án liên quan đến banking.
  • Là môi trường chạy thật với một nhóm người dùng đặc biệt và dữ liệu thật, nhóm này sẽ đưa ra các nhận xét góp ý cho ứng dụng.
  • Thường thì Pilot sẽ nằm sau giai đoạn UAT và trước khi lên production
  • Test trên thời gian thực để tìm ra lỗi.
  • Không phải dự án nào cũng có môi trường này
  • Database kết nối: Là database thật.
  • Người thực hiện test:
    • Nhóm người dùng cuối đặc biệt được lựa chọn sẵn để sử dụng trước sản phẩm.
    • Nhóm kiểm thử team nội bộ và khách hàng.
  • Vai trò của BA: Tương tác với nhóm người dùng đặc biệt để thu thập phản hồi, ý kiến góp ý, từ đó giải quyết các vấn đề phát sinh.
  • Đây cũng là một môi trường xác minh tính sẵn sàng của dự án, nên mọi thứ giống y chang production, chỉ khác là cho một nhóm người sài, những người dùng cuối khác chưa được sài.

Môi trường Sandbox:

  • Sau khi xem xét thì thấy Sandbox không nên xếp vào nhóm của Localhost, testing, staging, pilot, production, mà nó là 1 kiểu thể loại khác.
  • Có thể hiểu nó là môi trường thật dùng thử, thường được sài cho những hệ thống liên quan đến tiền bạc, tài chính, payment
  • Vì là dùng thử nên nó là database thử (test) chứ không phải database thật, hoặc là clone từ thật ra, chỉ cần thay đổi endpoint (api) thì sẽ có thể giúp phần mềm hoạt động trên môi trường real.
  • Nếu không có sandbox thì khi test có thể khó cover nỗi những tính năng liên quan đến tiền thật.
  • Mình thấy nó khi làm blockchain, hoặc banking, billing, AAS, payment gateway.
  • Một số tên khác
    • Testnet/Devnet: Môi trường test/sandbox của một blockchain
    • Goerli, Sepolia: Môi trường testnet/sandbox của Ethereum.

Lưu ý khi làm việc trên các môi trường khác nhau.

  • Không nên để khách hàng vào môi trường testing, sau khi mình làm với rất nhiều khách hàng cho thấy để KH vào môi trường test họ sẽ thấy những cái không hay, hoặc có khi họ không hiểu mình đang làm gì và tưởng là mình đang làm sai yêu cầu, hoặc gây ảnh hưởng đến quá trình test của team nội bộ khi KH vào và thay đổi một số cấu hình.
  • Ở môi trường local host -> Có những trường hợp cần chạy cronjob liên tục hay sửa database sướng hơn trên môi trường testing (dù trên testing env vẫn thực hiện được nhưng đôi lúc gặp khó khăn)
  • Chia thành nhiều môi trường testing hoặc kế hoạch release trên testing env theo từng giai đoạn để tránh bug nó bị lộn xộn, ví dụ như báo bug xong dev fix và đẩy ngay lên testing mà không báo, hoặc 2-3 testers nhảy vào test chung 1 môi trường nhưng lại thay đổi DB có ảnh hưởng lẫn nhau, làm cho kết quả test bị rối hoặc bị sai.
  • Điều quan trọng là phải có môi trường Testing độc lập để không ảnh hưởng đến các môi trường khác và giúp dev tập trung vào việc tìm lỗi và sửa chúng, chứ đụng lỗi cái báo và fix liền, xong deploy lên test liền thì không hay.
  • Môi trường Staging, Pilot đôi lúc không cần thiết phải có mà có thể gộp lại thành môi trường testing thôi, lý do chính là khá tốn chi phí, tài nguyên khi phải cần gần giống với môi trường production.
  • Khi test ở Pilot hoặc Staging, BA cần kiểm tra lại với các thành viên khác vì có dính tới database thật, có thể sẽ gửi những kết quả test đến cho người dùng thật, do đó nên phân nhóm người dùng được nhận hoặc thay đổi email/phone thật thành những dữ liệu test.
  • Đối với môi trường Pilot, luôn phải có một kế hoạch liên quan đến việc Rollback release để khi có trường hợp xấu sẽ xử lý được.

Kết bài.

Với những chia sẻ của mình hi vọng các bạn hiểu được từng môi trường phát triển phần mềm, cũng như nhiệm vụ và trách nhiệm một BA làm việc trong từng môi trường, sẽ có những thay đổi trong tên gọi của môi trường, hay trách nhiệm của người làm BA trong từng dự án, công ty khác nhau.