0%
3-dars

SDLC va STLC โ€” ishlash jarayoni

Dasturlash va testlash jarayoni qanday tashkil etiladi? Testor qaysi bosqichda qanday ishlaydi? Real loyiha stsenariysi bilan tushunamiz.

90 daqiqa
Jarayon va metodologiya
5 ta interaktiv topshiriq

Nega jarayon muhim?

Tasavvur qiling, siz yangi IT kompaniyaga ishga kirdingiz. Birinchi kun Product Manager aytadi: "Biz Agile metodologiyada ishlaymiz, har ikki haftada sprint, har sprintda test muhiti boshqacha". Siz nima qilasiz?

Agar siz SDLC va STLCni bilsangiz โ€” darhol tushunasiz va ishni boshlaysiz. Agar bilmasangiz โ€” bir-ikki hafta "nima bo'lyapti?" deb hayron bo'lib yurasiz.

Bu dars sizni haqiqiy loyihaga tayyor qiladi. Ishga chiqqaningizda "bular nima?" demasligingiz uchun.

SDLC nima?

Asosiy atama

SDLC (Software Development Life Cycle) โ€” "Dasturiy ta'minot yaratish hayot sikli" deb tarjima qilinadi.

Oddiy qilib: bu dasturni nol nuqtadan foydalanuvchiga yetkazgungacha bo'lgan bosqichlar majmuasi. Har bir IT loyihada shu bosqichlar mavjud โ€” kichik startupdan Google gacha.

SDLC ning 6 ta bosqichi

01
Planning
02
Analysis
03
Design
04
Development
05
Testing
06
Maintenance

Har bosqichda nima sodir bo'ladi?

