✨Phân tích yêu cầu

Phân tích yêu cầu

Trong các ngành kỹ thuật hệ thống và kỹ nghệ phần mềm, phân tích yêu cầu là công việc bao gồm các tác vụ xác định các yêu cầu cho một hệ thống mới hoặc được thay đổi, dựa trên cơ sở là các yêu cầu (có thể mâu thuẫn) mà những người có vai trò quan trọng đối với hệ thống, chẳng hạn người sử dụng, đưa ra. Việc phân tích yêu cầu có ý nghĩa quan trọng đối với thành công của một dự án.

Việc phân tích yêu cầu một cách có hệ thống còn được gọi là kỹ nghệ yêu cầu (requirements engineering). Đôi khi nó còn được gọi một cách không thật chính xác bằng những cái tên như thu thập yêu cầu (requirements gathering, requirements capture), hoặc đặc tả yêu cầu (requirements specification). Thuật ngữ "phân tích yêu cầu" còn được áp dụng cụ thể cho công việc thuần túy phân tích (thay vì các việc khác chẳng hạn như làm rõ yêu cầu hay viết tài liệu yêu cầu).

Các yêu cầu phải có tính đo được, kiểm thử được, có liên quan đến các nhu cầu hoặc cơ hội doanh nghiệp đã được xác định, và các yêu cầu phải được định nghĩa ở một mức độ chi tiết đủ cho việc thiết kế hệ thống.

Các kỹ thuật chính

Về khái niệm, việc phân tích yêu cầu bao gồm ba loại hoạt động sau: Làm rõ yêu cầu (Eliciting requirements): giao tiếp với khách hàng và người sử dụng để xác định các yêu cầu của họ. Xem xét yêu cầu (Analyzing requirements): xác định xem các yêu cầu được đặt ra có ở tình trạng không rõ ràng, không hoàn chỉnh, đa nghĩa, hoặc mâu thuẫn hay không, và giải quyết các vấn đề đó. *Làm tài liệu yêu cầu (Recording requirements): các yêu cầu có thể được ghi lại theo nhiều hình thức, chẳng hạn các tài liệu ngôn ngữ tự nhiên, các tình huống sử dụng (use case), câu chuyện sử dụng (user story), hoặc các đặc tả tiến trình.

Phân tích yêu cầu có thể là một quá trình dài và khó khăn, cần đến nhiều kĩ năng tâm lý khéo léo. Các hệ thống mới làm thay đổi môi trường và các mối quan hệ giữa con người, do đó điều quan trọng là phải xác định được tất cả những người có vai trò quan trọng, xem xét tất cả các nhu cầu của họ và đảm bảo rằng họ hiểu được các hàm ý của hệ thống mới. Các nhà phân tích có thể sử dụng một số kĩ thuật để làm rõ các yêu cầu của khách hàng. Trong lịch sử, các kỹ thuật này bao gồm các cuộc phỏng vấn, thành lập các nhóm trọng tâm (focus group) với các cuộc họp bàn về yêu cầu (requirements workshops), và tạo ra các danh sách yêu cầu. Các kỹ thuật hiện đại hơn gồm có tạo nguyên mẫu (prototyping), và tình huống sử dụng. Khi cần thiết, nhà phân tích sẽ kết hợp các phương pháp này để thiết lập các yêu cầu chính xác của những người có vai trò quan trọng, nhằm mục đích xây dựng một hệ thống thỏa mãn các yêu cầu doanh nghiệp.

Các vấn đề

Vấn đề về người dùng và khách hàng

Trong cuốn Rapid Development, Steve McConnell đã liệt kê một loạt các khả năng người dùng có thể cản trở quá trình thu thập yêu cầu:

  • Người dùng không hiểu họ muốn gì
  • Người dùng không tuân theo một bộ yêu cầu đã được tài liệu hóa
  • Người dùng nhất định đòi hỏi các yêu cầu mới sau khi chi phí và kế hoạch phát triển đã được hoạch định xong.
  • Mức độ giao tiếp với người dùng là thấp
  • người dùng thường không tham gia các đợt thẩm định hoặc không thể tham gia.
  • Người dùng không hiểu kỹ thuật
  • Người dùng không hiểu quy trình phát triển.

