	{"id":2807,"date":"2013-07-07T21:26:10","date_gmt":"2013-07-07T14:26:10","guid":{"rendered":"http:\/\/science-technology.vn\/?p=2807"},"modified":"2013-07-07T21:26:10","modified_gmt":"2013-07-07T14:26:10","slug":"nhom-kiem-thu-doc-lap","status":"publish","type":"post","link":"https:\/\/science-technology.vn\/?p=2807","title":{"rendered":"Nh\u00f3m ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp"},"content":{"rendered":"<p><span style=\"font-size: 14px;\">Ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m bao gi\u1edd c\u0169ng c\u00f3 l\u1ed7i v\u00e0 ki\u1ec3m th\u1eed \u0111\u01b0\u1ee3c d\u00f9ng \u0111\u1ec3 t\u00ecm v\u00e0 s\u1eeda l\u1ed7i. C\u00e1ch ti\u1ebfp c\u1eadn n\u00e0y KH\u00d4NG hi\u1ec7u qu\u1ea3 trong c\u1ea3i ti\u1ebfn ch\u1ea5t l\u01b0\u1ee3ng ph\u1ea7n m\u1ec1m nh\u01b0ng nhi\u1ec1u tr\u01b0\u1eddng v\u1eabn d\u1ea1y c\u00e1ch ti\u1ebfp c\u1eadn n\u00e0y. Sinh vi\u00ean \u0111\u01b0\u1ee3c d\u1ea1y r\u1eb1ng ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m tu\u00e2n theo b\u1ed1n pha: Y\u00eau c\u1ea7u, Thi\u1ebft k\u1ebf, Vi\u1ebft m\u00e3 v\u00e0 Ki\u1ec3m th\u1eed. Ph\u1ea7n m\u1ec1m kh\u00f4ng n\u00ean \u0111\u01b0\u1ee3c thi\u1ebft k\u1ebf ch\u1eebng n\u00e0o y\u00eau c\u1ea7u c\u00f2n ch\u01b0a \u0111\u01b0\u1ee3c ph\u00e2n t\u00edch \u0111\u1ea7y \u0111\u1ee7. Ph\u1ea7n m\u1ec1m kh\u00f4ng n\u00ean \u0111\u01b0\u1ee3c vi\u1ebft m\u00e3 ch\u1eebng n\u00e0o thi\u1ebft k\u1ebf c\u00f2n ch\u01b0a l\u00e0m xong. Ph\u1ea7n m\u1ec1m kh\u00f4ng th\u1ec3 \u0111\u01b0\u1ee3c ki\u1ec3m th\u1eed ch\u1eebng n\u00e0o vi\u1ebft m\u00e3 c\u00f2n ch\u01b0a \u0111\u01b0\u1ee3c \u0111\u1ea7y \u0111\u1ee7. L\u1ed7i ph\u1ea7n m\u1ec1m \u0111\u01b0\u1ee3c lo\u1ea1i b\u1ecf trong ki\u1ec3m th\u1eed tr\u01b0\u1edbc khi \u0111\u01b0a ra cho ng\u01b0\u1eddi d\u00f9ng.<\/span><\/p>\n<p>Trong th\u1ef1c h\u00e0nh, ph\u1ea7n l\u1edbn l\u1ed7i th\u01b0\u1eddng \u0111\u01b0\u1ee3c t\u1ea1o ra trong pha y\u00eau c\u1ea7u hay thi\u1ebft k\u1ebf, nh\u01b0ng ki\u1ec3m th\u1eed kh\u00f4ng th\u1ec3 ph\u00e1t hi\u1ec7n \u0111\u01b0\u1ee3c ch\u00fang ch\u1eebng n\u00e0o vi\u1ebft m\u00e3 c\u00f2n ch\u01b0a \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n do \u0111\u00f3 l\u1ed7i bao gi\u1edd c\u0169ng \u0111\u01b0\u1ee3c t\u00ecm th\u1ea5y mu\u1ed9n trong d\u1ef1 \u00e1n. Trong th\u1eddi gian n\u00e0y, ph\u1ea7n l\u1edbn c\u00e1c d\u1ef1 \u00e1n \u0111\u00e3 ch\u1ea1y h\u1ebft th\u1eddi gian cho n\u00ean ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n v\u1ed9i v\u00e0ng \u0111\u01b0a ra ph\u1ea7n m\u1ec1m v\u00e0 ng\u01b0\u1eddi d\u00f9ng ch\u1ea5m d\u1ee9t v\u1edbi s\u1ea3n ph\u1ea9m c\u00f3 l\u1ed7i. Gi\u1ea3i ph\u00e1p cho v\u1ea5n \u0111\u1ec1 n\u00e0y l\u00e0 \u1edf ch\u1ed7 ng\u01b0\u1eddi ki\u1ec3m th\u1eed ph\u1ea3i l\u1eadp k\u1ebf ho\u1ea1ch ki\u1ec3m th\u1eed trong pha y\u00eau c\u1ea7u v\u00e0 c\u00e1c tr\u01b0\u1eddng h\u1ee3p ki\u1ec3m th\u1eed thi\u1ebft k\u1ebf \u0111\u1ed3ng th\u1eddi l\u00fac ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n thi\u1ebft k\u1ebf ph\u1ea7n m\u1ec1m, v\u00e0 vi\u1ebft m\u1ecdi tr\u01b0\u1eddng h\u1ee3p ki\u1ec3m th\u1eed \u0111\u1ed3ng th\u1eddi l\u00fac ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n th\u1ef1c hi\u1ec7n vi\u1ebft m\u00e3. V\u1eady, ph\u00e1t tri\u1ec3n ki\u1ec3m th\u1eed x\u1ea3y song h\u00e0nh v\u1edbi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m.<\/p>\n<p>\u0110i\u1ec1u quan tr\u1ecdng l\u00e0 c\u00f3 nh\u00f3m ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp \u0111\u1ec3 l\u00e0m vi\u1ec7c v\u1ec1 ph\u00e1t tri\u1ec3n ki\u1ec3m th\u1eed \u0111\u1ed3ng th\u1eddi v\u1edbi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m. \u0110i\u1ec1u n\u00e0y c\u00f3 th\u1ec3 gi\u00fap ph\u00e1t hi\u1ec7n s\u1edbm l\u1ed7i v\u00e0 c\u1ea3i ti\u1ebfn ch\u1ea5t l\u01b0\u1ee3ng ph\u1ea7n m\u1ec1m. Kh\u00f4ng may l\u00e0 nhi\u1ec1u c\u00f4ng ti d\u00f9ng nh\u1eefng ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n \u0111\u1ec3 l\u00e0m ki\u1ec3m th\u1eed cho ph\u1ea7n m\u1ec1m ri\u00eang c\u1ee7a h\u1ecd \u0111\u1ec3 ti\u1ebft ki\u1ec7m chi ph\u00ed thu\u00ea ng\u01b0\u1eddi ki\u1ec3m th\u1eed ph\u1ee5. Th\u1ef1c h\u00e0nh n\u00e0y c\u00f3 th\u1ec3 l\u00e0m ph\u00e1t sinh vi\u1ec7c ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n t\u1ea1o ra ki\u1ec3m th\u1eed m\u00e0 ch\u1ec9 ki\u1ec3m th\u1eed nh\u1eefng ph\u1ea7n c\u1ee7a ph\u1ea7n m\u1ec1m \u0111\u00e3 l\u00e0m vi\u1ec7c, d\u1ef1a tr\u00ean thi\u00ean ki\u1ebfn ri\u00eang c\u1ee7a h\u1ecd. Chung cu\u1ed9c, ph\u1ea7n m\u1ec1m s\u1ebd qua ki\u1ec3m th\u1eed nh\u01b0ng v\u1eabn ch\u1ee9a l\u1ed7i. Khi ng\u01b0\u1eddi d\u00f9ng t\u00ecm th\u1ea5y l\u1ed7i trong ph\u1ea7n m\u1ec1m, ph\u1ea7n l\u1edbn ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n kh\u0103ng kh\u0103ng r\u1eb1ng c\u00e1c ki\u1ec3m th\u1eed c\u1ee7a h\u1ecd kh\u00f4ng \u0111\u1ec3 l\u1ed9 ra l\u1ed7i n\u00e0o. \u0110i\u1ec1u n\u00e0y t\u1ea1o ra th\u00e1i \u0111\u1ed9 \u0111\u1ed1i \u0111\u1ea7u gi\u1eefa ng\u01b0\u1eddi d\u00f9ng v\u00e0 ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n.<\/p>\n<p>C\u00f3 ng\u01b0\u1eddi ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp ph\u00e2n t\u00edch c\u00e1c y\u00eau c\u1ea7u m\u1ed9t c\u00e1ch t\u00e1ch r\u1eddi v\u1edbi ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n th\u00ec c\u00f3 th\u1ec3 nh\u1eadn di\u1ec7n m\u1ed9t s\u1ed1 l\u1ed7i y\u00eau c\u1ea7u hay thi\u1ebfu th\u00f4ng tin. V\u1ec1 c\u0103n b\u1ea3n, ph\u1ea7n l\u1edbn ng\u01b0\u1eddi d\u00f9ng ch\u1ec9 cho ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n c\u00e1c y\u00eau c\u1ea7u m\u1ee9c cao v\u00e0 ph\u1ea7n l\u1edbn nh\u1eefng ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n mu\u1ed1n d\u1eabn ra y\u00eau c\u1ea7u ri\u00eang c\u1ee7a h\u1ecd (th\u01b0\u1eddng kh\u00f4ng \u0111\u01b0\u1ee3c l\u00e0m t\u00e0i li\u1ec7u) d\u1ef1a tr\u00ean hi\u1ec3u bi\u1ebft ri\u00eang c\u1ee7a h\u1ecd v\u1ec1 nhu c\u1ea7u c\u1ee7a ng\u01b0\u1eddi d\u00f9ng. C\u00f3 ng\u01b0\u1eddi ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp ki\u1ec3m \u0111i\u1ec3m l\u1ea1i c\u00e1c y\u00eau c\u1ea7u s\u1ebd tr\u00e1nh \u0111\u01b0\u1ee3c v\u1ea5n \u0111\u1ec1 n\u00e0y b\u1edfi v\u00ec ng\u01b0\u1eddi ki\u1ec3m th\u1eed ph\u1ea3i hi\u1ec3u y\u00eau c\u1ea7u m\u1ed9t c\u00e1ch chi ti\u1ebft. N\u1ebfu h\u1ecd kh\u00f4ng bi\u1ebft c\u00e1c y\u00eau c\u1ea7u, h\u1ecd kh\u00f4ng th\u1ec3 t\u1ea1o ra \u0111\u01b0\u1ee3c c\u00e1c ki\u1ec3m th\u1eed hay ng\u01b0\u1ee3c l\u1ea1i, n\u1ebfu h\u1ecd kh\u00f4ng th\u1ec3 ki\u1ec3m th\u1eed \u0111\u01b0\u1ee3c ch\u00fang, h\u1ecd kh\u00f4ng bi\u1ebft y\u00eau c\u1ea7u. Theo kinh nghi\u1ec7m c\u1ee7a t\u00f4i, \u0111\u00e2y l\u00e0 l\u00fac d\u1ef1 \u00e1n c\u00f3 th\u1ec3 nh\u1eadn di\u1ec7n m\u1ecdi y\u00eau c\u1ea7u kh\u00f4ng nh\u1ea5t qu\u00e1n, kh\u00f4ng \u0111\u1ea7y \u0111\u1ee7, m\u01a1 h\u1ed3 v\u00e0 s\u1eeda ch\u00fang tr\u01b0\u1edbc khi chuy\u1ec3n sang pha ti\u1ebfp.<\/p>\n<p>V\u1edbi hi\u1ec3u r\u00f5 v\u1ec1 y\u00eau c\u1ea7u, nh\u1eefng ng\u01b0\u1eddi ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp c\u00f3 th\u1ec3 thi\u1ebft k\u1ebf c\u00e1c tr\u01b0\u1eddng h\u1ee3p ki\u1ec3m th\u1eed m\u00e0 ki\u1ec3m th\u1eed c\u00e1i g\u00ec \u0111\u00f3 c\u00f3 th\u1ec3 \u0111\u00e3 kh\u00f4ng \u0111\u01b0\u1ee3c ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n x\u00e9t t\u1edbi trong thi\u1ebft k\u1ebf c\u1ee7a h\u1ecd. B\u1eb1ng vi\u1ec7c c\u00f3 ki\u1ec3m \u0111i\u1ec3m ki\u1ec3m th\u1eed thi\u1ebft k\u1ebf, ng\u01b0\u1eddi ki\u1ec3m th\u1eed v\u00e0 ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n c\u00f3 th\u1ec3 so s\u00e1nh c\u00e1c ghi ch\u00fa \u1edf m\u1ee9c chi ti\u1ebft. Ho\u1ea1t \u0111\u1ed9ng n\u00e0y c\u00f3 th\u1ec3 nh\u1eadn di\u1ec7n c\u00e1c l\u1ed7i thi\u1ebft k\u1ebf ho\u1eb7c b\u1edfi ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ho\u1eb7c b\u1edfi ng\u01b0\u1eddi ki\u1ec3m th\u1eed. B\u1eb1ng vi\u1ec7c c\u00f3 h\u00e0nh \u0111\u1ed9ng s\u1eeda ch\u00fang tr\u01b0\u1edbc pha th\u1ef1c hi\u1ec7n, d\u1ef1 \u00e1n c\u00f3 th\u1ec3 kh\u1eed b\u1ecf \u0111\u01b0\u1ee3c nhi\u1ec1u l\u1ed7i. \u0110\u00e2y l\u00e0 l\u00fac ph\u1ea7n l\u1edbn c\u00e1c c\u1ea5u ph\u1ea7n tr\u00f9ng l\u1eb7p nh\u1ea5t, c\u00e1c ho\u1ea1t \u0111\u1ed9ng thi\u1ebft k\u1ebf d\u01b0 th\u1eeba c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c nh\u1eadn di\u1ec7n. B\u1eb1ng vi\u1ec7c c\u00f3 g\u00f3c nh\u00ecn t\u00e1ch r\u1eddi, t\u1ed5 d\u1ef1 \u00e1n c\u00f3 th\u1ec3 ki\u1ec3m thi\u1ebft k\u1ebf giao di\u1ec7n, c\u00e1ch d\u00f9ng \u0111\u00fang c\u00e1c th\u1ef1c th\u1ec3 v\u00e0 quan h\u1ec7, lu\u1ed3ng d\u1eef li\u1ec7u v\u00e0 \u0111i\u1ec1u khi\u1ec3n, vi\u1ec7c chuy\u1ec3n tr\u1ea1ng, \u0111\u1ec3 ch\u1ee9ng t\u1ecf r\u1eb1ng thi\u1ebft k\u1ebf tho\u1ea3 m\u00e3n y\u00eau c\u1ea7u.<\/p>\n<p>N\u1ebfu d\u1ef1 \u00e1n \u0111\u00e3 c\u00f3 y\u00eau c\u1ea7u t\u1ed1t v\u00e0 ki\u1ec3m \u0111i\u1ec3m thi\u1ebft k\u1ebf nh\u1eadn di\u1ec7n v\u00e0 s\u1eeda h\u1ea7u h\u1ebft c\u00e1c l\u1ed7i th\u00ec vi\u1ec7c th\u1ef1c hi\u1ec7n th\u01b0\u1eddng l\u00e0 d\u1ec5 d\u00e0ng. Vi\u1ec7c \u0111\u01b0a l\u1ed7i v\u00e0o trong pha vi\u1ebft m\u00e3 l\u00e0 d\u1ec5 s\u1eeda b\u1edfi ki\u1ec3m th\u1eed \u0111\u01a1n v\u1ecb. T\u00f4i bao gi\u1edd c\u0169ng tin r\u1eb1ng ngu\u1ed3n c\u1ee7a h\u1ea7u h\u1ebft l\u1ed7i ph\u1ea7n m\u1ec1m l\u00e0 do thi\u1ebfu k\u1ec9 lu\u1eadt trong c\u00e1ch t\u1ed5 ch\u1ee9c x\u00e2y d\u1ef1ng ph\u1ea7n m\u1ec1m. B\u1eb1ng vi\u1ec7c \u00e1p d\u1ee5ng k\u1ec9 lu\u1eadt k\u0129 ngh\u1ec7 ph\u1ea7n m\u1ec1m nh\u01b0 c\u00f3 nh\u00f3m ki\u1ec3m th\u1eed \u0111\u1ed9c l\u1eadp, c\u00f3 nhi\u1ec1u cu\u1ed9c ki\u1ec3m \u0111i\u1ec3m, d\u1ef1 \u00e1n ph\u1ea7n m\u1ec1m c\u00f3 th\u1ec3 lo\u1ea1i b\u1ecf \u0111\u01b0\u1ee3c h\u1ea7u h\u1ebft c\u00e1c l\u1ed7i thoe c\u00e1ch c\u00f3 tr\u1eadt t\u1ef1.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8212;-English version&#8212;-<\/p>\n<p>&nbsp;<\/p>\n<p>Independent test group<\/p>\n<p>Software development always has defects and testing is used to find and fix defects. This approach is NOT effective in improving the quality of software but many schools are still teaching this approach. Students are taught that software development follows four phases: Requirements, Design, Code and Test. Software should not be designed until their requirements are fully analyzed. Software should not be coded until design is done. Software cannot be tested until coding is complete. Software defects are removed during testing before released to users.<\/p>\n<p>In practice, most defects are often created during requirements or design phases, but testing cannot detect them until coding is done therefore defects always are found late in the project. During this time, most projects are already run out of time so developers are hurrying to release the software and users end up with defective products. The solution to this problem is that tester should plan the test during requirements phase and design test cases at the same time developer design software, and write all test cases at the same time as developer implementing code. Thus, test development happens concurrently with software development.<\/p>\n<p>It is important to have an independent testing group to work on test development at the same time with software development. This may help in early defect detection and improve software quality. Unfortunately, many companies use developers to do testing of their own software to save costs of hiring additional testers. This practice may result in developers create tests that only test the parts of software that work, based on their own biases. Eventually, software will pass tests but still contains defects. When users find defects in the software, most developers insist that their tests reveal no defects. This create an adversarial attitude between users and developers.<\/p>\n<p>To have independent testers analyze requirements separately from developers can identify some requirements defects or missing informations. Typically, most users only give high-level requirements to developers and most developers want to derived their own requirements (often-undocumented) based on their own understanding of users\u2019 needs. To have an independent testers review requirements would avoid this problem because testers must understand the requirement in detail. If they do not know the requirements, they can not create the tests or vice versa, if they can not test them, they do not know the requirements. Based on my experiences, this is the time where project can identify any inconsistent, incomplete, ambiguous requirements and fix them before moves into the next phase.<\/p>\n<p>By understand the requirements well, independent testers can design test cases that test something which may not been considered by the developers in their designs. By having design test review, testers and developers can compare notes in detailed level. This activity can identify design defects either by developers or testers. By taking corrective actions to fix them before the implementation phase, the project can eliminate a lot of defects. This is the time where most duplicate components, redundant design activities can be identified. By having separate views, project team can check on interface design, proper use of entities and relationships, data and control flow, state transitions, to demonstrate that a design satisfies its requirements.<\/p>\n<p>If project already has good requirements and design reviews that identify and fix most defects then implementation is usually easy. Defect injection during the coding phase are easy to fix by unit tests. I always believe that the source of most software defects is the lack of discipline in the way organizations build software. By applying strong software engineering disciplines such as having independent testing group, having more reviews, software projects can remove most defects in an orderly manner.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m bao gi\u1edd c\u0169ng c\u00f3 l\u1ed7i v\u00e0 ki\u1ec3m th\u1eed \u0111\u01b0\u1ee3c d\u00f9ng \u0111\u1ec3 t\u00ecm v\u00e0 s\u1eeda l\u1ed7i. C\u00e1ch ti\u1ebfp c\u1eadn n\u00e0y KH\u00d4NG hi\u1ec7u &hellip; <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[24],"tags":[],"class_list":["post-2807","post","type-post","status-publish","format-standard","hentry","category-quan-li-du-an"],"_links":{"self":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/2807","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=2807"}],"version-history":[{"count":1,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/2807\/revisions"}],"predecessor-version":[{"id":2808,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/2807\/revisions\/2808"}],"wp:attachment":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2807"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}