软件工程 案例分析作业
現(xiàn)代軟件工程? 構(gòu)建之法 作業(yè)https://bbs.csdn.net/forums/SoftwareEngineering?typeId=1723
軟件工程作業(yè) ?案例分析
(建議作為個(gè)人或結(jié)對(duì)作業(yè))
很多同學(xué)有疑惑:
軟件工程課是否就是枯燥的理論課?? 或者是幾個(gè)牛人拼命寫(xiě)代碼,其他人抱大腿的課?? 要不然就是學(xué)習(xí)一個(gè)程序語(yǔ)言,練習(xí)某個(gè)框架, 搞一個(gè)職業(yè)培訓(xùn)的課?
都不對(duì)!?軟件工程有理論,有實(shí)踐,更重要的是分析,思辨,總結(jié)。 在課程中,同學(xué)們自己組織團(tuán)隊(duì)寫(xiě)一個(gè)軟件發(fā)布, 然后分析其中的得失,的確是學(xué)習(xí)軟件工程的一個(gè)好方法。 這樣能根據(jù)切身體會(huì)來(lái)分析,很有價(jià)值,但也有可能 “身在此山中”,未能看清全局。 而且,課程時(shí)間有限,我們也不能做很多具體的項(xiàng)目。 ?另一方面,我們也可以從間接經(jīng)驗(yàn)中學(xué)習(xí), 分析,別的項(xiàng)目的成敗同樣給我們很多啟發(fā)。
我們生活中很多時(shí)候要和軟件打交道, 大家上課開(kāi)小差時(shí)候玩的手機(jī)游戲, 背英語(yǔ)單詞的手機(jī)App,買(mǎi)火車(chē)票的網(wǎng)站,互相聯(lián)系用的微信微博,等等,都是軟件,都很值得分析。? 你為何成為它們的用戶(hù)? 你為何后來(lái)有不用它們了? 它們的團(tuán)隊(duì)做對(duì)了什么,做錯(cuò)了什么? 軟件工程質(zhì)量如何??如果你來(lái)做,會(huì)做得更好么?通過(guò)各種案例分析, 評(píng)測(cè),辯論, 總結(jié),我們就能看到軟件工程的原則在實(shí)踐中的種種體現(xiàn),學(xué)好軟件工程,幫助我們?cè)趯?shí)踐中做得更好。
分析什么樣的軟件也有講究,這就要說(shuō)到一個(gè)故事:
某國(guó)空軍為了提高飛機(jī)在空戰(zhàn)中的存活率,決定加固飛機(jī),但是加固什么地方呢?? 他們研究空戰(zhàn)后飛回基地的飛機(jī),飛機(jī)各部分中彈的地方和密度,想以此得出結(jié)論。 但是專(zhuān)家們忽略了一點(diǎn),那些被擊中要害的飛機(jī),都沒(méi)有能飛回基地,也沒(méi)有能夠參加這些調(diào)查。
幸存者偏倚 (Survivorship Bias) 是一種常見(jiàn)的邏輯謬誤,意思是只能看到經(jīng)過(guò)某種篩選而產(chǎn)生的結(jié)果,而沒(méi)有意識(shí)到篩選的過(guò)程,因此忽略了被篩選掉的關(guān)鍵信息。這東西的別名有很多,比如“沉默的數(shù)據(jù)”、“死人不會(huì)說(shuō)話(huà)”等等。
我們不光要分析那些經(jīng)歷戰(zhàn)場(chǎng)的考驗(yàn)而最后 "活著出來(lái)" 而勝利的軟件,還要分析那些在戰(zhàn)場(chǎng)中被打敗,或者傷痕累累,正在掙扎的軟件,這樣才能全面地了解軟件工程的原理在好/壞軟件上所起的作用。
有的同學(xué)會(huì)說(shuō), “我只會(huì)看看界面,寫(xiě)不出來(lái)什么技術(shù)分析...",? 那么,可以看看只評(píng)價(jià)界面的分析報(bào)告,爭(zhēng)取寫(xiě)出類(lèi)似水平的報(bào)告來(lái)。
2022??學(xué)年供分析的產(chǎn)品:
從 A,B,C 中選擇一個(gè)課題來(lái)分析。?
A)作為一個(gè) IT 行業(yè)的學(xué)生或從業(yè)者,如果你碰到了問(wèn)題, 你去哪里尋找答案呢? 請(qǐng)比較至少 兩個(gè) IT 問(wèn)答網(wǎng)站:列出它們具體的優(yōu)缺點(diǎn),并說(shuō)明如果你來(lái)主持工作,你會(huì)怎么改進(jìn)。
建議評(píng)測(cè)的要點(diǎn):
B)現(xiàn)在很多開(kāi)發(fā)人員和IT專(zhuān)業(yè)的學(xué)生都在移動(dòng)設(shè)備上學(xué)習(xí)、工作、社交,在移動(dòng)設(shè)備上的APP 能滿(mǎn)足這類(lèi)目標(biāo)用戶(hù)的需求么?它們會(huì)被wx公眾號(hào)取代么? 請(qǐng)分析 CSDN 的移動(dòng)App, 不要面面俱到,請(qǐng)聚焦一下, 分析它的 “動(dòng)態(tài)” 功能,? 點(diǎn)擊 App 的首頁(yè)下方正中間的那個(gè) “動(dòng)態(tài)” 按鈕,打開(kāi)后的微社區(qū),就是我們要分析的。 可以在 “動(dòng)態(tài)” 中發(fā)布幾個(gè)動(dòng)態(tài),看看你的城市有什么IT的網(wǎng)友,?下載鏈接是:????
CSDN 的APPhttps://www.csdn.net/app/C)現(xiàn)在學(xué)習(xí)資料很多,但是很多同學(xué)在學(xué)習(xí)新技術(shù)的時(shí)候還是很茫然,有沒(méi)有更好的學(xué)習(xí)路徑? 請(qǐng)?jiān)u測(cè) 技能樹(shù)? (例子: Python 技能樹(shù), CS入門(mén)技能樹(shù), C 語(yǔ)言技能樹(shù) 等)。 請(qǐng)對(duì)照項(xiàng)目成員對(duì)自己產(chǎn)品的期待, 你覺(jué)得這個(gè)目前的產(chǎn)品狀態(tài)離原來(lái)的期望還差哪幾個(gè)方面? 你作為一個(gè)學(xué)習(xí)這個(gè)技術(shù)的學(xué)習(xí)者,發(fā)現(xiàn)了技能樹(shù)的什么亮點(diǎn),有什么不滿(mǎn)?
D) IT 人士都會(huì)寫(xiě)文章,寫(xiě)技術(shù)文檔,實(shí)驗(yàn)報(bào)告,等等。 寫(xiě)博客誰(shuí)都會(huì),那么,哪家的博客編輯器最好? 大家都聽(tīng)說(shuō)了 Markdown 這種高效率的文檔風(fēng)格,CSDN 的 Markdown 編輯器好用么?它對(duì)于各種文件格式,插入圖像,動(dòng)畫(huà),表格,代碼塊的支持如何? 你作為一個(gè)開(kāi)始寫(xiě)博客的人, 發(fā)現(xiàn)了什么問(wèn)題?請(qǐng)寫(xiě)一個(gè)詳細(xì)的博客描述你碰到的問(wèn)題,以及改進(jìn)的建議。
鏈接: 寫(xiě)文章-CSDN博客h
還可以看看一下優(yōu)秀的博客:?極客日?qǐng)?bào)社區(qū)-CSDN社區(qū)云? 從這些優(yōu)秀博客中學(xué)習(xí)到寫(xiě)博客的各種技巧。?
作業(yè)博客具體要求:
第一部分? 調(diào)研, 評(píng)測(cè)
(參考知識(shí)點(diǎn): 軟件的bug,功能評(píng)測(cè),黑箱測(cè)試,第8章 用戶(hù)調(diào)研, 12 章 軟件的用戶(hù)體驗(yàn))
你在上面選中的要評(píng)測(cè)的軟件或者服務(wù),在這里被稱(chēng)為?<被評(píng)測(cè)軟件/網(wǎng)站>。??
注冊(cè)并使用? <被評(píng)測(cè)軟件>? 的主要功能,按照書(shū)中?bug 定義, 找出幾個(gè)功能性的比較嚴(yán)重的 bug。至少兩個(gè).? 用專(zhuān)業(yè)的語(yǔ)言描述 (每個(gè)bug 不少于 40字), 如有必要, 可以配圖。
另外,請(qǐng)你自己花幾天時(shí)間時(shí)不時(shí)用一下 <被評(píng)測(cè)軟件>,? 看看你有沒(méi)有成為一個(gè)持續(xù)使用者。
<被評(píng)測(cè)軟件> 解決了你的什么問(wèn)題??
相信每個(gè)同學(xué)的朋友中一定有人需要用這樣的軟件 (例如你上課的同學(xué)),? 記載你對(duì)這位用戶(hù)的采訪(fǎng)。?
提示:? 采訪(fǎng)提要
1)??? 介紹采訪(fǎng)對(duì)象的背景和需求 (他們?yōu)楹我眠@個(gè)軟件/網(wǎng)站, 有什么痛點(diǎn),還有別的需求么)
2)??? 讓采訪(fǎng)對(duì)象使用10 – 30 分鐘 <被評(píng)測(cè)軟件> 的基本功能? (請(qǐng)上傳照片證明用戶(hù)的確正在使用,? 遠(yuǎn)程采訪(fǎng)的同學(xué)請(qǐng)讓別人幫忙照相)
3)??? 描述用戶(hù)使用這個(gè)產(chǎn)品的過(guò)程,? 用戶(hù)的問(wèn)題解決了么?? 軟件在數(shù)據(jù)量/界面/功能/準(zhǔn)確度上各有什么優(yōu)缺點(diǎn)?? 用戶(hù)體驗(yàn)方面有問(wèn)題么?
4)??? 用戶(hù)對(duì)產(chǎn)品有什么改進(jìn)意見(jiàn)?
結(jié)論:經(jīng)過(guò)這么多工作,你一定有充分的理由給這個(gè)軟件下一個(gè)評(píng)價(jià):
? ? a)?? 非常不推薦
? ? b)?? 不推薦
? ? c)?? 一般
? ? d)? ?推薦
? ? e)?? 非常推薦
請(qǐng)選擇一個(gè)結(jié)論。 除了定性的結(jié)論,是否能有定量的結(jié)論 (就像最近比較時(shí)髦的手機(jī)評(píng)測(cè)那樣, 跑個(gè)分?), 如何定量地評(píng)價(jià)一個(gè)軟件?
第二部分 分析 ?
?(參考8.6 節(jié) 對(duì)工作的估計(jì), 和14.1 節(jié) 軟件工程的質(zhì)量)
根據(jù)你對(duì) <被評(píng)測(cè)軟件> 的了解, 現(xiàn)在請(qǐng)估計(jì)這個(gè)軟件/網(wǎng)站/服務(wù) 做到這個(gè)程度大約需要多少時(shí)間 (團(tuán)隊(duì)人數(shù)6 人左右, 計(jì)算機(jī)大學(xué)畢業(yè)生,? 并有專(zhuān)業(yè)UI 支持)。? 分析這個(gè)軟件目前的優(yōu)劣 (和類(lèi)似軟件相比), ? ?這個(gè)產(chǎn)品的質(zhì)量在同類(lèi)產(chǎn)品中估計(jì)名列第幾? 它的市場(chǎng)份額估計(jì)第幾? 兩者匹配么? 不匹配的原因是什么?
在書(shū)上我們看到:
? 程序 = 算法 + 數(shù)據(jù)結(jié)構(gòu); ?
? ? ? 軟件 = 程序 + 軟件工程 ? (軟件服務(wù)還有數(shù)據(jù),內(nèi)容的因素)
? ? ? 軟件企業(yè) = 軟件 + 商業(yè)模式
你在第一部分發(fā)現(xiàn)的bug, 為何軟件團(tuán)隊(duì)不能在發(fā)布前修復(fù)?他們是不知道,還是有意不修復(fù)? ?你覺(jué)得是什么原因?從下面的可能性中選取幾個(gè):
- 對(duì)用戶(hù)需求掌握不好
- 具體的設(shè)計(jì)質(zhì)量不高
- 開(kāi)發(fā)人員粗心大意
- 測(cè)試把關(guān)不嚴(yán),敷衍了事,沒(méi)有注意在特殊的配置或環(huán)境下測(cè)試
- 其他
團(tuán)隊(duì)在哪一個(gè)層次還有問(wèn)題? 為何職業(yè)的軟件團(tuán)隊(duì)還有這些問(wèn)題?可以把自己想問(wèn)軟件團(tuán)隊(duì)的問(wèn)題都列出來(lái), 也許就能得到團(tuán)隊(duì)的親自解答!
從各方面的問(wèn)題,推理出這個(gè)軟件團(tuán)隊(duì)在軟件工程方面可以提高的一個(gè)重要方面,?期望你提出具體建議。
第三部分 ?建議和規(guī)劃 ??
(參考《構(gòu)建之法》第8章 功能的定位和優(yōu)先級(jí);第9章 項(xiàng)目經(jīng)理)
這個(gè)軟件/網(wǎng)站/服務(wù)有很多可以提高的部分, 如果你是新上任的項(xiàng)目經(jīng)理, 如何提高從而在競(jìng)爭(zhēng)中勝出? ?
首先,市場(chǎng)有多大? 全中國(guó)IT 專(zhuān)業(yè)的學(xué)生和職業(yè)人士都可以是用戶(hù), 總共有多少人? 目前市場(chǎng)上有什么樣的產(chǎn)品了,它們的優(yōu)勢(shì)劣勢(shì)在哪里? 和它直接競(jìng)爭(zhēng)的產(chǎn)品在那里? 這個(gè)領(lǐng)域是出于 (萌芽 / 成長(zhǎng) / 風(fēng)口 / 平臺(tái) / 下降)階段??
作為新的項(xiàng)目經(jīng)理,這個(gè)產(chǎn)品的核心用戶(hù)群是什么樣的人, 典型用戶(hù)長(zhǎng)什么樣?學(xué)歷,年齡,專(zhuān)業(yè),愛(ài)好,收入,表面需求,潛在需求都是什么?
功能:你要設(shè)計(jì)什么樣的功能? 為何要做這個(gè)功能,而不是其他功能? 為什么用戶(hù)會(huì)用你的產(chǎn)品/功能?? 你的創(chuàng)新在哪里? 可以用 NABCD 分析.
如果你有錢(qián)可以招聘 6 個(gè)人, 有 4 個(gè)月的時(shí)間, 你作為項(xiàng)目經(jīng)理, 應(yīng)該如何配置角色? (前端開(kāi)發(fā)人員, 后端開(kāi)發(fā)人員,測(cè)試人員,交互設(shè)計(jì)師,等等)?
描述你的團(tuán)隊(duì)在16 周 期間每周都要做什么, 才能在第16周如期發(fā)布軟件的改進(jìn)版本,并取得預(yù)想中的成績(jī)。
把上面幾個(gè)部分都寫(xiě)清楚,發(fā)一個(gè)博客,博客中請(qǐng)加一個(gè)鏈接指向這個(gè)作業(yè)要求 (本博客)。
?--------
附錄
2020 - 2021 學(xué)期供分析的產(chǎn)品:
2019 - 2020 學(xué)期供分析的產(chǎn)品:
①??現(xiàn)在人工智能 (AI) 非常火熱, 我們能否分析一些AI 相關(guān)的開(kāi)發(fā)產(chǎn)品,例如 智能表單信息抽取識(shí)別?它有何創(chuàng)新, 有何不足,你從中看到了什么機(jī)會(huì)? 如何參與這個(gè)開(kāi)源項(xiàng)目?
②? cnblogs.com 的博客功能, 特別是?首頁(yè) - 班級(jí)博客 - 博客園?中針對(duì)學(xué)習(xí),教學(xué),班級(jí)管理,互相交流的功能。 請(qǐng)用它寫(xiě)一些博客和評(píng)論,你覺(jué)得你會(huì)成為它的用戶(hù)么?這一方面的參考對(duì)象是:?www.csdn.net。
③??現(xiàn)在很多開(kāi)發(fā)人員和IT專(zhuān)業(yè)的學(xué)生都在移動(dòng)設(shè)備上學(xué)習(xí)、工作,在移動(dòng)設(shè)備上的APP 能滿(mǎn)足這類(lèi)目標(biāo)用戶(hù)的需求么?它們會(huì)被wx公眾號(hào)取代么? 請(qǐng)分析?csdn 的APP
④? 微軟公司有兩個(gè)代碼編輯器, Visual Studio, VS Code,它們的目標(biāo)用戶(hù),主要功能有何不同?為何要有兩個(gè)編輯器和開(kāi)發(fā)環(huán)境? 請(qǐng)用這兩個(gè)編輯器/IDE 寫(xiě)出一個(gè)簡(jiǎn)單的 C/C++/Python 程序,描述你的發(fā)現(xiàn)。?
2017 - 2018 學(xué)期供分析的產(chǎn)品 (從下面 3 類(lèi)產(chǎn)品中挑一個(gè)你最感興趣的):
①??現(xiàn)在人工智能 (AI) 非常火熱, 我們能否分析一些AI 相關(guān)的開(kāi)發(fā)產(chǎn)品,例如 OpenMind Studio,? VS Code Tools for AI。這些新工具有何創(chuàng)新, 有何不足,你從中看到了什么機(jī)會(huì)?
②? cnblogs.com 的博客功能, 特別是 首頁(yè) - 班級(jí)博客 - 博客園 中針對(duì)學(xué)習(xí),教學(xué),班級(jí)管理,互相交流的功能,這一方面的參考對(duì)象是: www.csdn.net。
③??現(xiàn)在很多開(kāi)發(fā)人員和IT專(zhuān)業(yè)的學(xué)生都在移動(dòng)設(shè)備上學(xué)習(xí)、工作,在移動(dòng)設(shè)備上的APP 能滿(mǎn)足這類(lèi)目標(biāo)用戶(hù)的需求么?它們會(huì)被wx公眾號(hào)取代么? 請(qǐng)分析 csdn 的APP
請(qǐng)向老師咨詢(xún)?cè)u(píng)測(cè)博客文章的上交期限. 建議的打分標(biāo)準(zhǔn)是:
--------------------------------------------------------------------------------
總結(jié)
以上是生活随笔為你收集整理的软件工程 案例分析作业的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python txt转json_实战篇
- 下一篇: 软件工程 动物世界