雷火电竞首页-中国电竞赛事及体育赛事平台

0471-4953016
當前位置:首頁-新聞資訊-行業資訊

內蒙古軟件開發小常識

發布時間:2024-03-28閱讀次數:4381

1.軟件不是魔術

軟件不是魔術。雖然它看起來像魔術,或者是魔法,但它不是魔法。每一個元素都是由人設計的,都有其數學基礎,或者是可以用人類語言解釋的過程。與魔術不同,軟件不是憑空變出來的。內蒙古軟件開發它需要設計、構建和維護。就像房子有多種系統一起工作(地基、結構、管道、房間、家具等等)那樣,軟件系統也需要許多層和子系統來創建整個系統。它可以設計得很好,也可以設計得很差,而且快速的設計很少能持久。如果人們不能用語言來描述它會做什么(包括想要的結果和如何實現),那么計算機也無法做到。“how”被稱為算法,這并不神奇。機器學習和其他人工智能技術也并不神奇。機器學習是基于數據的預測,而不是顯式的規則或指令。它一般是用線性代數來做的。如果有100萬張已知的香蕉照片和100萬張沒有香蕉的照片,一個訓練有素的機器學習系統看一張新照片,會根據它從之前的照片中學到的知識告訴你它看起來像第一組還是第二組,這不是魔術。使用機器學習根據過去的招聘決定對簡歷進行排序,即使沒有任何故意的偏見,也可能會放大經驗主義的招聘歷史。


2.軟件永遠不會“完成”

軟件永遠不會“完成”,軟件是一個迭代的過程,在其生命周期中包含許多修訂和更新。我們的工作是創造一個能認識到這一點的環境。同樣,我們從來沒有期望市場營銷和客戶獲取是“完成的”,它們也是迭代過程。在每個迭代中,隨著我們不斷地為業務交付價值,我們也不斷地學習和成長。即使已經做了一些成功的發布,我們從來沒有打算“停止”做這些事情。

如果軟件可以在一個版本中完成就好了,但這不是現實。需求文檔充滿了模糊性,軟件的第一個版本充滿了“哦,那是我寫的,但不是我的意思”的場景。最好的軟件能激發新的想法和功能需求,看到新的銷售管理系統更加高效,就會激發出更高的效率。世界在變化,競爭對手提供了新的功能,人們就有了新的想法。另外,總是有一些bug需要修復:可能是在代碼中,也可能是在構建代碼的底層軟件框架和系統中。某些軟件可能是完美的,但可以確信的是,隨著時間的推移,人們會發現它所構建的平臺存在各種漏洞。我們的工作就是讓一個組織能夠認識到這一點。認識到這一點的方法是建立一個有信心定期發布新版本的組織。當完全自動化測試和其他工程規范就位時,我們就建立了信心。這種信心創造了一種能力,可以避免過長的發布周期,而是每季度、每月甚至每周發布高質量的軟件。特定的頻率并不重要,但是信心很重要,自信能夠帶來更快的創新。

3.軟件開發是團隊作戰,沒有人能做所有事情

軟件開發是團隊作戰,開發人員既不是產品經理,也不是UX(用戶體驗)設計師,也不是質量工程師、分析師、安全專家、技術作家或運營工程師。組織需要所有角色。沒有哪個管理者會建議每個銷售(sale)人員都做營銷(marketing)及PR,否則就解雇銷售團隊(因為營銷人員了解產品,也能做銷售)。營銷和銷售是相關的,但又是不同的。因此,兩者之間存在著分工。同樣,開發團隊需要獨立的人員來收集需求、質量保證和測試、代碼編寫等等。