第五——十三章的作业
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第五章
1.團隊模式和團隊的開發模式有什么關系?
? ? ?答:團隊模式指團隊的分工模式,團隊內部的結構,團隊開發模式指團隊開發的流程及步驟
2.如果你領頭開展一個全新的項目,你要怎么選擇“合適”的團隊模式?
? ?答: 根據團隊的能力和項目的結構,選擇合適的團隊模式。如果大家都比較自覺,且其中有一人能力較強,就會選擇主治醫師模式。如果項目比較復雜且每個人都有自己熟悉的開發領域,會選擇功能團隊模式。如果項目在不同方向和領域都有任務,就會選交響樂團模式。如果是開放式項目,可能會選擇爵士樂模式。如果開發的人非常多,會選擇官僚模式。
3.不同的團隊模式如何影響團隊績效的評估?
? ?答: 主治醫師主要看主刀醫師的發揮以及其他人的配合;明星模式主要看明星的發揮;社區模式看大家的熱情;業余劇團模式是鍛煉人的學習能力,如果隊員學習能力出色的話團隊績效會不錯;秘密團隊和特工團隊主要看隊員的能力;交響樂團模式看指揮員的指揮,一般績效比較穩定;爵士樂模式看隊員大家當時的狀態;功能模式看功能的搭配;官僚模式看溝通
4.團隊精神和集體主義的區別????? 大家回想在小學和中學的學習過程,大家在一個班集體,有多少工作是以“團隊”(Teamwork)的形式來完成的,有多少工作是以“工作組”(Workgroup)形式完成的?或許大部分工作都是以“非團隊”的形式完成的。“團隊精神”和平常講的“集體主義”有什么區別?
? ? ?答:團隊精神更強調個人的主動性,團隊是由員工和管理層組成的一個共同體,該共同體合理利用每一個成員的知識和技能協同工作,解決問題,達到共同的目標。集體主義則強調大家共同性。兩者具體區別如下:
1:在領導方面。群體應該有明確的領導人;團隊可能就不一樣,尤其團隊發展到成熟階段,成員共享決策權。
2:目標方面。群體的目標必須跟組織保持一致,但團隊中除了這點之外,還可以產生自己的目標。
3:協作方面。群體的協作性可能是中等程度的,有時成員還有些消極,有些對立;但團隊中是一種齊心協力的氣氛。
4:責任方面。群體的領導者要負很大責任,而團隊中除了領導者要負責之外,每一個團隊的成員也要負責,甚至要一起相互作用,共同負責。
5:技能方面。群體成員的技能可能是不同的,也可能是相同的,而團隊成員的技能是相互補充的,把不同知識、技能和經驗的人綜合在一起,形成角色互補,從而達到整個團隊的有效組合。
6:結果方面。群體的績效是每一個個體的績效相加之和,團隊的結果或績效是由大家共同合作完成的產品。
5.閱讀《夢斷代碼》? (Dreaming in Code) 這本書,分析Chandler 團隊的形式和流程,它們各有什么優缺點?
? ? ? ?答:Chandler 太過理想,推出太遲,很難贏得市場份額。但它蘊含的執著精神、始終不曾放棄夢想的實踐,則具有更大價值。從實用角度,作為一款工具,大家可能都不太會去選擇Chandler。但從價值觀和信念角度,我覺得大家都應該去了解Chandler,了解他的內涵。
?
6.有人說 - 現代軟件工程分為四個階段:和PM 吵和設計吵和測試吵和用戶吵;你覺得應該如何避免吵架?
? ? ? ?答:多溝通。在設計之初定好需求,明確需求。在編碼階段注意交流,隨時做出一些可以工作的軟件交付給用戶和測試,讓他們給一些意見和建議,對于正確的意見和建議在接下來的編碼中改進。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第六章
6.3.1 什么時候適合選擇敏捷?討論應該增加一些什么問題,來幫助團隊選擇最合適的開發模型。
? 答: 選擇合適的開發模型需要增加的問題:
1.團隊人員的對軟件的應用領域很熟悉嗎?
2.項目的風險高嗎?
3.項目的使用對象有些什么人?
4.項目的需求明確嗎?
5.軟件的更新周期長嗎?
6.3.2討論軟件開發的思潮請從下表挑選幾篇關于軟件工程方法論的文章,仔細閱讀(包括相關的討論),根據你的軟件工程經驗分享你的看法。
? ? ? 答:在列舉的一系列文章中其中一篇文章講的是敏捷開發,強調了個人和互動高于流程和工具,工作軟件高于理解文檔,客戶協作高于合同協商,變化響應高于計劃遵循。在我們進行軟件開發的時候,需要真正的落實敏捷開發的理念。用敏捷開發來做事,需要在開發的過程中找到適合的位置,慢慢的向目標靠近。知道目標就要立即行動去實現,做到真正的敏捷,不要只是說敏捷這個詞,不能讓敏捷這個詞失去其意義。在軟件開發過程中,要盡可能的做到自己的責任。有付出,才會有回報。有人負責才會有質量。一個軟件的開發需要團隊所有的人共同的來負責,這樣才能做出好的軟件好的效果。
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第七章
7.7移山開發方法——比TFS敏捷更精簡。你怎么看二柱的觀點?
? ? ? 答:我對二柱觀點的看法是:軟件工程里面確實有很多的概念和一些名詞以及流程,這些東西不是像二柱說的沒用,軟件工程的這些東西是前人經驗的總結可以給我們在開發的時候一個大的框架。程序員自身的修養和完成工作的素質確實是軟件開發中不可缺少的部分,但是熟知了軟件工程里面所講的概念,并且能運用到開發中才能成為一個修養很高的程序員。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第八章
2.你要寫一個企業管理軟件, 你要找誰去做用戶調研?請列出你認為重要的用戶類型和你認為合適的用戶調研的方式。
答:老板:有哪些功能,能如何幫助企業管理什么事情,能否達到自己的需求
? ? ?管理員:是否易用
? ? ?員工:會管理哪些方面的事情,需要注意什么
?
3.在一個軟件項目中,軟件團隊預計每天的進度為 30 小時(即,完成了30小時的工作量)。當項目完成了一半的總工作量的時候,大家發現實際的進度為15小時/天,問:在余下的時間中, 團隊的進度要到多少,才能在項目結束時讓整個項目的平均進度恢復到每天30小時工作量?
答:不可能
?
4.一個目標/決心/估計的故事:某項目本來進行得很順利,大領導非要全體人員脫產開一天的動員大會,會議結束時, 領導熱情地問大家:大家對如期完成項目有信心么?? 這時,項目經理站起來說:我們本來是可以按期完成的,現在開了一天會,我們已經延期了一天。
大家覺得這樣的項目經理是好還是不好?
答:不好,容易引起團隊內的沖突,以及團隊與領導間的不融洽。團隊應該勇于適應變化,而不是照搬規律和計劃。
?
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第九章
1.你有這些能力么?
答:有
2.我是做PM 的料么? 在校學生如何為成為PM做準備
答:都有點擅長是會不是
3.請分析各種交通工具的特性(長途汽車,火車,自駕,飛機,自行車,等)。
答:長途汽車:速度一般靈活性一般不便宜
????? 火車:速度較快靈活性一般比較便宜
????? 自駕:速度一般靈活性強比較便宜
????? 飛機:速度很快靈活性一般貴
????? 自行車:速度慢靈活性強基本免費
??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第十章
1.討論:下面的老板犯了什么錯誤?
答:只看到了用戶的語言和行動,沒有看到語言行動背后的動機
3.團隊要設計一個銀行自動柜員機 (ATM) 的操作界面, 這個柜員機擺在銀行營業廳的外面。你覺得會有多少種用戶來使用你的操作界面?
答:取錢的,查余額的,轉賬的,改密碼的,存錢的,管理員
4.在你的項目中有做過頭的情況么?
答:沒有
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第十一章
1、如何避免在產品開發后期不斷有重大修改,導致其它模塊的連鎖反應??
答:需要我們在做需求分析的時候盡量做的全面一些,不要漏掉一些重要的細節。在中途修改會帶來很多的額外工作量,給開發帶來極大的不便。
3、如何避免詫異的反應
答:當客戶對我們的軟件不了解的時候我們需要盡量的給用戶解釋,而且我們在設計軟件的時候也盡量的要考慮用戶的感受,從用戶的角度去考慮問題。
4、在這個時候是否碰到 “團隊成員不給力” 的問題?
答:團隊成員只要盡自己的力量去做了事情,一般都能完成預先計劃的任務。
5、我們是在寫代碼解決問題呢,還是在搭建宏偉的架構?
答:編寫代碼是為了解決問題,一步步搭建起一個軟件的框架。
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第十二章 用戶體驗
?
1、 什么時候開始考慮用戶體驗?
答:用戶體驗應該在軟件具有了初步的功能之后開始,根據不同的用戶人群來設置不同的軟件使用方法,以及不同的功能。比如在設計老人使用的軟件的時候就盡量要精簡,能達到主要的功能就好,在給年輕人用的時候就盡量展現軟件的全部功能。
2、 個人電腦界面的演變討論個人電腦界面的演變, 以及影響這些演變的各種因素
答:個人電腦從最初的有三個按鍵的鼠標,和最先的圖形界面的使用。到現在的最新版本的電腦經歷不很多的變化。軟件的界面也是我們經常使用的軟件的見面word2003到word2007的界面就是一個很大的變化,軟件界面始終都是迎合用戶體驗來的,用戶有什么要求,軟件設計就會盡量的往那個方面發展。導致這些變化的原因主要是因為現在計算機技術的發展,硬件的技術上升使得電腦可以顯示的內容越來越豐富,編程技術的上升也使得現在的電腦可以給用戶帶來更好的體驗。
3、評論手頭軟件的用戶體驗
答:我們經常使用的軟件比如輸入法QQ拼音等,現在的輸入法當你輸入一個新的詞語輸入法都會記住,然后下次當我們再次輸入時QQ拼音就會自動彈出。QQ拼音在記住用戶選擇這個方面做的很好,可以給我們一個好的用戶體驗。
4.1、產品設計的細節-確定/取消。同學們估計對此已經非常習慣了,但是這兩個小小的按鈕也大有文章:[確定] 按鈕是放在左邊還是右邊?哪一個按鈕是處于預先選擇的狀態(按回車鍵的時候就自動選擇)?哪一種設計更符合人類習慣?
答:確定在左邊取消在右邊比較好,符合人們日常的習慣,用退出、保存比用OK、Cancel要好,在中國畢竟大部分人對英語不是很了解。
4.2、產品設計細節靜,音按鈕要同時關閉鬧鐘鈴聲么?
?答:我覺得設計靜音按鍵時應該把聲音全部關閉,包括鬧鐘!我們可以在用戶按靜音時給用戶提示,告訴他鬧鐘不會響了。
5、A/B測試和道德,技術的發展必然會波及到社會的其它方面,例如道德。 一個網站能用 A/B 測試來影響用戶的情緒么? 如果是為了“科學實驗” 的目的呢?
答:我覺得能夠影響用戶的情緒,因為做測試的一般都是相信結果的人。不過為了一些科學實驗做測試也沒什么問題。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第十三章
?
13.5.10如果你在這些項目中負責測試工作,你要設計什么樣的測試用例才能發現這些bug?? 還有什么樣的改進能避免bug 的發生?
答:設計的測試用例要覆蓋代碼所有的路徑?分支和謂詞層次與結構清晰?代碼復用率高?每個接口都可以做黑盒測試?改進時做好單元測試
13.5.11這是什么樣的bug?
答:以前的代碼如果參數里的文件是/dev/stdin時就會導致程序出現問題,而參數里的文件是普通的文件就不會出現問題。
轉載于:https://www.cnblogs.com/tjdx/p/4021720.html
總結
以上是生活随笔為你收集整理的第五——十三章的作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何保护你的linux操作系统
- 下一篇: php函数的初步使用