Những điều này có thể dẫn tới tình huống khi yêu cầu người dùng liên tục thay đổi ngay cả khi việc phát triển hệ thống hay sản phẩm đã được bắt đầu.

Vấn đề về kỹ sư/nhà phát triển

Trong quá trình phân tích yêu cầu, các vấn đề sau có thể nảy sinh từ phía các kỹ sư và nhà phát triển: Nhân viên kỹ thuật và người dùng cuối có thể có ngôn từ khác nhau. Kết quả là họ có thể tin rằng họ hoàn toàn đồng thuận cho đến khi sản phẩm hoàn thiện được đưa ra. Các kỹ sư và nhà phát triển có thể cố lái cho các yêu cầu khớp với một hệ thống hay mô hình sẵn có, thay vì phát triển một hệ thống theo sát nhu cầu của khách hàng *Việc phân tích có thể do các kỹ sư hoặc lập trình viên thực hiện, thay vì các nhân viên có kỹ năng và kiến thức miền ứng dụng để có thể hiểu các nhu cầu của khách hàng một cách đúng đắn

Giải pháp đã được thực hiện

Một giải pháp đối với các vấn đề về giao tiếp là thuê các chuyên gia về doanh nghiệp hoặc chuyên gia phân tích hệ thống.

Các kỹ thuật được đưa ra trong thập kỷ 1990 như tạo nguyên mẫu, UML, tình huống sử dụng. và phát triển phần mềm linh hoạt (Agile software development) cũng đã được dùng làm giải pháp cho các vấn đề trên.

