Tələblərin təhlili

Sistem mühəndisliyiproqram mühəndisliyində tələblərin təhlili (ing. requirements analysis) müxtəlif maraqlı tərəflərin mümkün ziddiyyətli tələblərini nəzərə alaraq yeni və ya dəyişdirilmiş məhsul və ya layihəni təmin etmək üçün ehtiyacları və ya şərtləri müəyyən edən tapşırıqlara diqqət yetirir, proqram təminatı və ya sistem tələblərini təhlil edir, sənədləşdirir, sınaqdan keçirir və idarə edir.[2] Tələblərin təhlili proqram təminatı prosesində ilk və ən vacib mərhələlərdən biridir.[3] Bu mərhələ proqramın hansı məqsədə xidmət edəcəyini və istifadəçilərin hansı ehtiyaclarını qarşılamaq üçün nəzərdə tutulduğunu müəyyən edir. Tələblərin təhlili düzgün aparıldıqda, layihənin davamında qarşıya çıxan potensial problemlərin qarşısı alınır və yekun məhsulun keyfiyyəti artır.

Tələblərin təhlili perspektivindən sistem mühəndisliyi[1]

Tələblərin təhlili mərhələsi aşağıdakı əsas addımlardan ibarətdir.[4]

Əsas mərhələləri

redaktə
  1. Tələblərin Toplanması (ing. Requirements Gathering)
    • Bu addımda, layihəyə dair bütün mümkün məlumatlar toplanır. Müştəri, son istifadəçilər, maraqlı tərəflər və digər mənbələrlə müsahibələr aparılır.[5] traceable,[5]
    • Tələblər yazılı və ya şifahi formada ola bilər.[6] Tələblər sistemin funksional və qeyri-funksional ehtiyaclarını əhatə etməlidir.
  2. Tələblərin Təsnifatı (ing. Classification of Requirements)
    • Toplanan tələblər funksional və qeyri-funksional olaraq təsnif edilir:
      • Funksional Tələblər: Proqramın konkret nə edəcəyini təsvir edir (məsələn, istifadəçinin qeydiyyatdan keçmə funksiyası).
      • Qeyri-Funksional Tələblər: Proqramın necə işləməli olduğunu müəyyən edir, məsələn, performans, təhlükəsizlik, istifadəçi təcrübəsi.
  3. Tələblərin Prioritetləşdirilməsi (ing. Prioritization of Requirements)
    • Hər bir tələb layihənin ümumi məqsədinə və resurslarına uyğun olaraq dərəcələndirilir. Ən vacib tələblər birinci prioritet olur və əsas diqqət onların təmin olunmasına yönəlir.
    • Bu, məhdud resurslarla işlənən layihələr üçün vacibdir, çünki layihə hədəfinə ən uyğun olan tələblər əvvəlcə yerinə yetirilir.
  4. Tələblərin Təhlili və Dəqiqləşdirilməsi (ing. Analysis and Refinement)
    • Toplanan ilkin tələblər analiz olunur və aydın, dəqiq şəkildə ifadə edilir. Bu mərhələdə tələb dəqiqliyi artırmaq üçün suallar verilir və tələblərin konkret nəticələri müəyyən olunur.
    • Burada uyğun olmayan, qeyri-müəyyən və ya ziddiyyətli tələblər yenidən nəzərdən keçirilir və müştəri ilə birgə müzakirə olunur.
  5. Tələblərin Sənədləşdirilməsi (ing. Documentation of Requirements)
    • Tələblər rəsmi sənədlər şəklində yazılır ki, bu sənədlər layihənin gələcək mərhələlərində istinad nöqtəsi kimi istifadə olunsun.[7]
    • Ən geniş istifadə olunan sənədləşdirmə formaları Tələblərin Spesifikasiyası Sənədi (SRS — ing. Software Requirements Specification) və İstifadəçi Tələbləri Sənədidir (URS — ing. User Requirements Specification).
  6. Tələblərin Doğrulanması və Təsdiqi (Verification and Validation of Requirements)
    • Tələblərin doğrulanması zamanı onların düzgün başa düşüldüyü və proqram təminatının bu tələbləri ödəyə biləcəyi yoxlanılır.
    • Müştəri və maraqlı tərəflər sənədləri nəzərdən keçirir və təsdiq edir ki, hər bir tələb onların gözləntilərinə və biznes məqsədlərinə uyğundur.
  7. Tələblərin İdarə Edilməsi (ing. Requirements Management)
    • Tələblərin dəyişə biləcəyi nəzərə alınaraq, təhlil mərhələsindən sonra onların idarə olunması vacibdir.
    • Layihə müddətində yeni tələblər ortaya çıxa və ya mövcud tələblər dəyişə bilər. Bu zaman tələblərin idarə olunması mexanizmi ilə dəyişikliklər layihənin uyğun mərhələlərinə təsir etmədən tətbiq olunur.

Əsas məqsədləri

redaktə
  • Layihənin əhatə dairəsinin düzgün müəyyənləşdirilməsi.
  • Müştəri və istifadəçilərin ehtiyaclarının tam və aydın şəkildə anlaşılması.
  • Proqramın təyinatına uyğun olması və gözləntiləri qarşılaması üçün tələb olunan funksionallıqların dəqiqləşdirilməsi.
  • Əsas məqsəd yanlış anlaşılan və ya qeyri-dəqiq tələblərdən irəli gələn problemlərin erkən mərhələdə həll olunmasıdır.

İstinadlar

redaktə
  1. Systems Engineering Fundamentals Arxiv surəti 22 iyul 2011 tarixindən Wayback Machine saytında Arxivləşdirilib 2011-07-22 at the Wayback Machine Defense Acquisition University Press, 2001
  2. Kotonya, Gerald; Sommerville, Ian. Requirements Engineering: Processes and Techniques. Chichester, UK: John Wiley and Sons. 1998. ISBN 9780471972082.
  3. Pacheco, Carla; García, Ivan; Reyes, Miryam. "Requirements elicitation techniques: a systematic literature review based on the maturity of the techniques". IET Software (ingilis). 12 (4). August 2018: 365–378. doi:10.1049/iet-sen.2017.0144. ISSN 1751-8806.
  4. Alain Abran; James W. Moore; Pierre Bourque; Robert Dupuis, redaktorlar Chapter 2: Software Requirements // Guide to the software engineering body of knowledge (2004). Los Alamitos, CA: IEEE Computer Society Press. March 2005. ISBN 0-7695-2330-7. 2009-03-23 tarixində arxivləşdirilib. İstifadə tarixi: 2007-02-08. It is widely acknowledged within the software industry that software engineering projects are critically vulnerable when these activities are performed poorly.
  5. 1 2 Project Management Institute, 2015. səh. 158, §6.3.2
  6. Amin, Tauqeer ul; Shahzad, Basit. "Improving requirements elicitation in large-scale software projects with reduced customer engagement: a proposed cost-effective model". Requirements Engineering (ingilis). 29 (3). 2024-09-01: 403–418. doi:10.1007/s00766-024-00425-2. ISSN 1432-010X.
  7. Anderson, Charlotte. "Why You Need Stakeholder Identification and Analysis | Acorn". Acorn PLMS (ingilis). 2022-06-08. 2024-01-19 tarixində arxivləşdirilib. İstifadə tarixi: 2024-01-19.

Biblioqrafiya

redaktə

Xarici keçidlər

redaktə