1
Planning โ€” Rejalashtirish
"Biz nima yaratamiz va nega?" degan savolga javob beriladi. Biznes tahlili, loyiha doirasi, byudjet, vaqt belgilanadi.
2
Analysis โ€” Tahlil (Talablar yig'ish)
Mahsulot aynan qanday ishlashi kerakligi yoziladi. Foydalanuvchi senariylari, funksional va nofunksional talablar. Testor shu bosqichda qatnashishi kerak โ€” savollar berib, talablarni aniqlashtiradi.
3
Design โ€” Dizayn
Dasturning arxitekturasi va tashqi ko'rinishi loyihalanadi. UI/UX dizaynerlar Figma'da dizaynni tayyorlaydi, arxitektorlar texnik yechimni belgilaydi.
4
Development โ€” Dasturlash
Dasturchilar aynan kod yozishni boshlaydi. Front-end, Back-end, ma'lumotlar bazasi. Bu bosqich odatda eng uzun davom etadi.
5
Testing โ€” Testlash
Testor asosiy ishga kirishadigan bosqich. Dastur tayyor, endi uni sinab ko'rish kerak. Bug'lar topiladi, dasturchilarga qaytariladi, tuzatiladi, yana sinaladi.
6
Maintenance โ€” Qo'llab-quvvatlash
Mahsulot foydalanuvchilarga yetdi. Endi uni kuzatish, yangilash, yangi imkoniyatlar qo'shish, bug'larni tuzatish kerak.
๐Ÿ’ก Hayotiy misol
SDLC โ€” bu uy qurishga o'xshaydi
Planning โ€” "Qancha xonali uy kerak?" Analysis โ€” "Uy qanday bo'lishi kerak?" Design โ€” arxitektor chizma tayyorlaydi. Development โ€” quruvchilar qurishadi. Testing โ€” nazoratchi tekshiradi. Maintenance โ€” siz ichida yashaysiz va ta'mirlab turasiz.

SDLC modellari

SDLC bosqichlari bir xil, lekin ular qanday tartibda va qanday qilib bajarilishi turli xil bo'lishi mumkin. Bu turlar "SDLC modellari" deyiladi. Eng mashhur ikkitasi: Waterfall va Agile.

Waterfall
Klassik

Asosiy g'oya: bosqichlar ketma-ket, bir-biridan keyin bajariladi. Oldingisi tugallanmaguncha keyingisi boshlanmaydi. Xuddi sharshara (waterfall) kabi โ€” yuqoridan pastga, qaytish yo'q.

Qanday ishlaydi

Planning tugadi โ†’ Analysis boshlanadi. Analysis tugadi โ†’ Design boshlanadi. Ketma-ket, 6 bosqich to'liq bajariladi. Oxirida testlash. Agar testingda katta muammo topilsa โ€” butun jarayonni qaytadan boshlash kerak bo'ladi.

Afzalliklari:
  • Oddiy tushuniladi
  • Hujjatlash to'liq
  • Davlat/bank loyihalariga mos
Kamchiliklari:
  • Juda sekin
  • O'zgarish qiyin
  • Testing oxirida โ€” kech
  • Foydalanuvchi 6-12 oy kutadi
Agile
Zamonaviy

Asosiy g'oya: katta loyihani kichik qismlarga bo'lib, har qismini tez bajarish. Har 2-4 haftada yangi funksiya chiqarish. O'zgarishlarga ochiq, moslashuvchan.

Yangi atama

Sprint โ€” Agile'da 2-4 haftalik ish sikli. Har sprintda loyihaning bir qismi to'liq yakunlanadi (planning โ†’ testing gacha).

Qanday ishlaydi

Loyiha 20 ta kichik qismga bo'linadi. Birinchi 2 hafta โ€” 1-qismni qilamiz (planning, design, dev, testing hammasi bir sprintda). Keyingi 2 hafta โ€” 2-qism. Natijada 3 oyda 6 ta qism tayyor, foydalanuvchilar ishlatishi mumkin.

Afzalliklari:
  • Tez natija (2 haftada)
  • O'zgarishlarga moslashuvchan
  • Foydalanuvchi erta feedback
  • Testor doim band
Kamchiliklari:
  • Hujjatlash kam bo'lishi mumkin
  • Boshlang'ichda loyiha doirasi noaniq
  • Ko'p muloqot kerak

Scrum โ€” Agile'ning eng mashhur ko'rinishi

Scrum โ€” Agile metodologiyasini amalda qo'llash usuli. Bugungi kunda IT kompaniyalarning aksariyati (Click, Uzum, Payme, EPAM) aynan Scrum bo'yicha ishlaydi.

Scrum'dagi asosiy atamalar

Sprint โ€” 2-4 haftalik ish davri

Scrum Master โ€” jamoa ishini muvofiqlashtiradi, to'siqlarni olib tashlaydi

Product Owner โ€” nima yaratish kerakligini belgilaydi, prioritetlarni qo'yadi

Daily Standup โ€” har kunlik qisqa uchrashuv (15 daqiqa): kecha nima qildim, bugun nima qilaman, to'siqlar bormi?

Backlog โ€” bajariladigan vazifalar ro'yxati

User Story โ€” foydalanuvchi nuqtai nazaridan yozilgan vazifa. Masalan: "Foydalanuvchi sifatida men parolni qayta tiklash funksiyasini xohlayman"

Amaliy xulosa

Hozirgi kunda O'zbekistondagi 90%+ IT kompaniyalari Scrum/Agileda ishlaydi. Waterfall โ€” faqat davlat loyihalari va ba'zi eski tizimlarda qolgan. Shuning uchun avvalo Agile'ni o'rganing.

โšก Tezkor tekshiruv
Startup yangi mobil ilova yaratmoqda. Hali aniq bilishmaydi - foydalanuvchilar nimani yoqtiradi. Qaysi model mos?
๐ŸŽฏ Amaliy topshiriq

SDLC bosqichlarini to'g'ri tartibga qo'ying

Bosqichlarni to'g'ri tartibda sudrab joylashtiring (1 dan 6 gacha).

1
2
3
4
5
6
Development
Planning
Maintenance
Design
Testing
Analysis
0 / 6 to'g'ri

STLC nima?

Asosiy atama

STLC (Software Testing Life Cycle) โ€” "Dasturiy ta'minotni testlash hayot sikli".

Oddiy qilib: bu aynan testor kundalik ishida bajaradigan 6 ta bosqich. SDLC'ning Testing bosqichi ichida STLC'ning butun 6 bosqichi bajariladi.

STLC ning 6 ta bosqichi

01
Requirement Analysis
02
Test Planning
03
Test Case Design
04
Environment Setup
05
Test Execution
06
Test Closure

Har bosqichda testor nima qiladi?

1
Requirement Analysis โ€” Talablarni o'rganish
Testor biznes hujjatlarini o'qiydi. Savollar beradi: "Bu yerda nima kutilmoqda?", "Maksimal miqdor qancha?". Bu bosqich juda muhim โ€” Shift Left prinsipi shu yerda ishlaydi.
2
Test Planning โ€” Testlash rejasi
Test Lead yoki yuqori testor Test Plan hujjatini yozadi. Qanday testlash qilamiz, qancha vaqt kerak, qanday asboblar, kim qaysi modulni test qiladi.
3
Test Case Design โ€” Test case yozish
Testor aniq qadamlar ro'yxatini yozadi. Masalan: "Loginni kiriting โ†’ Parolni kiriting โ†’ Enter bosing โ†’ Bosh sahifa ochilishi kerak". Bu test case deyiladi. TestRail, Zephyr kabi asboblardan foydalaniladi.
4
Environment Setup โ€” Test muhitini tayyorlash
Testing uchun maxsus server/muhit tayyorlanadi. Production'dagi real ma'lumotlarga tegmay, nusxasida ishlaymiz. Test muhiti odatda: dev, test, staging, production.
5
Test Execution โ€” Testlarni bajarish
Eng ko'p vaqt ketadigan bosqich. Testor yozilgan test case'lar bo'yicha sinovdan o'tadi. Buglar topiladi, Jira'ga qo'shiladi, dasturchiga yuboriladi, keyin qayta sinaladi.
6
Test Closure โ€” Yakunlash
Sinov yakunlangach, hisobot yoziladi. Qancha test bajarilgan, qancha bug topilgan, qancha tuzatilgan. Jamoa bilan ko'rib chiqiladi โ€” keyingi safar nima yaxshilash mumkin?
๐ŸŽฏ Bog'lang

STLC bosqichi va testor vazifasi

Har bir STLC bosqichiga โ€” unda testor bajaradigan asosiy vazifani bog'lang.

STLC bosqichi

Requirement Analysis
Test Planning
Test Case Design
Environment Setup
Test Execution
Test Closure

Testor vazifasi

Buglarni topish, Jira'ga yozish
Talablarni o'qish, savollar berish
Hisobot yozish, jamoa bilan tahlil
Strategiya, vaqt, resurs belgilash
Test server/muhit tayyorlash
Aniq qadamlarni yozish (TestRail)
0 / 6 juft topildi

SDLC va STLC bog'liqligi

SDLC โ€” bu butun loyiha jarayoni. STLC โ€” faqat testlash qismi. Lekin testor SDLC'ning har bir bosqichida qatnashadi. Qarang:

SDLC: Planning
โ†’
Testor savollar beradi, vaqt rejalashtiradi
SDLC: Analysis
โ†’
STLC: Requirement Analysis
SDLC: Design
โ†’
STLC: Test Planning + Test Case Design
SDLC: Development
โ†’
STLC: Environment Setup
SDLC: Testing
โ†’
STLC: Test Execution
SDLC: Maintenance
โ†’
STLC: Test Closure + qayta testing
Muhim xulosa

Professional testor SDLC'ning hamma bosqichida qatnashadi โ€” faqat Testing bosqichida emas. Erta qatnashgan testor โ€” ko'p bug'larni oldindan topadi va katta zarar yetkazmaydi (bu Shift Left prinsipi โ€” 7-darsda ko'rdik).

