Скачиваний:
0
Добавлен:
26.01.2026
Размер:
214.23 Кб
Скачать

12-ámeliy jumıs. Agile Unified Process metodologiyası tiykarında programmalıq támiynattı islep shıǵıw.

Jumıstıń maqseti: Agile Unified Process (AUP) metodologiyasınıń tiykarǵı principlerin úyreniw. RUP (Rational Unified Process) hám Agile (Scrum/XP) usıllarınıń birlestiriliwin túsiniw. Iterativ islep shıǵıw (Iterative Development), Modellestiriw (Modeling), Kodlaw (Implementation) hám Testlew (Testing) processlerin kishi proekt mısalında ámelge asırıw.

Teoriyalıq bólim:

AUP: RUP-tıń jeńillestirilgen versiyası.

4 Faza:

1)Inception (Baslaw): Maqset hám texnologiya.

2)Elaboration (Anıqlaw): Arxitektura.

3)Construction (Qurıw): Kod hám funkcional.

4)Transition (Ótkiziw): Paydalanıwshıǵa tapsırıw.

Agile qosımshası: TDD, Refactoring, Úziliksiz integraciya.

ÁMELIY BÓLIM:

"Studentler Reytingi" proektin AUP boyınsha islep shıǵamız.

1-mısal: Inception (Jobalastırıw)

Biznes Talap: "Studentlerdiń bahaların esaplaytuǵın ápiwayı konsol programması kerek."

Texnologiya: C++, STL.

Joba: 2 iteraciya (1. Baza, 2. Fayl menen islesiw).

2-mısal: Elaboration (Arxitektura)

Klasslar:

*Student (atı, bahaları).

*GradeManager (esaplaw logikası).

*UI (konsol menen islesiw).

Baylanıs: UI -> GradeManager -> Student.

3-mısal: Construction (Iteraciya 1 - Kod)

Kod (Student.h):

class Student { public:

string name; vector<int> grades; double getAverage() {

if (grades.empty()) return 0; int sum = 0;

for (int g : grades) sum += g; return (double)sum / grades.size();

}

};

Kod (Main.cpp): int main() {

Student s;

s.name = "Azamat"; s.grades = {4, 5, 3};

cout << s.name << ": " << s.getAverage() << endl; return 0;

}

4-mısal: Testlew (TDD)

Kodtan aldın test jazıw kerek edi (Agile). void testAverage() {

Student s; s.grades = {5, 5};

assert(s.getAverage() == 5.0);

}

5-mısal: Transition (Release)

Programmanı `.exe` faylǵa aylandırıw hám qollanba (Readme.txt) jazıw.

ÁMELIY TAPSÍRMALAR

1-tapsırma: Inception Fazası.

"Kitapxana" proekti ushın 3 tiykarǵı talaptı hám 1 qáwipti (Risk) anıqlań.

2-tapsırma: Elaboration (Klasslar).

Kitapxana ushın 3 klastıń atın hám olardıń 1 tiykarǵı metodın jazıń. (Mısalı:

Book::isAvailable()).

3-tapsırma: Construction (Kod).

`Book` klasın C++ tilinde implementaciya etiń.

Atributlar: `title`, `author`, `isTaken` (bool).

4-tapsırma: Testlew.

`Book` klası ushın test scenariyin jazıń.

1.Kitap jaratıldı -> `isTaken` false bolıwı kerek.

2.Kitap alındı -> `isTaken` true bolıwı kerek.

5-tapsırma: Refactoring (Agile).

Kodtaǵı `public` atributlardı `private` etip, `getter/setter` qosıń. Bul "Kod sapasın jaqsılaw" iteraciyası.

Соседние файлы в папке Programmalıq támiynat qurılması hám evolyuciyası