Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 58

Автор Ѐокс Π”ΠΆΠΎΠ·Π΅Ρ„ М.

ВСстированиС Π΅ΡΡ‚ΡŒ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Ρ†Π΅Π»ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся установлСниС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΅ΠΉ Π½Π°Π΄ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ. Π›ΡƒΡ‡ΡˆΠΈΠΌ тСстированиСм любой систСмы являСтся Π΅Π΅ эксплуатация. Π’ особСнности это относится ΠΊ систСмам Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Однако слишком Π΄ΠΎΡ€ΠΎΠ³ΠΎ обходятся ошибки ΠΈ ΠΏΡ€ΠΎΠΌΠ°Ρ…ΠΈ, Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ слишком ΠΏΠΎΠ·Π΄Π½ΠΎ. ΠœΡ‹ ΠΆΠ΅Π»Π°Π΅ΠΌ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π½ΡŒΡˆΠ΅.

Π’ΠΎΡ‚ Π² Ρ‡Π΅ΠΌ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹ тСстирования:

ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ систСмой,

ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΡƒΠ·ΠΊΠΈΡ… мСст систСмы β€” Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ ΠΈ нСустойчивости, Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΉ Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ сСрии ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΉ, приводящих систСму Π² дСйствиС,

ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π² Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ систСмС ΠΊΠ°ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, построСнии Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ систСмы,

ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ фактичСского провСдСния тСстирования ΠΈ дириТирования ΠΈΠΌ.

Для всСго этого трСбуСтся ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ познания.

ВСстированиС Π΅ΡΡ‚ΡŒ сопоставлСниС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с процСссом с Ρ†Π΅Π»ΡŒΡŽ выяснСния, Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ процСсс выполняСт Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡŒ. Π₯отя Ρ€Π΅Ρ‡ΡŒ ΠΎ тСстировании ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ зашла Π² этой ΠΊΠ½ΠΈΠ³Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСйчас, послС Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π° ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅, это связано лишь с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ вСсти ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ провСсти Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ дСйствий ΠΏΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΅Ρ‰Π΅ Π΄ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ. ΠœΡ‹ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π² систСму тСстирования всС части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ программисты ΠΈ Ρ†Π΅Π»Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Π΄ Π½ΠΈΠΆΠ½ΠΈΠΌΠΈ уровнями, ΠΎΠ±ΡŠΡΠ²Π»ΡΡŽΡ‚ ΠΎΠ± ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ своСй Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

ПолСзно Π±ΡƒΠ΄Π΅Ρ‚ Π΅Ρ‰Π΅ Ρ€Π°Π· Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° рис.Β 5.7, ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ вСрификация ΠΈ тСстированиС ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΠΆΠ΅ Π½Π° самых Ρ€Π°Π½Π½ΠΈΡ… стадиях ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π§Π°ΡΡ‚ΡŒ усилий ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ слСдуСт Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π»Π΅Π³ΠΊΠΎ тСстируСмым.

Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² структурного программирования ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ стали Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌΠΈ. БлоТившССся ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ являСт собой Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ контраст с ΠΏΡ€Π΅ΠΆΠ½ΠΈΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π°ΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° нСструктурированныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ большС Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ Π±Π΅Ρ‚ΠΎΠ½Π½Ρ‹Π΅ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Ρ‹ ΠΈΠ»ΠΈ ΠΌΠ΅ΡˆΠ°Π½ΠΈΠ½Ρƒ ΠΈΠ· спагСтти.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ дСлятся Π½Π° Π°Π±Π·Π°Ρ†Ρ‹, ΠΏΡ€ΠΈ ΠΈΡ… написании ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ строгим ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ, Π² Π½ΠΈΡ… Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ примСчания. Если ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π΅Π²Π΅Π»ΠΈΠΊΠΈ, Π½Π΅ большС 30–50 ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€Π΅ΠΊΡ€Π°ΡΠ½Ρ‹ΠΌ способом провСдСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π½Π° протяТСнии всСго процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ являСтся инспСктированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ сквозным ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ.

НСсколько ΠΊΠΎΠ»Π»Π΅Π³, Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ, Π·Π½Π°ΠΊΠΎΠΌΡ‹Ρ… с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ примСняСмой Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ, садятся рядом с Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠΌ всС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ написал, ΠΈ описываСт всС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ сдСлал: Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ своСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ всСх тСстов ΠΈ Ρ‚.Β Π΄. Π­Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄; ΠΎΠ½ стал Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ благодаря ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ структурного программирования.

Если ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ инспСкции проводятся рСгулярно, Ρ‚ΠΎ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ всСго Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Ρ…, самых нСприятных ΡΡŽΡ€ΠΏΡ€ΠΈΠ·ΠΎΠ². Руководство становится Π±ΠΎΠ»Π΅Π΅ наглядным ΠΈ простым.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π²Π΅Π»ΠΈΠΊΠΈ. Π‘Π²Π΅ΠΆΠΈΠΉ взгляд позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ полоТСния, ΠΊΠΎΠ³Π΄Π° Β«ΠΈΠ·-Π·Π° Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² Π½Π΅ Π²ΠΈΠ΄Π½ΠΎ лСса». Появились Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈ прСдостСрСТСния, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ошибок.

