Mở đầu

「Requirement」: 1 từ thân thương mà chắc hẳn thí chủ nào cũng ít nhất 1 lần nghe thấy rồi. Trong khi dev, bần tăng (mà chắc là các thí chủ cũng thế) luôn miệng nói, nào là requirent nó như thế, như thế, … Thế nhưng thực chât 「requirement」là gì, nó gồm những list những category nào thì thật sự là bần tăng chưa từng 1 lần nào dùng lời trái tim của mình mà có thể giải thích được cả.Trong quá trình tìm hiểu cái flow để quyết định chọn database, bần tăng thấy đa số ý kiến là: đầu tiên phải dựa trên requirement của project nhưng phải cũng phải nhìn về tương lai.(Understand your current requirements but look also in future)Vậy là đã rõ. Không hiểu cái 「requirement」 nó là cái gì, nó gồm những gì thì sẽ khó có thể tiếp tục cái chủ đề bần tăng muốn tìm hiểu bên trên.Do vậy, hôm nay bần tăng mạn phép viết 1 bài để tìm hiểu về cái gọi là 「requirement」 này.

Bạn đang xem: Functionality là gì

Định nghĩa:

Requirement: The descriptions of the services that a software system must provideand the constraints under which it must operateRequirements can range from high-level abstract statements of services or systemconstraints to detailed mathematical functional specificationsDefinition in: http://www.inf.ed.ac.uk/teaching/courses/cs2/LectureNotes/CS2Ah/SoftEng/se02.pdfRequirement là tập hợp các mô tả về 1 hệ thống phần mềm phải cung cấp.Nói nôm na nó là yêu cầu của khách hàng về sản phẩm. (Đoạn tiếng Anh bên trên bần tăng không dịch được thế nào cho hay nên chỉ nói được 1 cách chung chung nhất như thế này)Phân loạiTheo những gì mà bần tăng được các cụ truyển lại từ thời ăn lông ở lỗ đợt sinh viên + những gì mà bần tăng google được thì:

Thông thường requriements nó sẽ được phân ra làm 2 loại chính.

Xem thêm: Charter Là Gì – định Nghĩa, Ví Dụ, Giải Thích

Yêu cầu chức năng (Functional requriements)Yêu cầu phi chức năng (Non-functional requirements)

Yêu cầu chức năng

Là những yêu cầu mô tả NHỮNG GÌ HỆ THỐNG PHẢI LÀM ĐƯỢC. Thông thường thì yêu cầu chức năng sẽ chỉ rõ những hành vi hoặc chức mà hệ thống sẽ làm.Ví dụ như: Hiển thị tên, màu sắc, ….1 số yêu cầu chức năng thông thường cho hệ thống phần mềm:Business RulesTransaction corrections, adjustments and cancellationsAdministrative functionsAuthenticationAuthorization levelsAudit TrackingExternal InterfacesCertification RequirementsReporting RequirementsHistorical DataLegal or Regulatory Requirements

(Cái đoạn này ngại dịch, các thí chủ thông cảm) (bow)

Yêu cầu phi chức năng

Là các tiêu chí mà hệ thống phần mềm cần đạt được khi cho thực thi.Nó khác với yêu cầu chức năng ở chỗ nào??Yêu cầu chức năng: mô tả 「 what the system should do」Yêu cầu phi chức năng: mô tả 「how the system works」Ví dụ:Yêu cầu để làm 1 cái mũ bảo hiểm là: hình tròn, có dây đeo, không được vỡ dưới 1 áp lực nhỏ hơn 50Kg.

Xem thêm: Raid Ổ Cứng Là Gì – Tìm Hiểu Về Raid Trên Ổ Cứng Máy Tính

→ yêu cầu chức năng sẽ là: hình tròn, có dây đeo→ yêu cầu phi chức năng sẽ là: không được vỡ dưới 1 áp lực nhỏ hơn 50Kg.

1 số các kiểu yêu cầu phi chức năng chủ yếu:Performance:Response timeThroughputUtilization (what??? Cái quái gì thế này)Static Volumetric (:( lần đầu nghe)Scalability: Khả năng mở rộng của phần mềm. Theo bần tăng nghĩ thì cái này có nghĩa là: khi mà tự nhiên thêm 1 chức năng mới, hay 1 yêu cầu mới vào thì có dễ dàng dev không?Capacity:AvailabilityReliabilityRecoverabilityMaintainabilityServiceabilitySecurityRegulatoryManageabilityEnvironmentalData IntegrityUsabilityInteroperability (?? cái gì đây)Kết

Thật ra thì đến tận bây giờ, khi dev 1 chức năng nào đấy thì bần tăng cũng mới chỉ để ý đến phần 「yêu cầu chức năng」liên quan đến nó, có nghĩa là hiện tại đang chỉ nghĩ đến phần làm sao để làm cho project chạy đúng đã. Nếu mà chạy không đúng mà đã đi quan tâm đến mấy cái yêu cầu phi chức năng thì không có ý nghĩa cho lắm. Thế nhưng mà đấy là do trình của bần tăng còn gà mờ. Còn nếu các thí chủ mà vừa có thể đáp ứng được cái yêu cầu chức năng (chạy đúng), vừa đáp ứng được yêu cầu phi chức năng (chạy nhanh, security, khả năng mở rộng tốt…) thì lúc ấy năng lực của thí chủ đã ở 1 level rất khác. Nếu mà so sánh thì thí chủ (người đáp ứng được yêu cầu chức năng và phi chức năng của hệ thống) như đại bàng bay vút cao trên bầu trời, còn bần tăng (kẻ chỉ biết làm sao cho project nó chạy đúng) như con chuồn chuồn chỉ bay là là dưới mặt đất vậy.Còn các thí chủ nào chưa có được năng lực như vậy thì hãy cùng bân năng nâng cao thêm kiến thức để đạt được level trên nhé. Con chim sẻ kiên trì thì rồi cũng có ngày có thể sải cánh bay cao trên bầu trời giống như đại bàng nơi miền Tây hoang dã. (y)

Chuyên mục: Hỏi Đáp