二合一——配置管理

by 2023 年 4 月 11 日商業智能/分析0評論

兩個裝在一個盒子裡(如果可以的話),每個人都在文檔中(總是)。

在 IT 環境中,“一體機”是指設計為協同工作以提供冗餘和更高可靠性的兩個服務器或組件。 這種設置可以確保如果一個組件發生故障,另一個將接管其操作,從而保持服務的連續性。 “兩個合一”的目標是提供高可用性和災難恢復。 這也適用於組織中的人員角色; 然而,它很少被實施。

讓我們看一個相關的 Analytics 示例。 我們都可能知道我們公司或組織中某個人的名字,他是分析的“首選”人。 他們擁有以他們命名的報告或儀表板——Mike 的報告或 Jane 的儀表板。 當然,還有其他人知道分析,但這些才是真正的冠軍,他們似乎知道如何完成最困難的事情並在截止日期前超額完成任務。 問題是這些人是孤立的。 在許多情況下,在壓力下,他們不與任何人合作,因為這可能會減慢他們的速度,這就是問題的開始。 我們從不認為我們會失去這個人。 我會避免使用典型的“假設他們被公共汽車撞了”或利用當前就業市場機會的例子,而是說一些積極的話,比如“他們中了彩票!”,因為我們都應該儘自己的一份力量來保持積極這些日子。

故事
星期一早上到了,我們的分析專家和冠軍 MJ 已經遞交了辭呈。 MJ中了彩票,已經逍遙法外地離開了這個國家。 團隊和認識 MJ 的人都很激動和嫉妒,但工作必須繼續。 現在正是 MJ 所做的事情的價值和現實即將被理解的時候。 MJ 負責分析的最終發布和驗證。 在向每個人提供分析之前,他們似乎總是能夠提高效率或做出艱難的改變。 沒有人真正關心它是如何完成的,並且因為它剛剛發生的事實而安全,而且 MJ 是分析個人搖滾明星,因此被賦予了一定程度的自主權。 現在,隨著團隊開始收拾碎片、請求、日常問題、修改請求,他們不知所措並開始爭先恐後。 報告/儀表板處於未知狀態; 有些資產週末沒有更新,我們不知道為什麼; 人們在問發生了什麼事,什麼時候會修復,MJ 說已經完成的編輯沒有出現,我們也不知道為什麼。 球隊看起來很糟糕。 這是一場災難,現在我們都討厭 MJ。

課程
有一些簡單明了的要點。

  1. 絕不允許一個人單獨工作。 聽起來不錯,但在較小的敏捷團隊中,我們沒有時間或人員來實現這一目標。 人來人往,任務多,所以以生產力的名義分而治之。
  2. 每個人都必須分享他們的知識。 聽起來也不錯,但我們是在與合適的人或人分享嗎? 請記住,許多彩票中獎者都是同事。 進行知識共享會議也會佔用任務時間,而且大多數人只會在需要時及時投資於技能和知識。

那麼,有哪些真正的解決方案是每個人都可以實施並得到支持的呢?
讓我們從配置管理開始。 我們將使用它作為幾個類似主題的總稱。

  1. 更換管理層: 以結構化和系統化的方式規劃、實施和控制軟件系統變更的過程。 此過程旨在確保以受控和有效的方式(具有恢復能力)進行更改,同時最大限度地減少對現有系統的干擾並為組織帶來最大利益。
  2. 項目管理: 軟件開發項目的計劃、組織和控制,以確保它們在預算內按時完成,並達到所需的質量標準。 它涉及在整個軟件開發生命週期中協調資源、活動和任務,以實現項目目標並按時交付軟件產品。
  3. 持續集成和持續交付 (CI/CD): 自動化構建、測試和部署軟件的過程。 持續集成需要定期將代碼更改合併到共享存儲庫中,並運行自動化測試以在開發過程的早期檢測錯誤。 持續交付/部署涉及自動將經過測試和驗證的代碼更改發佈到生產中,從而允許快速和頻繁地發布新功能和改進。
  4. 版本控制: 使用專門的軟件工具管理源代碼和其他軟件工件隨時間變化的過程。 它允許開發人員在代碼庫上進行協作,維護完整的更改歷史記錄,並在不影響主代碼庫的情況下試驗新功能。

以上所有內容均指的是良好的軟件開發實踐。 推動和運營業務的分析同樣值得,因為它們對決策制定至關重要。 所有分析資產(ETL 作業、語義定義、指標定義、報告、儀表板、故事等)都只是帶有用於設計的可視化界面的代碼片段,看似微小的更改可能會對操作造成嚴重破壞。

使用配置管理讓我們保持良好的運行狀態。 資產是版本化的,因此我們可以看到在它們的生命週期中發生了什麼,我們知道誰在做什麼以及取得的進展和時間表,我們知道生產將繼續進行。 任何純粹的過程都沒有涵蓋知識的轉移和對事物為何如此的理解。

每個系統、數據庫和分析工具都有自己的怪癖。 使他們走得快或慢的事物,使他們以某種方式行事或產生預期結果的項目。 這些可以是系統或全局級別的設置,也可以是資產設計中使它們按預期運行的設置。 問題是這些東西中的大部分都是隨著時間的推移而學到的,並不總是有地方記錄它們。 即使我們轉移到雲系統,我們不再控制應用程序的執行方式,我們依賴供應商盡可能快地完成它,定義的調整仍在我們的資產中繼續進行,以解鎖我們正在尋找的東西。 這些知識需要通過讓其他人可用來獲取和共享。 這些知識必須作為資產文檔的一部分,並成為版本控制和 CI/CD 檢查和批准過程的組成部分,在某些情況下甚至作為發布要做和不做的事情之前的清單的一部分做。

沒有神奇的答案或人工智能可以掩蓋我們分析過程中的捷徑或缺乏捷徑。 無論保持數據和分析流動的團隊規模如何,都必須對系統進行投資以跟踪變化、對所有資產進行版本控制並幫助記錄開發過程和獲取知識。 預先投資流程和時間將節省大量浪費的時間,以便以後弄清楚事情以保持我們分析的健康狀態。 事情發生了,最好為 MJ 和其他彩票中獎者購買一份保險單。