{"id":377,"date":"2020-04-21T09:33:08","date_gmt":"2020-04-21T02:33:08","guid":{"rendered":"https:\/\/www.marketenterprise.vn\/blog\/?p=377"},"modified":"2021-12-22T18:34:28","modified_gmt":"2021-12-22T11:34:28","slug":"pair-programing-va-mob-programing-part-2","status":"publish","type":"post","link":"https:\/\/www.marketenterprise.vn\/blog\/pair-programing-va-mob-programing-part-2.html","title":{"rendered":"Pair programming v\u00e0 mob programming (Part 2)"},"content":{"rendered":"<h2>L\u1eddi m\u1edf \u0111\u1ea7u<\/h2>\n\n\n<p>Tr\u01b0\u1edbc khi \u0111i s\u00e2u v\u00e0o b\u00e0i vi\u1ebft, m\u00ecnh mu\u1ed1n nh\u1eafc \u0111\u1ebfn <strong>2 \u0111\u1eb7c tr\u01b0ng c\u1ee7a <a href=\"https:\/\/www.marketenterprise.vn\/blog\/gioi-thieu-ve-agile.html\">Agile<\/a><\/strong>:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Giao ti\u1ebfp tr\u1ef1c di\u1ec7n<\/strong> (<a href=\"https:\/\/www.sciencedirect.com\/topics\/psychology\/face-to-face-communication\" target=\"_blank\" rel=\"noopener\">face to face communication<\/a>): Tr\u1ef1c ti\u1ebfp trao \u0111\u1ed5i v\u00e0 th\u1ed1ng nh\u1ea5t v\u1edbi nhau gi\u1eefa c\u00e1c member trong team. \u0110\u01a1n gi\u1ea3n h\u00f3a qu\u00e1 tr\u00ecnh giao ti\u1ebfp, gi\u00fap c\u1ed9ng t\u00e1c hi\u1ec7u qu\u1ea3.<br><br><\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Ph\u00e1t tri\u1ec3n d\u1ef1a tr\u00ean gi\u00e1 tr\u1ecb<\/strong> (value-based development): Ph\u1ea7n m\u1ec1m ch\u1ea1y t\u1ed1t ch\u00ednh l\u00e0 th\u01b0\u1edbc \u0111o c\u1ee7a ti\u1ebfn \u0111\u1ed9. C\u1ed1 g\u1eafng lo\u1ea1i b\u1ecf \u0111i c\u00e1c c\u00f4ng vi\u1ec7c d\u01b0 th\u1eeba, kh\u00f4ng mang l\u1ea1i gi\u00e1 tr\u1ecb cho s\u1ea3n ph\u1ea9m.<br><br><\/li><\/ul>\n\n\n\n<p>S\u1edf d\u0129 m\u00ecnh mu\u1ed1n \u0111\u1ec1 c\u1eadp \u0111\u1ebfn 2 \u0111\u1eb7c tr\u01b0ng n\u00e0y v\u00ec nh\u1eefng g\u00ec m\u00e0 <strong>mob programming<\/strong> mang l\u1ea1i s\u1ebd d\u1ef1a tr\u00ean 2 \u0111i\u1ec1u n\u00e0y.<\/p>\n\n\n\n<p>Ch\u00fang ta h\u00e3y c\u00f9ng nhau t\u00ecm hi\u1ec3u v\u1ec1 ch\u1ee7 \u0111\u1ec1 h\u00f4m nay nh\u00e9.<br><br><\/p>\n\n\n<h2>Mob programming l\u00e0 g\u00ec<\/h2>\n\n\n<p>Kh\u00e1c v\u1edbi <strong>pair programming<\/strong> &#8211; l\u1eadp tr\u00ecnh c\u1eb7p. <strong>Mob programming<\/strong> (mobbing) l\u00e0 ph\u01b0\u01a1ng ph\u00e1p ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m theo nh\u00f3m.<br>Ngh\u0129a l\u00e0 nh\u00f3m ho\u1eb7c c\u1ea3 team c\u00f9ng nhau tham gia v\u00e0o qu\u00e1 tr\u00ecnh coding. C\u00f9ng nhau gi\u1ea3i quy\u1ebft m\u1ed9t v\u1ea5n \u0111\u1ec1, m\u1ed9t nhi\u1ec7m v\u1ee5 tr\u00ean m\u1ed9t m\u00e1y t\u00ednh, c\u00f9ng m\u1ed9t th\u1eddi gian trong c\u00f9ng m\u1ed9t kh\u00f4ng gian.<\/p>\n\n\n\n<p>\u0110\u00e2y l\u00e0 ph\u01b0\u01a1ng ph\u00e1p v\u01b0\u1ee3t ra ngo\u00e0i kh\u00e1i ni\u1ec7m c\u1ee7a pair programming. Nh\u01b0ng nh\u00ecn t\u1ed5ng quan, Mobbing v\u1eabn d\u1ef1a tr\u00ean nh\u1eefng nguy\u00ean t\u1eafc v\u00e0 c\u00e1ch th\u1ee9c ho\u1ea1t \u0111\u1ed9ng c\u1ee7a pair programming.<\/p>\n\n\n\n<p>M\u1edf r\u1ed9ng ra, mobbing kh\u00f4ng ch\u1ec9 d\u1eebng l\u1ea1i tr\u00ean m\u1ed9t team, nh\u00f3m l\u1eadp tr\u00ecnh, n\u00f3 c\u00f2n c\u00f3 th\u1ec3 \u00e1p d\u1ee5ng \u0111\u01b0\u1ee3c lu\u00f4n cho c\u1ea3 <strong>team h\u1ed7 tr\u1ee3 ph\u00e1t tri\u1ec3n<\/strong>.<br>V\u00ed d\u1ee5 nh\u01b0 Designer ho\u1eb7c ng\u01b0\u1eddi thu\u1ed9c b\u1ed9 ph\u1eadn kinh doanh, ho\u1eb7c th\u1eadm ch\u00ed l\u00e0 kh\u00e1ch h\u00e0ng c\u0169ng c\u00f3 th\u1ec3 tham gia v\u00e0o mobbing.<br><br><\/p>\n\n\n<h2>C\u00e1ch th\u1ee9c ho\u1ea1t \u0111\u1ed9ng c\u1ee7a Mob programming<\/h2>\n\n\n<p>Mobbing c\u0169ng chia ra 2 vai tr\u00f2 l\u00e0 <strong>Driver <\/strong>v\u00e0 <strong>Navigator<\/strong>. Nhi\u1ec7m v\u1ee5 c\u1ee7a m\u1ed7i vai tr\u00f2 ho\u00e0n to\u00e0n gi\u1ed1ng v\u1edbi pairing.<\/p>\n\n\n\n<p>Tuy nhi\u00ean, c\u00f3 m\u1ed9t \u0111i\u1ec3m kh\u00e1c bi\u1ec7t. \u0110\u00f3 l\u00e0 driver ch\u1ec9 c\u00f3 m\u1ed9t, nh\u01b0ng Navigator th\u00ec c\u00f3 nhi\u1ec1u.<br>V\u00ed d\u1ee5: Mobbing v\u1edbi 3 member th\u00ec 1 driver v\u00e0 2 navigator.<\/p>\n\n\n\n<p>N\u1ebfu c\u00f3 th\u00eam member kh\u00f4ng ph\u1ea3i l\u00e0 developer nh\u01b0: Designer, Customer \u2026 th\u00ec vai tr\u00f2 n\u00e0y l\u00e0: <strong>Guest<\/strong>.<br><br><\/p>\n\n\n\n<p>Tr\u01b0\u1edbc khi b\u1eaft \u0111\u1ea7u mobbing, c\u1ea3 team c\u1ea7n ph\u1ed5 bi\u1ebfn tr\u01b0\u1edbc v\u1ec1 task. Sau \u0111\u00f3 ph\u00e2n chia vai tr\u00f2 v\u00e0 m\u1ed9t s\u1ed1 rule nh\u1ea5t \u0111\u1ecbnh.<\/p>\n\n\n\n<p>Th\u1eddi gian thay \u0111\u1ed5i vai tr\u00f2 t\u00f9y v\u00e0o t\u1eebng member, nh\u01b0ng s\u1ebd hi\u1ec7u qu\u1ea3 nh\u1ea5t <strong>t\u1eeb 15 \u0111\u1ebfn 30 ph\u00fat<\/strong>. C\u1ea3 team s\u1ebd ngh\u0129 gi\u1ea3i lao sau m\u1ed9t th\u1eddi gian nh\u1ea5t \u0111\u1ecbnh (Hi\u1ec7u qu\u1ea3 nh\u1ea5t l\u00e0 <strong>90 ph\u00fat<\/strong>)<br>C\u00e1c rule gi\u1ed1ng v\u1edbi pairing. B\u1ea1n c\u00f3 th\u1ec3 tham kh\u1ea3o \u1edf <a href=\"https:\/\/www.marketenterprise.vn\/blog\/pair-programing-va-mob-programing.html\" target=\"_blank\" rel=\"noopener noreferrer\">b\u00e0i vi\u1ebft tr\u01b0\u1edbc<\/a> \u0111\u1ec3 hi\u1ec3u r\u00f5 h\u01a1n v\u1ec1 rule khi mobbing.<\/p>\n\n\n\n<p><strong>Xem th\u00eam:<\/strong> 1 ng\u00e0y mob programming.<\/p>\n\n\n\n\n\n<p>&nbsp;<\/p>\n\n\n<h2>L\u1ee3i \u00edch c\u1ee7a Mob programming<\/h2>\n\n\n<p><strong>Mob programming<\/strong> mang l\u1ea1i kh\u00e1 nhi\u1ec1u l\u1ee3i \u00edch n\u1ebfu ch\u00fang ta \u00e1p d\u1ee5ng tri\u1ec7t \u0111\u1ec3 ph\u01b0\u01a1ng ph\u00e1p n\u00e0y.<\/p>\n\n\n<h3>C\u1ed9ng t\u00e1c team hi\u1ec7u qu\u1ea3<\/h3>\n\n\n<p>V\u1edbi vi\u1ec7c \u00e1p d\u1ee5ng \u0111\u1eb7c tr\u01b0ng c\u1ee7a Agile l\u00e0 giao ti\u1ebfp tr\u1ef1c di\u1ec7n (face to face communication). C\u00e1c v\u1ea5n \u0111\u1ec1 \u0111\u01b0\u1ee3c l\u00e0m s\u00e1ng t\u1ecf, hi\u1ec7u qu\u1ea3 v\u00e0 gi\u1ea3i quy\u1ebft nhanh ch\u00f3ng b\u1edfi c\u1ea3 nh\u00f3m (c\u1ea3 team). <br>Th\u1eadm ch\u00ed c\u00f3 th\u1ec3 m\u1edf r\u1ed9ng ra, kh\u00f4ng ch\u1ec9 member l\u00e0 developer \u0111\u01b0\u1ee3c tham gia, m\u00e0 c\u1ea3 designer, marketer v\u00e0 c\u1ea3 customer c\u0169ng c\u00f3 th\u1ec3 tham gia c\u00f9ng.<\/p>\n\n\n<h3>Mang l\u1ea1i s\u1ea3n ph\u1ea9m gi\u00e1 tr\u1ecb t\u1ed1t nh\u1ea5t<\/h3>\n\n\n<p>\u0110\u1eb7c tr\u01b0ng th\u1ee9 2 c\u1ee7a Agile l\u00e0 \u201cgi\u00e1 tr\u1ecb s\u1ea3n ph\u1ea9m ch\u00ednh l\u00e0 th\u01b0\u1edbc \u0111o ti\u1ebfn \u0111\u1ed9\u201d. Mob programming c\u0169ng \u00e1p d\u1ee5ng \u0111i\u1ec1u n\u00e0y v\u00e0o qu\u00e1 tr\u00ecnh mobbing.&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>C\u1ea3 team c\u00f9ng nhau l\u00e0m vi\u1ec7c tr\u00ean 1 m\u00e1y t\u00ednh, c\u00e1c thao t\u00e1c d\u01b0 th\u1eeba nh\u01b0 confirm, chuy\u1ec3n task qua l\u1ea1i gi\u1eefa c\u00e1c member s\u1ebd \u0111\u01b0\u1ee3c gi\u1ea3m thi\u1ec3u, \u0111i\u1ec1u \u0111\u00f3 gi\u00fap <strong>gi\u1ea3m th\u1eddi gian ph\u00e1t tri\u1ec3n c\u1ee7a d\u1ef1 \u00e1n<\/strong>.<br>V\u00ed d\u1ee5: B\u1ea1n A l\u00e0m task 1 v\u00e0 pull request, \u0111\u1ee3i PM review v\u00e0 merge, b\u1ea1n B l\u00e0m task 2 v\u00e0 pull request, ti\u1ebfp t\u1ee5c \u0111\u1ee3i PM review v\u00e0 merge. N\u1ebfu c\u1ea3 3 c\u00f9ng l\u00e0m tr\u00ean 2 task th\u00ec c\u00e1c c\u00f4ng \u0111o\u1ea1n d\u01b0 th\u1eeba s\u1ebd \u0111\u01b0\u1ee3c lo\u1ea1i b\u1ecf, th\u1eddi gian ph\u00e1t tri\u1ec3n s\u1ebd nhanh h\u01a1n, l\u00fac n\u00e0y PM ch\u1ec9 c\u1ea7n merge l\u00e0 xong.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>B\u00ean c\u1ea1nh \u0111\u00f3, m\u1ecdi v\u1ea5n \u0111\u1ec1 \u0111\u1ec1u \u0111\u01b0\u1ee3c minh b\u1ea1ch, r\u00f5 r\u00e0ng khi c\u1ea3 team c\u00f9ng gi\u1ea3i quy\u1ebft, \u0111i\u1ec1u n\u00e0y mang l\u1ea1i gi\u00e1 tr\u1ecb t\u1ed1t nh\u1ea5t, m\u1ed9t s\u1ea3n ph\u1ea9m t\u1ed1t nh\u1ea5t khi \u0111\u1ebfn tay ng\u01b0\u1eddi d\u00f9ng.<\/li><\/ul>\n\n\n<h3>Gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 \u201cm\u01b0\u1ee3t m\u00e0\u201d h\u01a1n<\/h3>\n\n\n<ul class=\"wp-block-list\"><li>V\u1edbi vi\u1ec7c m\u1ed9t ng\u01b0\u1eddi driver v\u00e0 tr\u00ean 2 ng\u01b0\u1eddi navigator. Ch\u00fang ta c\u00f3 th\u1ec3 v\u1eadn d\u1ee5ng t\u1ed1t <strong>th\u1ebf m\u1ea1nh c\u1ee7a m\u1ed7i ng\u01b0\u1eddi<\/strong>.<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>V\u00ed d\u1ee5: Driver \u0111ang coding nh\u01b0ng v\u01b0\u1edbng m\u1eafc v\u1ea5n \u0111\u1ec1 li\u00ean quan \u0111\u1ebfn SQL, navigator 1 l\u1ea1i kh\u00f4ng c\u00f3 kinh nghi\u1ec7m. Nh\u01b0ng navigator 2 th\u00ec \u0111\u00e3 c\u00f3 nhi\u1ec1u kinh nghi\u1ec7m. Do \u0111\u00f3 v\u1ea5n \u0111\u1ec1 \u0111\u01b0\u1ee3c gi\u1ea3i quy\u1ebft nhanh ch\u00f3ng m\u00e0 kh\u00f4ng c\u1ea7n ph\u1ea3i t\u00ecm hi\u1ec3u th\u00eam.<\/li><\/ul>\n\n\n<h3>C\u00e2n b\u1eb1ng skill cho member<\/h3>\n\n\n<ul class=\"wp-block-list\"><li>Th\u1ebf m\u1ea1nh l\u1edbn nh\u1ea5t khi mobbing ch\u00ednh l\u00e0 <strong>h\u1ecdc h\u1ecfi c\u00f9ng nhau<\/strong>, m\u1ed7i ng\u01b0\u1eddi gi\u1ecfi v\u1ec1 m\u1ed9t k\u1ef9 n\u0103ng. Sau qu\u00e1 tr\u00ecnh mobbing, c\u00e1c k\u1ef9 n\u0103ng \u1ea5y c\u0169ng \u0111\u01b0\u1ee3c share ra cho c\u00e1c member kh\u00e1c, gi\u00fap h\u1ecd <strong>skill up b\u1ea3n th\u00e2n<\/strong> m\u00ecnh.<\/li><li>Sau m\u1ed9t th\u1eddi gian mobbing, c\u00e1c skill c\u1ee7a member s\u1ebd c\u00e2n b\u1eb1ng nhau, t\u1ea1o n\u00ean <strong>m\u1ed9t team \u0111\u1ed3ng \u0111\u1ec1u<\/strong>.<\/li><\/ul>\n\n\n<h3>Lu\u00f4n \u0111\u1ea3m b\u1ea3o d\u1ef1 \u00e1n \u0111\u01b0\u1ee3c v\u1eadn h\u00e0nh t\u1ed1t n\u1ebfu member v\u1eafng m\u1eb7t<\/h3>\n\n\n<ul class=\"wp-block-list\"><li>Do c\u00f9ng nhau tham gia v\u00e0o mobbing, c\u00e1c member \u0111\u1ec1u c\u00f3 th\u1ec3 n\u1eafm \u0111\u01b0\u1ee3c c\u00e1ch v\u1eadn h\u00e0nh c\u00e1c function, c\u00e1ch tri\u1ec3n khai \u2026<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>\u0110i\u1ec1u n\u00e0y r\u1ea5t c\u00f3 l\u1ee3i: Khi m\u1ed9t trong c\u00e1c member v\u1eafng m\u1eb7t ho\u1eb7c ngh\u1ec9 vi\u1ec7c. D\u1ef1 \u00e1n v\u1eabn \u0111\u01b0\u1ee3c v\u1eadn h\u00e0nh t\u1ed1t b\u1edfi nh\u1eefng member c\u00f2n l\u1ea1i.<br><br><br><\/li><\/ul>\n\n\n<h2>K\u1ebft lu\u1eadn<\/h2>\n\n\n<p>V\u1eady l\u00e0 m\u00ecnh \u0111\u00e3 chia s\u1ebb th\u00eam v\u1edbi c\u00e1c b\u1ea1n v\u1ec1 m\u1ed9t ph\u01b0\u01a1ng ph\u00e1p ph\u00e1t tri\u1ec3n ph\u1ea7n m\u1ec1m hi\u1ec7n \u0111\u1ea1i r\u1ed3i. So v\u1edbi <strong>pair programming<\/strong> th\u00ec <strong>mob programming<\/strong> c\u00f3 m\u1ed9t ch\u00fat kh\u00e1c bi\u1ec7t. L\u1ee3i \u00edch m\u00e0 n\u00f3 mang l\u1ea1i l\u00e0 kh\u00e1 l\u1edbn n\u1ebfu ch\u00fang ta \u00e1p d\u1ee5ng tri\u1ec7t \u0111\u1ec3 v\u00e0o t\u1eebng tr\u01b0\u1eddng h\u1ee3p.<\/p>\n\n\n\n<p>M\u00ecnh xin k\u1ebft th\u00fac 2 ph\u1ea7n c\u1ee7a b\u00e0i vi\u1ebft: <strong>\u201cPair programming v\u00e0 Mob programming\u201d<\/strong> t\u1ea1i \u0111\u00e2y.<\/p>\n\n\n\n<p>\u1ede b\u00e0i vi\u1ebft sau, m\u00ecnh s\u1ebd chia s\u1ebb v\u1edbi c\u00e1c b\u1ea1n m\u1ed9t c\u00e1ch <strong>pair<\/strong>, <strong>mob programming<\/strong> t\u1eeb xa. Khi team kh\u00f4ng th\u1ec3 h\u1ecdp m\u1eb7t c\u00f9ng nhau m\u00e0 v\u1eabn \u0111\u1ea3m b\u1ea3o \u0111\u01b0\u1ee3c vi\u1ec7c \u00e1p d\u1ee5ng pair, mob hi\u1ec7u qu\u1ea3 nh\u1ea5t. C\u00e1c b\u1ea1n nh\u1edb \u0111\u00f3n xem nh\u00e9.<\/p>\n\n\n\n<p><a aria-label=\"Pair programing v\u00e0 mob programing (Part 1) (opens in a new tab)\" href=\"https:\/\/www.marketenterprise.vn\/blog\/pair-programing-va-mob-programing.html\" target=\"_blank\" rel=\"noreferrer noopener\">Pair programming v\u00e0 mob programming (Part 1)<\/a><\/p>\n\n\n\n<p><a aria-label=\"Pair programing v\u00e0 mob programing (Part 3) (opens in a new tab)\" href=\"https:\/\/www.marketenterprise.vn\/blog\/pair-programing-va-mob-programing-part-3.html\" target=\"_blank\" rel=\"noreferrer noopener\">Pair programming v\u00e0 mob programming (Part 3)<\/a><\/p>\n\n\n\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u1ede ph\u1ea7n tr\u01b0\u1edbc, m\u00ecnh \u0111\u00e3 chia s\u1ebb v\u1edbi c\u00e1c b\u1ea1n v\u1ec1 pair programing. V\u1ec1 \u0111\u1ecbnh ngh\u0129a, c\u00e1ch th\u1ee9c ho\u1ea1t \u0111\u1ed9ng, l\u1ee3i \u00edch c\u0169ng nh\u01b0 m\u1ed9t s\u1ed1 quy t\u1eafc. \u1ede ph\u1ea7n n\u00e0y, ch\u00fang ta s\u1ebd c\u00f9ng nhau t\u00ecm hi\u1ec3u th\u00eam v\u1ec1 m\u1ed9t h\u00ecnh th\u1ee9c n\u00e2ng c\u1ea5p c\u1ee7a Pair programing, \u0111\u00f3 l\u00e0 Mob programing.<\/p>\n","protected":false},"author":7,"featured_media":191,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[54],"tags":[10,11,22],"class_list":["post-377","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-teamwork","tag-mob-programing","tag-pair-programing","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/comments?post=377"}],"version-history":[{"count":0,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/377\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media\/191"}],"wp:attachment":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media?parent=377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/categories?post=377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/tags?post=377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}