• QABUL QILDI: ABDULLAYEV R QARSHI 2024 Mavzu
  • Kalit so’zlar
  • Foydalanilgan adabiyotlar
  • Dasturiy injiniringga kirish




    Download 169.61 Kb.
    Sana23.04.2024
    Hajmi169.61 Kb.
    #205220
    Bog'liq
    1-Mustaqil
    Akusherlik va ginekologiya крил 200, 1-4 sinf.Test to\'plam, 5-ГРАФЛАР УСТИДА АМАЛЛАР, 2 5334724864852890905.docxFG, Amaliy ish 3, 10lab, 3-МАВЗУ Mehnatning fiziologik va gigienik asoslari, курсовая Методика и анализ произведений различных жанров на уроках литературы (1), Amaliy ish 1, 2-Mustaqil, 1-Mustaqil

    O’ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALAR VAZIRLIGI
    MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI
    DASTURIY INJINIRINGGA KIRISH” FANIDAN


    1-Mustaqil ish
    BAJARDI: 2-KURS DI-11-22 GURUH TALABASI
    BOBOQULOV B

    QABUL QILDI: ABDULLAYEV R


    QARSHI 2024






    Mavzu: Dasturiy ta’minot quyi tizimlari arxitekturasini loyihalash Ob’ektga yo’naltirilgan dasturiy ta’minot arxitekturasini loyihalash Dasturiy ta’minot klent-server arxitekturasini loyihalash Xizmatga yo’naltirilgan dasturiy ta’minot arxitekturasini loyihalash


    Kalit so’zlar: arxitektura, dizayn, testlash, evolutsiya, xavfsizlik, ishinchlilik, barqarorlilik, servis, uml, talab, servis.

    Dasturiy ta'minot jarayoni - bu dasturiy ta'minot tizimini ishlab chiqarishga olib keladigan bog'liq harakatlar to'plami ¬. Men 1 -bobda muhokama qilganimdek , dasturiy ta'minot tizimlarining ko'plab turlari mavjud va ularning barchasiga tegishli bo'lgan universal dasturiy ta'minot muhandisligi usuli mavjud emas. Shunday qilib, universal qo'llaniladigan dasturiy ta'minot jarayoni mavjud emas. Turli kompaniyalarda qo'llaniladigan jarayon ishlab chiqilayotgan dasturiy ta'minot turiga, dasturiy ¬ta'minot mijozining talablariga va dasturiy ta'minotni yozuvchi odamlarning ko'nikmalariga bog'liq.


    Biroq, har xil dasturiy ta'minot jarayonlari mavjud bo'lsa-da, ularning barchasi qaysidir shaklda men 1-bobda taqdim etgan to'rtta asosiy dasturiy ta'minot muhandisligi faoliyatini o'z ichiga olishi kerak:
    1. Dasturiy ta'minot spetsifikatsiyasi Dasturiy ta'minotning funksionalligi va uning ishlashidagi cheklovlar aniqlanishi kerak.
    2. Dasturiy ta'minotni ishlab chiqish Spetsifikatsiyaga javob beradigan dasturiy ta'minot ishlab chiqarilishi kerak.
    3. Dasturiy ta'minotni tekshirish Dastur mijoz xohlagan narsani bajarishini ta'minlash uchun tekshirilishi kerak.
    4. Dasturiy ta'minot evolyutsiyasi Dasturiy ta'minot mijozlarning o'zgaruvchan ehtiyojlarini qondirish uchun rivojlanishi kerak.
    Ushbu tadbirlar o'z-o'zidan murakkab tadbirlar bo'lib, ular ¬talablarni tekshirish, arxitektura dizayni va birliklarni sinovdan o'tkazish kabi subaktivliklarni o'z ichiga oladi. Jarayonlar, shuningdek, ishlab chiqarish faoliyatini qo'llab-quvvatlaydigan dasturiy ta'minot konfiguratsiyasini boshqarish va loyihani rejalashtirish kabi boshqa tadbirlarni ham o'z ichiga oladi.
    Jarayonlarni tavsiflash va muhokama qilishda biz odatda ma'lumotlar modelini ko'rsatish va foydalanuvchi interfeysini loyihalash va bu harakatlarni tartibga solish kabi ushbu jarayonlardagi harakatlar haqida gapiramiz. Biz hammamiz odamlarning yumshoq mahsulotlarni ishlab chiqish uchun nima qilayotgani bilan bog'lanishimiz mumkin . ¬Shu bilan birga, jarayonlarni tavsiflashda kim ishtirok etayotganini, nima ishlab chiqarilishini va harakatlar ketma-ketligiga ta'sir qiluvchi shartlarni tavsiflash ham muhimdir:
    1. Mahsulotlar yoki etkazib beriladigan mahsulotlar jarayon faoliyatining natijasidir. Masalan, arxitektura dizayni faoliyatining natijasi dasturiy ta'minot arxitekturasining modeli bo'lishi mumkin.
    2. Rollar jarayonda ishtirok etayotgan odamlarning mas'uliyatini aks ettiradi. Rollarga misol qilib loyiha menejeri, konfiguratsiya menejeri va dasturchini keltirish mumkin.
    3. Oldindan va keyingi shartlar - bu jarayon yoki mahsulot ishlab chiqarilishidan oldin va keyin bajarilishi kerak bo'lgan shartlar. Misol uchun, arxitektura ¬dizayni boshlanishidan oldin, iste'molchi barcha talablarni tasdiqlagan bo'lishi shart bo'lishi mumkin; Ushbu harakat tugagandan so'ng, arxitekturani tavsiflovchi UML modellari ko'rib chiqilishi shart bo'lishi mumkin.
    Dasturiy ta'minot jarayonlari murakkab bo'lib, barcha intellektual va ijodiy jarayonlar singari, qarorlar va mulohazalar qabul qiladigan odamlarga tayanadi. Barcha turdagi dasturiy ta'minot uchun to'g'ri keladigan universal jarayon yo'qligi sababli, ko'pchilik dasturiy ta'minot kompaniyalari o'zlarining ishlab chiqish jarayonlarini ishlab chiqdilar. Jarayonlar tashkilotdagi dasturiy ta'minot ishlab chiquvchilari imkoniyatlaridan va ishlab chiqilayotgan tizimlarning xususiyatlaridan foydalanish uchun rivojlangan. Xavfsizlik nuqtai nazaridan muhim tizimlar uchun batafsil yozuvlar saqlanadigan juda tuzilgan ishlab chiqish jarayoni talab qilinadi. Tez o'zgaruvchan talablarga ega biznes tizimlari uchun yanada moslashuvchan va tezkor jarayon yaxshiroq bo'lishi mumkin.
    1 -bobda muhokama qilganimdek , professional Professional dasturiy ta'minotni ishlab chiqish boshqariladigan faoliyatdir, shuning uchun rejalashtirish barcha jarayonlarning ajralmas qismidir. Rejaga asoslangan ¬jarayonlar - bu jarayon bo'lib, barcha jarayonlar oldindan rejalashtirilgan va taraqqiyot ushbu rejaga muvofiq o'lchanadi. Men 3 -bobda muhokama qiladigan tezkor jarayonlarda, dasturiy ta'minot ishlab chiqilayotganda rejalashtirish bosqichma-bosqich va doimiydir. Shuning uchun ¬mijoz yoki mahsulotning o'zgaruvchan talablarini aks ettirish uchun jarayonni o'zgartirish osonroq . Boehm va Turner (Boehm and Turner 2004) tushuntirganidek, har bir yondashuv har xil turdagi dasturlarga mos keladi. Umuman olganda, katta tizimlar uchun siz rejaga asoslangan va tezkor jarayonlar o'rtasidagi muvozanatni topishingiz kerak.
    Umumjahon dasturiy ta'minot jarayoni mavjud bo'lmasa-da ¬, ko'pgina tashkilotlarda jarayonni takomillashtirish uchun imkoniyatlar mavjud. Jarayonlar eskirgan texnikalarni o'z ichiga olishi yoki sanoat dasturiy ta'minot muhandisligining eng yaxshi amaliyotidan foydalanmasligi mumkin. Darhaqiqat, ko'pgina tashkilotlar hali ham dasturiy ta'minotni ishlab chiqishda dasturiy ta'minot muhandisligi usullaridan foydalanmaydi. Ular UML modellashtirish va test asosida ishlab chiqish kabi usullarni joriy etish orqali o'z jarayonlarini yaxshilashlari mumkin. Men dasturiy ta'minot jarayonini takomillashtirishni qisqacha keyinroq ushbu bob matnida va batafsilroq 26-bobda muhokama qilaman.
    O’tgan mavzuda tushuntirganimdek, dasturiy ta'minot jarayoni modeli (ba'zan dasturiy ta'minotni ishlab chiqishning hayot tsikli yoki SDLC modeli deb ataladi) dasturiy ta'minot jarayonining soddalashtirilgan ko'rinishidir ¬. Har bir jarayon modeli ma'lum bir nuqtai nazardan jarayonni ifodalaydi va shuning uchun bu jarayon haqida faqat qisman ma'lumot beradi. Masalan, jarayon faoliyati modeli harakatlar va ularning ketma- ketligini ko'rsatadi, lekin bu faoliyatda ishtirok etadigan odamlarning rollarini ko'rsatmasligi mumkin. Ushbu bo'limda men bir qancha umumiy jarayon modellarini (ba'zan jarayon paradigmalari deb ataladi ) tanishtiraman va ularni arxitektura nuqtai nazaridan taqdim etaman. Ya'ni, biz jarayonning asosini ko'ramiz, lekin jarayonning tafsilotlarini emas.
    Ushbu umumiy modellar dasturiy ta'minotni ishlab chiqishda turli yondashuvlarni tushuntirish uchun ishlatilishi mumkin bo'lgan dasturiy jarayonlarning yuqori darajadagi, mavhum tavsiflari. Siz ularni yanada aniqroq dasturiy ta'minot muhandislik jarayonlarini yaratish uchun kengaytirilishi va moslashtirilishi mumkin bo'lgan jarayon ramkalari deb o'ylashingiz mumkin.
    Bu erda men qamrab oladigan umumiy jarayon modellari:
    1. Sharshara modeli Bu spetsifikatsiya , ishlab chiqish, tasdiqlash va evolyutsiyaning asosiy jarayon jarayonlarini oladi va ularni talablar spetsifikatsiyasi, dasturiy ta'minotni loyihalash, joriy etish ¬va sinovdan o'tkazish kabi alohida jarayon bosqichlari sifatida ifodalaydi .¬
    Ratsional birlashtirilgan jarayon
    Ratsional birlashtirilgan jarayon (RUP) bu erda muhokama qilingan barcha umumiy jarayon modellarining elementlarini birlashtiradi va prototiplash va dasturiy ta'minotni bosqichma-bosqich etkazib berishni qo'llab-quvvatlaydi (Krutchen 2003). RUP odatda uchta nuqtai nazardan tavsiflanadi: vaqt bo'yicha modelning bosqichlarini ko'rsatadigan dinamik istiqbol, jarayon faoliyatini ko'rsatadigan statik istiqbol va jarayonda foydalanish uchun yaxshi amaliyotlarni taklif qiladigan amaliyot istiqboli. RUP bosqichlari - bu tizim uchun biznes-keys o'rnatilgan boshlang'ich; ishlab chiqish, bu erda talablar va arxitektura ishlab chiqilgan; dasturiy ta'minot amalga oshiriladigan qurilish; va tizim joylashtirilgan o'tish.
    2.3.Dasturiy ta’minotni testlash
    Testlash, dasturiy ta’minotni foydalanishga qo’yishdan oldin dastur nuqsonlarini topish va ularni to’g’irlashga mo’ljallangan dasturlarni ko’rsatishga mo’ljallangan. Siz dasturiy ta’minotni testlagan chog’ingizda, sun’iy ma’lumotlardan foydalanib dasturni ishga tushirasiz. Siz dasturni testlash natijalarini xatolarga, anomaliya(normal holatdan chetlashish)ga yoki dasturning
    nofunksional sifatlari haqida ma’lumotga tekshirasiz.
    Testlash jarayonida ikkita alohida maqsadlar mavjud:
    1.Ishlab chiqaruvchi va buyurtmachiga ularning dasturiy ta’minoti talablari
    bajarilayotganini namoyish etish. Buyurtma qilingan dasturiy ta’minot uchun hujjatdagi talablarning har biri uchun kamida bitta testlash bo’lishi lozim. Umumiy dasturiy ta’minot mahsulotlari uchun esa, tizimning barcha funksiyalari uchun, shuningdek, tayyor mahsulotda ishlatiladigan funksiyalar aralashmasi uchun testlashlar bo’lishi kerak.
    2.Dasturiy ta’minot noto’g’ri, ishonarsiz yoki spetsifikatsiyalarga mos kelmagan hollarni aniqlash. Ular dasturiy ta’minotning nuqsonlari hisoblanadi. Nuqsonlarni testlash keraksiz tizimlarning nuqsonlariga barham berish bilan bog’liq, masalan, tizimning to’xtab qolishi, boshqa tizimlar bilan keraksiz bo’g’lanishi, ma’lumotlarning noto’g’ri hisoblanishi va buzilishi.
    Birinchi maqsad bu ishlatilishi kutilayotgan tizim tekshirishlarini testlashdir.
    Bunda ishlatilishi kutilayotgan tizimni tekshiruvchilarni berilgan testlar
    jamlanmasidan to’g’ri foydalangan holda testlash lozim.
    Ikkinchi maqsad, tizim nuqsonlarini testlashga olib keladi. Bunda tizim nuqsonlarini ko’rsatishi uchun nazorat misollari qo’yilgan bo’ladi. Albatta, testlashning bu ikki yo’li o’rtasida aniq bir chegara yoq. Tekshiruvlarni testlash vaqtida siz tizimdaginuqsonlarni topasiz;
    Nuqsonlarni testlash vaqtida bazi testlar dasturiy ta’minot ularning talablari javob
    berayotganini ko’rsatadi. Rasmda ko’rsatilgan sxema, tekshirishlarni testlash va nuqsonlarni testlash orasidagi farqlarni tushunishga yordam beradi.Testlovchi tizimingizni qora quti deb tasavvur qiling. I deb o’rnatilgan kiruvchi signallardan tizim kiruvchi signallar qabul qiladi va chiquvchi signallarni O deb o’rnatilgan chiqishga uzatadi. Chiqishlarning ba’zilari xatolikka tutilishi mumkin. Bular Oye jamlanmasidagi chiquvchilardir, ular Ie jamlanmasidagi kiruvchi signallarga javoban ishlab chiqilgandir. Nuqsonlarni testlashda birinchi o’rinda Ie da o’rnatilgan kiruvchilarni topishdir, chunki ular tizim bilan bog’liq muammolarni ochib beradi. Tekshir ishlarni testlash Ie dan tashqarida joylashgan to’g’ri kiruvchilar bilan teslashni o’z ichiga oladi. Ular kutilayotgan to’g’ri natijalarni olish uchun tizimni kuchaytiradi.



    Testlash dasturiy ta’minotning nuqsonlarga egaligi yoki bir aniq vaqtda u o’zini ko’rsatilgandek tutishini namoyon qilmaydi. Siz kuzatayotgan test kelgusida tizim bilan yuz beradigan muammolarni topishi imkoniyati doimo mavjud.
    Verifikatsiya va validatsiya jarayonlari odamlar pul to’laydigan dasturiy ta’minotning funksional imkoniyatlarini ta’minlash va uning shartlariga mos kelishini tekshirish bilan bog’liq. Bu tekshirish jarayonlari talablar mavjud hollarda
    va ular ishlab chiqarish jarayonlarining barcha bosqichlarini davom ettirish vaqtida boshlanadi.
    Verifikatsiyaning maqsadi dasturiy ta’minot unga qo’yilgan funksional va
    nofunksional talablarga javob berishini tekshirishdir. Verifikatsiya umumiy jarayon hisoblanadi.
    Validatsiyaning maqsadi dasturiy ta’minot buyurtmachi kutayotgan natijalarga mosligini ta’minlashdir. Validatsiyamuhim rol o’ynaydi, sababi, ma’lumotlarni tasniflash talablari har doim ham mijozlar va foydalanuvchilar talablari va istaklarini amalga oshiravermaydi.
    Varifikatsiya va validatsiya jarayonining yakuniy maqsadi esa daturiy ta’minot tizimi “maqsadga mos kelishi” ga ishonchni o’rnatishdir. Yetarli darajadagi ishonch bosqichi, tizimning maqsadi,tizim foydalanuvchilarning talablaridan, shuningdek, tizim uchun joriy marketing muhitidan kelib chiqadi:



    1.Dasturiy ta’minot.
    Dasturiy ta’minotning eng kritik, eng muhimligi bu uning ishonchliligidir. Masalan, tanqidiy tizimlarni ehtiyot qilishni boshqarish uchun qo’llaniladigan dasturiy ta’minot uchun kerak bo’lgan ishonch darajasi, mahsulotni yangi g’oyalarini namoyon etish uchun ishlab chiqilgan prototip uchun bo’ladigan talabdan ancha yuqoridir.
    2.Foydalanuvchi kutayotgan natijalar.
    Ularning buglar bilan, ishonarsiz dasturiy ta’minot bilan tajribalari bo’lganligi tufayli, ko’plab foydalanuvchilar sifatli dasturiy ta’minotni uqadar kutadilar. Ular dasturiy ta’minot ishdan chiqishidan hayratga tushmaydilar. Yangi tizimni o’rnatayotganlarida foydalanuvchilar muvoffaqiyatsizlikka ham chidashadi, sababi dasturiy ta’minotdan foydalanish dasturni to’xtashlaridan keyingi qayta tiklani shiga ketgan harajatlarni ustunroq keladi. Bu kabi holatlarda dasturiy ta’minotni testlashga ko’p vaqt ajratishingiz kerak bo’lmaydi. Biroq, dasturiy ta’minot tugallanishga yetishi bilan foydalanuvchilar uning ishonchli, ular xoxlaganidek bo’lishini kutadi lar, shuning uchun dasturiy ta’minotni ishlab chiqishni oxirgi bosqichlarida ko’proq testlash talab qilinishi mumkin.
    3.Marketing muhiti.
    Tizim bozorga chiqqanida, tizimni sotuvchilar raqobatchi mahsulotlarni, sotib oluvchilar to’lashga tayyor bo’lgan narxlarni, shuningdek, ushbu tizimni yetkazilib berilishi uchun talab qilinadigan grafikni inobatga olishlari lozim. Raqobatbardosh muhitda, dasturiy ta’minotni ishlab chiqaradigan korxonalar, uni umumiy testlanishidan oldin dasturni foydalanishga topshirishga qaror qabul qiladilar, sababi ular bozorda birinchi o’rinda turishni xoxlaydilar. Agar dasturiy ta’minot judayam arzon baholangan bo’lsa, foydalanuvchilar uning ishonarsizligiga sabr qilishga tayyor bo’ladilar.

    2.4.Dasturiy maxsulotning evolutisiyasi


    Dasturiy maxsulotning o’zgarishi muqarrar
    Dasturiy maxsulotdan foydalanilayotganda yangi talablar yuzaga keladi
    Biznes muhitning o’zgadi
    Xatoliklarning tamirlanish majburiyati
    Yangi kompyuter va jihozlarning sistemaga qo’shilishi
    Sistemaning ish bajarishi yoki ishonchliligini oshirishga majbur bo’lish
    Barcha tashkilotlar uchun asosiy muammo ularning mavjud dasturiy taminoti
    uchun o’zgarishlarni amalga oshirish va boshqarishdir
    Evoulutsiyaning ahamiyati
    Tashkilolarning dasturiy taminot tizimlarida juda katta investitsiyasi bo’lishi
    bu katta mulkdir
    Bu mulkni biznesda qiymatini saqlab qolish uchun ular o’zgartirilishi va
    yangilanib borishi lozim
    Katta kompaniyalardagi dasturiy maxsulot mablag’ining katta qismi yangi
    dasturiy taminot yaratgandan ko’ra mavjjud dasturiy taminotni rivojlantirish
    va o’zgartirishga sarflanadi.
    Evalutsiya va servis xizmat
    Evolutsiya
    Bu dasturiy taminot hayot siklining shunday bosqichiki bunda u tezkor
    oshlatishda bo’ladi va taklif qilingan yangi talablar bosqichma - bosqich
    shaklanadi.hamda sistemada amaga oshiriladi.
    Servis xizmat ko’rsatish
    Bu bosqichda dasturiy maxsulot foydali bo’lib qoladi lekin faqatgina o’zgarishlar uning tezligini oshirish maqsadida qo’shiladi ya’ni dasturiy taminotda muhitida xatolarni to’grilash va o’zo’zgarishlarni tasvirlash amalga oshiriladi. Yangi funksiyalar esa qo’shilmaydi.
    Bosqichdan chiqish
    Dasturiy taminot haligacha ishlatiladi lekin uni hosil qilish uchun yangi o’zgartirishlar kiritilmaydi
    Elolutsiya jarayoni Dasturiy maxsulot evolutsiyasi quyidagilarga bog’liq:
    - Saqlanib kelayotgan dasturiy maxsulotning turi
    - Foydalanilayotgan qurilish jarayoni
    - Loyihaga jalb qilingan ishchilarning tajribasi va qobilyati
    O’zgarishlar uchun takliflar tizim evolutsiyasi uchun asosiy hisoblanadi
    Inedtifikatsiya va evolutsiyaning o’zgarishi tizimning butun hayot sikli mobanida
    davom etadi.
    Evolutsiya va identifikatsiya o’zgarish jarayonlari

    Amalga oshirishning o’zgarishi


    Sakllantirilgan amalga oshirilgan va test qilingan sistemani takrorlantiradigan yaratilish jarayonining qaytishi(takrorlanishi). Muhim farq shundaki amalga oshirish o’zgarishining birinchi bosqichi o’z ichiga dasturni tushunishni oladi. ayniqsa bu holathaqiqiy tizim tashkilotchilari amalga oshirishga javobgar bo’lmaganlaridasodir bo’ladi.
    Dastruni tushunish bosqichi davomida siz dasturning tuzilish strukturasini, dasturga yaxshi tasir qiladigan o’zgartirishlarni qanday taklif qilishni va uning
    funksiyonalligini qanday taminlab berishni tushunishingiz shart.
    Zarur o’zgarishlar talablari
    Zarur o’zgarishlar dasturiy enginering jarayoning barcha bosqichlarida ham
    amalga oshirish shart bo’lmasligi mumkin
    Jiddiy tizim xatosi normal amaliyot davom ettirishga imkon berishni tuzatish
    kerak bo’lganda
    Agar sistema muhiti uchun kutilmagan tasirlar bo’lsa
    Agar tezda javob qaytarishni talab qiladigan bizness talablar bo’lsa.

    Nazorat savollari


    1.Nima uchun dasturiy ta’minot arxitekturasini loyihalash muhim?
    2.Internetda musiqalar sotuvchi iTunes kabi tizimlarning arxitekturasini tuzing.
    3.Ob-havo stansiy asi dizaynini ishlab chiqing.
    4.Quyidagi obyekt sinflari uchun UML grafik notatsiyalardan foydalanib
    dizayni quring.
    5.Regression testash nima?
    6.Testlashning dastlabki bosqichlarida foydalanuvchilarni jalb qilishning
    ahamiyati nimada?
    7.Dasturiy ta’minot evolutsiyasi nima?
    8.Dasturiy ta’minotni mijozlarga yetkazilganidan keyingi hayot sikli fazasi
    qanday faoliyatlarni o’z ichiga oladi?
    Foydalanilgan adabiyotlar
    1.“Software Engineering”, by Ian Sommerville, 2015, pages – 790.
    2.Holdener, A. T. (2008). Ajax: The Definitive Guide. Sebastopol, Ca.: O’Reilly and Associates.
    3.Abrial, J. R. (2005). The B Book: Assigning Programs to Meanings.
    Cambridge, UK: Cambridge University Press.
    4.http://www.SoftwareEngineering -9.com
    5.http://www.pearsonhighered.com/sommerville
    Download 169.61 Kb.




    Download 169.61 Kb.