MÜHAZİRƏ 9
MÜHƏNDİSLİK TƏLƏBLƏR
İşçi tədris proqramından (mövzu 9). Sistem tələbləri. Funksional və qeyri-funksional tələblər. Xüsusi tələblər. Sistem tələbləri. Sistem tələbləri sənədləşdirilməsi.
Plan
1. Müddəti haqqında "tələblər". Tələblər sintaksis.
2. Sistem tələbləri səviyyəsi.
3 sistem tələbləri qaynaqları.
4.Proqram təminatı tələbləri.
5. Funksional və qeyri-funksional tələblər.
6. Tələblər mövzular.
7. Xüsusi tələblər.
8. Sistem tələbləri.
"Tələblər" termini haqqında
"Tələb" anlayışının aşağıdakı təriflərinə diqqət yetirmək lazımdır (Vigersin işləri və IEEE Standard Glossary of Engineering Technology, 1990 standartları əsasında):
* Vəzifələri həll etmək və ya məqsədlərə nail olmaq üçün İstifadəçi tərəfindən tələb olunan vəziyyət və ya seçim.
* Sistemin si-STEM/komponenti ilə təmin edilməli və ya müqavilənin şərtlərini, standartlarını, xüsusi fiksasiyalarını və ya digər tənzimləyici sənədləri təmin etmək üçün sistemin/komponentinin malik olduğu şərt və ya imkan.
* Əvvəlki bəndlərdə sadalanan şərtlərin və ya imkanların sənədləşdirilmiş təqdimatı (təsdiq edilmiş təqdimat, tərif, təsvir).
Batovrina kataloquna görə [1. Batovrin V. K. sistem və proqram mühəndisliyi. Lüğət kitabçası: study. ali məktəblər üçün dərslik. – M.: ДМК Press, 2010. - 280 C.]:
Tələb-müqavilənin, standartın, spesifikasiyanın və ya formal təsdiq edilmiş digər sənədin təmin edilməsi üçün sistemin (sistemin elementi) geri alınması və ya ona malik olması lazım olan şərt və ya imkandır. ISO/IEC 24765.
Sintaksis tələbi
[hallar] [mövzu] [fəaliyyət] [obyekt] [məhdudiyyət]
Nümunə:
Siqnal qəbul edildikdə [şərtlər] sistem [mövzu]
[fəaliyyət ] siqnal axıdılması [obyekt]müəyyən etməlidir
Iki saniyə ərzində [məhdudiyyət]
yaxud:
[hal] [fəaliyyət] [mənası]
Nümunə:
Vəziyyətdə 1 [Hal]
minimum sıra olmalıdır [fəaliyyət]
azı 8 mil [dəyər]
Sistem tələbləri səviyyəsi
Müasir informasiya sistemləri-çoxsaylı modulların, funksional, İnter-feys elementlərinin, hesabatların və s. özündə ehtiva edən iri proqram si-stemləridir.
Xoşbəxtlikdən, bəşəriyyət mürəkkəb obyektlərin modelləşdirilməsində geniş tətbiq edilən mürəkkəbliyə qarşı mübarizə üsullarını - abstraksiyanı və ayrışmasını çoxdan icad etmişdir. Proqram sistemlərində Trey-batların analizi intizamına uyğun olaraq bu prinsiplər aşağıdakı kimi işləyir. Tələblər səviyyələrə bölünür. Rabitənin tələblərinin səviyyəsi, bir tərəfdən sistemin abstraksiya səviyyəsi, digər tərəfdən isə müəssisədə idarəetmə səviyyəsi ilə.
Adətən üç səviyyədə tələb olunur.
* Yuxarı səviyyədə biznes tələbləri (business requirements) təqdim olunur. Biznes tələbinin nümunələri: sistem müəssisədə emal edilən sifarişlərin dövriyyəsini üç dəfə azaltmalıdır. Biznes tələbləri adətən üst menecerlər və ya müəssisənin səhmdarları tərəfindən hazırlanır.
* İkinci Səviyyə-istifadəçi tələblərinin səviyyəsi (user requirements). İstifadəçinin tələbinə misal: sistem sifariş haqqında ətraflı məlumatı daxil etmək, məlumat bazasında və sifariş haqqında məlumatı onun planlaşdırılması və yerinə yetirilməsinə cavabdeh olan əməkdaşa təqdim etmək üçün informasiya vasitələrini təqdim etməlidir. İstifadəçilərin tələbləri tez-tez zəif struktur-tərtib edilmiş, təkrarlanmalı, ziddiyyətli olur. Buna görə də, sistemin yaradılması üçün tələblərin formalaşdırılmasının həyata keçirildiyi üçüncü səviyyə vacibdir.
* Üçüncü səviyyə funksional (functional requirements). Elek taxtadan sifariş ilə işləmək üçün funksional tələblər (və ya sadəcə funksiyalar): sifariş saytda quraşdırıla, redaktə edilə, silinə və yenidən bərpa edilə bilər.
Fərdi səviyyələrin tələbləri arasında obyektiv ziddiyyətlər mövcuddur. Belə ki, aşkar biznes-tələb istifadəçilərin iş yerlərində vahid məlumat bazasına toplanan məlumatların tam olması tələbidir. Daha ətraflı məlumat - ana-lisa fəaliyyəti və qərar qəbul edilməsi üçün daha dərin baza. Digər tərəfdən, sistemin konkret istifadəçisi yalnız onun əsas funksiyalarının icrasına təsir edən informasiyanın bir hissəsindən kifayət qədər istifadə edə bilər.
Sistem tələbləri mənbələri.
Tələblər müxtəlif tərəflər tərəfindən irəli sürülə bilər. Wikipedia mənbələri tələblər:
* Federal və bələdiyyə Sənaye qanunvericiliyi (iqtisadi Qanunvericilik, Qanunlar, sərəncamlar)
* Təşkilatın normativ təminatı (qaydalar, əsasnamələr, nizamnamələr, əmrlər)
Avtomatlaşdırma obyektinin fəaliyyətinin * cari təşkili
* Fəaliyyət modelləri (biznes proseslərinin diaqramları)
* Təqdim və İstehlakçıların və sistem istifadəçilərinin gözləntiləri
* Mövcud proqram-aparat sistemlərindən istifadə edən jurnallar
* Rəqib proqram məhsulları
Sistem tələbləri hazırlanarkən bütün mümkün istifadəçilərin rəyini nəzərə almaq lazımdır. Kompleks sistemlər bir çox mənbələrdən tələblər alır (şəkil.4.1). Hətta bir dənə də olsun Açılmamış tırtıl böyük problemlərə və ya kədərli resultə səbəb ola bilər.
Şək.1. Tələb mənbələri
sales manager-1) kommersiya direktoru 2) satış şöbəsinin müdiri.
Hərfi tərcümə Help desk yardım masası deməkdir. İngilis dilində help desk kompüter parkının texniki dəstəyini ifadə edən sabit birləşmədir. Beləliklə, texniki dəstək xidməti kömək deskdir.
Texniki tələblər məqsədləri üçün hazırlanır:
* Obyektlərin tərkibində, strukturunda və funksiyalarında tələblərin konkretləşdirilməsi və fərqləndirilməsi, onların statusu və təyinatından asılı olaraq;
* Obyektlərdə tətbiq olunan metodlara və texniki vasitələrə və onların texniki və metroloji dəyərdən düşməsinə dair tələblərin müəyyən edilməsi;
* Avtomatlaşdırılmış idarəetmə sistemlərinin proqram-texniki kompleksinə tələblərin konkretləşdirilməsi;
* Metroloji nəzarət və ölçmə vasitələrinin vəziyyəti və tətbiqi üzərində nəzarətin həyata keçirilməsi, təşkili və həyata keçirilməsi qaydasının müəyyən edilməsi.
* Təhlil və inkişaf tələblərinə nəticələri ola bilər:
• Texniki tapşırıq;
• Texniki tələblər;
• Ümumi texniki həllər;
* Layihələndirmə tapşırığı;
* Müsabiqə sənədlərinin hazırlanması.
İşarə: tələbləri necə yaratmaq olar
* Müxtəlif mənbələri (daxili, xarici, veb) nəzərə alın.
* İstifadəçi növləri və qruplarını müəyyənləşdirin. Kaj-tüstü ilə ünsiyyət.
* İstifadəçinin Ayaqqabının hər bir addımında istifadə etdikləri termi-Nax proseslərində və məlumatlarda fikirlərini ifadə etməyə məcbur etməyə çalışın
* Hər bir tələbi tam cümlə kimi, təsdiq edilmiş formada yazın
* Keçmiş səhvləri unutma və onların yaxşı-mi və sadə alternativ tələb variantlarını atlamağa çalışın
* Tələbin meydana gəlməsinin təbiətini öyrənməyə çalışın.
* Xahiş bəzi müştəri tələblərinə tərəddüd etməyin-nə üçün?
* Tələbin ifadəsini yaxşılaşdırmaq cəhdlərini heç vaxt tərk etməyin.
* Hər kəs nə nəzərdə tutulur ki, demək yalnız dayandırmaq
* Tələbi mümkün qədər birmənalı və birmənalı şəkildə formalaşdırmaq üçün vaxt sərf etməyin. Bir çox işin sürəti ixtisaslaşmışdır-saatda bir səhifə.
* Tələblərlə yaxşı bir sənəd yaratmaq üçün ən azı eyni vaxtda sərf edin-bu qəşəng ödəyəcək.
Belə yanaşma məmulatın yaradılmasının həyat dövrünün ən erkən mərhələlərində Sifarişçinin ehtiyaclarının başa düşülməsi, məmulatın funksionallığının və məcburi planlaşdırılmış yoxlamaların (attestasiyaların, qəbul sınaqlarının, nəzarətin) müəyyən edilməsi ilə başlanır
Tələblərinə nəzarət verir üstünlükləri
* Informasiya – məqsəd və inkişaf məqsədləri aydın anlaşma
* Şəffaflıq-guide layihənin böyük şəkil və statusu bilərsiniz
* Testability – bir xəzinə üçün məhsul keçmək üçün test məlumdur
* Integration-bütün fərdi blokları və modulları nəhayət birlikdə işləmək
* Tracability-tələblər arasında əlaqələr şəffaflıq
* Change management-durub dəyişiklik nəticələrinin qiymətləndirilməsi
* Optimization – dizayn və yalnız nə sifariş çatdırmaq-fallen
* Quality-Biz yaxşı Biznes üçün nə qədər deməkdir başa düşürük
* Müştəri məmnuniyyəti və iş istədiyini alır
* Uyğunluq-normativ sənədlərə Uyğunluğun nümayişi
* Təhlil-operativ qərar qəbul etmə imkanı
Beləliklə, sistem mühəndisliyi bütün həyat msk-la məhsulları ərzində tələblərin yerinə yetirilməsini təmin edən bütün şəkil üçün məsuliyyət daşıyır.
TƏLƏBLƏR PROQRAM TƏMİNATI
Co-bina proqram prosesində mütəxəssislər tərəfindən həll etmək lazımdır ki, problemlər adətən çox mürəkkəbdir. Bu problemlərin təbiəti həmişə aydın deyil, xüsusilə də inkişaf etdirilən proqram si-stemi yenilikçi olduqda. Xüsusilə, sistemin yerinə yetirməli olduğu hərəkətləri dəqiq təsvir etmək çətindir. Funksional funksiyaların Təsviri mümkündür-proqram sisteminə qoyulan məhdudiyyətlər və məhdudiyyətlər bu sistemin tələbləri adlanır və bu funksiyaların formalaşması, təhlili, pre-komplektləşdirilməsi və yoxlanılması prosesi və çəpərin-heç — heçə-tələblərin hazırlanması (requirements engineering).
Tələb müddəti (proqram sisteminə) fərqli şəkildə şərh edilə bilər. Bəzi hallarda, sistemin funksional imkanları və məhdudiyyətləri haqqında yüksək səviyyəli ümumiləşdirilmiş iddialar tələb olunur. Digər həddindən artıq vəziyyət sistem funksiyalarının ətraflı ma— tematik formal təsviridir
Məsələn, əgər şirkət Böyük proqram layihəsinin hazırlanması üçün müqavilə qazanmaq istəyirsə, o, bir tərəfdən Sifarişçinin tələblərini təmin etmək üçün, digər tərəfdən isə digər Kompani — Yami-developerlərlə rəqabət zamanı manevr etmək üçün ən ümumiləşdirilmiş şəkildə tələbləri təqdim etməyə məcburdur. Müqavilə qalib gəldikdən sonra şirkət Sifarişçiyə yerinə yetirdiyi bütün funksiyaları göstərməklə sistemin daha ətraflı təsvirini təqdim etməlidir. Hər iki halda sənədləşdirilmiş sistem tələbləri adlandırılan sənədlər təqdim edilir.
Təcrübədə PT-nin işlənib hazırlanmasının müxtəlif metodologiyalarında istifadə olunan və məhsula tre-batlar qruplarının müəyyənləşdirilməsinə əsaslanan yanaşma tez-tez tətbiq edilir. Bu yanaşma adətən tələb qrupları (növləri, Kate-Qori) daxildir, Məsələn: sistem, proqram, funksional, qeyri-funksional (xüsusilə, keyfiyyət atributları) və s.
Tələbin işlənməsi prosesində meydana çıxan bəzi problemlər bu müxtəlif səviyyəli tələblər arasındakı fərqin aydın şəkildə başa düşülməməsi ilə nəticələnir. Müxtəlif səviyyələrin tələblərini fərqləndirmək üçün sistem tərəfindən yerinə yetirilən funksiyaların detallaşdırılmış opi-sırası üçün yüksək səviyyəli ümumiləşdirilmiş tələbləri və sistem tələblərini (system requirements) ifadə etmək üçün istifadəçi tələbləri (user requirements) istifadə olunur. Bu iki səviyyənin tələbləri ilə yanaşı, sistemin daha ətraflı təsviri-Pro — Pro-layihələndirmə (proqram təminatı) tətbiq edilir ki, bu da tələblərin hazırlanması mərhələsi və sistemin layihələşdirilməsi mərhələsi arasında körpü rolunu oynaya bilər. Aşağıdakı kimi siyahıda göstərilən tələblərin üç növü göstərilə bilər.
İstifadəçi tələbləri-sistemin yerinə yetirdiyi funksiyaların təbii dildə (plus aydınlaşdırıcı diaqramlarda) təsviri və bunun üzərinə qoyulan çəkmələrin çəpər-çəkilməsidir.
Sistem tələbləri. -bəzən funksional təsnifat adlanan sistem funksiyaları və məhdudiyyətlərinin ətraflı təsviri. Bu sistemin və proqram inkişaf etdiriciləri arasında Müqavilənin bağlanması üçün əsasdır.
Layihə sistem spesifikasiyası-sistemin daha müfəssəl layihələşdirilməsi və sonrakı həyata keçirilməsi üçün əsas olacaq strık-turlar proqram sisteminin ümumiləşdirilmiş təsviridir. Bu funksiya sistem tələbləri spesifikasiyasını tamamlayır və ətraflı şəkildə təqdim edir.
1 nümunəsi ilə təqdim edilən nümunədə istifadəçi və sistem tələbləri arasındakı fərq. Burada göstərilir ki, sistem tələbləri necə faydalı ola bilər.
Nümunə 1. İstifadəçi və sistem tələbləri
Xüsusi tələblər
1. Proqram təminatı Xarici fayllara çıxış vasitəsini təqdim etməlidir, digər proqramlarda yaradılmışdır.
Sistem tələbləri dəqiqləşdirilməsi
1.1. İstifadəçi xarici faylları növü müəyyən etmək imkanına malik olmalıdır.
1.2. Xarici Faylın hər bir növü üçün bu fayl növü üçün tətbiq olunan müvafiq vasitə olmalıdır.
1.3. Hər bir növün xarici faylı İstifadəçinin ekranında uyğun olan piktoqramla təmsil olunmalıdır.
1.4. İstifadəçi xarici faylların hər bir növü üçün piktoqramı bölüşdürmək üçün özü üçün imkan yaradılmalıdır.
1.5. İstifadəçi tərəfindən xarici faylı təmsil edən piktoqram seçilərkən bu fayla həmin növün xarici faylları ilə əlaqələndirilmiş vasitə tətbiq edilməlidir.
İstifadəçi tələbləri proqram sisteminin işlənib hazırlanması üzrə müqavilə bağlayan şəxs üçün və proqram təminatının sifarişçisi üçün yazılır, özü də onlar sistemin işlənib hazırlandığı sistem üzrə ətraflı texniki biliyə malik olmaya bilər. 4.2). Sistem tələblərinin dəqiqləşdirilməsi şirkət-tərtib edənin texniki tərkibi və layihənin dəyişmə-rləri üçün nəzərdə tutulmuşdur. O, həmçinin proqram təminatının sifarişçisinə və subpodratçılara lazımdır. Bu, hər iki sənədin nəzərdə tutulmuş və son istifadəçilər üçün proqram sistemi. Nəhayət, layihə sistemi spesifikasiyadır-proqram təminatının tərtibatçılarına yönələn sənəddir.
Şək. 2. Müxtəlif tələb spesifikasiyası növləri və onların oxucu
Funksional və qeyri-funksional tələb-tədqiqat (Functional and qeyri-functional Requirements)
Proqram sisteminin tələbləri tez-tez funksional, qeyri-funksional və Mövzu sahəsinin tələbləri kimi təsnif edilir.
Funksional tələblər "nə" etməli; qeyri – funksional tələblər-"hansı şərtlərə" riayət etməklə (məsələn, verilmiş əməliyyatı yerinə yetirərkən cavabın sürətlə artması); tez-tez funksional tələblər use sase skriptləri (istifadə variantları) şəklində təqdim olunur.
1. Funksional tələblər. Bu, sistemin yerinə yetirməli olduğu servislərin siyahısıdır və bu və ya digər giriş verilənlərinə sistemin necə davranması, müəyyən hallarda necə davranması və s.göstərilməlidir.
2. Qeyri-funksional tələblər. Sistemin xüsusiyyətlərini və ətrafını təsvir edir, sistemin davranışını deyil. Burada həmçinin sistemin həyata keçirdiyi fəaliyyətlərə və funksiyalara qoyulan məhdudiyyətlərin siyahısı da göstərilə bilər. Bunlara vaxt məhdudiyyətləri, sistemin inkişafı prosesinə məhdudiyyətlər, standartlar və s.daxildir.
3. Tələblər mövzu. Sistemin istismar ediləcəyi fənn sahəsini xarakterizə edirlər. Bu tələblər funksional və qeyri-funksional ola bilər.
Əslində, bu tip tələblər arasında dəqiq sərhəd yoxdur. Məsələn, sistemin qeyri-təhlükəsi ilə bağlı xüsusi tələblər qeyri-funksional tələblərə aid edilə bilər. Lakin daha ətraflı baxıldıqda, bu tələbi funksiyaya aid etmək olar, çünki bu, istifadəçinin avtorizasiya vasitələrini sistemə daxil etmək zərurətini yaradır. Buna görə də, bu tələblərin irəli sürülməsini nəzərə alaraq, biz həmişə yadda saxlamalıyıq ki, bu təsnifat əhəmiyyətli dərəcədə süni olur.
Klassik nümunə (şəkil bax 4.3) yüksək səviyyəli struktur-məhsul tələbləri kimi tələb qruplarının formalaşdırılması tələb olunan nizam – intizamın klassiklərindən biri olan Karl vi-qersin əsərlərində təsvir edilmişdir.
Şək 3. Vigers tələbləri səviyyəsi
• Qrup funksional tələblər
o business tələblər (Business Requirements) – bir təşkilat və ya müştəri (istehlakçı) tərəfindən hazırlanmış proqram üçün yüksək səviyyəli məqsədləri müəyyən edir.
o xüsusi tələblər (User Requirements) – sistemin istifadəçilərinin hədəflərini/vəzifələrini təsvir edir, hansılar ki, yaradıldığı proqram sisteminin köməyi ilə istifadəçilər tərəfindən nail olmalıdırlar/yerinə yetirməlidirlər. Bu tələblər tez-tez istifadə variantları (istifadə halları) şəklində təqdim olunur.
o funksional tələblər (Functional Requirements) – proqram sisteminin funksionallığını (davranışını) müəyyən edir, ambulans istifadəçilər tərəfindən biznes tələbləri çərçivəsində və istifadəçi tələbləri kontekstində öz vəzifələrini yerinə yetirmək imkanını təqdim etmək üçün yaradılmışdır.
* Qeyri-funksional tələblər qrupu (qeyri-Functional Requirements)
o Biznes qaydaları (Business Rules)-aşağıdakılar daxildir və ya kor – pourativ reqlamentlər, siyasətçilər, standartlar, qanunauyğun aktlar, daxili təşəbbüslər (məsələn, CMMI üzrə proseslərin yetkinliyinə nail olmaq cəhdləri), uçot praktikləri, hesablama alqoritmləri və s.daxildir. Business Rules Group, biznesin bəzi aspektlərini müəyyən edən və ya məhdudlaşdıran müddəalar "kimi biznes qaydalarının anlayışını verir. Onlar viz-Ness strukturunun təşkilini, biznesin davranışına nəzarət və ya təsir göstərməyi nəzərdə tuturlar". Biznes-qaydalar tez-tez "Kim konkret variasiya, istifadə ssenarisini həyata keçirəcək" sualına cavab verərək, məsuliyyət bölgüsü müəyyən edir və ya bəzi funksional tələblərin meydana gəlməsini diktə edir. Layihələrin idarə edilməsi intizamının (artıq proqram təminatının hazırlanması layihəsindən kənar, lakin biznes-layihələrin və biznes-proseslərin yerinə yetirilməsi) kontekstində bu qaydalar yüksək əhəmiyyətə malikdir və onlar biznes layihələrinin məhdudlaşdırılmasını tez-tez müəyyən edirlər, ko-tövhələrin avtomatlaşdırılması üçün müvafiq proqram təminatı yaradılır.
o xarici interfeys (External Interfaces) – tez-tez "istifadəçi interfeysi"ilə əvəz olunur. Əslində, istifadəçi interfeysinin təşkili-siya məsələləri bu Kate-Qori tələblərində mütləq vacibdir, lakin digər sistemlər, əməliyyat mühiti (məsələn, əməliyyat sisteminin hadisə yerində qeyd), istismar zamanı monitorinq imkanları ilə qarşılıqlı təsir aspektlərinin konkretləşdirilməsi-bütün bunlar funksional tələblərdən çox deyil (səhvən bəzən belə xarakteristikalara aid edilir), interfeyslərin məsələləri kimi, funksional tələblər sistemin funksionallığına birbaşa bağlıdır, biznes – ehtiyacların həllinə yönəldilmişdir.
o keyfiyyət atributları (Quality Attributes) – istifadəçi və/və ya developers üçün vacib olan müxtəlif "ölçülər" də məhsulun əlavə xüsusiyyətlərini təsvir edir. Atributlar portability, interoperabelliyə (digər sistemlərlə qarşılıqlı əlaqələrin şəffaflığı), bütövlüyə, davamlılığa və s. aiddir.
o məhdudiyyətlər (Constraints) – şərtlərin formalaşdırılması, tələbləri və ya tələblər dəstini bəzəyən, onların həyata keçirilməsi üçün mümkün həllərin seçilməsini məhdudlaşdıran. Xüsusilə, onlar Rea-quraşdırma və/və ya yerləşdirilməsi platforma seçimi təsir pa-rameters performans daxildir (protokollar, proqram server, verilənlər bazası,...), öz növbəsində, məsələn, xarici interfeyslərə aid ola bilər.
* Sistem tələbləri (System Requirements) – bəzən təsnif-funksional tələblər Qrupunun tərkib hissəsi kimi ovlanır ("funksional tələblər"kimi səhv etməyin). Təsvir-bir-biri ilə əlaqəli alt sistemlər və proqramlar arasında çox və ya çox olan proqram təminatına yüksək səviyyəli tələblər hazırlayır. Bu zaman sistem həm tam proqram təminatı, həm də proqram və aparat hissələrindən ibarət ola bilər. Ümumi halda sistemin funksiyalarını yerinə yetirən personal, məsələn, proqram-aparat alt sistemlərindən istifadə etməklə müəyyən əməliyyatların yerinə yetirilməsinin avtorizasiyası sistemin bir hissəsi ola bilər.
FUNKSİONAL TƏLƏBLƏR
Bu tələblər sistemin davranışını və yerinə yetirdiyi xidmətləri (funksiyaları) təsvir edir və inkişaf etdirilən sistemin növündən və İstifadəçilərin ehtiyaclarından asılıdır. Əgər funksional tələblər istifadəçi kimi nəzərdə tutulubsa, onlar sistemi, bir qayda olaraq, ümumi şəkildə təsvir edirlər. Bunun əksinə olaraq Sistem tələbləri kimi rəsmiləşdirilmiş funksional tələblər sistemi maksimal dərəcədə ətraflı təsvir edir, o cümlədən onun giriş və istirahət məlumatları, istisnalar və s.
Proqram sistemləri üçün funksional tələblər müxtəlif yollarla təsvir edilə bilər. Misal üçün, digər kitabxanalardan Kitab və sənədlər sifariş etmək üçün nəzərdə tutulmuş universitetin kitabxana sisteminə funksional tələbləri nəzərdən keçirək.
1. İstifadəçi ona uyğun olmayan Kitab və sənədləri və ya bütün çoxluq üzrə kataloq verilənlər bazalarını və ya onların müəyyən eyni sahə üzrə axtarış aparmaq imkanına malik olmalıdır.
2. Sistem istifadəçiyə kitabxana sənədlərini nəzərdən keçirmək üçün münasib mühitlə təmin etməlidir.
3. Hər bir sifariş daimi saxlanması üçün istifadəçi formu kopyalanan bir unikal identifikasiya ROM (ORDERJD) ilə təchiz olunmalıdır.
Bu funksional istifadəçi tələbləri sistemin malik olduğu xüsusiyyətləri müəyyən edir. Onlar istifadəçi tələblərini ehtiva edən bir sənəddən alınır və funksiyalı tələblərin ayrıntıların müxtəlif səviyyələri ilə təsvir oluna biləcəyini göstərir (birinci və üçüncü tələbləri müqayisə edin).
Sistemlərin inkişafında yaranan bir çox problemlər uyğunsuzluqla və tələblərin spesifikasiyasının "bulanıklığı" ilə bağlıdır. Təbii ki, developers sistemin həyata keçirilməsi üçün daha asan olması üçün ikili həssaslığa imkan verən tələbləri şərh edirlər. Amma bu şərh müştərinin gözləntiləri ilə üst-üstə düşməyə bilər. Bu vəziyyət yeni tələblərin işlənib hazırlanmasına və sistemə dəyişikliklərin edilməsinə gətirib çıxarır. Bu, öz növbəsində, hazır sistemin təhvil verilməsinin ləngiməsinə və onun bahalaşmasına gətirib çıxarır.
Kitabxana sisteminə dair ikinci tələbi yuxarıda göstərilən siyahıdan nəzərdən keçirək və "sənədlərə baxış üçün münasib mühit"ifadəsinə diqqət yetirək. Kitabxana Sistemi sənədləri geniş formatda təqdim edə bilər. Tələbdə nəzərdə tutulur ki, Sistem istənilən formatda sənədlərə baxmaq üçün vəsait təqdim etməlidir. Lakin bu şərt açıq şəkildə yazılmadığı üçün, vaxt çatışmazlığı halında iş yerləri mətn sənədlərinə baxmaq üçün sadə bir vasitə istifadə edə bilər və belə bir qərarın bu tələbdən irəli gəldiyinə dair təkid edə bilər.
Prinsipcə, funksional tələblərin dəqiqləşdirilməsi kompleks və ziddiyyətsiz olmalıdır. Kompleksliyə bütün sistem xidmətlərinin Təsviri (tərifi) daxildir. Qeyri-ziddiyyət, xidmətlərin bir-birinə uyğun olmayan və bir-birini istisna edən təriflərinin olmaması deməkdir. Təcrübədə böyük və mürəkkəb sistemlər üçün funksional törəmələrin kom-pleks və ziddiyyətsiz spesifikasiyasını hazırlamaq çox çətindir. Bunun səbəbi qismən işlənmiş sistemin mürəkkəbliyindədir,qismən isə sistemin nə etməli olduğu barədə razılaşdırılmamış istinad nöqtələrində. Bu uyğunsuzluq tələblərin ilkin formalaşdırılması mərhələsində özünü göstərməyə bilər — onun aşkarlanması üçün spesifikasiyanın daha dərin təhlili lazımdır. Sistem funksiyalarının uyğunsuzluğu həyat dövrünün hər hansı mərhələsində pro-qram özünü göstərdikdə, sistem spesifikasiyasına müvafiq dəyişikliklər edilməlidir.
QEYRİ-FUNKSİONAL TƏLƏBLƏR
Adından göründüyü kimi, qeyri-funksional Tələblər sistem tərəfindən yerinə yetirilən funksiyalarla birbaşa əlaqəli deyil. Onlar sistemin etibarlılığı, cavab müddəti və ya sistem ölçüsü kimi ta-kimi inteqrasiya xüsusiyyətləri ilə əlaqələndirilir. Bundan əlavə, qeyri-funksional tələblər sistemdəki məhdudiyyətləri, məsələn, giriş-çıxış qurğularının bant genişliyi və ya sistem interfeysində istifadə olunan məlumat formatları kimi müəyyən edə bilər.
Bir çox qeyri-funksional tələblər sistemə ayrı-ayrı vasitələrlə deyil, bütövlükdə aiddir. Bu, fərdi funksional tələblərə nisbətən daha əhəmiyyətli və kritik olduğunu bildirir. Funksional tələbdə əlavə edilmiş səhv sistemin keyfiyyətini azalda bilər, qeyri-funksional tələblərdə xəta sistemi qeyri-işlək vəziyyətə gətirə bilər.
Bununla yanaşı, qeyri-funksional tələblər Yalnız proqram sisteminin özünə aid edilə bilməz: bəziləri PT — nin yaradılmasının texnoloji prosesinə aid ola bilər, digərləri isə-işlənib hazırlanma prosesinə qoyulan keyfiyyət standartlarının siyahısını ehtiva edə bilərlər. Bundan əlavə, qeyri-funksional tələblərin spesifikasiyasında göstərilə bilər ki, sistemin layihələndirilməsi yalnız müəyyən CASE-vasitələrlə həyata keçirilməlidir və riayət edilməli olan layihələndirmə prosesinin təsviri verilir.
Qeyri-funksional tələblər istifadəçi tələbatını əks etdirir; bu zaman onlar büdcə məhdudiyyətlərinə əsaslanırlar, inkişaf etdirilən sistemin digər proqram sistemləri və hesablama sistemləri ilə qarşılıqlı əlaqəsinin mümkünlüyünü, həmçinin təhlükəsizlik texnikası qaydaları, intellektual mülkiyyətin qorunması haqqında qanunvericilik və s.kimi xarici amilləri əks etdirirlər. 4.4 qeyri -unksio-nal tələblərin təsnifatı göstərilir.
Şək4. Qeyri-funksional tələblərin növləri
Bütün qeyri-funksional tələblər pic göstərilir.4.4. üç böyük qrupa bölünmüşdür.
1. Məhsul tələbləri. Təsvir istismar xassələri proqram təminatının. Buraya sistemin istehsalı, lazımi yaddaşın, etibarlılığın həcmi (sistemdə mümkün nasazlıqların tezliyini müəyyənləşdirir), sistemin müxtəlif kompüter platformalarına köçürülməsi və istismar rahatlığı tələbləri daxildir.
2. Təşkilati tələblər. Müştəri və geliştirici tərəfindən siyasət və Orga-aşağı qaydaları göstərilir. Bunlara proqram təminatının hazırlanması standartları, proqram təminatının həyata keçirilməsi üzrə tələblər (yəni proqramlaşdırma dilinə və layihələndirmə üsullarına), proqram təminatının hazırlanma müddətini müəyyən edən çıxış tələbləri və müvafiq sənədlər daxildir.
3. Xarici tələblər. Xarici siyasətlərin işlənib hazırlanan sistemə və onun işlənməsi prosesinə təsiri nəzərə alınır. Onlar bu sistemin digər sistemlər ilə qarşılıqlı təsirini müəyyən edən tələbləri, sistemin mövcud qanunvericilik çərçivəsində işlənib hazırlanacağına və fəaliyyət göstərəcəyinə təminat verən hüquqi tələbləri, həmçinin etik tələbləri daxil edirlər. Sonuncular sistemin istifadəçilər və ya müştəri üçün məqbul olmasını təmin etməlidirlər.
Qeyri-funksional tələblərin əsas problemi onların icrasını yoxlamaq çətin olmasıdır. Tez-tez onlar belə istismar-qi rahatlığı kimi müştəri sisteminin ümumi məqsədləri keçirmək üçün yazılı olunur, uğursuzluqlar və ya istifadəçi başına sürətli cavab sonra bərpa etmək imkanı. Bu cür tələblərin həyata keçirilməsi sistem tərtibatçıları üçün çətin ola bilər, çünki onlar qeyri-səlis şəkildə formalaşdırılıb və müxtəlif izahatlar üçün genişlik açır. Belə vəziyyəti göstərir misal 2. Burada sistemin əsas göstəricilərindən biri (se-ley) əməliyyatın sadəliyi göstərilmişdir ki, qeyri-funksional tələblər şəklində müxtəlif üsullarla ifadə etmək olar. Bu halda, tələb test edilə bilər ki, nəzərdə tutulmuşdur.
Misal 2. Sistem məqsədləri və tələblərin yoxlanılması.
Sistem məqsədi.
Sistem təcrübəli Opera-Tövrat üçün istifadə etmək və onun səhvlərinin sayını minimuma endirmək üçün sadə olmalıdır.
Yoxlanıla bilməyən qeyri-funksional tələb.
Bu sistemlə işləmək üçün iki saatlıq təlimdən sonra bütün sistem funksiyaları təcrübəli operatora təqdim edilməlidir. Belə təlimdən sonra operatorun səhvlərinin sayı iş günü ərzində iki dəfədən çox olmamalıdır.
İdeal olaraq, qeyri-funksional tələblər obyektiv şəkildə ölçülə bilən kəmiyyət göstəriciləri vasitəsilə ifadə edilməlidir. Masaya. 4.1 qeyri-funksional sistem xüsusiyyətlərini müəyyən edə biləcək göstəricilər verilmişdir. Təcrübədə kəmiyyət göstəricilərinin köməyi ilə qeyri -unksio-nal tələbləri ifadə etmək çox çətindir. PT-nin sifarişçisi tez-tez öz vizyonunu kəmiyyət göstəriciləri ilə ifadə edilmiş tələblər vasitəsilə sistemə daxil edə bilmir. Və ya bəzi Sistem tələbləri, məsələn, müşayiət rahatlığı, ümumiyyətlə kəmiyyət göstəricisi vasitəsilə ifadə edilə bilməz-ya. Bundan əlavə, qeyri-funksional kəmiyyətlərin obyektiv ölçülməsi xərcləri son dərəcə yüksək ola bilər.
Qeyri-funksional tələblər tez-tez sistemin təqdim etdiyi digər tələblərlə münaqişəyə girirlər. Məsələn, sistem tələblərindən birinə uyğun olaraq, sistemin ölçüsü 4 Mbaytdan artıq olmamalıdır, çünki o, daimi enerji sərf edən məhdud həcmli qurğuya tam uyğun olmalıdır. Sistemin yazılması üçün tələb olunan digər tələb Ada proqramlaşdırma dilindən istifadə olunur və bu, çox vaxt kritik real vaxt sistemlərinin yaradılması üçün tətbiq edilir. Lakin, məsələn, Ada dilində tərtib edilmiş Sistem proqramı 4 MB-dən çoxdur. Beləliklə, eyni vaxtda Siz-bu tələblərin cilalanması mümkün deyil. Bu vəziyyətdə, tələblərdən birini imtina etmək lazımdır. Siz ya başqa bir dili tətbiq edə bilərsiniz-barışıq, ya da sistem üçün ayrılan yaddaşın həcmini artırmaq.
Cədvəl 1. Qeyri-funksional tələblərin kəmiyyət göstəriciləri
Показатель
|
Единицы измерения
|
Скорость
|
Количество выполненных транзакций в секунду;
|
|
время реакции на действия пользователя;
|
|
время обновления экрана
|
Размер
|
Килобайты;
|
|
количество модулей памяти
|
Простота эксплуатации
|
Время обучения персонала;
|
|
количество статей в справочной системе
|
Надежность
|
Средняя продолжительность времени между двумя последовательными проявлениями ошибок в системе;
вероятность выхода системы из строя;
коэффициент готовности системы
|
Устойчивость к сбоям
|
Время восстановления системы после сбоя; процент событий, приводящих к сбоям; вероятность порчи данных при сбоях
|
Переносимость
|
Процент машинно-зависимых операторов;
|
|
количество машинно-зависимых подсистем
|
MÖVZU TƏLƏBLƏRİ.
Bu tələblər proqram sisteminin istismar olunacağı şərtləri əks etdirir. Onlar yeni funksional tələblər kimi təqdim edilə bilər, sistem hesablamaları necə yerinə yetirməlidir, artıq ifadə edilmiş funksional tələblərə məhdudiyyət kimi və ya göstəriş kimi. Bu tələblər çox vacibdir, çünki bu sistemdən istifadə olunacaq fənn sahəsini seçirlər. Fənn tələblərinin yerinə yetirilməməsi sistemin sıradan çıxmasına səbəb ola bilər.
Nümunə olaraq, kitabxana sisteminə olan tələbləri nəzərdən keçirin (bax 1.bölməsi).
1. Bütün kitabxana verilənlər bazalarına çıxış imkanı verən standart istifadəçi interfeysi Z39. 50 standartında əsas olmalıdır.
2. Müəllif hüquqlarının təmin edilməsi üçün bəzi borclu sənədlər alındıqdan dərhal sonra sistemdən çıxarılmalıdır. Bunu etmək üçün, istifadəçinin istəyindən asılı olaraq, bu sənədlər ya yerli sistem serverində, ya da şəbəkə printerində çap edilə bilər.
Birinci tələb sistem funksiyalarının tələbinə məhdudiyyət qoyulmasıdır. Bu, ba-zum məlumatlarının istifadəçi interfeysinin müvafiq biblioqrafik standartlara uyğun olaraq həyata keçirilməli olduğunu göstərir. İkinci tələb xarici tələbdir və kitabxana materiallarına tətbiq edilən müəllif hüquqları haqqında qanunun yerinə yetirilməsinə yönəlib. Bu tələbdən irəli gəlir ki, sistemin bir sıra kitabxana sənədləri növləri üçün avtomatik olaraq tətbiq edilən "sil_n_peche" vasitəsi olmalıdır.
3 nümunəsində fənn sahəsinin tələbləri ifadə edilmiş, hesablamaların necə yerinə yetirilməli olduğu uka-zaylayıcı. Onlar qatarın avtomatik əyləc sisteminin spesifik xüsusiyyətlərindən götürülür. Bu sistem qatarı avtomatik olaraq qırmızı semafor siqnalı ilə dayandırmalıdır. Bu tələb əyləc zamanı qatarın sürətinin hesablanması üsulunu göstərir. Burada tezliklə - qatarın hesablanması zamanı istifadə edilən terminologiya istifadə edilmişdir. Onu anlamaq üçün qatarların idarəetmə sistemləri və onların xüsusiyyətləri haqqında müvafiq biliklərə ehtiyac var.
Misal 3. Qatarın əyləc formula ilə hesablanır
Qəza=İdarələr + Dgradient
Verilən nümunə fənn sahəsinin tələbləri ilə bağlı əsas problemi göstərir. Bu tip tələblər mövzu sahəsinə xas olan dil və işarələrdən istifadə edir ki, bu da proqram təminatının inkişaf etdiriciləri tərəfindən onların başa düşülməsini çətinləşdirir. Buna görə də, proqram təminatı sifarişçilərinin nəzərdə tutulduğu kimi, əvvəlcədən təyin edilmiş sahə üzrə tələblər heç də həmişə yerinə yetirilmir.
XÜSUSİ TƏLƏBLƏR
Sistem üçün istifadəçi tələbləri funksiyaları təsvir etməlidir-xüsusi texniki biliklərə malik olmayan istifadəçiyə belə başa düşülməlidir ki, onlar funksional və qeyri-funksional sistem tələblərini təsvir etməlidirlər. Bu tələblər sistemin yalnız xarici davranışını müəyyən etməli, sistemin struktur xüsusiyyətlərini müəyyən etməyə imkan verməməlidir. İstifadəçi tələbləri sadə masalar, eləcə də əyani və aydın diaqramlardan istifadə edərək təbii dil tərəfindən yazılmalıdır.
Bununla yanaşı, təbii dildə olan tələblərin təsvirində müxtəlif problemlər yarana bilər.
1. Təqdimatın aydınlığının olmaması. Bəzən heç bir fikri təbii dillə dəqiq və birmənalı şəkildə ifadə etmək asan deyil.
2. Qarışdırma tələbləri. İstifadəçi tələblərində sistem məqsədləri və layihə informasiyalarına funksional və qeyri-funksional tələblərə aydın bölünmə nəzərdə tutulur.
3. Tələblərin birləşdirilməsi. Si-stemə dair bir neçə müxtəlif tələblər vahid istifadəçi tələbi kimi təsvir edilə bilər.
Istifadəçi skih tələblərinə yazılı zaman qeyri-müəyyənlik minimuma endirmək üçün, ilə [Sommerville Proqram mühəndisliyi] aşağıdakı tövsiyələr verilmişdir.
1. Xüsusi törəmələri qeyd etmək üçün standart forma hazırlayın və ona ciddi riayət edin. Standart yazma forması tələblərin formalaşdırılmasında qeyri-müəyyənlikləri azaldır və onları asanlıqla yoxlamağa imkan verir. Mən yalnız onun formulunu deyil, həm də onun əsaslandırılmasını və tələblərin daha ətraflı spesifikasiyasına istinad etmək üçün qeydiyyatdan formasını daxil etməyi məsləhət görürəm.
2. 4 nümunəsində göstərildiyi kimi məcburi və təsviri ehtiyaclar arasında fərq edin. Burada yeni struktur elementlərinin əlavə edilməsi üçün vasitənin olması məcburi tələbdir, Təsviri-pol-Çağırıcının hərəkət ardıcıllığının Təsviri. Təsviri tələb Bu istifadəçi tələbinin həyata keçirilməsi üçün tamamilə zəruri deyil və zəruri hallarda dəyişdirilə bilər.
3. Tələbin əsas hissələrini vurğulamaq üçün müxtəlif yazı tiplərini (qalın və italik) istifadə edin.
İmkan daxilində kompüter jarqon çəkinin. Bu, proqram təminatının işlənib hazırlandığı fənn sahəsinin texniki şərtlərindən istifadə edilməsini istisna etmir.
Misal 4.
Sxem struktur elementlərinin yaradılması üçün xüsusi tələblər
Diaqram struktur elementləri durub
Redaktor istifadəçi üçün seçilmiş ti PA-nın yeni struktur elementlərini sxemə əlavə etmək imkanı verən vasitəyə malik olmalıdır.
'Yeni struktur elementinin sxemə əlavə edilməsi üçün istifadəçi hərəkətlərinin ardıcıllığı
1. İstifadəçi əlavə olunan element növünü seçir.
2. İstifadəçi kursoru sxemdə istədiyiniz mövqeyə yerləşdirir və yeni elementin hansı simvolla göstəriləcəyini bildirir.
3. İstifadəçi elementin simvolunu son mövqeyə hərəkət etdirir.
Əsaslandırma. Yeni struktur elementlərinin əlavə funksiyasının həyata keçirilməsinə bu yanaşma istifadəçiyə elementin tipinin seçilməsi və sxemdə onun yerləşdirilməsi üzərində bilavasitə nəzarəti təmin edir.
SİSTEM TƏLƏBLƏRİ.
Sistem tələbləri istifadəçi tələblərinin daha ətraflı təsviridir. Onlar adətən proqram sisteminin işlənib hazırlanması üzrə müqavilənin bağlanması üçün əsas kimi xidmət edirlər və buna görə də sistemin maksimal tam spesifikasiyasını ümumilikdə təqdim etməlidirlər. Sı-STEM tələbləri də sistemin dizayn mərhələsində başlanğıc nöqtəsi kimi istifadə olunur.
Sistem tələblərinin dəqiqləşdirilməsi obyekt modeli və ya məlumat axını modeli kimi müxtəlif sistem modelləri əsasında qurula bilər. Sistem tələblərinin xüsusi fikasiyasının hazırlanmasında istifadə olunan müxtəlif modellər 6 mühazirəsində nəzərdən keçirilir.
Prinsipcə, sistem tələbləri sistemin həyata keçirilməsinin mexanizmini göstərmədən sistemin nə etməli olduğunu müəyyən edir. Lakin, digər tərəfdən, sistemin tam təsviri üçün sistem arxitekturası haqqında bütün informasiyanı mümkün qədər daxil etməli olan ətraflı məlumat tələb olunur. O bir sıra səbəbləri var.
1. Sistemin ilkin arxitekturası tələblərin spesifikasiyasını strukturlaşdırmağa kömək edir. Sistem tələbləri inkişaf etdirilən sistemin ibarət olduğu alt sistemləri təsvir etməlidir.
2. Əksər hallarda, inkişaf etdirilən sistem artıq mövcud sistemlərlə əlaqə saxlamalıdır. Bu, yeni sistemin arxitekturasına məhdudiyyət qoyur.
3. Xüsusi arxi-tekturanın işlənilən sistemi üçün istifadə şərtləri Xarici Sistem tələbi kimi çıxış edə bilər.
Sistem tələblərinin spesifikasiyaları tez-tez təbii dildə yazılır. Lakin təbii dilin istifadəsi ətraflı spesifikasiyanın yazılmasında dolayı problemlər yarada bilər. Təbii dilin dəyişdirilməsi, spesifikliyi yazanlar və onu oxuyanlar eyni sözləri və ifadələri Odin-koyu başa düşdüyünü nəzərdə tutur. Amma əslində bu belə deyil, çünki təbii dil anlayışların müəyyən dərəcədə bulanıqlığına malikdir. Bunun nəticəsində eyni tələb müxtəlif insanlar tərəfindən müxtəlif yollarla şərh edilə bilər.
Oxşar problemlərin qarşısını almaq üçün spesifikasiyanın strukturlaşdırılması və anlayışların fərqliliyini azaltmaq üçün tələblərin təsviri üsulları hazırlanmışdır. Bu üsullar cədvəldə təqdim olunur. 4.2. Bundan əlavə, digər yanaşmalar, məsələn, tələblərin təsviri üçün xüsusi Dillər hazırlanmışdır.
Cədvəl 4.2. Spesifikasiyası tələbləri qeyd üsulları
Dostları ilə paylaş: |