軟工第1次個人作業

2021-09-24 16:37:58 字數 2853 閱讀 7385

在中國,軟體工程師的考試有:計算機等級考試和全國計算機技術與軟體專業技術資格考試

……也有這樣一些侷限性:

以答題/評分為主要考試形式,沒有面對面的考試

乙個軟體工程師,對於他的能力應該如何量化地評定?我認為這些所謂的考級並不能評定軟體工程師的能力。現在網路上對於譚浩強的c語言教材可以說是頗多批判之聲,更是有著名段子「i+++i+++++i」,來諷刺這乙隻弄書面知識不顧實際應用的程式設計考級。然而很多計算機二級的所謂培訓卻很推薦這一教材,說明了這些以答題為主的考試更偏向理論。那麼在實際中,所謂考級是否是軟體工程師的一條發展之路?考級好的人能否說明其工程能力強?如果不能,那麼我們怎麼說乙個人是軟體工程師中的「大牛」?

在結對程式設計模式下,一對程式設計師肩並肩、平等地、互補地進行開發工作。他們併排坐在一台電腦前,面對同乙個顯示器,使用同乙個鍵盤,同乙個滑鼠一起工作。

這樣的結對程式設計是否會有更優的程式設計形式?例如兩個人先同時編寫乙個模組,然後相互複審、交流,然後進行下面模組的編寫。這樣可以提公升程式設計的效率,同時結對程式設計交流、複審的優點並不會消失。

而以駕駛員/領航員形式的結對程式設計,固然能不斷地處於「複審」的工程,但是是否存在駕駛員被領航員帶偏了道路的可能?

在現實生活中的軟體開發過程,有哪些軟體專案是根據敏捷流程開發的?具體說來,敏捷流程如今在軟體工程開發中的地位是怎樣的。

另外,傳統的如計畫驅動(plan-driven)的開發流程,形式化的開發方法(formal method)又有哪些軟體專案?如果我們現在就業了,那麼一般的開發流程會是敏捷流程嗎?

你是否覺得你的長處並不在於寫**和debug,而是協調、溝通,讓乙個團隊或組織有效運轉起來……

就計算機系而言,目前的教育往往會專注於教你寫**和debug,那麼有沒有必要針對於一些表達能力強的人,教學如何協調、溝通,讓乙個團隊或組織有效運轉起來?就目前而言,這些能力又應該從**學到呢?

如果有人發明了一種在常溫常壓下能把石墨變成鑽石的方法,可以廉價地生產大量的鑽石,那麼目前鑽石產業鏈上的公司和從業人員,以及已經購買,儲存了鑽石的人們會有什麼反應?他們會喜歡這個創新嗎?

聽說不久前真有關於製造鑽石的研究成果出現。就我個人理解,如果這一方法真的發明,一定不會受到鑽石產業鏈公司,鑽石儲存者的支援,因為這一創新阻擋了他們的利益**。關於鑽石早有陰謀論「鑽石**」,論點是鑽石儲量其實很大,但是由鑽石產業巨頭隱藏下來,讓鑽石保持稀有才能讓價值公升值。這一陰謀論雖然不確定真偽,但是確實說明這些影響到部分人利益的創新可能會遭到阻撓。例如現如今的傳統計程車司機很不歡迎共享單車、滴滴打車之類創新的出現。我的困惑是如果乙個新的創新成果出現,卻遭到了利益相關工作者的打壓、阻撓,這種情況下創新能否成功,如果被阻撓了應該怎麼辦。

john tukey在2023年的**"the teaching of concrete mathematics"中,首次提到了software即「軟體」一詞。但在工程背景上,最早出現「軟體」一詞是在2023年8月由richard r. carhart在蘭德公司提出。

維基百科——john tukey

margaret h. hamilton在阿波羅計畫期間,在麻省理工學院提出了software engineering「軟體工程」一詞,以使軟體具有硬體工程等其他領域的合法性。隨著時間推移,軟體工程一詞才真正獲得了與任何其他學科相同的尊重。

維基百科——margaret hamilton (scientist)

現如今軟體工程已經是乙個廣受認可的領域,但是關於專業的軟體工程師,全球各地的許可或者認證的法律要求並不相同。在英國使沒有許可或法律要求承擔或使用「軟體工程師」職稱。在加拿大的某些地區(如安大略省等)軟體工程師可以擁有專業工程師(p.eng)的指定。在歐洲,軟體工程師可以獲得「歐洲工程師」的職稱。在美國的某些地方,如德克薩斯州,「工程師」一詞的使用受法律管制,僅僅保留給擁有專業工程師執照(pe執照)的個人使用,不過這種強制許可的方式如今是飽受爭議的。

有趣的是,自2023年以來,美國為軟體工程提供了ncees的專業工程師考試(pe考試),從而允許軟體工程師獲得許可和認可。但是自2023年最初提供考試以來, 進行了五次考試, 總人數為81名考生。而僅僅只有19名候選人登記參加2023年4月的考試。根據ncees考試發展政策,考試政策和程式委員會(epp)需要向ncees董事會提出關於繼續考試的可取性的建議。在2023年1月的會議上,epp委員會審查了pe軟體工程考試的歷史。在考慮所有資訊後,epp委員會建議ncees停止pe軟體工程考試。在2023年2月的會議上,ncees董事會接受了epp委員會關於停止提供pe軟體工程考試的建議。由於此考試每年僅提供一次,因此董事會指示ncees在2023年4月考試後停止舉辦pe軟體工程考試。也就是說在這篇部落格發表的乙個月後,ncees將會舉辦最後一次pe軟體工程考試。

維基百科——軟體工程

ncees discontinuing pe software engineering exam

根據維基百科的資料,搜尋到以下源**託管程式的使用者數:

維基百科——comparison of source-code-hosting facilities

git:目前毫無疑問最受歡迎的源**管理軟體。

參考資料:維基百科——git

部落格優點: 適合分布式開發,強調個體

與現有系統和協議的相容性強

能夠高效處理大型專案

良好的分支機制,可以讓主幹**保持乾淨

離線工作,管理**成本低,不需要依賴伺服器

缺點: 學習難度大

**保密性差,一旦開發者把整個庫轉殖下來就可以完全公開所有**和版本資訊

svn:目標是成為廣泛使用的併發版本系統(cvs)的最相容的後繼者

軟工 第1次個人作業

名稱 優點缺點 microsoft tfs 需求 專案進度一覽無餘,能與 vs 無縫接合 維護起來比較複雜,瀏覽器訪問相當慢 git 庫佔極少的空間。易於 的分支化管理。圖形介面支援差,使用難度大。不易推廣。mercurial 命令列簡單 容易上手 分支模型冗雜,多個版本庫交流存在問題,使用者少交流...

軟工 第1次個人作業

專案內容 這個作業屬於哪個課程 2020春季計算機學院軟體工程 羅傑 任健 這個作業的要求在 熱身作業 我在這個課程的目標是 學習軟體工程,培養工程開發能力 團隊協作能力,開闊視野 這個作業在哪個具體方面幫助我實現目標 幫助我認清自己,回顧自身發展歷程,展望未來的方向 你為什麼選擇計算機專業?你認為...

軟工 第0次個人作業

你為什麼選擇計算機專業?你認為你的條件如何?和這些博主比呢?必答 說起選擇計算機的原因,說句大實話,就是高考分數夠了就報了這個專業。因為當時對各個專業的具體學習方向真的沒什麼了解,高中三年也沒想過這件事,就一直在刷題中度過了,跟父母聽了幾個學校的招生會之後,我覺得北航是我最佳的選擇,我的分數去高工不...