目錄1. 需求描述 - 1 -
1.1 專案背景 - 1 -
1.2 專案目標 - 1 -
1.3 專案任務 - 1 -
2. 靜態模型 - 1 -
2.1. 軟體體系結構核心模型描述 - 1 -
2.2. 靜態建模 - 2 -
用例圖 - 2 -
類及包圖 - 6 -
物件圖 - 9 -
構件圖 - 10 -
部署圖 - 10 -
3. 動態模型: - 10 -
3.1 動態建模 - 10 -
狀態圖 - 10 -
活** - 11 -
順序圖 - 12 -
協作圖 - 13 -
4. 課程小結 - 14 -
mymusicplayer**器軟體體系結構設計
1. 需求描述
1.1 專案背景
當今社會的生活節奏越來越快,人們對手機的要求也越來越高,由於手機市場發展迅速,使得手機作業系統也出現了不同各類,現在的市場上主要有三個手機作業系統,windowsmobile,ios,以及谷歌的android作業系統,其中占有開放源**優勢的android系統有最大的發展前景。而快速化的生活方式,使得智慧型手機發展愈發迅速,甚至於一定程度取代了電腦的地位。於此同時,服務於手機的軟體也日益增多,本專案就是基於目前android市場的影響,開發一款能夠供使用者聽**的軟體——mymusicplayer**器。
1.2 專案目標
使用者能夠實現登入後,**手機本地的**,且可以對自己喜愛的**進行收藏,可以自行建立收藏夾來分類歌曲。除此之外,使用者還能夠選擇歌曲的暫停,**,**上一首或者下一首,或是隨意從歌曲任一點時間進行**。
1.3 專案任務
專案任務是實現基本的使用者登入操作,介面簡單,操作簡單。系統頁面互動介面清爽,使用者使用友好,並且操作簡單易懂,使用者容易上手。****功能比較完善,能夠滿足使用者基本要求。
2. 靜態模型
2.1. 軟體體系結構核心模型描述
整體的系統結構圖如圖1所示:
圖1 mymusicplayer系統結構圖
該系統分為三層體系架構:表現層,業務層與資料層。如圖1所示,ui介面屬於系統的表現層,旨在與使用者互動的頁面體驗。
****,**收藏與取消為業務層,處理由表現層所傳達的使用者操作,進行邏輯處理。資料庫即為資料層,儲存本地的**資料。
系統體系結構元素如表1所示:
表1 mymusicplayer系統結構元素表
2.2. 靜態建模
增加相應部分的功能描述及關係描述
(1)用例圖
mymusicplayer**器總用例圖如圖2所示:
圖2 mymusicplayer總用例圖
2.2.1 使用者登陸模組用例
● 使用者登陸模組用例圖:
圖 3 使用者登入模組用例圖
● 使用者登入模組用例描述:
使用者登陸
使用者註冊
2.2.2 歌曲列表與收藏模組用例
● 歌曲列表與收藏用例圖:
圖 4 **列表與收藏模組
● 歌曲列表與收藏用例描述:
歌曲列表
歌曲收藏
歌曲操作
2.2.3 歌曲**模組用例
● 歌曲**模組用例圖:
圖 5 歌曲**模組用例圖
● 歌曲**模組用例描述:
歌曲顯示
歌曲**
(2)類及包圖
系統總包圖如:
圖6 mymusicplayer系統總包圖
pages包內類圖如:
圖7 pages包內類圖
clickpages包內類圖如:
圖8 clickpages包內類圖
brocast包內類圖如:
圖9 brocast包內類圖
database包內類圖如:
圖10 database包內類圖
classes包內類圖如:
圖11 classes包內類圖
adapter包內類圖如:
圖12 adapter包內類圖
(3)物件圖
以下物件圖將分別在三個詳細時刻來描述系統中類的關係:
使用者登入模組時刻的物件圖如:
圖13 使用者登入時刻物件圖
歌曲列表模組時刻的物件圖如:
圖14 歌曲列表時刻物件圖
歌曲**模組時刻的物件圖如:
圖15 歌曲**時刻物件圖
(4)(5)構件圖
以下構件圖為主流流程的構件圖,除開了個別的構件。
系統構件圖如:
圖16 mymusicplayer系統構件圖
(6)部署圖
以下部署圖從系統,與資料與使用者三個層面來分析。
系統部署圖如:
圖17 mymusicplayer系統部署圖
3. 動態模型:
3.1 動態建模
(1) 狀態圖
以下狀態為系統中主要的流程跳轉,不區分各個時刻,總體中體現系統在各個時刻如何進行跳轉,且跳轉時的條件,與跳轉後的環境等。
系統總狀態圖如:
圖18 mymusicplayer系統狀態圖
(2) 活**
系統總活**如:
圖19 mymusicplayer系統活**
(3) 順序圖
以下順序圖,根據三個模組時刻來進行分別展示:
使用者模組順序圖:
圖20 使用者模組順序圖
歌曲列表模組順序圖:
圖21 歌曲列表模組順序圖
歌曲**模組順序圖:
圖22 歌曲**模組順序圖
(4) 協作圖
以下協作圖與順序圖相同從系統主要的三個時刻進行分析展示:
使用者登入模組協作圖:
圖23 使用者登入時刻協作圖
歌曲列表模組協作圖:
圖24 歌曲列表時刻協作圖
歌曲**模組協作圖:
圖25 歌曲**模組協作圖
4. 課程小結
(1) 對課程體會
對於軟體體系結構這門課,我跟人認為理論性很強,是乙個工程性的理論發放。簡單可以比喻這是一門規矩的,俗話說的好:不以規矩,無以成方圓。
來移植到這門課上便可是:不以體系結構,無以工程化創造軟體。這門從大體工程上規矩了乙個專案的開發,將**編寫階段抽象到了總體把握階段。
總的來說:這門課總體上還是很重要的。
(2) 物件任務的體會
從剛開始拿到任務的毫無頭緒,到後來從專案本身一步步反向推到文件。畢竟已經有乙個成熟的專案在手,所以一步步的建模比較簡單。但是也因為暑期小學期做的專案比較小,許多規矩化的細節難以提煉,抽象,導致這篇文件不是那麼豐滿。
但就此,我個人也曾設想過,如果我個人手頭沒有已經成型的專案,我是否能夠一步步按照體系結構的方法來一步步的將專案創造起來。後來我個人發現,其實這個軟體體系結構的搭建難度完全不下於乙個軟體專案程式編寫。後來,我個人也發現乙個好的軟體體系結構搭建,可以減少軟體專案**編寫的難度。
在後期的時候,能夠有順序有條理的編寫**。
總體來說這是一次比較好的經歷,雖說是從專案到文件這種比較奇怪的方式,但是只有做過了才能夠知道它的重要性。
軟體體系結構作業二章
作業電腦科學與技術09 4班 尹星 20092769 第一章1.根據自己的經驗,談談對軟體危機的看法 答 軟體危機是指軟體生產方式無法滿足迅速增長的計算機需求,開發和維護過程出現的一系列問題。它主要由以下幾個原因導致 1 軟體自身特點 2 開發人員的弱點 3 使用者需求不明 4 缺乏正確理論指導 5...
rup sad 軟體體系結構
專案名稱 軟體體系結構文件 版本 1.0 注意 以下模板供與 rational unified process 一起使用。包含在方括號中以藍色斜體 style infoblue 顯示的文字是用於向作者提供指導,在發布文件之前應將這些文字刪除。在此樣式之後輸入的段落將自動設定為正常 style bod...
軟體體系結構層次
基於層次體系結構的管理資訊系統設計與實現 1.引言 隨著經濟全球化的程序和市場競爭的加劇,商務環境的變化正深刻影響著企業組織管理的各方面.資訊系統作為現代企業管理系統的重要組成部分,也正面臨著前所未有的挑戰.一方面,資訊科技的發展要求企業進行流程重組,創造性的應用資訊科技,另一方面,在企業組織變化的...