๐ŸŽฌ Haqiqiy stsenariy
Siz Uzum'da ishlaysiz...

Dushanba, 09:00. Siz Uzum Market'da junior testor sifatida ishga keldingiz. Jamoa Scrum/Agile metodologiyada ishlaydi, 2 haftalik sprintlar.

Yangi funksiya: "Do'stga sovg'a yuborish". Foydalanuvchi mahsulotni sotib olib, do'stiga manzil va xabar bilan yuborishi mumkin.

Sizning vazifangiz โ€” bu funksiyani testlash. Lekin dasturchilar hali kod yozmagan.

Siz qaysi STLC bosqichidan boshlashingiz kerak?

Intervyu savollari

SDLC va STLC โ€” har QA intervyusida so'raladigan asosiy mavzu. Quyidagi savollarga javoblarni puxta o'rganing.

๐Ÿ’ก Har savol ustiga bosing โ€” professional javob va maslahatni ko'rasiz.

Q1 SDLC nima? Bosqichlarini sanab bering. +

Javob: "SDLC โ€” Software Development Life Cycle, ya'ni dasturiy ta'minot yaratishning to'liq jarayoni. U 6 bosqichdan iborat:"

  • Planning โ€” nima yaratamiz, qanday, qancha vaqtda
  • Analysis โ€” talablarni yig'ish va tahlil
  • Design โ€” dizayn va arxitektura
  • Development โ€” dasturlash
  • Testing โ€” sinov
  • Maintenance โ€” qo'llab-quvvatlash

