您當前的位置:首頁 > 攝影

軟考高階系統架構師論文,到底該怎麼寫

作者:由 叫我阿柒啊2021 發表于 攝影時間:2021-07-19

軟考高階系統架構師論文,到底該怎麼寫

前言

2020年參加了軟考高階系統架構師的考試,那是我在考場上第一次寫論文,2小時2500字+,最後得分56。

拿到成績後寫了一篇關於七天覆習考過系統架構師的文章,作為一個自學者,深知網上系統架構師的資料蒐集不易,所以將自己收集的系統架構師資料和自己做的筆記分享了出來,希望能給考友們提供一點幫助。

後來在軟考群裡,認識了很多朋友,也希望我整理軟考各科資料。在21年元旦前一天,花費一下午蒐集整理了所有高階、大部分中級的影片、真題資料。架構師論文範文也在其中。

前幾天,上半年成績出來了,很多朋友也開始準備下半年系統架構師的考試了,然後有人就艾特我說系統架構師論文該怎麼寫,於是在某天下午決定寫一篇文章,來淺抒己見。

歷年論文命題分析

系統架構師論文命題四選一,這裡先看一下最近五年系統架構師論文真題。

2020年

論企業整合架構設計及應用、論軟體測試中缺陷管理及其應用、論雲原生架構及其應用、論資料分片技術及其應用

2019年

論軟體設計方法及其應用、論軟體評估系統架構評估及其應用、論資料湖技術及其應用、論負載均衡技術在web系統中的應用

2018年

論軟體開發過程RUP及其應用、論軟體體系結構的演化、論面向服務架構設計及其應用、論NoSQL資料庫技術及其應用

2017年

論軟體架構風格、論軟體系統建模方法及其應用、論無伺服器架構及其應用、論軟體質量保證及其應用。

2016年

論軟體系統架構評估、論軟體設計模式及其應用、論資料訪問層設計技術及其應用、論微服務架構及其應用

縱觀近五年的架構師論文命題,你會發現每年命題裡的知識點,一部分書上有、一部分書上沒有。像軟體開發過程、軟體設計、軟體方法、建模、體系結構等,這些知識點書上都有。

各位同學,請翻開<系統架構師設計教程 第四版>,你會發現,下列章節幾乎包含了大部分的知識點。

第 6 章:開發方法 第 7 章:系統規劃 第 8 章:系統分析與設計方法 第 9 章:軟體架構設計 第 10 章:設計模式 第 11 章:測試評審方法 第 13 章:開發管理 第 17 章:系統的可靠性分析與設計

再來說說書上沒有的部分,

16年的微服務、17年的無伺服器(serverless)、18年的NoSQL、19年的資料湖、以及20年的雲原生

。除了Nosql在書中用了一個小章節簡單介紹了一下,其他的都隻字未提。那麼,為什麼,為什麼要考書裡沒有的知識?

在我的思維裡,作為一名架構師需要對新技術有著強大的學習理解能力,以此來完成技術選型,或者決定架構的迭代升級,維護系統的穩定和效能,所以,這一塊考察的是個人對新技術的敏銳感知力和學習擴充套件能力。

20年甚至到現在,我關注很多公眾號都還在推送雲原生的概念、優勢和部署方案。

軟考高階系統架構師論文,到底該怎麼寫

所以說,平時沒事多看看公眾號,不僅僅和朋友聊天能吹一下,而且對考試也會幫助的哦。

說了那麼多,論文到底該怎麼寫?

論文寫作思路

1. 快速審題

小學的時候,老師就講過寫作文要先審題,架構師論文命題也是如此。論文命題除了確定題目之外,還會給你寫作要求。而這個

「寫作要求會告訴你本命題涉及的知識點有哪些,並給你確立一個寫作方向」

。這個可以參考後面的論文真題分析。

2. 確定題目

一般在考試前五分鐘就會發卷,雖然不允許動筆,但可以看試題。在填寫並確認好個人資訊之後,先看題,看完之後選擇一個最有把握的。如果感覺都沒太有把握,就選一個命題描述說明比較多的,這樣你可以獲得更多有用的資訊,寫的內容也更容易貼近主題。

3. 構思正文內容

兩個小時的寫作時間,2500字+, 基本上是沒有什麼思考的空間的。當你確定題目之後,你的腦海裡,就得列舉出你的正文內容要寫哪些東西了。

正文內容分為兩部分。一部分是理論知識層面,即寫作要求中讓你闡述知識點概念的部分,另一部分就是專案實踐層面,即此理論或技術框架為什麼要應用於專案,如何應用於專案、應用於專案之後獲得了怎麼樣的結果。這一塊可以參考後面部分。

4. 學會分段