Π’Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ становится «рабочая Π³ΠΎΡ€Π΄ΠΎΡΡ‚ΡŒΒ», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΈΠ΄Π½Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½ΠΎ ΠΈ каТдая ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. МногиС программисты ΡΠΎΠΎΠ±Ρ‰Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ, Π³Π΄Π΅ Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΎΠ½ΠΈ позволяли сСбС ΠΏΡ€ΠΎΡΠ²Π»ΡΡ‚ΡŒ Π±Π΅ΡΠΏΠ΅Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π΅Π±Ρ€Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ (хотя Π½ΠΈΠΊΡ‚ΠΎ ΠΈΠ· Π½ΠΈΡ… этого Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π»), Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠ·ΠΎ всСх сил ΡΡ‚Π°Ρ€Π°ΡŽΡ‚ΡΡ Π΄Π΅Π»Π°Ρ‚ΡŒ всС Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½Π°Ρ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ качСства ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Π§Π»Π΅Π½ Π³Ρ€ΡƒΠΏΠΏΡ‹ программистов учится Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‡Π»Π΅Π½ΠΎΠ² своСй Π³Ρ€ΡƒΠΏΠΏΡ‹, изучая ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ; ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ программирования, возмоТности языка, тонкости ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ. ΠŸΠΎΡΡ‚Π΅ΠΏΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π² знаниях Π½Π΅ остаСтся. Π˜Π½ΡΠΏΠ΅ΠΊΡ†ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΎΠ±Π·ΠΎΡ€Ρ‹ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΡƒΠΆΠ΅ написанных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΈΡ… слСдуСт рСгулярно ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Π½Π° всСх стадиях процСсса Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. (Π‘ΠΌ. рис.Β 5.47.)

Если разрабатываСтся особСнно большая программная систСма ΠΈ Π² производствС находятся сразу нСсколько ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, слСдуСт ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ нСсколько сквозных ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΉ.

Если Π±Ρ‹ ΠΌΡ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈ сквозной ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ€Π°Π½ΡŒΡˆΠ΅, Π½Π°ΠΌ ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибки, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ допустили Π² ΠΎΠ΄Π½ΠΎΠΌ космичСском ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° - i_082.jpg
Рис.Β 5.47. ΠšΠΎΠ»Π»Π΅Π³ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Π·ΠΎΡ€Ρ‹ β€” сквозной ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ошибки

Когда Π² 1965Β Π³. приводнился ΠΊΠΎΡ€Π°Π±Π»ΡŒ Β«Π”ΠΆΠ΅ΠΌΠΈΠ½ΠΈ VΒ», ΠΌΠΈΡ€ Π·Π°Ρ‚Π°ΠΈΠ» Π΄Ρ‹Ρ…Π°Π½ΠΈΠ΅, вСдь ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ это Π² 100 милях ΠΎΡ‚ Π·Π°Ρ€Π°Π½Π΅Π΅ рассчитанной Ρ‚ΠΎΡ‡ΠΊΠΈ приводнСния. Π’Π΅Π»Π΅Π²ΠΈΠ·ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ‚ΠΎΡ€Ρ‹ заставили вСсь ΠΌΠΈΡ€ ΠΏΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ капсула ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ‚ΠΎΠ½ΡƒΡ‚ΡŒ. К капсулС ΡƒΡΡ‚Ρ€Π΅ΠΌΠΈΠ»ΠΈΡΡŒ авианосцы; Ρ‡Π΅Ρ€Π΅Π· час послС приводнСния капсула Π±Ρ‹Π»Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° Π²Π΅Ρ€Ρ‚ΠΎΠ»Π΅Ρ‚Π°ΠΌΠΈ.