Qo'shimcha: "Bu bosqichlar qanday tartibda bajarilishiga qarab, turli modellar bor โ€” Waterfall, Agile, Scrum va boshqalar."

Q2 STLC nima va uning SDLC'dan farqi? +

Javob: "STLC โ€” Software Testing Life Cycle, testlash jarayonining 6 ta bosqichi."

Farq:

  • SDLC โ€” butun loyiha jarayoni (biznes analitik, dasturchi, testor โ€” hammasi)
  • STLC โ€” faqat testor ishi. Lekin u SDLC'ning Testing bosqichi ichida yoki parallel bajariladi

STLC bosqichlari: Requirement Analysis โ†’ Test Planning โ†’ Test Case Design โ†’ Environment Setup โ†’ Test Execution โ†’ Test Closure.

Q3 Waterfall va Agile o'rtasidagi farq? +

Javob:

  • Waterfall โ€” bosqichlar ketma-ket. Avval hammasini rejalashtirish โ†’ dasturlash โ†’ testing. Qaytish qiyin. Sekin, lekin hujjatlash to'liq.
  • Agile โ€” kichik sprintlar (2-4 hafta). Har sprintda planning dan testingga qadar to'liq sikl. Tez va moslashuvchan.

Qachon qaysi biri? Davlat, bank, tibbiy tizimlar โ€” Waterfall (talab o'zgarmaydi, hujjat muhim). Mobil ilova, startup, web-saytlar โ€” Agile (tez o'zgarish kerak).

Bugungi holat: "Bugungi kunda IT kompaniyalarning 90%+ Agile/Scrum'da ishlaydi. Waterfall kamayib bormoqda."

Q4 Scrum'da kimlar qatnashadi va har kimning roli nima? +

Javob: "Scrum jamoasida 3 ta asosiy rol bor:"

  • Product Owner โ€” Mijoz/foydalanuvchi nuqtai nazaridan nima kerakligini belgilaydi, prioritetlarni qo'yadi. Backlog'ni boshqaradi.
  • Scrum Master โ€” Jamoaning ishini muvofiqlashtiradi. To'siqlarni olib tashlaydi. Scrum amaliyotlarini o'rgatadi. "Xizmatchi rahbar" (servant leader).
  • Development Team โ€” Dasturchilar, testorlar, dizaynerlar. Aynan ishni bajaradilar.

Testor qayerda? "Men Development Team'ning bir qismiman. Product Owner'dan talablarni olaman, Scrum Master orqali to'siqlarni hal qilaman."

Q5 Testor SDLC'ning qaysi bosqichida qatnashishi kerak? +

Javob: "Professional testor barcha bosqichlarda qatnashadi, nafaqat Testing bosqichida."

Nega?

  • Planning โ€” vaqt, resurs baholash
  • Analysis โ€” talablarga savol berish, noaniqliklarni ko'rsatish
  • Design โ€” test rejasi va test case'larni yozish
  • Development โ€” muhit tayyorlash, dasturchilar bilan hamkorlik
  • Testing โ€” asosiy test ishlari
  • Maintenance โ€” yangi bug'larni tekshirish, regression

Asosiy g'oya: "Bu Shift Left yondashuvi. Bug'ni erta topish โ€” arzon, kech topish โ€” qimmat."

Q6 Sizning so'nggi loyihangizda qaysi metodologiyada ishlagansiz? +

Javob shabloni: "Men [Scrum/Agile] metodologiyasida ishlaganman. Sprintlar 2 haftalik edi. Har kuni standup, har 2 haftada sprint planning va retrospective."

Qanday faktlar keltirish kerak?

  • Sprint uzunligi (odatda 2 hafta)
  • Jamoa hajmi ("5-7 kishi: 3 dasturchi, 2 testor, 1 dizayner, 1 PO")
  • Ishlatgan asboblar (Jira, Confluence, TestRail)
  • Daily standup soati va davomiyligi

