Кіріспе
Жүйенің орындауы тиіс кез келген міндет. Бағдарламалық және жүйелік инженерияда функционалдық талап жүйе немесе оның құрауының функциясын анықтайды, мұнда функция кіріс пен шығыс арасындағы мінез-құлықтың сипаттамасы (немесе ережесі немесе мәлімдемесі) ретінде түсіндіріледі. Функционалдық талаптар есептеулерді, техникалық ерекшеліктерді, деректерді өңдеу мен манипуляциялауды және жүйенің не істеу керектігін анықтайтын басқа да нақты мүмкіндіктерді қамтуы мүмкін. Мінез-құлық талаптары жүйе функционалдық талаптарды қалай пайдаланатынының барлық жағдайларын сипаттайды, олар қолдану жағдайларында тіркеледі. Функционалдық талаптар функционалдық емес талаптармен (сондай-ақ "сапа талаптары" деп те аталады) қолдалады, олар жобалауға немесе іске асыруға шектеулер қояды (мысалы, өнімділік талаптары, қауіпсіздік немесе сенімділік). Әдетте функционалдық талаптар "жүйе <талапты> орындауы тиіс" түрінде, ал функционалдық емес талаптар "жүйе <талапты> болуы тиіс" түрінде жазылады. Функционалдық талаптарды іске асыру жоспары жүйелік жобалауда, ал функционалдық емес талаптар жүйелік архитектурада толық сипатталады. Талаптарды инженерлікпен анықталғандай, функционалдық талаптар жүйенің нақты нәтижелерін көрсетеді. Бұл шығын және сенімділік сияқты жалпы сипаттамаларды анықтайтын функционалдық емес талаптардан өзгеше. Функционалдық талаптар жүйенің қолданбалық архитектурасын, ал функционалдық емес талаптар жүйенің техникалық архитектурасын анықтайды. Әрбір қолдану жағдайы бір немесе бірнеше функционалдық талаптар арқылы мінез-құлық сценарийлерін көрсетеді. Көбінесе, талдаушы қолдану жағдайлары жиынтығын анықтап, одан әрбір қолдану жағдайын орындауға пайдаланушыға мүмкіндік беру үшін іске асырылуы тиіс функционалдық талаптарды шығара алады.
In software engineering and systems engineering, a functional requirement defines a function of a system or its component, where a function is described as a summary (or specification or statement) of behavior between inputs and outputs. Functional requirements may involve calculations, technical details, data manipulation and processing, and other specific functionality that define what a system is supposed to accomplish. Behavioral requirements describe all the cases where the system uses the functional requirements, these are captured in use cases. Functional requirements are supported by non functional requirements (also known as "quality requirements"), which impose constraints on the design or implementation (such as performance requirements, security, or reliability). Generally, functional requirements are expressed in the form "system must do <requirement>," while non functional requirements take the form "system shall be <requirement>." The plan for implementing functional requirements is detailed in the system design, whereas non functional requirements are detailed in the system architecture. As defined in requirements engineering, functional requirements specify particular results of a system. This should be contrasted with non functional requirements, which specify overall characteristics such as cost and reliability. Functional requirements drive the application architecture of a system, while non functional requirements drive the technical architecture of a system. Each use case illustrates behavioral scenarios through one or more functional requirements. Often, though, an analyst will begin by eliciting a set of use cases, from which the analyst can derive the functional requirements that must be implemented to allow a user to perform each use case.
Процесс
Типтік функционалдық талап бірегей атау мен нөмірді, қысқаша мазмұндаманы және негіздемені қамтиды. Бұл ақпарат оқырманға талаптың неге қажет екенін түсінуге және жүйе әзірленген кезде талапты қадағалауға көмектеседі. Талаптың өзегі – талап етілетін мінез-құлықтың сипаттамасы, ол анық әрі оқуға қолайлы болуы керек. Сипатталған мінез-құлық ұйымдық немесе бизнес ережелерінен туындауы мүмкін, немесе ол пайдаланушылармен, мүдделі тараптармен және ұйым ішіндегі басқа да сарапшылармен жүргізілген әңгімелер арқылы анықталуы мүмкін. Көптеген талаптар қолданыс сценарийлерін әзірлеу барысында анықталуы мүмкін. Мұндай жағдайда, талаптарды талдаушы атауы мен мазмұндамасы бар уақытша талапты жасап, егжей-тегжейін кейінірек зерттей алады, олар толығырақ белгілі болғанда толықтырылады.