常見質量屬性css
1.性能web
性能就是一個東西有多快,一般指響應時間或延遲。 spring
響應時間:從發出請求到收到響應所用的時間,好比用戶點擊網頁中的超連接或桌面應用程序中的按鈕sql
延遲:消息從A點到B點,經過你的系統所用的時間。數據庫
就算構建的不是「高性能」軟件系統,性能也可應用於Web應用系統、桌面應用系統、面向服務架構、消息系統等幾乎全部你要構建的軟件系統。 編程
2.可用性windows
可用性是軟件對服務請求的可操做和可見程度。你常會看到用「9」來衡量或指代可用性,如99.99%(四個9)或99.999%(五個9)。這些數字指的是正常運行時間的百分比。另外一邊是能夠容忍的停機時間。99.9%(三個9)的正常運行時間意味着留給計劃維護、升級和意外故障的時間天天只有1分多鐘。瀏覽器
衡量可用性的數學指標以下:安全
- 服務平均無端障時間 MTBF(Mean Time Between Failure)服務器
- 服務平均恢復時間 MTTR(Mean Time To Restoration)
- 可用性 = ( MTBF / (MTBF + MTTR)) * 100%
3.安全性
安全性涵蓋了從認證和受權到數據在運輸和存儲中的機密性的全部事情。和性能同樣,安全性頗有可能在必定程度上對你很重要。對於部署到互聯網的web應用程序,安全性應該被視爲最基礎的東西。開放Web應用程序安全項目(OWASP中文站, Open Web Application Security Project)是學習安全性的一個很好的出發點。
4.可維護性
可維護性每每被認爲是一個需求。做爲軟件開發者,咱們一般會努力打造「可維護」的軟件,但值得咱們思考的是,代碼庫之後將由誰維護。可維護性很難量化,因此應該認真思考咱們能夠遵循的架構和開發原則(架構規範和代碼規範),由於這些是編寫可維護代碼的驅動。
5.可測試性
指經過測試揭示軟件缺陷的難易程度。
特別地,假設軟件中至少有一個錯誤,軟件在下次測試運行時不能正常工做的可能性。
可測試性的響應度量處理的是測試在發現缺陷方面的效率以及想要達到某個指望的覆蓋範圍,須要用多長時間進行測試。
6.易用性
關注的是對用戶來講完成某個指望任務的難易程度。
分爲如下幾個方面:
有效性、錯誤避免及錯誤處理、用戶自信和滿意度、可學習性。
網上商城是運用ssh開發技術搭建的一個動態的網上商城的電子商務網站。它是在windows系統環境下,以SQL Server數據庫開發平臺,Apache網絡信息服務器,採用struts+spring+hibernate技術開發的網上購物系統。
網上商城須要多個動態網頁之間進行鏈接,struts2提供了支持多種表現層次技術,如jsp,freeMarker等。並且struts2的輸入校驗能夠指定方法進行校驗。當Web瀏覽器請求一個資源時,過濾器Dispatcher查找方法,肯定適當的Action。攔截器自動對請求應用通用功能,如驗證和文件上傳操做。Action的execute方法一般用來存儲和從新得到信息。結果被返回到瀏覽器。Struts2提供了數據校驗,Action 繼承了 ActionSupport 類 ,而該類實現了 Action 、Validateable 、 ValidationAware 、TextProvider、LocaleProviderSerializable 接口。
在Validateable 接口定義了一個 validate() 方法 , 在用戶自定義 Action 類中重寫該方法就能夠實現驗證功能。這樣保證了合法用戶的正常使用,而非法用戶將會被攔截,從而實現了系統質量屬性中的安全性。
網上商城最主要的就是對數據庫的操做。因爲產品類型比較多,所用到的sql語句也是比較多的,若是用通常的數據庫鏈接方式會比較繁瑣。而Hibernate則對JDBC進行了封裝。咱們不用操做數據,直接操做它就好了。Hibernate是一個開源的ORM框架,它的做用就是在關係型數據庫和對象之間作了一個映射。從對象映射到關係,再從關係映射到對象這樣,咱們在操做數據庫的時候,不須要再去和複雜的SQL語句打交道,只要像操做對象同樣操做它就能夠了。由於hibernate作了持久層的封裝,你就不知道數據庫,你寫的全部的代碼都具備可複用性。所以hibernate有移植性。這也實現了質量屬性中的可移植性和可重用性。
網上商城須要的操做不少,同時也須要實例化較多的對象,這無疑增長了代碼量。因此在這部分使用了spring框架。Spring中的IoC控制反起色制,對象建立責任的反轉,在spring中BeanFacotory是IoC容器的核心接口,負責實例化,定位,配置應用程序中的對象及創建這些對象間的依賴。XmlBeanFacotory實現BeanFactory接口,經過獲取xml配置文件數據,組成應用對象及對象間的依賴關係。service層要用dao層對象須要配置到xml配置文件中,至於對象是怎麼建立的,關係是怎麼組合的都交給了spring框架去實現。使用IoC容器更加容易組合對象直接間關係,面向接口編程,下降耦合。Aop能夠更加容易的進行功能擴展,遵循ocp開發原則。也同時實現了質量屬性中的可修改性。
在網站界面設計時,參考了京東,淘寶等網站,界面都是用戶大多熟悉的,方便用戶操做。後臺界面使用了側欄菜單,便於用戶使用。這方面很好的實現了質量屬性的易用性和可用性。
使用SSH框架,能夠對用戶的輸入進行校驗,從而保證數據的正確性,避免錯誤。在界面設計時,添加了不少css文件,使界面的效果更加美觀,符合用戶的平常使用習慣。在安全性方面,除了對用戶的登陸有身份的驗證,在數據庫中同時也對用戶的密碼進行了加密,保證了數據的機密性。在註冊時,有對手機號碼和電子郵箱地址的驗證,保證了數據的真實性和完整性。
基於J2EE的Web應用以其層次性、平臺無關性的優點已經逐漸成爲了電子商務、電子政務、各大型門戶網站主要的解決方案。