Muhim maslahat: "Agar tajribangiz bo'lmasa โ€” o'qigan kursda yoki mock loyihada o'rgangan narsalarni ayting. Yolg'on gapirmang โ€” intervyu oluvchi buni tez bilib oladi."

Q7 STLC'ning qaysi bosqichi sizga qiyinroq ko'rinadi va nega? +

Javob varianti: "Men uchun eng qiyini โ€” Requirement Analysis. Chunki:"

  • Talablar ba'zida noaniq bo'ladi
  • Biznes analitik va dasturchi bir narsani boshqacha tushunishi mumkin
  • Savol berish uchun ham tajriba kerak โ€” bu foydalanuvchilar uchun muhim ekan?

Qanday yengaman? "Men Product Owner bilan ochiq muloqot qilaman, noaniq joylarni yozib olaman va jamoaga ko'rsataman. Shunda barcha bir xil tushunadi."

Nima uchun bu javob yaxshi? Siz o'zingiz haqida ochiq gapirasiz + yechimni ham aytasiz. Intervyu oluvchilar buni yoqtiradi.

STLC'ni amaliyotda sinab ko'ring

Endi siz STLC bosqichlarini bilasiz. Keling, ularni TestShopda amaliy sinab ko'ramiz โ€” haqiqiy testor kabi ishlash jarayonini his qilasiz.

๐Ÿ›’

TestShop โ€” STLC amaliyoti

TestShop saytini STLC bosqichlari bo'yicha ishlab chiqing. Haqiqiy ish jarayonini simulyatsiya qiling.

๐Ÿš€ TestShop'ga o'tish

STLC bo'yicha 4 qadam:

1
Requirement Analysis โ€” Talablarni o'rganing
STLC bosqichi 1
TestShop bosh sahifasini oching. Saytning maqsadi nima? Qaysi funksiyalar bor? Foydalanuvchi qanday amalga oshiradi: mahsulot ko'rish, savatga qo'shish, ro'yxatdan o'tish.
2
Test Case Design โ€” Test case'lar yozing
STLC bosqichi 3
Login sahifasi uchun 3 ta test case yozing (qog'ozda yoki Google Docs'da):
  • TC-01: To'g'ri login/parol bilan kirish โ€” kutilgan natija?
  • TC-02: Bo'sh maydonlar bilan kirish โ€” kutilgan natija?
  • TC-03: Noto'g'ri parol bilan kirish โ€” kutilgan natija?
3
Test Execution โ€” Test case'larni bajaring
STLC bosqichi 5
Yozgan test case'laringizni TestShop'da sinab ko'ring. Har bir test uchun: Pass (o'tdi) yoki Fail (o'tmadi). Agar Fail bo'lsa โ€” bug topdingiz!
4
Test Closure โ€” Hisobot tuzing
STLC bosqichi 6
Qisqa hisobot yozing: nechta test bajardim, nechtasi Pass, nechtasi Fail, qanday buglar topdim. Bu haqiqiy ishda siz qiladigan ish.
๐Ÿ’ก Professional maslahat

Bu mashqni bajarsangiz โ€” sizda portfolio material bo'ladi. Ish izlaganingizda intervyuda "Men bunday loyiha ustida ishlaganman" deb ayta olasiz va test case'laringiz + hisobotingizni ko'rsatasiz. Bu junior testor uchun katta afzallik.

3 ta asosiy fikr

Bu darsdan eslab qolishingiz kerak bo'lgan asosiy g'oyalar

01
SDLC โ€” loyiha jarayoni, STLC โ€” testor ishi
SDLC butun jamoa uchun, STLC esa faqat testor uchun. STLC SDLC ichida bajariladi.
02
Agile/Scrum bugungi standart
Bugun O'zbekistonda ham, dunyoda ham ko'pchilik IT kompaniyalar Scrum'da ishlaydi. Bu asosiy metodologiya.
03
Erta qatnashing โ€” yaxshi testor bo'ling
Faqat Testing bosqichini kutmang. Talab bosqichidan boshlab qatnashing โ€” bu Shift Left yondashuvi.
๐Ÿ† Darsni muvaffaqiyatli tugatdingiz!