Из-Π·Π° Ρ‡Π΅Π³ΠΎ ΠΆΠ΅ ΠΌΠΎΠ³Π»Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ такая ошибка? Π Π°Π΄ΠΈΠΎΠ»ΠΎΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, тСлСмСтрия, Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ. ВсС Π΄Π΅Π»ΠΎ оказалось Π² константС, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ для вычислСния Ρ‚ΠΎΡ‡ΠΊΠΈ приводнСния. Π’Π°ΠΊ ΠΊΠ°ΠΊ ЗСмля вращаСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠΊΡ€ΡƒΠ³ собствСнной оси, Π½ΠΎ Π΅Ρ‰Π΅ ΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ Π‘ΠΎΠ»Π½Ρ†Π°, Ρ‚ΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ΅ врСмя прохоТдСния ΠΏΠΎ ΠΎΡ€Π±ΠΈΡ‚Π΅ Π²ΠΎΠΊΡ€ΡƒΠ³ Π‘ΠΎΠ»Π½Ρ†Π°.

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для вычислСния Π±Ρ‹Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ программист Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΠΉΡ‚ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ. Для вычислСний слСдовало ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ количСство Π΄Π½Π΅ΠΉ, часов, ΠΌΠΈΠ½ΡƒΡ‚ ΠΈ сСкунд, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… со Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ запуска, ΠΈ, принимая Π‘ΠΎΠ»Π½Ρ†Π΅ Π² качСствС Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠ³ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π°, Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π—Π΅ΠΌΠ»ΠΈ Π² этой ΠΈΠ½Π΅Ρ€Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ систСмС. И всС Π±ΡƒΠ΄Π΅Ρ‚ прСкрасно. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ Π²Ρ‹Π±Ρ€Π°Π» Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈ просто ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΠ» ΠΈΠ· рассмотрСния число Π΄Π½Π΅ΠΉ ΠΏΠΎΠ»Π΅Ρ‚Π° (ΠΎΠ½ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠ» число часов Π½Π° 24), Β«Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΒ» рассудив, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π‘ΠΎΠ»Π½Ρ†Ρƒ ЗСмля Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 24Β Ρ‡ оказываСтся Π² ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π­Ρ‚ΠΎ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ссли ЗСмля Π²Ρ€Π°Ρ‰Π°Π»Π°ΡΡŒ Π±Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠΊΡ€ΡƒΠ³ собствСнной оси, Π° вСдь ΠΎΠ½Π° вращаСтся ΠΈ Π²ΠΎΠΊΡ€ΡƒΠ³ Π‘ΠΎΠ»Π½Ρ†Π°. ΠžΡ€Π±ΠΈΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ вносит нСбольшиС измСнСния Π² ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ возвращСния Π—Π΅ΠΌΠ»ΠΈ Π² Ρ‚Ρƒ ΠΆΠ΅ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π‘ΠΎΠ»Π½Ρ†Ρƒ. Π­Ρ‚ΠΎΡ‚ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π½Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ€Π°Π²Π΅Π½ 24Β Ρ‡. Π­Ρ‚ΠΎΡ‚ «просчСт» ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π» ΠΊ ΡΡ‚ΠΎΠΌΠΈΠ»ΡŒΠ½ΠΎΠΉ ошибкС Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ мСста призСмлСния.

Чья ΠΆΠ΅ это Π±Ρ‹Π»Π° ошибка? ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, программиста β€” ΠΎΠ½ отклонился ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡƒΡ‚ΡŒ оказался Β«Π·Π°ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΒ». Но Π² самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ошибки Π½Π΅ Π±Ρ‹Π»ΠΎ; ΠΎΠ½Π° Π±Ρ‹Π»Π° Π² Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π‘ΠΊΠ²ΠΎΠ·Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΌΠΎΠ³ ΠΈ, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» привСсти ΠΊ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΡŽ ошибки. По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ рСализация Π½Π΅ совсСм Ρ‚ΠΎΡ‡Π½ΠΎ слСдовала Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ.

ВСстированиС ΠΈ качСство

Π’Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°ΡŽΡ‚ΡΡ всС Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’ Π”Π΅Ρ‚Ρ€ΠΎΠΉΡ‚Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΈΡΠΏΡ‹Ρ‚Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΡ‹Ρ‚Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ, Π»ΠΈΠ±ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ скрытыС ΠΏΠΎΡ€ΠΎΠΊΠΈ Π² Π΅Π³ΠΎ конструкции ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. ВСстированиС позволяСт Ρ‚ΠΎΡ‡Π½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ мСсто ошибки, Π½ΠΎ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ качСство тСстируСмой систСмы ΠΎΠ½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚. ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ‚ΡŒΡΡ процСссом Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ руководством.

Π’Π΅Ρ€ΠΌΠΈΠ½ «качСство» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ для Ρ€Π°Π·Π½Ρ‹Ρ… людСй. Π― понимаю ΠΏΠΎΠ΄ высококачСствСнным обСспСчСниСм Ρ‚Π°ΠΊΠΎΠ΅ обСспСчСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ построСно Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ находятся характСристики ΠΈ Ρ„Π°Π·Ρ‹ использования ΠΈ Ρ„Π°Π·Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‰Π΅ΠΉΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Напомним эти характСристики.

ЗаставляСт ΠΌΠ°ΡˆΠΈΠ½Ρƒ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ дСйствиС Ѐункция
Π—Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π Π°Π·ΠΌΠ΅Ρ€
Π’Ρ€Π°Ρ‚ΠΈΡ‚ рСсурсы Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ процСссора Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ
Π›Π΅Π³ΠΊΠΎΡΡ‚ΡŒ использования ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ
Π›Π΅Π³ΠΊΠΎΡΡ‚ΡŒ восстановлСния Π’ΠΎΡΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ/ Π£ΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ
Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ошибки ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ
ΠœΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΠ° АрхитСктура
БущСствуСт ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π² ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅, Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π² Π΄Π²ΡƒΡ… ДокумСнтация