2011年10月6日 星期四

SCEA - 觀念彙整筆記


  • Availability - The degree to which a system is accessible. The term 24*7 describes total availablity. This aspect of a system is often coupled with performance.

  • Reliablity - The ability to ensure the integrity and consistency of an application and its transactions.

  • Manageability - The ability to administer and thereby manage the system resources to ensure the availablity and performance of a system with respect to the other capabilities.

  • Flexibility - The ability to address architecutral and hardware configuration changes without a great deal of impact to the underlying system.

  • Performance - The ability to carry out functionality in a timeframe that meets specified goals.

  • Capacity - The ability of a system to run multiple tasks per unit of time.

  • Scalability - The ability to support the required availablity and performance as transactional load increases.






  • Validity - The ability to predict and confirm results based on a specified input or user gesture.

  • Reusability - The ability to use a component in more than one context without changing its internals

  • Security - The ability to ensure that information is not accessed and modified unless doone so in accordance with the enterprise policy.

  • 那些特性不是Functional service level 議題或需求 ?


Scalability


Concurrent connections, data growth rates, user-population, growth rates, storage capacity, performance characteristics, and response-time requirements can be solved by connection pooling and application server clustering.


Security


Application level security is handled by JEE via deployment descriptors, protection domains as well as network security, OS security, and database security.




Adaptability


Extensibility of the application; flexibility of the configuration; and adaptive nature of the compute, storage, and network resources to changing demans from the application and application infrastructure are supported by JEE.



Compatiblity


JEE provides multiplatform support, cross-certification of application infrastructure solutions, multiple client devices, and back-end connectivity to legacy resources.


Manageability


Change management, problem management, asset management, and network/system management.


Availability


Platform reliability, application infrastructure stability, and uptime requirements.




  • Use case 有兩種,Essential and Real,Essential是屬於比較抽象類的描述僅說明系統概觀,而Real類型的就實際地去描述整個process實作內容了。

  • UML - Dependency(依賴關係) ,用開放的虛線箭頭指向依賴

  • UML - Refinement(Implements),虛線搭配空心的箭頭

  • UML - Composition,一個比較特殊化的聚合(Aggregation)關係,這是由多個class組成,共享整個class生命週期,圖表為實心的菱形在持有端。

  • UML - Aggregation,一個class持有其他的class,圖表標示方式為空心的菱形在持有端。

  • UML - Assocation(相依關係),這是表示使用到了其他的class的服務,圖表標示方式為實線,有時候可以搭配方向性的箭頭表示。

  • Sequence Diagram 的圖表標示說明:


1. Simple Message用實線的箭頭來標示出method call傳遞的訊息


2. Message Return 用虛線的反向箭頭標示出return結果


3. Sync Message用實線的三角形表示method call傳遞訊息


4. Async Message用半個實線的三角形表示method call傳遞訊息




  • UML 4+1 View


1. Design View,以結構化的視野角度來看這系統,通常是用class diagram 跟 package diagram 來描述。


2. Process View,以動態行為來看這系統,通常以狀態圖、活動圖、循序圖、以及合作圖來描繪。


3. Component View,用一個較大型的粗略分法像是以軟體、硬體模組來構築。


4. Deployment View,用來結合軟體與硬體之間的實作上的關係


5. Use Case View,用實際的使用者案例來描繪整個活動過程或交易等等。




  • Business Logic 的定義範圍包括有以下資訊


1. 效能考量以及所有的運算邏輯內容,甚至還包括資料驗證。


2. Workflow Management(雖說叫做流程管理,但實際上應該指的是整個ap的生命週期是可控制的),原文中也有提到說像是Session management.


3. 在展示層上面對於資料存取的管理機制




  • Non-functional requirements


    • environment

    • platform

    • tools

    • networking component


  • Ch04 的EIS integration and JEE connector 要特別留意

  • 經常被搞混的Adapter pattern / Proxy Pattern / Decorator Pattern

  • Bridge pattern 跟Abstract Factory 有何不同?

沒有留言: