	{"id":3060,"date":"2013-07-08T14:57:25","date_gmt":"2013-07-08T07:57:25","guid":{"rendered":"http:\/\/science-technology.vn\/?p=3060"},"modified":"2013-07-08T14:57:25","modified_gmt":"2013-07-08T07:57:25","slug":"kiem-thu-chat-luong","status":"publish","type":"post","link":"https:\/\/science-technology.vn\/?p=3060","title":{"rendered":"Ki\u1ec3m th\u1eed ch\u1ea5t l\u01b0\u1ee3ng"},"content":{"rendered":"<p><span style=\"font-size: 14px;\">Trong qu\u00e1 kh\u1ee9 khi ph\u1ea7n m\u1ec1m c\u00f2n nh\u1ecf, ch\u1ec9 v\u00e0i tr\u0103m d\u00f2ng m\u00e3, th\u00ec ki\u1ec3m th\u1eed l\u00e0 t\u01b0\u01a1ng \u0111\u1ed1i d\u1ec5 d\u00e0ng. L\u00e0 ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m, \u0111i\u1ec1u t\u00f4i \u0111\u00e3 l\u00e0m l\u00e0 ph\u1ea3i ch\u1eafc r\u1eb1ng thu\u1eadt to\u00e1n \u0111\u00fang v\u00e0 ph\u00e2n t\u00edch k\u1ebft c\u1ea5u ch\u01b0\u01a1ng tr\u00ecnh \u0111\u1ec3 ch\u1eafc ch\u1eafn n\u00f3 \u0111\u01b0\u1ee3c bi\u00ean d\u1ecbch \u0111\u00fang. N\u1ebfu t\u00f4i c\u00f3 l\u1ed7i, t\u00f4i s\u1eeda ch\u00fang r\u1ed3i bi\u00ean d\u1ecbch l\u1ea1i cho n\u00ean ki\u1ec3m th\u1eed kh\u00f4ng th\u00e0nh v\u1ea5n \u0111\u1ec1. Tuy nhi\u00ean, khi k\u00edch c\u1ee1 ph\u1ea7n m\u1ec1m tr\u1edf n\u00ean l\u1edbn h\u01a1n, t\u00f4i b\u1eaft \u0111\u1ea7u th\u1ea5y r\u1eb1ng t\u00f4i b\u1ecb nhi\u1ec1u l\u1ed7i sau khi \u0111\u01b0a ra cho kh\u00e1ch h\u00e0ng (m\u1ed9t l\u1ed7i l\u00e0 ch\u1ed3ng b\u1ecb tr\u00e0n) cho n\u00ean t\u00f4i b\u1eaft \u0111\u1ea7u c\u1ea9n th\u1eadn h\u01a1n v\u1ec1 ki\u1ec3m th\u1eed. T\u00f4i b\u1eaft \u0111\u1ea7u vi\u1ebft c\u00e1c tr\u01b0\u1eddng h\u1ee3p ki\u1ec3m th\u1eed \u0111\u1ec3 ch\u1eafc ch\u1eafn r\u1eb1ng ch\u01b0\u01a1ng tr\u00ecnh ch\u1ea1y \u0111\u00fang v\u00e0 \u0111\u00e1p \u1ee9ng nhu c\u1ea7u v\u1edbi d\u1eef li\u1ec7u v\u00e0o v\u00e0 d\u1eef li\u1ec7u ra (ki\u1ec3m th\u1eed h\u1ed9p \u0111en). Cu\u1ed1i c\u00f9ng, nhi\u1ec1u ch\u01b0\u01a1ng tr\u00ecnh t\u00f4i \u0111\u00e3 vi\u1ebft \u0111\u00e3 \u0111\u01b0\u1ee3c t\u00edch h\u1ee3p v\u1edbi c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh kh\u00e1c cho n\u00ean l\u00e0 m\u1ed9t t\u1ed5 ch\u00fang t\u00f4i \u0111\u00e3 ph\u00e2n chia c\u00f4ng vi\u1ec7c c\u1ee7a m\u00ecnh th\u00e0nh c\u00e1c ch\u1ee9c n\u0103ng v\u00e0 t\u00ednh n\u0103ng t\u00e1ch b\u1ea1ch d\u1ef1a tr\u00ean ph\u01b0\u01a1ng ph\u00e1p ph\u00e2n t\u00edch c\u1ea5u tr\u00fac nh\u01b0ng ch\u00fang t\u00f4i v\u1eabn l\u00e0m vi\u1ec7c m\u1ed9t c\u00e1ch \u0111\u1ed9c l\u1eadp, ch\u1ec9 th\u1ea3o lu\u1eadn v\u1edbi nhau khi c\u1ea7n. T\u1eebng ng\u01b0\u1eddi v\u1eabn l\u00e0m ki\u1ec3m th\u1eed ri\u00eang v\u00e0 ch\u00fang t\u00f4i tin t\u01b0\u1edfng r\u1eb1ng m\u1ecdi th\u1ee9 ph\u1ea3i l\u00e0m vi\u1ec7c theo c\u00e1ch ch\u00fang t\u00f4i ngh\u0129, nh\u01b0ng \u0111\u1ebfn cu\u1ed1i c\u00f9ng n\u00f3 l\u1ea1i kh\u00f4ng l\u00e0m vi\u1ec7c t\u1ed1t. C\u00f3 qu\u00e1 nhi\u1ec1u l\u1ed7i trong s\u1ea3n ph\u1ea9m cu\u1ed1i c\u00f9ng c\u1ee7a ch\u00fang t\u00f4i cho n\u00ean ng\u01b0\u1eddi qu\u1ea3n l\u00ed c\u1ee7a t\u00f4i quy\u1ebft \u0111\u1ecbnh th\u00e0nh l\u1eadp nh\u00f3m ki\u1ec3m th\u1eed bao g\u1ed3m nhi\u1ec1u ng\u01b0\u1eddi l\u1eadp tr\u00ecnh m\u1edbi tuy\u1ec3n, ng\u01b0\u1eddi \u0111\u01b0\u1ee3c trao cho vi\u1ec7c ki\u1ec3m tra l\u1ea1i ph\u1ea7n m\u1ec1m \u0111\u1ec3 ch\u1eafc ch\u1eafn ch\u00fang l\u00e0m vi\u1ec7c \u0111\u01b0\u1ee3c tr\u01b0\u1edbc khi ch\u00fang \u0111\u01b0\u1ee3c \u0111\u01b0a ra.\u00a0 L\u00e0 ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m, ch\u00fang t\u00f4i ch\u1ec9 ph\u1ea3i t\u1eadp trung h\u1ea7u h\u1ebft v\u00e0o thi\u1ebft k\u1ebf v\u00e0 vi\u1ebft m\u00e3. Ch\u00fang t\u00f4i \u0111\u00e3 ki\u1ec3m th\u1eed m\u00e3 ri\u00eang c\u1ee7a m\u00ecnh v\u00e0 kh\u00f4ng lo ngh\u0129 nhi\u1ec1u v\u1ec1 ph\u1ea7n c\u00f2n l\u1ea1i c\u1ee7a ph\u1ea7n m\u1ec1m cu\u1ed1i c\u00f9ng. Cho n\u00ean t\u1ed5 c\u1ee7a ch\u00fang t\u00f4i bao g\u1ed3m hai nh\u00f3m, nh\u00f3m ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n v\u00e0 nh\u00f3m ki\u1ec3m th\u1eed v\u00e0 quan ni\u1ec7m n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c ch\u1ea5p nh\u1eadn trong nhi\u1ec1u c\u00f4ng ti ph\u1ea7n m\u1ec1m v\u00e0 n\u00f3 v\u1eabn l\u00e0 c\u00e1ch th\u1ee9c nhi\u1ec1u c\u00f4ng ti v\u1eadn h\u00e0nh ng\u00e0y nay.<\/span><\/p>\n<p>B\u00e2y gi\u1edd nh\u00ecn l\u1ea1i sao nhi\u1ec1u n\u0103m, ng\u1ea1c nhi\u00ean l\u1edbn nh\u1ea5t c\u1ee7a t\u00f4i l\u00e0 l\u00e0m sao nhi\u1ec1u ng\u01b0\u1eddi v\u1eabn tin r\u1eb1ng b\u1ea1n c\u00f3 th\u1ec3 &#8220;ki\u1ec3m th\u1eed ch\u1ea5t l\u01b0\u1ee3ng\u201d trong s\u1ea3n ph\u1ea9m ph\u1ea7n m\u1ec1m. Ng\u00e0y nay ph\u1ea7n l\u1edbn c\u00e1c ph\u1ea7n m\u1ec1m \u0111\u1ec1u r\u1ea5t l\u1edbn v\u00e0 ph\u1ee9c t\u1ea1p, nhi\u1ec1u d\u1ef1 \u00e1n c\u1ee7a t\u00f4i c\u00f3 kho\u1ea3ng 5 t\u1edbi 20 tri\u1ec7u d\u00f2ng l\u1ec7nh v\u00e0 kh\u00f4ng th\u1ec3 n\u00e0o ki\u1ec3m th\u1eed h\u1ebft m\u1ecdi th\u1ee9 cho n\u00ean thay v\u00ec h\u1ed9i t\u1ee5 v\u00e0o ki\u1ec3m th\u1eed, ch\u00fang t\u00f4i h\u1ed9i t\u1ee5 v\u00e0o c\u00e1ch ti\u1ebfp c\u1eadn c\u00f3 k\u1ec9 lu\u1eadt \u0111\u1ec3 \u201cx\u00e2y d\u1ef1ng trong ch\u1ea5t l\u01b0\u1ee3ng\u201d khi ch\u00fang t\u00f4i l\u00e0m vi\u1ec7c. \u0110i\u1ec1u n\u00e0y c\u0169ng l\u00e0 kh\u00e1c bi\u1ec7t ch\u00ednh gi\u1eefa \u0111\u00e0o t\u1ea1o k\u0129 ngh\u1ec7 ph\u1ea7n m\u1ec1m v\u00e0 khoa h\u1ecdc m\u00e1y t\u00ednh. V\u1edbi k\u0129 ngh\u1ec7 ph\u1ea7n m\u1ec1m, b\u1ea1n ph\u1ea3i h\u1ed9i t\u1ee5 v\u00e0o qui tr\u00ecnh t\u1ea1o ra s\u1ea3n ph\u1ea9m v\u00e0 \u201cx\u00e2y d\u1ef1ng ch\u1ea5t l\u01b0\u1ee3ng trong qui tr\u00ecnh\u201d cho n\u00ean s\u1ea3n ph\u1ea9m cu\u1ed1i s\u1ebd c\u00f3 ch\u1ea5t l\u01b0\u1ee3ng. T\u1ea5t nhi\u00ean, kh\u00f4ng ai ho\u00e0n h\u1ea3o cho n\u00ean b\u1ea1n ph\u1ea3i d\u1ef1a v\u00e0o ng\u01b0\u1eddi kh\u00e1c \u0111\u1ec3 h\u1ed7 tr\u1ee3 cho b\u1ea1n v\u00e0 nh\u1eadn di\u1ec7n sai l\u1ea7m c\u1ee7a b\u1ea1n \u0111\u1ec3 cho b\u1ea1n c\u00f3 th\u1ec3 s\u1eeda n\u00f3. Do \u0111\u00f3, ki\u1ec3m \u0111i\u1ec3m ph\u1ea7n m\u1ec1m, gi\u00e1m \u0111\u1ecbnh m\u00e3, l\u1eadp tr\u00ecnh c\u1eb7p, suy ngh\u0129 theo pha, v\u00e0 r\u00fat ra b\u00e0i h\u1ecdc \u0111\u01b0\u1ee3c \u00e1p d\u1ee5ng \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o r\u1eb1ng ch\u00fang ta s\u1ebd c\u00f3 s\u1ea3n ph\u1ea9m ch\u1ea5t l\u01b0\u1ee3ng.<\/p>\n<p>Khi sinh vi\u00ean t\u1edbi l\u1edbp c\u1ee7a t\u00f4i t\u1ea1i CMU, nhi\u1ec1u ng\u01b0\u1eddi c\u00f3 th\u00e1i \u0111\u1ed9 \u201cSao l\u1ea1i ch\u00fa \u00fd t\u1edbi l\u1ed7i khi \u0111\u1eb1ng n\u00e0o ch\u00fang ta c\u0169ng c\u00f3 th\u1ec3 s\u1eeda \u0111\u01b0\u1ee3c n\u00f3\u201d hay \u201cVi\u1ebft m\u00e3 tr\u01b0\u1edbc, s\u1eeda l\u1ed7i sau\u201d cho n\u00ean t\u00f4i k\u1ec3 cho h\u1ecd m\u1ed9t k\u1ecbch b\u1ea3n: \u201cGi\u1ea3 s\u1eed r\u1eb1ng b\u1ea1n \u0111ang bay trong m\u00e1y bay v\u00e0 b\u1ea1n nghe phi c\u00f4ng n\u00f3i r\u1eb1ng anh ta g\u1eb7p l\u1ed7i ph\u1ea7n m\u1ec1m trong h\u1ec7 th\u1ed1ng \u0111i\u1ec1u khi\u1ec3n v\u00e0 ph\u1ea3i \u201ckh\u1edfi \u0111\u1ed9ng l\u1ea1i\u201d h\u1ec7 th\u1ed1ng. Kh\u1edfi \u0111\u1ed9ng l\u1ea1i h\u1ec7 th\u1ed1ng s\u1ebd m\u1ea5t bao nhi\u00eau th\u1eddi gian? Ch\u1ec9 m\u01b0\u1eddi hay hai m\u01b0\u01a1i ph\u00fat v\u00e0 \u0111i\u1ec1u \u0111\u00f3 c\u00f3 ngh\u0129a l\u00e0 m\u00e1y bay s\u1ebd kh\u00f4ng c\u00f3 ngu\u1ed3n trong th\u1eddi gian \u0111\u00f3 v\u00e0 t\u1ea5t nhi\u00ean s\u1ebd r\u01a1i\u201d v\u00e0 t\u00f4i h\u1ecfi: \u201cB\u1ea1n c\u00f3 th\u1ef1c s\u1ef1 quan t\u00e2m t\u1edbi l\u1ed7i ph\u1ea7n m\u1ec1m hay kh\u00f4ng?\u201d Khi c\u1ea3 l\u1edbp c\u01b0\u1eddi to, t\u00f4i n\u00f3i th\u00eam: \u201cT\u00f4i ch\u1eafc ch\u1eafn \u0111i\u1ec1u \u0111\u00f3 tu\u1ef3 thu\u1ed9c v\u00e0o quan \u0111i\u1ec3m c\u1ee7a b\u1ea1n, b\u1ea1n c\u00f3 l\u1ebd quan t\u00e2m n\u1ebfu b\u1ea1n \u0111ang \u1edf tr\u00ean m\u00e1y bay v\u00e0 kh\u00f4ng quan t\u00e2m n\u1ebfu b\u1ea1n \u0111ang \u1edf tr\u00ean m\u1eb7t \u0111\u1ea5t. Cho n\u00ean v\u1ea5n \u0111\u1ec1 th\u1ef1c l\u00e0 li\u1ec7u l\u1ed7i c\u00f3 v\u1ea5n \u0111\u1ec1 theo ngh\u0129a l\u00ed thuy\u1ebft kh\u00f4ng nh\u01b0ng li\u1ec7u n\u00f3 c\u00f3 l\u00e0 v\u1ea5n \u0111\u1ec1 cho b\u1ea1n kh\u00f4ng. \u0110\u1ec3 t\u00f4i cho b\u1ea1n v\u00ed d\u1ee5 kh\u00e1c, b\u1ea1n l\u00e0 ng\u01b0\u1eddi ch\u1ee7 c\u1ee7a m\u1ed9t c\u00f4ng ti ph\u1ea7n m\u1ec1m v\u00e0 b\u1ea1n c\u00f3 h\u00e0ng tr\u0103m ng\u01b0\u1eddi l\u1eadp tr\u00ecnh\u00a0 l\u00e0m vi\u1ec7c cho b\u1ea1n. N\u1ebfu kh\u00e1ch h\u00e0ng th\u1ea5y l\u1ed7i ph\u1ea7n m\u1ec1m trong s\u1ea3n ph\u1ea9m c\u1ee7a b\u1ea1n th\u00ec b\u1ea1n ph\u1ea3i s\u1eeda n\u00f3. Chi ph\u00ed \u0111\u1ec3 ph\u00e1t hi\u1ec7n, ph\u1ee5c h\u1ed3i, b\u00e1o c\u00e1o, s\u1eeda ch\u1eefa, ph\u00e2n ph\u1ed1i l\u1ea1i v\u00e0 chi ph\u00ed c\u00e0i \u0111\u1eb7t l\u1ea1i cho m\u1ecdi l\u1ed7i trung b\u00ecnh s\u1ebd l\u00e0 qu\u00e3ng $ 4000 cho t\u1eebng l\u1ed7i v\u00e0 c\u00f3 h\u00e0ng tr\u0103m hay h\u00e0ng ngh\u00ecn l\u1ed7i cho s\u1ea3n ph\u1ea9m b\u1ea1n b\u00e1n. B\u1ea1n c\u00f3 th\u1ef1c s\u1ef1 quan t\u00e2m kh\u00f4ng?\u00a0 B\u1ea1n b\u00e1n ph\u1ea7n m\u1ec1m \u0111\u00f3 \u0111\u01b0\u1ee3c bao nhi\u00eau v\u00e0 b\u1ea1n ph\u1ea3i chi bao nhi\u00eau ti\u1ec1n \u0111\u1ec3 s\u1eeda l\u1ed7i? B\u1ea5t k\u1ec3 nguy\u00ean nh\u00e2n c\u1ee7a ch\u00fang, chi ph\u00ed l\u1ed7i \u0111\u1ec1u r\u1ea5t \u0111\u1eaft, n\u1ebfu b\u1ea1n ph\u1ea3i tr\u1ea3 chi ph\u00ed n\u00e0y, b\u1ea1n s\u1ebd th\u1ef1c s\u1ef1 quan t\u00e2m v\u1ec1 l\u1ed7i. C\u00e2u h\u1ecfi c\u1ee7a t\u00f4i l\u00e0, l\u00e0 ng\u01b0\u1eddi ch\u1ee7 c\u00f4ng ti ph\u1ea7n m\u1ec1m, b\u1ea1n v\u1eabn thu\u00ea nh\u1eefng ng\u01b0\u1eddi kh\u00f4ng quan t\u00e2m v\u1ec1 l\u1ed7i sao?<\/p>\n<p>Theo nghi\u00ean c\u1ee9u c\u1ee7a gi\u00e1o s\u01b0 Watt Humphrey t\u1ea1i Carnegie Mellon, ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m c\u00f3 kinh nghi\u1ec7m \u0111\u01b0a v\u00e0o m\u1ed9t l\u1ed7i c\u1ee9 trong m\u1ed7i 10 d\u00f2ng m\u00e3. Trong khi c\u00e1c con s\u1ed1 n\u00e0y thay \u0111\u1ed5i l\u1edbn t\u1eeb ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m n\u00e0y sang ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n kh\u00e1c, v\u00e0 h\u1ecd \u0111\u01b0a v\u00e0o m\u1ecdi th\u1ee9 l\u1ed7i, th\u1eadm ch\u00ed c\u1ea3 nh\u1eefng l\u1ed7i \u0111\u01b0\u1ee3c t\u00ecm th\u1ea5y trong ki\u1ec3m \u0111i\u1ec3m hay b\u1edfi tr\u00ecnh bi\u00ean d\u1ecbch, v\u1eabn c\u00f3 nhi\u1ec1u l\u1ed7i. Tuy nhi\u00ean, nhi\u1ec1u ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m tin r\u1eb1ng tr\u00ecnh bi\u00ean d\u1ecbch s\u1ebd t\u00ecm ra m\u1ecdi l\u1ed7i. Kh\u00f4ng may c\u00f3 nhi\u1ec1u l\u1ed7i g\u00f5 v\u00e0o m\u00e0 tr\u00ecnh bi\u00ean d\u1ecbch l\u1ea1i kh\u00f4ng t\u00ecm ra. Ch\u1eb3ng h\u1ea1n, trong C, g\u00f5 \u201c=\u201c thay cho \u201c= =\u201c c\u00f3 th\u1ec3 t\u1ea1o ra ph\u00e9p g\u00e1n thay v\u00ec ph\u00e9p so s\u00e1nh. M\u1eb7c d\u1ea7u tr\u00ecnh bi\u00ean d\u1ecbch c\u00f3 th\u1ec3 t\u00ecm ra 90% l\u1ed7i nh\u01b0ng c\u00f2n 10% kia th\u00ec sao? Nhi\u1ec1u ng\u01b0\u1eddi tin r\u1eb1ng 10% kia c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n b\u1eb1ng ki\u1ec3m th\u1eed. Tuy nhi\u00ean, nhi\u1ec1u ch\u01b0\u01a1ng tr\u00ecnh s\u1ebd ch\u1ea1y ngay c\u1ea3 khi ch\u00fang c\u00f3 l\u1ed7i. Th\u1ef1c t\u1ebf, ch\u00fang c\u00f3 th\u1ec3 c\u00f3 nhi\u1ec1u l\u1ed7i v\u00e0 v\u1eabn qua \u0111\u01b0\u1ee3c nhi\u1ec1u ki\u1ec3m th\u1eed. Ngay c\u1ea3 \u0111\u1ec3 t\u00ecm ra s\u1ed1 ph\u1ea7n tr\u0103m l\u1ed7i l\u1edbn trong m\u1ed9t ch\u01b0\u01a1ng tr\u00ecnh, ch\u00fang ta v\u1eabn ph\u1ea3i ki\u1ec3m th\u1eed g\u1ea7n nh\u01b0 t\u1ea5t c\u1ea3 c\u00e1c con \u0111\u01b0\u1eddng v\u00e0 \u0111i\u1ec1u ki\u1ec7n logic. V\u00e0 \u0111\u1ec3 t\u00ecm ra t\u1ea5t c\u1ea3 c\u00e1c l\u1ed7i trong ngay c\u1ea3 ch\u01b0\u01a1ng tr\u00ecnh nh\u1ecf, ch\u00fang ta s\u1ebd ph\u1ea3i cho ch\u1ea1y ki\u1ec3m th\u1eed v\u00e9t c\u1ea1n m\u00e0 c\u00f3 th\u1ec3 t\u1ed1n k\u00e9m v\u00e0 y\u00eau c\u1ea7u nhi\u1ec1u n\u1ed7 l\u1ef1c.<\/p>\n<p>Ng\u00e0y nay h\u1ea7u h\u1ebft nh\u1eefng ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m d\u00e0nh nhi\u1ec1u th\u1eddi gian c\u1ed1 g\u1eafng l\u00e0m cho ph\u1ea7n m\u1ec1m c\u1ee7a h\u1ecd l\u00e0m vi\u1ec7c r\u1ed3i d\u00e0nh nhi\u1ec1u th\u1eddi gian h\u01a1n \u0111\u1ec3 ch\u1eefa l\u1ed7i v\u00e0 c\u00e1c v\u1ea5n \u0111\u1ec1 \u0111\u01b0\u1ee3c b\u00e1o c\u00e1o. \u0110\u00e2y l\u00e0 v\u1ea5n \u0111\u1ec1 ch\u00ednh cho doanh nghi\u1ec7p nh\u01b0ng nhi\u1ec1u ng\u01b0\u1eddi qu\u1ea3n l\u00ed ph\u1ea7n m\u1ec1m kh\u00f4ng \u0111\u01b0\u1ee3c hu\u1ea5n luy\u1ec7n \u0111\u1ec3 gi\u1ea3i quy\u1ebft \u0111i\u1ec1u n\u00e0y. H\u1ecd ch\u1ec9 h\u1ed9i t\u1ee5 v\u00e0o l\u1ecbch bi\u1ec3u, c\u00e1ch chuy\u1ec3n giao b\u00ean trong ng\u00e0y th\u00e1ng n\u00e0o \u0111\u00f3 nh\u01b0ng kh\u00f4ng bi\u1ebft nhi\u1ec1u v\u1ec1 kinh doanh t\u00e0i ch\u00ednh. T\u1ea5t nhi\u00ean ng\u01b0\u1eddi qu\u1ea3n l\u00ed c\u1ea5p cao bi\u1ebft nh\u01b0ng h\u1ecd qu\u00e1 b\u1eadn qu\u1ea3n l\u00ed c\u00f4ng ti v\u00e0 kh\u00f4ng ch\u00fa \u00fd t\u1edbi d\u1ef1 \u00e1n cho n\u00ean nh\u1eefng ng\u01b0\u1eddi cu\u1ed1i c\u00f9ng th\u1ef1c s\u1ef1 quan t\u00e2m l\u00e0 kh\u00e1ch h\u00e0ng. T\u1ea5t nhi\u00ean kh\u00e1ch h\u00e0ng c\u00f3 ch\u1ecdn l\u1ef1a v\u00e0 khi h\u1ecd kh\u00f4ng tho\u1ea3 m\u00e3n v\u1edbi ch\u1ea5t l\u01b0\u1ee3ng, h\u1ecd l\u00e0m kinh doanh v\u1edbi ai \u0111\u00f3 kh\u00e1c.<\/p>\n<p>T\u00f4i c\u0169ng th\u1ea5y r\u1eb1ng h\u1ea7u h\u1ebft nh\u1eefng ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m kh\u00f4ng \u0111\u01b0\u1ee3c \u0111\u00e0o t\u1ea1o trong vi\u1ec7c nh\u1eadn di\u1ec7n v\u00e0 s\u1eeda l\u1ed7i an ninh. L\u1ed7i an ninh l\u00e0 b\u1ea5t k\u00ec l\u1ed7i thi\u1ebft k\u1ebf n\u00e0o cho ph\u00e9p c\u00e1c h\u1eafc kh\u00e1ch, k\u1ebb ph\u1ea1m t\u1ed9i, hay k\u1ebb kh\u1ee7ng b\u1ed1 thu \u0111\u01b0\u1ee3c quy\u1ec1n truy nh\u1eadp hay d\u00f9ng h\u1ec7 th\u1ed1ng ph\u1ea7n m\u1ec1m. V\u00ec nhi\u1ec1u trong s\u1ed1 c\u00e1c l\u1ed7i n\u00e0y kh\u00f4ng g\u00e2y ra v\u1ea5n \u0111\u1ec1 ch\u1ee9c n\u0103ng, hay l\u1ed7i khi ch\u1ea1y, ch\u00fang s\u1ebd qua m\u1ecdi ki\u1ec3m th\u1eed ch\u1ee9c n\u0103ng nh\u01b0ng ph\u1ea7n m\u1ec1m v\u1eabn c\u00f3 nh\u1eefng mong manh an ninh ti\u1ec1m n\u0103ng m\u00e0 c\u00f3 th\u1ec3 t\u1ea1o ra v\u1ea5n \u0111\u1ec1 trong t\u01b0\u01a1ng lai.<\/p>\n<p>Quan \u0111i\u1ec3m c\u1ee7a t\u00f4i l\u00e0 \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o ch\u1ea5t l\u01b0\u1ee3ng, ch\u00fang ta ph\u1ea3i x\u00e2y d\u1ef1ng ch\u1ea5t l\u01b0\u1ee3ng trong c\u00e1ch ch\u00fang ta l\u00e0m vi\u1ec7c v\u00e0 r\u1eb1ng l\u1ed7i l\u00e0 v\u1ea5n \u0111\u1ec1 nghi\u00eam ch\u1ec9nh y\u00eau c\u1ea7u s\u1ef1 ch\u00fa \u00fd l\u1edbn t\u1eeb m\u1ecdi ng\u01b0\u1eddi. C\u00e1ch t\u1ed1t nh\u1ea5t \u0111\u1ec3 ng\u0103n c\u1ea3n l\u1ed7i l\u00e0 \u0111\u00e0o t\u1ea1o t\u1ed1t h\u01a1n v\u00e0 \u0111\u00e0o t\u1ea1o n\u00ean b\u1eaft \u0111\u1ea7u s\u1edbm nh\u1ea5t c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c trong m\u1ecdi \u0111\u1ea1i h\u1ecdc v\u00e0 n\u00ean \u0111\u01b0\u1ee3c nh\u1ea5n m\u1ea1nh trong m\u1ecdi l\u1edbp t\u00ednh to\u00e1n.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8212;-English version&#8212;-<\/p>\n<p>&nbsp;<\/p>\n<p>Testing quality<\/p>\n<p>In the past when software was small, only few hundred lines of code then testing was relatively easy. As a software developer, what I did was to make sure that the algorithms were right and analyzed the program construction to make sure that it compiled correctly. If I had errors, I fixed them then re-compiled so testing was not an issue. However, as software size getting larger, I began to see that I had several defects after released to the customer (One was overflow stack) so I started to be more careful about testing. I began to write test cases to make sure that the program ran correctly and meet the requirements with input data and output data (Black-box testing). Eventually, many programs that I wrote have to be integrated with other programs so as a team we divided our works into separate functions and features based on structure analysis method but we were still working independently, only discussed with each other when needed. Each person did its own tests and we were confident that everything should work the way we think but in the end it did not worked well. There were so many defects in our final product so my managers decided to form a testing group consisted of many newly hired programmers who were given the job of checking softwares to make sure they worked before they were released.\u00a0 As software developers, we only have to focus mostly on design and code. We tested our own code and not worried much about the rest of the final software. So our team consisted of two groups, developer group and testing group and this concept had been adopted in many software companies and it still is the way many companies operate today.<\/p>\n<p>Now looking back for so many years my biggest surprise is how many people still believe that you can \u201ctest quality\u201d into a software product. Today most software are very large and complex, many of my projects have about 5 to 20 million lines of code and it is impossible to test everything so instead of focus on testing, we focus on a disciplined approach to \u201cbuild in quality\u201d as we work. This is also a major difference between software engineering and computer science training. With software engineering, you must focusing on the process that creates the product and \u201cbuild quality into the process\u201d so the final product will have quality. Of course, nobody is perfect so you must rely on others to support you and identify your mistakes so you can fix it. Therefore, software reviews, code inspections, pair-programming, phase reflection, and lesson learned are applied to ensure that we will have quality product.<\/p>\n<p>When students come to my class at CMU, many have an attitude of \u201cWhy cares about defect when we can fix it anyway\u201d or \u201cCode first, fix defects later\u201d so I tell them a scenario: \u201cAssume that you are flying in an airplane and you hear the pilot said that he has software defect in the control system and must \u201creboot\u201d the system. How long will it take to reboot the system? Only ten or twenty minutes and that mean the airplane will have no power during that time and of course will crash\u201d and I ask: \u201cDo you really care about software defect or not?\u201d As the class laughing aloud, I add: \u201cI am sure it depends on your point of view, you probably care if you are on the plane and do not care if you are on the ground. So the real issue is whether defect matter in a theoretical sense but whether it matter to you. Let me give you another example, you are the owner of a software company and you have hundred software developers working for you. If customer finds software defects in your product then you have to fix it. The cost of discovery, recovery, reporting, repairing, redistribution, and reinstallation costs for every defect would average about $ 4000 each and there are hundreds or thousands defects for every product that you sell. Do you really care?\u00a0 How much do you sell the software for and how much you have to spend on fixing defects? Regardless of their causes, defect costs are very expensive, if you had to pay this cost, you would really care about defects. My question is, as the owner of a software company, do you still hiring people that do not care about defects?<\/p>\n<p>According to the research of Professor Watt Humphrey at Carnegie Mellon, experienced software developers inject one defect in about every 10 lines of code. While these numbers vary widely from one software developer to others, and they include all the defects, even those found in reviewing or by the compiler, there are still lots of defects. However, many software developers believe that the compiler will find all defects. Unfortunately there are many typing error mistakes that are not found by the compiler. For example, in C, typing \u201c=\u201cinstead of \u201c= =\u201ccan cause an assignment instead of a comparison. Although compiler can find about 90% defects but what\u2019s about the other 10%? Many people believe that the other 10% could be done by testing. However, many programs will run even when they have defects. In fact, they can have a lot of defects and still pass many tests. To find even a large percentage of the defects in a program, we would have to test almost all the logical paths and conditions. And to find all of the defects in even small programs, we would have to run an exhaustive test that could be expensive and require a lot of efforts.<\/p>\n<p>Today most software developers spend a lot of time trying to get their software to work then spend more time fixing defects and reported problems. This is a major issue for the business but many software managers are not trained to deal with this. They only focus on the schedule, how to deliver within certain date but do not know much about the financial business. Of course senior managers know but they are too busy running company and not pay attention at project so the ultimate people who really care are customers. Of course the customers have choices and when they are not happy with the quality, they do business with somebody else.<\/p>\n<p>I also found that most software developers are not trained in identify and fixing security defects. A security defect is any design error that allows hackers, criminals, or terrorists to obtain unauthorized access or use of a software system. Since many of these defects do not cause functional problems, or runtime errors they will pass all of their functional tests but the software has potential security vulnerabilities that could create problems in the future.<\/p>\n<p>My view is to ensure quality, we must build quality into the way we work and that defects are serious issue that require significant attention from everybody. The best way to prevent defects is better training and training should start as early as possible in every university and should be emphasized in all computing classes.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Trong qu\u00e1 kh\u1ee9 khi ph\u1ea7n m\u1ec1m c\u00f2n nh\u1ecf, ch\u1ec9 v\u00e0i tr\u0103m d\u00f2ng m\u00e3, th\u00ec ki\u1ec3m th\u1eed l\u00e0 t\u01b0\u01a1ng \u0111\u1ed1i d\u1ec5 d\u00e0ng. L\u00e0 ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n &hellip; <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[],"class_list":["post-3060","post","type-post","status-publish","format-standard","hentry","category-ki-nghe-phan-mem"],"_links":{"self":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/3060","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3060"}],"version-history":[{"count":1,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/3060\/revisions"}],"predecessor-version":[{"id":3061,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/3060\/revisions\/3061"}],"wp:attachment":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3060"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3060"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3060"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}