第一講
1、下列描述中,不屬于典型軟體發展三大階段的是:
A.網路化和服務化
B.軟體成為獨立產品
C.軟硬體一體化階段
D.軟體作坊
正確答案:D
2、“Measure twice, Cut once” 是哪個階段的典型開發特征?
A.網路化階段
B.軟硬體一體化階段
C.軟體作坊階段
D.軟體成為獨立產品階段
正確答案:B
3、關于軟體程序管理,以下哪一種說法是比較貼切的:
A.軟體程序管理關注的是企業軟體程序能力的穩定輸出和提升,
B.進入互聯網時代,軟體程序管理是過于老套的話題,
C.軟體程序管理主要關注軟體成本和質量目標的達成,
D.軟體程序管理是軟體企業發展到較高層次才需要關心的話題,
正確答案:A
4、軟體開發的本質難題中哪一個與軟體發展階段沒有直接關系?
A.可變性
B.不可見性
C.一致性
D.復雜性
正確答案:B
5、“Code and Fix” 是軟體發展哪個階段的典型開發特征?
A.互聯網時代
B.網路化和服務化
C.軟硬體一體化
D.軟體作為獨立產品
正確答案:C
6、以下哪個因素促成了軟體成為獨立的產品?
A.個人電腦的出現
B.高級程式設計語言的出現
C.作業系統的出現
D.互聯網的出現
正確答案:C
7、軟體危機和軟體工程這兩個概念提出時間是?
A.上世紀五十年代
B.上世紀七十年代
C.上世紀六十年代
D.上世紀八十年代
正確答案:C
8、以下描述中,哪幾種是網路化和服務化這個階段的典型軟體應用特征?
A.通過CD和DVD等方式支持大容量和快速分發軟體拷貝
B.用戶數量急劇增加
C.快速演化、需求不確定
D.通過SaaS等方式來發布軟體系統
正確答案:B、C、D
9、關于形式化方法的描述當中,不正確的有哪些?
A.這種方法的主要目的是解決軟體開發的效率問題
B.這種方法應用范圍有限,例如:不適合跟客戶討論需求,
C.這種方法是網路化和服務化階段用來應對軟體開發本質四大難題而提出來的
D.這種方法對開發人員技能有較高的要求
正確答案:A、C
10、關于迭代式方法的說法哪些是比較恰當的?
A.迭代式方法是上世紀九十年代中后期才出現的一種方法
B.迭代式方法是指一類具有類似特征的方法
C.迭代式方法主要是為了解決軟體開發的質量問題
D.迭代式方法主要特征在于將軟體開發程序視作一個逐步學習和交流的程序
正確答案:B、D
11、DevOps方法的出現具有一定的必然性,與以下哪些軟體應用特征相匹配?
A.用戶需求多變所帶來了軟體系統的快速演化的要求
B.軟體定義世界,軟體隨處可見
C.軟體系統部署環境越來越錯綜復雜
D.軟體在社會生活當中扮演了越來越關鍵的角色
正確答案:A、B、C、D
12、DevOps的哪些特點可以有效支撐當前社會對軟體系統的期望?
A.敏捷開發、精益思想以及看板方法,支持快速開發、交付、迭代和演化
B.微服務架構設計
C.虛擬機技術的大量應用
D.工具鏈支持高效率的自動化
正確答案:A、B、C、D
13、在DevOps化的three ways當中,關注質量問題是第二個階段才需要考慮的,
A.對
B.錯
正確答案:B
14、DevOps中的XaaS特指 SaaS、PaaS以及IaaS這三種,
A.對
B.錯
正確答案:B
15、DevOps化的Three ways當中,建立反饋機制是二階段應該實作的目標,
A.對
B.錯
正確答案:A
第二講
1、下述各個度量項中,哪一個不是PSP的基本度量項?
A.規模
B.缺陷
C.時間
D.風險
正確答案:D
2、關于面向用戶的質量觀,我們應該關注如下哪些問題:
A.用戶期望是否有優先級?
B.用戶期望的優先級對軟體開發的影響?
C.界面和可操作性是首要的,因為這是用戶能直接感受到的,
D.真實用戶是誰?
正確答案:A、B、D
3、PSP當中為什么用缺陷管理替代質量管理?下述說法中正確的是:
A.因為缺陷管理相關的活動(例如,測驗等)本來就是軟體開發中必須要開展的活動,
B.因為缺陷往往對應了面向用戶質量觀中的首要用戶期望,
C.因為單純質量管理很難操作,
D.因為缺陷管理和質量管理其實是一回事,
正確答案:B、C
4、關于PROBE估演算法,下述各種說法中,不正確的有哪些?
A.PROBE估算結果帶著小數,肯定不準確,因而, 不應該在專案估算的時候使用,
B.PROBE不能給出精確估算,因而適合用來跟用戶討論需求和規模,
C.PROBE方法不能用來估算質量,
D.PROBE方法不需要歷史資料,
正確答案:A、B、D
5、關于質量路徑(Quality Journey),下列說法中哪些不恰當,
A.質量路徑與個體軟體工程師無關,是團隊層面的集體努力,
B.高質量軟體產品最侄訓是需要依賴測驗來確保,
C.進入測驗之前的高質量,是獲得測驗之后高質量軟體系統的前提條件,
D.質量路徑中所列舉的方法都是提升開發質量的有效手段,可以隨意選擇使用,
正確答案:A、D
6、關于評審檢查表,下述說法中不恰當的是:
A.評審檢查表應該保持穩定,確保缺陷不會被遺漏
B.評審檢查表應該定期更新
C.專案團隊所有人應該共用一份評審檢查表,體現統一性
D.評審檢查表應該是個性化的
正確答案:A、C
7、關于PQI,下述說法中不恰當的是:
A.PQI五個分指標都可以超過1.0,比如,設計時間多于編碼時間的時候,該分指標就超過1.0了
B.PQI越高越好,最好達到1.0
C.PQI可以為程序改進提供依據
D.PQI可以用來輔助判斷模塊開發的質量
正確答案:A、B
8、關于評審,下述說法中不恰當是:
A.代碼的個人評審應該安排在單元測驗之后,確保評審物件有著較高的質量,提升評審價值,
B.如果安排了代碼的小組評審,那么代碼個人評審就可以不用做,
C.代碼的個人評審也應該通過評審檢查表來進行,
D.代碼的個人評審最好交叉進行,因為閱讀自己代碼容易產生思維定式,不利于缺陷發現,
正確答案:A、D
9、關于質量的各種定義當中,下述哪些質量屬性屬于內部屬性?
A.可靠性
B.安全性
C.可移植性
D.可擴展性
正確答案:C、D
10、PSP鼓勵使用瀑布型生命周期模型,
A.對
B.錯
正確答案:B
11、對于初學者來說,代碼評審速度可以控制到每小時不超過400行,
A.錯
B.對
正確答案:A
12、“高質量的軟體開發是計劃出來的”
A.對
B.錯
正確答案:A
第三講
1、下列哪一項更好地描述了敏捷宣言?
A.它定義了構建軟體的規則
B.它包含了許多敏捷團隊使用的實踐
C.它包含了建立敏捷思維方式的價值觀
D.它概述了構建軟體的最有效方法
正確答案:C
2、你是一家社交媒體公司的開發人員,正在開發一個專案,專案需要一個為企業客戶創建私有網站的新功能, 您需要與公司的網路工程師一起確定部署策略,并提出一組工程師可以用于管理站點的服務和工具, 網路工程師希望在你的網路內部部署所有服務,但您和您的團隊成員不同意,并且認為服務應該部署在客戶的網路上, 為了達成一個協議,該專案的作業已經停止, 哪種敏捷價值最適合這種情況?
A.作業的軟體 高于 詳盡的檔案
B.客戶合作 高于 合同談判
C.回應變化 高于 遵循計劃
D.個體和互動 高于 流程和工具
正確答案:B
3、你是一個軟體團隊的開發人員, 一個用戶向你的團隊詢問有關構建新功能的資訊,并以規范的形式提供了需求, 她非常確定這個功能要如何作業,并承諾不會有任何變化, 哪種敏捷價值最適用于這種情況?
A.作業的軟體 高于 詳盡的檔案
B.客戶合作 高于 合同談判
C.回應變化 高于 遵循計劃
D.個體和互動 高于 流程和工具
正確答案:A
4、Sean是一個正在構建財務軟體的團隊的開發人員, 他的團隊被要求開發一個新的交易系統, 他和他的團隊召開會議來提出他們正在使用的作業流的圖景, 然后,他們將流程放在白板上,流程中的每個步驟都有一列, 經過對團隊在白板上的作業專案進行了幾周觀察,他們注意到這個程序中有幾個步驟似乎過載了,對于他們來說,下一步應該做什么?
A.在較慢的步驟中使用更多的人力
B.對過載步驟中正在進行的作業專案的數量進行限制
C.與團隊合作,在作業進展緩慢的階段更好地完成作業
D.專注于完成看板上的作業
正確答案:B
5、下列哪一個不是精益原則?
A.消除浪費
B.實施反饋回圈
C.識別所有的步驟
D.盡可能晚的做決定
正確答案:B
6、下列哪一個更好地描述了如何使用看板?
A.觀察特征如何流經程序,以便團隊可以確定如何限制WIP并通過作業流程中的步驟確定最均勻的作業流程
B.跟蹤WIP限制和當前任務狀態,以便團隊知道他們還有多少作業要做
C.幫助團隊自我組織,并了解作業流程中的瓶頸所在
D.跟蹤缺陷和問題,并創建解決產品問題的最快途徑
正確答案:A
7、以下不是經常出現在Kanban上記事貼中的內容
A.誰在處理這個作業項
B.完成時間
C.作業項描述
D.團隊名詞
正確答案:D
8、一個公司內,各個團隊的Kanban列設定應當一致,便于公司管理,
A.錯
B.對
正確答案:A
9、在制品規模越小越好,因為這樣可以優化前置時間,并且團隊的效率會變高,
A.對
B.錯
正確答案:B
10、敏捷軟體開發宣言表明,在DevOps中寫檔案是沒有必要的,
A.對
B.錯
正確答案:B
第四講
1、下面關于軟體架構的描述哪個是不正確的?
A.軟體架構包括系統組件、連接件和約束的集合,
B.軟體架構是一組特定的架構元素,包括處理元素、資料元素和背景關系元素,
C.軟體架構包含一系列重要決策,包括軟體組織、構成系統的結構要素等,
D.軟體架構即一系列重要的設計決策,
正確答案:B
決議: B、軟體架構不包含背景關系元素,
2、在應用分層架構的軟體系統中,最先處理外部請求的是:
A.業務層
B.表現層
C.資料層
D.應用層
正確答案:B
決議: B、在應用分層架構的軟體系統中,各層處理外部請求的順序依次是表現層、業務層、持久層和資料層,
3、以下哪個關于面向服務架構的描述是錯誤的?
A.SOA依賴企業服務總線為服務間的相互呼叫提供支持環境
B.面向服務架構是一個集中式組件的集合
C.在SOA中,服務消費者消費其他組件提供的服務不需要知道其具體的實作細節
D.面向服務架構包含服務提供者組件和服務消費者組件
正確答案:B
決議: B、面向服務架構應該是分布式組件的集合,
4、以下對于微服務優點的描述中,哪一個是錯誤的?
A.微服務可以使用RPC進行服務間通信
B.微服務系統測驗變得非常簡單
C.單個微服務很簡單,只關注一個業務功能
D.不同的微服務可以使用不同的語言進行開發
正確答案:B
決議: B、分布式系統的復雜性使得系統測驗變得復雜
5、在微服務架構中,ZooKeeper的主要作用是?
A.注冊服務
B.開發服務
C.呼叫服務
D.封裝服務
正確答案:A
6、除Spring Boot之外,主流的微服務開發框架還有什么?
A.Django
B.MyBaits
C.Kubernetes
D.Apache Dubbo
正確答案:D
7、在組成派看來,軟體架構是指?
A.軟體架構由軟體元素、這些元素的外部可見屬性,以及元素之間的關系組成,
B.軟體架構是一系列重要決策的集合,包括構成系統的結構要素及其介面的選擇,
C.軟體架構包括系統組件、連接件和約束的集合,
D.軟體架構將系統定義為計算組件及組件間的互動,
正確答案:A、C、D
決議: B、決策派的觀點
8、分層架構將軟體系統的組件分成多個互不重疊的層,包括
A.持久層
B.業務層
C.表現層
D.應用層
正確答案:A、B、C
決議: D、網路分層
9、分層架構模式的缺點包括:
A.不易于持續發布和部署
B.額外的性能開銷
C.軟體升級需要暫停整個服務
D.由于層間依賴關系,軟體系統的可擴展性差
正確答案:A、B、C、D
決議: B、見分層架構部分“分層架構模式特點”,
10、以下哪幾個不是面向服務架構強調的實作原則?
A.服務去中心化
B.服務簡單
C.服務重用
D.服務解耦
正確答案:A、B
決議: A、微服務架構強調的實作原則, B、微服務架構強調的實作原則,
11、以下選項中,哪些屬于微服務架構的特點?
A.基礎設施自動化
B.圍繞業務能力組織
C.內聚和解耦
D.中心化
正確答案:A、B、C
決議: D、應為“去中心化”
12、以下選項中,API網關模式的優點有哪些?
A.確保客戶端不必關心應用程式的微服務拆分方式
B.為每套客戶端提供最優API
C.確保客戶端不受服務實體位置的影響
D.將從客戶端呼叫多項服務的邏輯轉換為從API網關處呼叫,以簡化整個客戶端,
正確答案:A、B、C、D
13、與面向服務架構相關的Web服務標準包括:
A.WSDL
B.SOAP
C.HTTPS
D.UML
正確答案:A、B、C
決議: D、應改為XML
14、單體應用的所有功能都被集成在一起作為一個單一的單元,
A.對
B.錯
正確答案:A
15、單體架構更多地作為應用的部署架構,單體應用只運行在一個行程中,
A.對
B.錯
正確答案:B
決議:可能存在單體應用的多個實體運行在多個行程中,
16、微服務架構架構風格是一種將一個單一應用程式開發為一個小型服務的方法,
A.錯
B.對
正確答案:A
決議:一組小型服務,而非一個,
17、本質上,微服務架構是SOA的一種擴展,
A.對
B.錯
正確答案:A
18、核心模式即針對采用微服務系統在通用場景下的所有問題,所使用的成熟的架構解決方案集合,
A.錯
B.對
正確答案:A
決議:是在特定場景下的特定問題
第五講
1、下列哪項不是Docker容器的特點:
A.資源使用較少
B.創建速度很快
C.啟動時間是分鐘級
D.可以共享作業系統的資源
正確答案:C
2、下列哪項不是Docker的網路模式
A.None模式
B.Host模式
C.Bridge 模式
D.其他全是
正確答案:D
3、以下哪些是Docker的存盤驅動:
A.其他都是
B.Device mapper
C.AUFS
D.OverlayFS
正確答案:A
4、以下哪個命令可以查看當前運行容器:
A.docker run
B.docker ps
C.docker logs
D.docker top
正確答案:B
5、Kubernetes集群將元資料保存在以下哪個組件:
A.Kube-apiserver
B.以上都不是
C.Kubelet
D.Etcd
正確答案:D
6、以下哪些是Kubernetes的控制器:
A.Rolling Updates
B.Both ReplicaSet and Deployment
C.Deployment
D.ReplicaSet
正確答案:B
7、以下哪些是Kubernetes的核心概念
A.Services
B.其他都是
C.Pods
D.Volumes
正確答案:B
8、Kubernetes里面的Replication控制器的職責是:
A.洗掉或者更新多個Pod
B.其他都是
C.幫助達到預期的狀態
D.當已存在的Pod例外退出后,創建新的Pod
正確答案:B
9、如何通過命令列創建一個容器
A.docker start
B.docker run
C.docker poll
D.docker create
正確答案:B
10、Dockerfile中的命令 RUN, CMD 和ENTRYPOINT幾者有何區別?
A.CMD 設定容器啟動后默認執行的命令及其引數,但 CMD 能夠被 docker run 后面跟的命令列引數替換
B.RUN 執行命令并創建新的鏡像層,RUN 經常用于安裝軟體包,
C.其他都是
D.ENTRYPOINT 配置容器啟動時運行的命令
正確答案:C
11、使用Kubernetes帶來的好處有哪些
A.橫向擴展
B.其他都是
C.自動回滾
D.自動調度
正確答案:B
12、以下哪項用于確保pod不會被調度到不適當的節點上?
A.Tolerations
B.Taints
C.Taints 和 Tolerations
D.以上都不是
正確答案:C
13、Docker容器的狀態有
A.Restarting
B.Paused
C.Running
D.Exited
正確答案:C、D
14、關于Kubernetes的namespace的論述是否正確:命名空間是在多個用戶之間劃分群集資源的方法
A.對
B.錯
正確答案:A
15、以下描述是否正確:多步構建允許在Dockerfile中使用多個FROM指令,兩個FROM指令之間的所有指令會生產一個中間鏡像,最后一個FROM指令之后的指令將生成最終鏡像,中間鏡像中的檔案可以通過COPY --from=指令拷貝,其中image-number為鏡像編號,0為第一個基礎鏡像,沒有被拷貝的檔案都不會存在于最終生成的鏡像,這樣可以減小鏡像大小,同時避免出現安全問題,
A.對
B.錯
正確答案:A
第七講
1單選(1分)
下列哪項不屬于DevOps工具生態圈?
A.編譯
B.監控
C.持續部署
D.持續集成
正確答案:C
2、下列哪項不屬于協同開發工具?
A.Confluence
B.Rally
C.JIRA
D.Kanban
正確答案:A
3、下列哪種持續集成工具是目前DevOps領域使用最廣泛的?
A.VSTS
B.Travis CI
C.TeamCity
D.Jenkins
正確答案:D
4、下列哪種版本管理工具不是同宗同源的?
A.GitHub
B.GitLab
C.Subversion
D.Git
正確答案:C
5、以下哪項不是Git的檔案目錄?
A.加載區
B…git目錄
C.Documents
D.作業目錄
正確答案:C
6、下列哪種編譯工具無法編譯JAVA語言?
A.Maven
B.MSBuild
C.Ant
D.Gradle
正確答案:B
7、下列哪種工具無法實作對遠程服務器的配置操作?
A.Chef
B.Ansible
C.JIRA
D.Puppt
正確答案:C
8、下列不屬于測驗的是
A.UI測驗
B.單元測驗
C.SIT測驗
D.API測驗
正確答案:C
9、使用_________工具完成DevOps持續交付流水線編排配置?
A.JUnit
B.Jenkins
C.Java
D.SonarQube
正確答案:B
10、Git是何種工具?
A.監控工具
B.版本管理工具
C.持續集成工具
D.單元測驗工具
正確答案:B
11、以下哪種工具是開源工具?
A.TeamCity
B.JUnit
C.JIRA
D.Zabbix
正確答案:B
12、下列哪種工具能模擬市場上主流瀏覽器的操作?
A.FitNesse
B.Jenkins
C.Selenium
D.JUnit
正確答案:C
13、JIRA Software不支持極限編程這種敏捷開發方法,
A.對
B.錯
正確答案:A
14、Jenkins支持作業流即代碼(pipeline-as-code),
A.對
B.錯
正確答案:A
15、Git使用副本方式存盤檔案版本,
A.錯
B.對
正確答案:A
16、Selenium能實作自動化單元測驗,
A.錯
B.對
正確答案:A你沒選擇任何選項
17、Nagios不屬于監控工具,
A.錯
B.對
正確答案:A
18、Zabbix有兩種作業模式,
A.對
B.錯
正確答案:A
19、SonarQube能完成持續交付流水線編排配置
對
錯
正確答案:B你沒選擇任何選項
決議:靜態代碼掃描
20、Ansible只需要在Server端安裝就能實作對遠程服務器的配置管理?
A.對
B.錯
正確答案:A你沒選擇任何選項
客觀題
1、下列描述中,不屬于典型軟體發展三大階段的是:
A.網路化和服務化
B.軟體作坊
C.軟硬體一體化階段
D.軟體成為獨立產品
正確答案:B
2、“Measure twice, Cut once” 是哪個階段的典型開發特征?
A.軟體成為獨立產品階段
B.網路化階段
C.軟體作坊階段
D.軟硬體一體化階段
正確答案:D
3、關于軟體程序管理,以下哪一種說法是比較貼切的:
A.軟體程序管理主要關注軟體成本和質量目標的達成,
B.軟體程序管理是軟體企業發展到較高層次才需要關心的話題,
C.軟體程序管理關注的是企業軟體程序能力的穩定輸出和提升,
D.進入互聯網時代,軟體程序管理是過于老套的話題,
正確答案:C
4、軟體開發的本質難題中哪一個與軟體發展階段沒有直接關系?
A.不可見性
B.可變性
C.復雜性
D.一致性
正確答案:A
5、“Code and Fix” 是軟體發展哪個階段的典型開發特征?
A.網路化和服務化
B.軟硬體一體化
C.軟體作為獨立產品
D.互聯網時代
正確答案:B
6、以下哪個因素促成了軟體成為獨立的產品?
A.互聯網的出現
B.個人電腦的出現
C.作業系統的出現
D.高級程式設計語言的出現
正確答案:C
7、軟體危機和軟體工程這兩個概念提出時間是?
A.上世紀八十年代
B.上世紀五十年代
C.上世紀六十年代
D.上世紀七十年代
正確答案:C
8、你是一家社交媒體公司的開發人員,正在開發一個專案,專案需要一個為企業客戶創建私有網站的新功能, 您需要與公司的網路工程師一起確定部署策略,并提出一組工程師可以用于管理站點的服務和工具, 網路工程師希望在你的網路內部部署所有服務,但您和您的團隊成員不同意,并且認為服務應該部署在客戶的網路上, 為了達成一個協議,該專案的作業已經停止, 哪種敏捷價值最適合這種情況?
A.作業的軟體 高于 詳盡的檔案
B.個體和互動 高于 流程和工具
C.客戶合作 高于 合同談判
D.回應變化 高于 遵循計劃
正確答案:C
9、下列哪一個不是精益原則?
A.識別所有的步驟
B.盡可能晚的做決定
C.消除浪費
D.實施反饋回圈
正確答案:D
10、下列哪一個更好地描述了如何使用看板?
A.幫助團隊自我組織,并了解作業流程中的瓶頸所在
B.觀察特征如何流經程序,以便團隊可以確定如何限制WIP并通過作業流程中的步驟確定最均勻的作業流程
C.跟蹤WIP限制和當前任務狀態,以便團隊知道他們還有多少作業要做
D.跟蹤缺陷和問題,并創建解決產品問題的最快途徑
正確答案:B
11、以下不是經常出現在Kanban上記事貼中的內容
A.團隊名詞
B.作業項描述
C.完成時間
D.誰在處理這個作業項
正確答案:A
12、下面關于軟體架構的描述哪個是不正確的?
A.軟體架構是一組特定的架構元素,包括處理元素、資料元素和背景關系元素,
B.軟體架構即一系列重要的設計決策,
C.軟體架構包括系統組件、連接件和約束的集合,
D.軟體架構包含一系列重要決策,包括軟體組織、構成系統的結構要素等,
正確答案:A
13、在應用分層架構的軟體系統中,最先處理外部請求的是:
A.應用層
B.資料層
C.表現層
D.業務層
正確答案:C
14、以下哪個關于面向服務架構的描述是錯誤的?
A.在SOA中,服務消費者消費其他組件提供的服務不需要知道其具體的實作細節
B.SOA依賴企業服務總線為服務間的相互呼叫提供支持環境
C.面向服務架構包含服務提供者組件和服務消費者組件
D.面向服務架構是一個集中式組件的集合
正確答案:D
15、在微服務架構中,ZooKeeper的主要作用是?
A.開發服務
B.注冊服務
C.封裝服務
D.呼叫服務
正確答案:B
16、下列哪項不是Docker的網路模式
A.Host模式
B.None模式
C.其他全是
D.Bridge 模式
正確答案:C
17、以下哪個命令可以查看當前運行容器:
A.docker logs
B.docker ps
C.docker run
D.docker top
正確答案:B
18、Kubernetes集群將元資料保存在以下哪個組件:
A.Kubelet
B.Etcd
C.Kube-apiserver
D.其他都不是
正確答案:B
19、以下哪些是Kubernetes的控制器:
A.Deployment
B.Both ReplicaSet and Deployment
C.ReplicaSet
D.Rolling Updates
正確答案:B
20、以下哪些是Kubernetes的核心概念
A.其他都是
B.Pods
C.Volumes
D.Services
正確答案:A
21、Kubernetes里面的Replication控制器的職責是:
A.其他都是
B.洗掉或者更新多個Pod
C.當已存在的Pod例外退出后,創建新的Pod
D.幫助達到預期的狀態
正確答案:A
22、Dockerfile中的命令 RUN, CMD 和ENTRYPOINT幾者有何區別?
A.CMD 設定容器啟動后默認執行的命令及其引數,但 CMD 能夠被 docker run 后面跟的命令列引數替換
B.RUN 執行命令并創建新的鏡像層,RUN 經常用于安裝軟體包,
C.其他都是
D.ENTRYPOINT 配置容器啟動時運行的命令
正確答案:C
23、使用Kubernetes帶來的好處有哪些
A.橫向擴展
B.自動調度
C.自動回滾
D.其他都是
正確答案:D
24、下列哪項不屬于DevOps工具生態圈?
A.持續部署
B.監控
C.持續集成
D.編譯
正確答案:A
25、下列哪項不屬于協同開發工具?
A.Rally
B.JIRA
C.Kanban
D.Confluence
正確答案:D
26、以下哪項不是Git的檔案目錄?
A.作業目錄
B…git目錄
C.Documents
D.加載區
正確答案:C
27、下列哪種編譯工具無法編譯JAVA語言?
A.Maven
B.Gradle
C.Ant
D.MSBuild
正確答案:D
28、下列哪種工具無法實作對遠程服務器的配置操作?
A.Chef
B.Puppt
C.JIRA
D.Ansible
正確答案:C
29、以下選項中,哪一項不屬于API網關模式的優點?
A.確保客戶端不受服務實體位置的影響,
B.將從客戶端呼叫多項服務的邏輯轉換為從API網關處呼叫,以簡化整個客戶端,
C.確保客戶端不必關心應用程式的微服務拆分方式,
D.增加請求往返次數,
正確答案:D
30、以下選項中,哪一項不屬于微服務架構的特點?
A.圍繞業務能力組織
B.去中心化
C.基礎設施自動化
D.低內聚和高耦合
正確答案:D
31、以下描述中,哪幾種是網路化和服務化這個階段的典型軟體應用特征?
A.用戶數量急劇增加
B.通過SaaS等方式來發布軟體系統
C.通過CD和DVD等方式支持大容量和快速分發軟體拷貝
D.快速演化、需求不確定
正確答案:A、B、D
32、關于形式化方法的描述當中,不正確的有哪些?
A.這種方法應用范圍有限,例如:不適合跟客戶討論需求,
B.這種方法的主要目的是解決軟體開發的效率問題
C.這種方法對開發人員技能有較高的要求
D.這種方法是網路化和服務化階段用來應對軟體開發本質四大難題而提出來的
正確答案:B、D
33、關于迭代式方法的說法哪些是比較恰當的?
A.迭代式方法是上世紀九十年代中后期才出現的一種方法
B.迭代式方法是指一類具有類似特征的方法
C.迭代式方法主要是為了解決軟體開發的質量問題
D.迭代式方法主要特征在于將軟體開發程序視作一個逐步學習和交流的程序
正確答案:B、D
34、DevOps方法的出現具有一定的必然性,與以下哪些軟體應用特征相匹配?
得分/總分
A.軟體系統部署環境越來越錯綜復雜
B.軟體定義世界,軟體隨處可見
C.軟體在社會生活當中扮演了越來越關鍵的角色
D.用戶需求多變所帶來了軟體系統的快速演化的要求
正確答案:A、B、C、D
35多選(2分)
DevOps的哪些特點可以有效支撐當前社會對軟體系統的期望?
A.微服務架構設計
B.虛擬機技術的大量應用
C.工具鏈支持高效率的自動化
D.敏捷開發、精益思想以及看板方法,支持快速開發、交付、迭代和演化
正確答案:A、B、C、D
36、關于面向用戶的質量觀,我們應該關注如下哪些問題:
A.真實用戶是誰?
B.用戶期望是否有優先級?
C.界面和可操作性是首要的,因為這是用戶能直接感受到的,
D.用戶期望的優先級對軟體開發的影響?
正確答案:A、B、D
37、PSP當中為什么用缺陷管理替代質量管理?下述說法中正確的是:
A.因為單純質量管理很難操作,
B.因為缺陷管理和質量管理其實是一回事,
C.因為缺陷往往對應了面向用戶質量觀中的首要用戶期望,
D.因為缺陷管理相關的活動(例如,測驗等)本來就是軟體開發中必須要開展的活動,
正確答案:A、C
38、關于PROBE估演算法,下述各種說法中,不正確的有哪些?
A.PROBE不能給出精確估算,因而適合用來跟用戶討論需求和規模,
B.PROBE估算結果帶著小數,肯定不準確,因而, 不應該在專案估算的時候使用,
C.PROBE方法不能用來估算質量,
D.PROBE方法不需要歷史資料,
正確答案:A、B、D
39、關于評審檢查表,下述說法中不恰當的是:
A.評審檢查表應該是個性化的
B.評審檢查表應該保持穩定,確保缺陷不會被遺漏
C.評審檢查表應該定期更新
D.專案團隊所有人應該共用一份評審檢查表,體現統一性
正確答案:B、D
40、關于PQI,下述說法中不恰當的是:
A.PQI可以為程序改進提供依據
B.PQI越高越好,最好達到1.0
C.PQI可以用來輔助判斷模塊開發的質量
D.PQI五個分指標都可以超過1.0,比如,設計時間多于編碼時間的時候,該分指標就超過1.0了
正確答案:B、D
41、關于評審,下述說法中不恰當是:
A.代碼的個人評審最好交叉進行,因為閱讀自己代碼容易產生思維定式,不利于缺陷發現,
B.代碼的個人評審也應該通過評審檢查表來進行,
C.代碼的個人評審應該安排在單元測驗之后,確保評審物件有著較高的質量,提升評審價值,
D.如果安排了代碼的小組評審,那么代碼個人評審就可以不用做,
正確答案:A、C
42、關于質量的各種定義當中,下述哪些質量屬性屬于內部屬性?
A.安全性
B.可移植性
C.可靠性
D.可擴展性
正確答案:B、D
43、在組成派看來,軟體架構是指?
A.軟體架構將系統定義為計算組件及組件間的互動,
B.軟體架構由軟體元素、這些元素的外部可見屬性,以及元素之間的關系組成,
C.軟體架構是一系列重要決策的集合,包括構成系統的結構要素及其介面的選擇,
D.軟體架構包括系統組件、連接件和約束的集合,
正確答案:A、B、D
44、分層架構模式的缺點包括:
A.不易于持續發布和部署
B.額外的性能開銷
C.由于層間依賴關系,軟體系統的可擴展性差
D.代碼調整通常比較麻煩
正確答案:A、B、C、D
45、以下哪幾個不是面向服務架構強調的實作原則?
A.服務簡單
B.服務去中心化
C.服務封裝
D.服務解耦
正確答案:A、B
46、以下選項中,哪些屬于微服務架構的特點?
A.中心化
B.基礎設施自動化
C.通過服務組件化
D.內聚和解耦
正確答案:B、C、D
47、以下選項中,API網關模式的優點有哪些?
A.確保客戶端不必關心應用程式的微服務拆分方式
B.增加請求往返次數
C.確保客戶端不受服務實體位置的影響
D.為每套客戶端提供最優API
正確答案:A、C、D
48、下列哪些工具不能模擬市場上主流瀏覽器的操作?
A.Jenkins
B.Selenium
C.FitNesse
D.JUnit
正確答案:A、C、D
49、下面關于軟體架構的描述,哪幾項是正確的?
A.軟體架構即一系列重要的設計決策
B.軟體架構包含一系列重要決策,包括軟體組織、構成系統的結構要素等
C.軟體架構是一組特定的架構元素,包括處理元素、資料元素和背景關系元素
D.軟體架構包括系統組件、連接件和約束的集合
正確答案:A、B、D
50、以下對于微服務優點的描述中,哪幾項是正確的?
A.微服務系統測驗變得非常簡單
B.單個微服務很簡單,只關注一個業務功能
C.不同的微服務可以使用不同的語言進行開發,
D.微服務可以使用RPC進行服務間通信
正確答案:B、C、D
51、DevOps中的XaaS特指 SaaS、PaaS以及IaaS這三種,
A.錯
B.對
正確答案:A
52、在制品規模越小越好,因為這樣可以優化前置時間,并且團隊的效率會變高,
A.對
B.錯
正確答案:B
53、單體應用的所有功能都被集成在一起作為一個單一的單元,
A.對
B.錯
正確答案:A
54、單體架構更多地作為應用的部署架構,單體應用只運行在一個行程中,
A.對
B.錯
正確答案:B
55、本質上,微服務架構是SOA的一種擴展,
A.錯
B.對
正確答案:B
56、關于Kubernetes的namespace的論述是否正確:命名空間是在多個用戶之間劃分群集資源的方法
A.錯
B.對
正確答案:B
57、JIRA Software不支持極限編程這種敏捷開發方法,
A.錯
B.對
正確答案:B
58、Jenkins支持作業流即代碼(pipeline-as-code),
A.錯
B.對
正確答案:B
59、Git使用副本方式存盤檔案版本,
A.對
B.錯
正確答案:B
60、Selenium能實作自動化單元測驗,
A.錯
B.對
正確答案:A
主觀題
請談談微服務架構與面向服務的架構存在哪些異同?
同:微服務架構可以看做面向服務架構的延伸,面向服務架構中使用的各種原則如服務重用、服務解耦、服務無狀態等在微服務中也是需要遵守的,二者都是通過構建一個個組件,并通過通信協議來聯系各組件,最終提供一個完整的系統功能,異:微服務的服務,相比面向服務架構中的服務更小,更細化,只關注一個業務功能;微服務系統發生變更時,只需要對單個或多個服務進行重新構建,而面向服務架構中則需要對整個系統重新構建;微服務使用的協議一般都是輕量級的協議,但是SOA則是使用更為復雜多樣的多種訊息協議;微服務的容錯性能更好,即使一個微服務出現問題,其他的微服務也會正常作業;微服務架構實作了服務去中心化,免去了面向服務架構中的服務注冊中心,使得整個系統相對更加穩定,
從你的理解出發,談談為什么微服務架構具有高可用性、靈活性等優點?
微服務架構中的服務是是圍繞單個業務來進行組織的,實作了高內聚低耦合,服務可重用性高由于服務之間低耦合,所以當系統發生變更時,程式員只需添加新的服務來完成新的需求,或者只需要修改少量服務即可應對需求變更,使得系統靈活性增強由于任何服務呼叫都可能因為服務提供者不可用而失敗,因此客戶端必須盡可能有效地應對這種失效,因此,微服務架構對服務進行一定的設計,為每個單獨的服務設定完善的監控和日志記錄,有助于對于快速發現不良突發行為而盡早修復,提升系統的可用性
請描述一個簡單的持續交付流水線所包含的基本步驟,
開發–>版本控制–>代碼檢查–>構建–>自動化測驗–>打包–>遠程倉庫發布–>自動化部署
請列舉出敏捷軟體開發中常見的3中開發方法?
Scrum:Scrum是迭代式增量軟體開發程序,通常用于敏捷軟體開發,Scrum包括了一系列實踐和預定義角色的程序骨架,Scrum中的主要角色包括同專案經理類似的Scrum主管角色負責維護程序和任務,產品負責人代表利益所有者,開發團隊包括了所有開發人員,極限編程:ExtremeProgramming,簡稱XP,是一種軟體工程方法學,更強調可適應性能性以及面臨的困難,精益軟體開發:以精益的原則為指導進行軟體開發
請描述敏捷軟體開發宣言內容?
我們一直在實踐中探尋更好的軟體開發方法,身體力行的同時也幫助他人,由此我們建立了如下價值觀:個體和互動高于流程和工具作業的軟體高于詳盡的檔案客戶合作高于合作談判回應變化高于遵循計劃也就是說盡管右項有其價值,我們更重視左項的價值,
請解釋一下什么是Kanban方法中的WIP?為什么要限制WIP?
WIP:work in progress,在制品,即同時進行中的作業數量,減少在制品使其快速流過整個作業流,可以使前置時間縮短,前置時間是指處理一個作業項從開始到結束所經過的時間,在制品規模高會有作業閑置,而在制品規模低會有人閑置,為了在個人效率和團隊效率中,尋找一個平衡,保證一個較高的團隊效率,同時不會有太多人處于閑置狀態,所以需要限制WIP個數,
什么叫做面向用戶的質量觀?這種觀點對軟體開發有什么影響?
面向用戶的質量觀:定義質量為滿足用戶需求的程度基于這個定義,在軟體開發中需要進一步明確:用戶究竟是誰用戶需求的優先級是什么這種用戶的優先級對軟體產品的開發程序產生什么樣的影響怎樣來度量這種質量觀下的質量水平在實際開發中,選擇如下的質量策略來實作這樣的質量要求:用缺陷管理替代質量管理高質量產品也就意味著組成軟體產品的各個組件基本無缺陷各個組件的高質量是通過高質量評審來實作的
DevOps有哪些常見的質量手段有助于確保最終軟體服務的質量?
各種測驗:如單元測驗、白盒測驗、黑盒測驗等提升進入測驗之前的產物質量提升評審程序度量和穩定質量意識和主人翁態度個體工程師review程序的度量和穩定化訴諸設計缺陷預防用戶質量觀——其他質量屬性(可用性、可靠性等)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/236568.html
標籤:其他
上一篇:關于redis
