Tələblərin təhlili
Sistem mühəndisliyi və proqram 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 mərhələsi aşağıdakı əsas addımlardan ibarətdir.[4]
- Tələblərin Toplanması (ing. Requirements Gathering)
- 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.
- Toplanan tələblər funksional və qeyri-funksional olaraq təsnif edilir:
- 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.
- 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.
- 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).
- 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.
- 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.
- 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.
- ↑ 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
- ↑ Kotonya, Gerald; Sommerville, Ian. Requirements Engineering: Processes and Techniques. Chichester, UK: John Wiley and Sons. 1998. ISBN 9780471972082.
- ↑ 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.
- ↑ 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.
- ↑ 1 2 Project Management Institute, 2015. səh. 158, §6.3.2
- ↑ 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.
- ↑ 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.
- Brian Berenbach; Daniel Paulish; Juergen Katzmeier; Arnold Rudorfer. Software & Systems Requirements Engineering: In Practice. New York: McGraw-Hill Professional. 2009. ISBN 978-0-07-160547-2. 2021-05-09 tarixində arxivləşdirilib. İstifadə tarixi: 2024-10-28.
- Hay, David C. Requirements Analysis: From Business Views to Architecture (1st). Upper Saddle River, NJ: Prentice Hall. 2003. ISBN 0-13-028228-6.
- Laplante, Phil. Requirements Engineering for Software and Systems (1st). Redmond, WA: CRC Press. 2009. ISBN 978-1-4200-6467-4. 2014-10-22 tarixində arxivləşdirilib. İstifadə tarixi: 2024-10-28.
- Project Management Institute. Business Analysis for Practitioners. Project Management Inst. 2015-01-01. ISBN 978-1-62825-069-5.
- McConnell, Steve. Rapid Development: Taming Wild Software Schedules (1st). Redmond, WA: Microsoft Press. 1996. ISBN 1-55615-900-5.
- Nuseibeh, B.; Easterbrook, S. Requirements engineering: a roadmap (PDF). ICSE'00. Proceedings of the conference on the future of Software engineering. 2000. 35–46. CiteSeerX 10.1.1.131.3116. doi:10.1145/336512.336523. ISBN 1-58113-253-0. 2015-11-06 tarixində arxivləşdirilib (PDF). İstifadə tarixi: 2024-10-28.
- Andrew Stellman; Jennifer Greene. Applied Software Project Management. Cambridge, MA: O'Reilly Media. 2005. ISBN 0-596-00948-8. 2021-05-25 tarixində arxivləşdirilib. İstifadə tarixi: 2024-10-28.
- Karl Wiegers; Joy Beatty. Software Requirements (3rd). Redmond, WA: Microsoft Press. 2013. ISBN 978-0-7356-7966-5. 2021-05-05 tarixində arxivləşdirilib. İstifadə tarixi: 2024-10-28.
- Peer-reviewed Encyclopedia Entry on Requirements Engineering and Analysis
- Defense Acquisition University Stakeholder Requirements Definition ProcessStakeholder Requirements Definition Process at the Wayback Machine (archived dekabr 23, 2015)
- MIL-HDBK 520 Systems Requirements Document Guidance