每一大段或者兩小段對應一個知識點。每段開頭先點題,先說明這一段要寫的知識點是那個。然後將理論與技術框架或者實現方法對應起來,接著描寫技術框架的選型依據、應用、優勢以及取得的效果。

如果分段太少,你就會發現寫著寫著突然沒話了,只能亂寫一通。如果分段太多,其一是知識點可能不夠,其二是草草幾筆帶過一個知識點,讓人覺得沒有深度,也容易失去得分點。

5.學會思維發散

假如你要升級一個元件,需要寫一個升級報告。當你無從下手的時候,你寫一些效能提升、執行穩定性提升、主備負載均衡高可用、故障使用者無感知等等專業詞語,讓人看起來就是有一種高大上的感覺。然後再和老版本對比,詳細描述一下新特性,大功告成。

在考場上,如果真的寫到一個地方實在寫不下去了,別劃掉重寫,影響卷面;也別花太多時間思考,時間不夠,這個時候就要體現個人思維發散能力了。

但也不是為了湊點字數而亂寫一通,肯定是要圍繞主題有理有據。可不能加一些沒用的狀語或者語氣詞,讓文章看起來很沒有技術含量。

架構師論文結構

這裡先看一下答題卡:

軟考高階系統架構師論文,到底該怎麼寫

論文主要分為兩個部分:摘要、正文。在正文末再寫一下專案感言作為結尾,一篇論文就完結了。

摘要

摘要是最容易寫的,也是我論文唯一複習的部分,因為有固定的格式,直接套就行了。格式如下:

在xx年xx月,我參加了xxxx專案的開發工作,該專案主要用於實現xxxx功能(交代專案背景)。在整個專案開發過程中,我擔任了系統架構師的職務,主要負責xxx(例如技術選型、架構設計、設計方法等),整個專案歷時xxx月,最後在xxx時間圓滿完成。 專案的xxx模組採用xxx技術/理論(圍繞命題),提高了xx系統性能,減少了維護成本(技術選型優點,這個就根據自己選擇的專案來展開)。xxx模組採用了xxx技術,然後xxx。 本文以此專案為例,講述xxxx(圍繞命題)在xxx專案中的應用情況。

上面就是以我個人思路整理的一個摘要內容,也可以參照論文範圍的摘要模板。然後依此擴展出300~500字左右。摘要部分就大功告成了。

摘要確定了整個論文的基調,同時也要突出命題中的知識點。也就是說,必須在摘要中告訴別人,我寫這篇文章就是想告訴你,我用了什麼理論或者技術框架。

正文

正文部分就是體現知識功底和寫作能力的時候了,這個就得嚴格按照命題中的要求來寫。一般會讓你先闡述某種理論或技術的含義,然後可能會再考考你相關的知識點,最後讓你寫在專案中的應用和效果。

先想好自己論文概要框架,然後按照之前在寫作思路中提到的思路,來完成正文內容的寫作。

結尾

總結一下專案完成感言,談談從專案中的收穫,和對專案中所使用技術的理解,最後發表一下自己對系統架構師的感悟。

2020論文真題分析

我參加的是2020年11月的系統架構師的考試。所以就先把20年論文命題列舉出來,然後闡述一下我自己的寫作思路。

論企業整合架構設計及應用

概要敘述你參與的軟體開發專案的及承擔的主要工作

詳細說明三類企業整合架構設計技術分列要解決的問題及其含義,並闡述每種技術具體包含了哪些整合架構。

根據你所參與的專案,說明用了哪些企業整合架構設計技術,實施效果如何。

對應教材第九章:軟體架構設計。

論軟體測試中缺陷管理及其應用

概要敘述你參與管理和開發的軟體專案以及承擔的工作

詳細論述常見的缺陷種類及級別,論述缺陷管理和基本流程

結合你具體參與管理和開發的實際專案,說明是如何進行缺陷管理的。請具體說明實施過程及應用效果。

對應教材第六章:開發方法。

論雲原生架構及其應用

概要敘述你參與管理和開發的軟體專案以及承擔的主要工作。

服務化,強性,可觀測性和自動化是雲原生架構重複的四類設計原則,請簡要對這四類設計原則的內涵進行闡述。

具體闡述你參與管理和開發的專案是如何採用雲原生架構的,並且圍繞上述四類設計原則詳細論述在專案設計與實現過程中遇到了哪些實際問題,是如何解決的。

超脫教材之外,不在大綱之中。

論資料分片技術及其應用

資料分片就是按照一定的規則,將資料集劃分成相互獨立正交的資料子集。然後將資料子集分佈到不同的節點上,透過設計合理的資料分片規則,可將系統中的資料分佈在不同的物理資料庫中,達到提升應用系統資料處理速度的目的。 依次從以下三個方面進行論述:

概要敘述你參與管理和開發軟體的專案以及承擔的工作

Hash分片,一致性Hash分片和按照資料範圍分片是三種常用的資料分片方式

具體闡述你參與管理和開發的專案,且採用了哪些分片方式,並且具體說明其實現過程和應用效果。

在第三章資料庫中提到了分片的概念,但是Hash、一致性Hash沒有提到。

看完四個論文命題,除了雲原生超脫於教材之外,其他三個命題在教材中都有跡可循。所以你把書上的知識點都搞懂了,沒有相關的工作經驗也是也能夠寫出論文的。

我的論文寫作思路

我看了兩天教材,實在看不下去了,就放棄了。論文只背了摘要部分,沒有背過範文,考場也是臨時發揮,完全屬於第一次寫論文。

選題

我沒看書,所以命題1、2放棄,雲原生聽過但不瞭解,也沒真正用過,怕寫跑偏了,也放棄了。最後選擇了資料分片。

選擇原因有二。一是命題描述長,都告訴你了資料分片就是將資料分佈在不同的資料庫中。二就是作為大資料開發,分片、分割槽是大資料中也比較常見。

正文內容

先將Hash、一致性Hash、資料範圍分片的概念解釋清楚。

Hash就是透過演算法計算出hash值;一致性Hash就是環形結構,當物理節點刪除或者增加時,不需要修改hash演算法;資料範圍就是根據某些欄位的取值範圍來進行劃分

接著下面就是開始用技術框架來對映這些分片方法,從而來將理論實體化,更容易闡述這些分片方法在專案中的應用情況。Hash分片我對應的是Kafka、資料範圍分片對應的是數倉Hive和資料分表,至於一致性Hash分片對應的是什麼,有點記不清了。。。

就拿Kakfa舉例:

Hash分片原理:Kafka中的資料透過計算出key的hash值,來選擇節點

作用:存放資料時,只需要指定key,Kafka自動計算出hash

專案應用:不同程序間的不同訊息資料存放於Kafka的topic中,實現事件通知、資料多次重做、一次性語義的功能。

效果:使資料均勻分佈在不同broker物理節點的磁碟上,實現分割槽分片、高可用。而hash分割槽也解決了資料傾斜的問題,從而提高了資料處理的並行度和效率。

論文專案準備

考系統架構師的朋友大致分為兩類:一是計算機行業工作多年,想檢驗一下知識累積;二是評職稱需要架構師證書。不論怎樣,在考試前還是需要清楚論文的結構,以及基本寫作流程。

我是屬於前者,大資料工作兩年之後,想檢驗一下自己多年的自學結果,所以複習甚少。但是對於喜歡雙保險的同學來說,我的建議就是:

「先看書,再看範文,可以押題幾篇,背下來默寫幾遍」

前者

對於前者,浸淫IT行業多年,專案經驗比較豐富,也有一定的技術能力。所以即使自己沒有做過專案,也見過不少專案或者產品。

所以在論文準備的時候,主要背誦知識點,一是用來闡述論文命題中要求解釋的概念;二是表達專業性,讓閱卷老師一看,覺得寫的有點東西,沒有跑題。

如果像我一樣啥都不準備,需要個人技術知識面足夠寬廣,在論文選題的時候能夠遇到自己擅長的領域,能夠用專業知識和獨特理解表現在論文中,從而能得到45分+。

後者

對於後者,更多的可能是對專案進度的全域性把控,對架構、技術可能瞭解的不多。所以,可以好好看看教材和影片,好好學習教材上的架構知識,對下午的案例也會有很大的幫助。

接著也就是多看論文範文,多瞭解幾個專案,分析一下專案結構。實在不行就先背下來多寫幾遍,哪怕是生搬硬套,久而久之也能做到孰能生巧。

注意事項

論文寫作,一定也要卷面整潔、字跡工整,至少得讓別人看懂。字數也點到為止,不要寫太多,容易出錯。

我寫完之後,還有十多分鐘交卷,最後又提起筆想寫一段結尾總結。寫完一行半我覺得,再寫的話,結尾總結篇幅就有點大了,也太矯情了,然後就劃去了。雖然是在文章最後,但是或多或少會讓人看起來不太舒服。。。

結語

本篇文章主要是從一個考生的角度,闡述了我對系統架構師論文的一些理解,可能分析並沒有那麼專業,但是也能在一定程度上讓大家瞭解,系統架構師的論文寫作是怎樣的一個過程。

創作不易,寫了好幾天,真心希望對大家的寫作有所幫助。當然如果與你看法不一致,可翻篇而過,一笑了之,不必計較。如果對你有所啟示,我也甚是開心,亦希望共乘風破浪、扶搖而上。

最後,希望大家在2021年的系統架構師考試中能夠取得理想的成績。

標簽: 架構師  論文  分片  應用  專案