	{"id":1197,"date":"2013-07-01T16:49:20","date_gmt":"2013-07-01T09:49:20","guid":{"rendered":"http:\/\/science-technology.vn\/?p=1197"},"modified":"2013-07-01T16:49:20","modified_gmt":"2013-07-01T09:49:20","slug":"phat-trien-phan-mem-he-thong","status":"publish","type":"post","link":"https:\/\/science-technology.vn\/?p=1197","title":{"rendered":"Ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m h\u1ec7 th\u1ed1ng"},"content":{"rendered":"<p><span style=\"font-size: 14px;\">M\u1ed9t ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m vi\u1ebft cho t\u00f4i: \u201cCh\u00fang t\u00f4i c\u00f3 v\u00e0i d\u1ef1 \u00e1n th\u1ea5t b\u1ea1i. Kh\u00e1ch h\u00e0ng gi\u1eadn nh\u01b0ng ng\u01b0\u1eddi qu\u1ea3n l\u00ed d\u1ef1 \u00e1n b\u1ea3o ch\u00fang t\u00f4i r\u1eb1ng \u0111\u1ea5y l\u00e0 l\u1ed7i c\u1ee7a kh\u00e1ch h\u00e0ng v\u00ec h\u1ecd c\u1ee9 thay \u0111\u1ed5i y\u00eau c\u1ea7u. Ch\u00fang t\u00f4i b\u1eaft \u0111\u1ea7u d\u1ef1 \u00e1n m\u1edbi nh\u01b0ng t\u00f4i s\u1ee3 r\u1eb1ng ch\u00fang t\u00f4i s\u1ebd ph\u1ea1m c\u00f9ng sai l\u1ea7m l\u1eabn n\u1eefa. Ch\u00fang t\u00f4i c\u00f3 th\u1ec3 l\u00e0m g\u00ec \u0111\u1ec3 tr\u00e1nh v\u1ea5n \u0111\u1ec1 n\u00e0y? Xin th\u1ea7y l\u1eddi khuy\u00ean.\u201d<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>\u0110\u00e1p: N\u1ebfu kh\u00e1ch h\u00e0ng c\u1ee9 thay \u0111\u1ed5i y\u00eau c\u1ea7u th\u00ec b\u1ea1n c\u1ea7n c\u00f3 m\u1ed9t k\u0129 s\u01b0 y\u00eau c\u1ea7u hay ng\u01b0\u1eddi ph\u00e2n t\u00edch doanh nghi\u1ec7p d\u00e0nh th\u1eddi gian c\u00f9ng kh\u00e1ch h\u00e0ng \u0111\u1ec3 thu \u0111\u01b0\u1ee3c y\u00eau c\u1ea7u t\u1ed1t h\u01a1n. \u0110\u00e2y l\u00e0 vai tr\u00f2 quan tr\u1ecdng trong ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m nh\u01b0ng nhi\u1ec1u c\u00f4ng ti kh\u00f4ng ch\u00fa \u00fd. N\u1ebfu y\u00eau c\u1ea7u l\u00e0 sai th\u00ec m\u1ecdi th\u1ee9 s\u1ebd sai ch\u1eb3ng th\u00e0nh v\u1ea5n \u0111\u1ec1 b\u1ea1n thi\u1ebft k\u1ebf hay vi\u1ebft m\u00e3 t\u1ed1t t\u1edbi \u0111\u00e2u. N\u1ebfu c\u00f4ng ti c\u1ee7a b\u1ea1n kh\u00f4ng c\u00f3 ai \u0111\u00f3 l\u00e0m \u0111i\u1ec1u n\u00e0y th\u00ec h\u1ecd n\u00ean thu\u00ea ng\u01b0\u1eddi c\u00f3 th\u1ec3 l\u00e0m vi\u1ec7c \u0111\u00f3. Khi d\u1ef1 \u00e1n th\u1ea5t b\u1ea1i, ng\u01b0\u1eddi qu\u1ea3n l\u00ed c\u1ee7a b\u1ea1n l\u1ebd ra ph\u1ea3i kh\u00f4ng n\u00ean tr\u00e1ch kh\u00e1ch h\u00e0ng m\u00e0 n\u00ean nh\u1eadn di\u1ec7n nguy\u00ean nh\u00e2n v\u00e0 s\u1eeda n\u00f3 \u0111\u1ec3 cho n\u00f3 s\u1ebd kh\u00f4ng x\u1ea3y ra n\u1eefa. Khi kh\u00e1ch h\u00e0ng kh\u00f4ng h\u00e0i l\u00f2ng th\u00ec \u0111\u00f3 l\u00e0 kinh doanh k\u00e9m. Kh\u00f4ng c\u00f4ng ti n\u00e0o c\u00f3 th\u1ec3 t\u1ed3n t\u1ea1i n\u1ebfu kh\u00e1ch h\u00e0ng c\u1ee7a h\u1ecd kh\u00f4ng h\u00e0i l\u00f2ng. Khi d\u1ef1 \u00e1n b\u1ecb tr\u1ec5, n\u00f3 c\u1ea7n nhi\u1ec1u th\u1eddi gian h\u01a1n, nhi\u1ec1u ti\u1ec1n h\u01a1n, v\u00e0 nhi\u1ec1u n\u1ed7 l\u1ef1c h\u01a1n \u0111\u00e3 l\u1eadp k\u1ebf ho\u1ea1ch tr\u01b0\u1edbc \u0111\u00e2y. \u0110i\u1ec1u \u0111\u00f3 ngh\u0129a l\u00e0 c\u00f4ng ti ph\u1ea3i tr\u1ea3 ti\u1ec1n cho vi\u1ec7c l\u00e0m th\u00eam v\u00e0 \u0111i\u1ec1u \u0111\u00f3 ngh\u0129a l\u00e0 m\u1ea5t nhi\u1ec1u ti\u1ec1n h\u01a1n.<\/p>\n<p>Thay \u0111\u1ed5i y\u00eau c\u1ea7u l\u00e0 v\u1ea5n \u0111\u1ec1 th\u00f4ng th\u01b0\u1eddng trong c\u00f4ng nghi\u1ec7p ph\u1ea7n m\u1ec1m. N\u00f3 th\u01b0\u1eddng l\u00e0 do thi\u1ebfu tri th\u1ee9c v\u1ec1 y\u00eau c\u1ea7u ph\u1ea7n m\u1ec1m. Nhi\u1ec1u ng\u01b0\u1eddi qu\u1ea3n l\u00ed d\u1ef1 \u00e1n ngh\u0129 r\u1eb1ng h\u1ecd hi\u1ec3u \u0111i\u1ec1u kh\u00e1ch h\u00e0ng c\u1ea7n v\u00e0 ti\u1ebfn h\u00e0nh ph\u00e1t tri\u1ec3n m\u00e0 kh\u00f4ng c\u00f3 vi\u1ec7c ki\u1ec3m nghi\u1ec7m n\u00e0o c\u1ee7a kh\u00e1ch h\u00e0ng. Nhi\u1ec1u ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n \u0111o\u00e1n ch\u1eebng h\u1ecd bi\u1ebft m\u1ecdi t\u00ednh n\u0103ng m\u00e0 kh\u00e1ch h\u00e0ng c\u1ea7n r\u1ed3i b\u1eaft \u0111\u1ea7u thi\u1ebft k\u1ebf v\u00e0 vi\u1ebft m\u00e3 m\u00e0 kh\u00f4ng c\u00f3 ki\u1ec3m \u0111i\u1ec3m n\u00e0o c\u1ee7a kh\u00e1ch h\u00e0ng. Ti\u1ebfn b\u1ed9 \u0111\u01b0\u1ee3c \u0111o b\u1eb1ng t\u1eebng d\u00f2ng m\u00e3 \u0111\u01b0\u1ee3c x\u00e2y d\u1ef1ng qua qui tr\u00ecnh cho t\u1edbi khi y\u00eau c\u1ea7u b\u1eaft \u0111\u1ea7u thay \u0111\u1ed5i. S\u1eeda ph\u1ea7n m\u1ec1m sau khi d\u1ef1ng l\u00e0 t\u1ed1n chi ph\u00ed v\u00e0 th\u1eddi gian. N\u00f3 th\u01b0\u1eddng g\u00e2y ra l\u00e3ng ph\u00ed n\u1ed7 l\u1ef1c kh\u1ed5ng l\u1ed3 v\u1edbi h\u00e0ng tr\u0103m gi\u1edd kh\u00f4ng n\u0103ng su\u1ea5t v\u00e0 h\u00e0ng tr\u0103m d\u00f2ng m\u00e3 thay \u0111\u1ed5i. \u0110\u00e2y l\u00e0 l\u00ed do t\u1ea1i sao b\u1ea1n c\u1ea7n ai \u0111\u00f3 ng\u01b0\u1eddi hi\u1ec3u y\u00eau c\u1ea7u v\u00e0 l\u00e0m vi\u1ec7c ch\u1eb7t ch\u1ebd v\u1edbi kh\u00e1ch h\u00e0ng \u0111\u1ec3 c\u00f3 \u0111\u01b0\u1ee3c y\u00eau c\u1ea7u \u0111\u00fang sao cho b\u1ea1n kh\u00f4ng ph\u1ea1m sai l\u1ea7m l\u1ea7n n\u1eefa.<\/p>\n<p>C\u00f3 nh\u1eefng c\u00e1ch nh\u00ecn kh\u00e1c nhau v\u1ec1 y\u00eau c\u1ea7u. C\u00e1ch nh\u00ecn c\u1ee7a ng\u01b0\u1eddi qu\u1ea3n l\u00ed v\u1ec1 y\u00eau c\u1ea7u th\u01b0\u1eddng l\u00e0 quan ni\u1ec7m m\u1ee9c cao v\u1ec1 s\u1ea3n ph\u1ea9m hay v\u1ea5n \u0111\u1ec1 doanh nghi\u1ec7p m\u00e0 ph\u1ea3i \u0111\u01b0\u1ee3c gi\u1ea3i quy\u1ebft. C\u00e1ch nh\u00ecn c\u1ee7a ng\u01b0\u1eddi d\u00f9ng v\u1ec1 y\u00eau c\u1ea7u ch\u1ee7 y\u1ebfu l\u00e0 ch\u1ee9c n\u0103ng, giao di\u1ec7n v\u00e0 d\u1eabn h\u01b0\u1edbng c\u00e1c m\u00e0n h\u00ecnh. N\u1ebfu y\u00eau c\u1ea7u ch\u1ee7 y\u1ebfu l\u00e0 ch\u1ee9c n\u0103ng, t\u1ed5 d\u1ef1 \u00e1n c\u00f3 th\u1ec3 kh\u00f4ng hi\u1ec3u c\u00e1c th\u00f4ng tin \u0111a d\u1ea1ng \u1ea9n d\u01b0\u1edbi c\u00e1i nh\u00ecn v\u1ec1 ch\u1ee9c n\u0103ng. K\u1ebft qu\u1ea3 l\u00e0 mong \u0111\u1ee3i c\u1ee7a kh\u00e1ch h\u00e0ng c\u00f3 th\u1ec3 kh\u00f4ng \u0111\u01b0\u1ee3c \u0111\u1ea1t t\u1edbi.<\/p>\n<p>\u0110\u1ec3 tr\u00e1nh v\u1ea5n \u0111\u1ec1 n\u00e0y, t\u1ed5 d\u1ef1 \u00e1n ph\u1ea3i hi\u1ec3u v\u00e0i c\u00e1ch nh\u00ecn v\u1ec1 y\u00eau c\u1ea7u. C\u00e1ch nh\u00ecn m\u1ee9c cao nh\u1ea5t l\u00e0 y\u00eau c\u1ea7u doanh nghi\u1ec7p, bi\u1ec3u th\u1ecb cho c\u00e1c m\u1ee5c ti\u00eau c\u1ee7a kh\u00e1ch h\u00e0ng. \u0110\u00e2y th\u1ef1c s\u1ef1 l\u00e0 vi\u1ec5n ki\u1ebfn v\u00e0 ph\u1ea1m vi c\u1ee7a d\u1ef1 \u00e1n c\u1ee7a b\u1ea1n. C\u00e1ch nh\u00ecn m\u1ee9c th\u1ee9 hai l\u00e0 y\u00eau c\u1ea7u c\u1ee7a ng\u01b0\u1eddi d\u00f9ng, \u0111i\u1ec1u m\u00f4 t\u1ea3 cho m\u1ecdi nhi\u1ec7m v\u1ee5 m\u00e0 ng\u01b0\u1eddi d\u00f9ng ph\u1ea3i l\u00e0m khi d\u00f9ng ph\u1ea7n m\u1ec1m. Nh\u1eefng \u0111i\u1ec1u n\u00e0y \u0111\u01b0\u1ee3c n\u1eafm b\u1eaft t\u1ed1t nh\u1ea5t d\u01b0\u1edbi d\u1ea1ng c\u00e1c tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng, \u0111i\u1ec1u l\u00e0 k\u1ecbch b\u1ea3n cho c\u00e1c t\u01b0\u01a1ng t\u00e1c \u0111i\u1ec3n h\u00ecnh gi\u1eefa ng\u01b0\u1eddi d\u00f9ng v\u00e0 h\u1ec7 th\u1ed1ng. \u0110\u00e2y l\u00e0 ki\u1ebfn tr\u00fac c\u1ee7a h\u1ec7 th\u1ed1ng v\u1edbi ph\u1ea7n c\u1ee9ng, giao di\u1ec7n ph\u1ea7n m\u1ec1m v\u00e0 d\u1eabn h\u01b0\u1edbng c\u00e1c m\u00e0n h\u00ecnh. Tuy nhi\u00ean, m\u1ed9t m\u00ecnh c\u00e1c tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng kh\u00f4ng cung c\u1ea5p \u0111\u1ee7 chi ti\u1ebft cho ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n bi\u1ebft ph\u1ea3i x\u00e2y d\u1ef1ng c\u00e1i g\u00ec. Do \u0111\u00f3, b\u1ea1n c\u1ea7n c\u00e1ch nh\u00ecn m\u1ee9c th\u1ee9 ba hay c\u00e1ch nh\u00ecn ch\u1ee9c n\u0103ng \u0111i\u1ec1u suy d\u1eabn ra t\u1eeb tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng. Y\u00eau c\u1ea7u ch\u1ee9c n\u0103ng x\u00e1c \u0111\u1ecbnh r\u00f5 r\u00e0ng c\u00e1c \u0111i\u1ec1u \u0111\u1eb7c bi\u1ec7t ph\u1ea7n m\u1ec1m ph\u1ea3i l\u00e0m. \u0110\u00e2y l\u00e0 thi\u1ebft k\u1ebf v\u1ec1 h\u1ec7 th\u1ed1ng v\u1edbi t\u1eebng ch\u1ee9c n\u0103ng \u0111\u01b0\u1ee3c nh\u1eadn di\u1ec7n r\u00f5 r\u00e0ng. Tuy nhi\u00ean, c\u00f3 c\u00e1ch nh\u00ecn kh\u00e1c c\u00f3 t\u00ean l\u00e0 c\u00e1ch nh\u00ecn phi ch\u1ee9c n\u0103ng hay \u0111\u1eb7c t\u00ednh ch\u1ea5t l\u01b0\u1ee3ng \u0111i\u1ec1u kh\u00f4ng t\u1edbi t\u1eeb kh\u00e1ch h\u00e0ng m\u00e0 t\u1edbi t\u1eeb ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n, \u0111i\u1ec1u gi\u1ea3i quy\u1ebft v\u1edbi ch\u1ea5t l\u01b0\u1ee3ng c\u1ee7a ph\u1ea7n m\u1ec1m nh\u01b0 hi\u1ec7u n\u0103ng, t\u00ednh hi\u1ec7u qu\u1ea3, t\u00ednh d\u00f9ng \u0111\u01b0\u1ee3c, hay t\u00ednh \u0111\u1ed5i qui m\u00f4 \u0111\u01b0\u1ee3c v.v.<\/p>\n<p>B\u1eb1ng vi\u1ec7c hi\u1ec3u c\u00e1c c\u00e1ch nh\u00ecn kh\u00e1c nhau, ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n c\u00f3 th\u1ec3 t\u1ed5 ch\u1ee9c c\u00f4ng vi\u1ec7c c\u1ee7a h\u1ecd m\u1ed9t c\u00e1ch h\u1ec7 th\u1ed1ng \u0111\u1ec3 \u0111\u00e1p \u1ee9ng cho mong \u0111\u1ee3i c\u1ee7a kh\u00e1ch h\u00e0ng v\u00e0 ph\u00e1t tri\u1ec3n s\u1ea3n ph\u1ea9m ph\u1ea7n m\u1ec1m t\u1ed1t h\u01a1n.<\/p>\n<p>&nbsp;<\/p>\n<p>&#8212;-English version&#8212;-<\/p>\n<p>&nbsp;<\/p>\n<p>Systemic software development<\/p>\n<p>A software developer wrote to me: \u201cWe had several project failures. Customers were angry but the project manager told us that they were customer\u2019s faults because they kept changing requirements. We are starting a new project but I am afraid that we will make the same mistake again. What can we do to avoid this problem? Please advice.\u201d<\/p>\n<p>&nbsp;<\/p>\n<p>Answer: If the customers keep changing requirements then you need to have a requirements engineer or business analyst to spend time with customers to obtain better requirements. This is an important role in software development but many companies do not pay attention. If the requirements are wrong than everything will be wrong no matter how good you can design or code. If your company does not have someone to do this then they should hire people who could do that job. When a project fails, your manager should not blame the customers but should identify the cause and fix it so it will not happen again. When customers are not happy then it is bad business. No company can survive if their customers are not happy. When a project is late, it takes more time, more money, and more efforts than previously planned. It means the company has to pay for these extra works and it means losing more money.<\/p>\n<p>Changing requirements is a common problem in software industry. It is usually due to the lack of knowledge on software requirements. Many project managers think that they understand what the customers need and proceed to development without any customer validation. Many developers presume that they know all the features customers need then start design and code without any customer review. Progress is measured by each line of code built throughout the process until requirements begin to change. Fixing software after building is costly and time consuming. It often causes huge effort waste with hundreds of hours unproductive and hundred lines of code changes. This is why you need someone who understands requirements to work closely with customers to get the right requirements so you do not make the same mistake again.<\/p>\n<p>There are different views of requirements. A manager\u2019s view of requirements is often a high-level concept of a product or a business problem that must be solved. A user\u2019s view of requirements is mostly the functions, the interface, and the navigation of screens. If the requirements are mostly functional, the project team may not understand various information hidden under the view of functionality. As a result, customer\u2019s expectations may not be achieved.<\/p>\n<p>To avoid this issue, project team must understand several views of requirements. The highest level view is the business requirements, representing the objectives of the customer. This is really the vision and the scope of your project. The second level view is the user\u2019s requirements, which describe all the tasks that users must do when using the software. These are best captured in the form of use cases, which are scenarios of typical interactions between the user and the system. This is the architecture of the system with hardware, software interface and the navigation of screens. However, use cases alone do not provide enough detail for developers to know what to build. Therefore, you need the third level view or the functional view which derive from the use cases. The functional requirements clearly define specific things the software must do. This is the design of the system with each function clearly identified. However, there is another view called the non-functional view or the quality attributes which does not come from customer but from developers that deals with the quality of the software such as performance, efficiency, usability, or scalability etc.<\/p>\n<p>By understand different views, developers can organize their work systematically to meet customers\u2019 expectation and develop better software product.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>M\u1ed9t ng\u01b0\u1eddi ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m vi\u1ebft cho t\u00f4i: \u201cCh\u00fang t\u00f4i c\u00f3 v\u00e0i d\u1ef1 \u00e1n th\u1ea5t b\u1ea1i. Kh\u00e1ch h\u00e0ng gi\u1eadn nh\u01b0ng ng\u01b0\u1eddi qu\u1ea3n l\u00ed d\u1ef1 &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,20],"tags":[],"class_list":["post-1197","post","type-post","status-publish","format-standard","hentry","category-quan-li-du-an","category-ki-nghe-phan-mem"],"_links":{"self":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/1197","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=1197"}],"version-history":[{"count":1,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/1197\/revisions"}],"predecessor-version":[{"id":1198,"href":"https:\/\/science-technology.vn\/index.php?rest_route=\/wp\/v2\/posts\/1197\/revisions\/1198"}],"wp:attachment":[{"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1197"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1197"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/science-technology.vn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1197"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}