👁️ 2 | 🔗 | 💖 | ✨ | 🌍 | ⌚
Trong các ngành kỹ thuật hệ thống và kỹ nghệ phần mềm, **phân tích yêu cầu** là công việc bao gồm các tác vụ xác định các yêu cầu cho một hệ thống mới hoặc
Từ điển Merriam-Webster 1 định nghĩa **phân tích hệ thống** () là "quá trình nghiên cứu một thủ tục hoặc kinh doanh để xác định mục tiêu và mục đích của nó và tạo ra
**Phân tích website (Website analytics)** là việc đo lường, thu thập, phân tích và báo cáo dữ liệu web nhằm mục đích hiểu và tối ưu hóa việc sử dụng web. Tuy nhiên, phân tích
**Phân tích độ nhạy (SA)** là kỹ thuật làm thế nào để phân chia _sự không chắc chắn_ trong kết quả đầu ra của một _mô hình toán học_ hoặc _một hệ thống_ (hệ thống
Trong tài chính, **phân tích kỹ thuật** là một phương pháp phân tích chứng khoán dự báo hướng của giá cả thông qua việc nghiên cứu các dữ liệu thị trường quá khứ, chủ yếu
Trong các ngành kỹ thuật, một **yêu cầu** (_requirement_) là một đòi hỏi được tài liệu hóa về các chức năng và đặc điểm của một sản phẩm hoặc dịch vụ. Thuật ngữ này thường
**Phân tích tính toán** (Analytics) là phân tích tính toán có hệ thống của dữ liệu hoặc thống kê. Đây là quá trình phát hiện, giải thích và truyền đạt các mô hình có ý
**Video theo yêu cầu** (VOD) hay **âm thanh và video theo yêu cầu** (AVOD) là hệ thống cho phép người dùng lựa chọn và xem / nghe nội dung video hoặc âm thanh khi họ
nhỏ| Để tìm kiếm một mục đã cho trong một danh sách theo thứ tự nhất định, có thể sử dụng cả thuật toán [[Tìm kiếm tuần tự|tìm kiếm nhị phân và tuyến tính (bỏ
**Máy phân tích tự động** là một thiết bị xét nghiệm y học được thiết kế để đo nhanh chóng nhiều chất và các đặc điểm khác ở một số mẫu sinh học với hỗ
**Kỹ năng phân tích** là khả năng để hình dung, làm rõ, khái niệm hóa cả các vấn đề phức tạp và đơn giản bằng cách đưa ra các quyết định hợp lý cho các
**Phân tích dữ liệu** là một quá trình kiểm tra, làm sạch, chuyển đổi và mô hình hóa dữ liệu với mục tiêu khám phá thông tin hữu ích, thông báo kết luận và hỗ
**Phân tích cơ bản** một doanh nghiệp liên quan đến việc phân tích các báo cáo tài chính và sức khỏe của nó, các lợi thế quản lý và cạnh tranh của nó, và các
nhỏ| [[Bertrand Russell]] **Triết học** **phân tích** là một phong cách triết học chiếm ưu thế trong thế giới phương Tây vào đầu thế kỷ 20. Triết học phân tích là một trường phái triết
Quá trình phân tích từ vựng trong các giai đoạn xử lý. Trong ngành khoa học máy tính, **phân tích từ vựng** (Tiếng Anh: **lexical analysis**, còn được gọi là _scanning_ hoặc _lexing_) là một
Combo Sách Bài tập Nâng Cao Scratch 3 và Sách Luyện thi Hội Thi tin học trẻ với Scratch 3 dành cho cấp Tiểu học 1. SÁCH BÀI TẬP NÂNG CAO SCRATCH 3 Cuốn sách
Sách Bài tập Nâng cao Scratch 3 Cuốn sách Bài tập Nâng cao Scratch 3 cung cấp tới bạn đọc những bài tập nâng cao với Scratch 3 nhằm củng cố kiến thức, kĩ năng
**Kiểm thử phần mềm** (tiếng Anh: **Software testing**) là một cuộc kiểm tra được tiến hành để cung cấp cho các bên liên quan thông tin về chất lượng của sản phẩm hoặc dịch vụ
**Quy trình phát triển phần mềm** _(software development methodology)_ là một cấu trúc bao gồm tập hợp các thao tác và các kết quả tương quan sử dụng trong việc phát triển để sản xuất
• Khái niệm: Bảng cân đối kế toán là một báo cáo tài chính tổng hợp, phản ánh tổng quát toàn bộ tài sản hiện có và nguồn hình thành tài sản đó của doanh
**Phát triển phần mềm linh hoạt** hoặc **lập trình linh hoạt** (tiếng Anh: **_Agile software development_** hay **_Agile programming_**) là một phương thức thực hiện các dự án công nghệ phần mềm, phương thức này
Phân tích phương trình vi phân từng phần bằng phương pháp số là một nhánh nghiên cứu của phân tích số, hay còn gọi là giải tích số, một lĩnh vực nghiên cứu về lời
**Phát triển phần mềm** là việc chuyển nhu cầu của người dùng hoặc mục tiêu tiếp thị thành một sản phẩm phần mềm. Phát triển phần mềm đôi khi được hiểu là sự bao gồm
thumb|Mô hình vòng đời phát hành phần mềm Một **vòng đời phát hành phần mềm** là một sự tổng hợp các pha phát triển phần mềm từ giai đoạn sơ khai cho đến giai đoạn
**Phân tích mẫu vết máu (tiếng Anh: Bloodstain pattern analysis** - **BPA**), một trong những tiến bộ trong lĩnh vực khoa học pháp y, liên quan đến việc nghiên cứu và phân tích vết máu
**Wine** là một lớp tương thích tự do nguồn mở dùng để chạy các phần mềm viết cho Windows trên các hệ điều hành tương tự Unix (Linux, FreeBSD,...). Wine cũng cung cấp một thư
**Phân tích tìm kiếm** (Search analytics) là việc phân tích các truy vấn tìm kiếm được nhập bởi người dùng của một công cụ tìm kiếm (Search tool) cụ thể (Ví dụ: Google, Bing, Wolfram
thumb|Các địa tầng nguyên thủy nằm ngang bị biến dạng do ứng suất. **Địa chất cấu trúc** hay **địa chất cấu tạo** là nghiên cứu về sự phân bố ba chiều không gian của các
nhỏ|phải|Một tài liệu về phân tích thị trường **Phân tích thị trường** (_Market analysis_) là một quá trình nghiên cứu và đánh giá sâu rộng về một thị trường, nghiên cứu sức hấp dẫn và
Một **bản phân phối ****Linux** (thường được gọi tắt là **distro**) là một hệ điều hành được tạo dựng từ tập hợp nhiều phần mềm dựa trên hạt nhân Linux và thường có một hệ
**Phương pháp phần tử hữu hạn** là phương pháp số gần đúng để giải các bài toán được mô tả bởi các phương trình vi phân đạo hàm riêng trên miền xác định có hình
Trong đại số tuyến tính, **phân tích LU** (LU decomposition, LU factorization) là phương pháp phân tích ma trận thành tích của một ma trận tam giác dưới và một ma trận tam giác trên.
**Phân phối sản phẩm** (còn được biết đến trong tiếng Anh đơn giản là **place** hoặc **Product distribution**) là một trong 4 yếu tố của marketing. Phân phối là một tiến trình mà cung cấp
thumb|Một phân tích thời tiết bề mặt cho Hoa Kỳ vào ngày 21 tháng 10 năm 2006. Vào thời điểm đó, bão Paul (2006) đã hoạt động (Paul sau đó trở thành một hurricane). **Phân
**Quản lý nhu cầu** là một phương pháp lập kế hoạch được sử dụng để dự báo, lập kế hoạch và quản lý nhu cầu về sản phẩm và dịch vụ. Điều này có thể
thumb|Sơ đồ minh hoạ của **Phân tích SWOT** **Phân tích SWOT** là một trong 5 bước tạo thành chiến lược sản xuất kinh doanh của một doanh nghiệp, bao gồm: _xác lập tôn chỉ của
nhỏ|Cài đặt máy tính để bàn tạo mẫu nhanh bằng quy trình SLA Trong thiết kế cho sản xuất đắp dần (DFAM), có cả hai chủ đề rộng (áp dụng cho nhiều quy trình sản
Phân tích dữ liệu kinh doanh không còn là lựa chọn phụ trợ mà đã trở thành yếu tố cốt lõi trong vận hành và ra quyết định của doanh nghiệp hiện đại. Khi thông
Bạn muốn nâng cao trình độ tiếng Trung đồng thời đạt điểm cao trong kỳ thi HSK Bộ sách Phân tích đề thi HSK sẽ giúp bạn đạt được cùng lúc cả hai mục tiêu
**Phân tích tài chính** (_Financial analysis_) hay **Phân tích tỷ số tài chính** là việc sử dụng những kỹ thuật khác nhau để phân tích các báo cáo tài chính của doanh nghiệp để nắm
Trong quản lý nguyên vật liệu, **phân tích ABC** (hoặc **Kiểm soát hàng tồn kho chọn lọc**) là một kỹ thuật phân loại hàng tồn kho. Phân tích ABC chia hàng tồn kho thành ba
Phần mềm là các lệnh được lập trình mà được lưu trữ trong bộ nhớ được lưu trữ của các máy tính kỹ thuật số để bộ xử lý thực hiện. Phần mềm là một
Sáng 26-5, Quốc hội đã nghe Viện trưởng Viện Kiểm sát nhân dân tối cao Nguyễn Huy Tiến trình tờ trình dự án Luật Tương trợ tư pháp về hình sự.Như lấy lời khai trực
**Phân tích ngược** là một kỹ thuật để những người giải quyết các vấn đề cờ xác định lại những nước đi trước đó mà hai bên đã chơi để dẫn đến thế cờ hiện
**Phân tích chi phí - lợi ích** (CBA, viết tắt của **Cost-Benefit Analysis**), đôi khi được gọi là **Phân tích lợi ích - chi phí** (BCA), là một quá trình có hệ thống để tính
**Lập kế hoạch yêu cầu vật liệu** (**MRP**) là một kế hoạch sản xuất, lập kế hoạch và kiểm soát hàng tồn kho được sử dụng để quản lý các quy trình sản xuất. Hầu
Phân Tích Kinh Tế - Kỹ Thuật Các Dự Án Đầu Tư Xây Dựng Phân tích kinh tế - kỹ thuật là nội dung cần thiết và quan trọng trong quá trình lập dự án
Phân tích kinh tế - kỹ thuật là nội dung cần thiết và quan trọng trong quá trình lập dự án đầu tư xây dựng. Kết quả của phân tích là cơ sở để đề
**Bảng mạch đồ họa tích hợp** hay **Card màn hình Onboard**, **Thẻ đồ hoạ trên bảng** (**Onboard Graphics Card**) và **Bộ xử lí đồ họa trên bảng** là tên gọi chung của một linh kiện
Với 25 năm kinh nghiệm phát triển và triển khai các giải pháp phần mềm cho khách hàng từ 30 nước, TMA đã tích lũy nhiều công nghệ tiên tiến và giải pháp phong phú