Less05- Identify Design Mechanisms

Chia sẻ: An Nguyen | Ngày: | Loại File: PPT | Số trang:23

lượt xem

Less05- Identify Design Mechanisms

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Object Oriented Analysis and Design Using the UML Module 5: Identify Design Mechanisms Rational Proprietary and Confidential 1 .Objectives: Identify Design Mechanisms  Understand the purpose of the Identify Design Mechanisms activity and

Chủ đề:

Nội dung Text: Less05- Identify Design Mechanisms

  1. Object Oriented Analysis and Design Using the UML Module 5: Identify Design Mechanisms Rational 1 Proprietary and Confidential
  2. Objectives: Identify Design Mechanisms  Understand the purpose of the Identify Design Mechanisms activity and understand when in the lifecycle it is performed  Explain what Design and Implementation Mechanisms are and how they map from Analysis Mechanisms  Understand some key mechanisms that will be utilized in the case study Rational 2 Proprietary and Confidential
  3. Identify Design Mechanisms in Context I dentfiy  D esi gn  M echani s sm Ar t chiect Rational 3 Proprietary and Confidential
  4. Identify Design Mechanisms Overview Software Architecture Supplementary Design Document Specifications Guidelines Identify Design Analysis Classes Mechanisms Design Model Design Model Rational 4 Proprietary and Confidential
  5. Identify Design Mechanisms: Steps  Categorize clients of analysis mechanisms  Document architectural mechanisms Rational 5 Proprietary and Confidential
  6. Identify Design Mechanisms: Steps  Categorize clients of analysis mechanisms  Document architectural mechanisms Rational 6 Proprietary and Confidential
  7. Identify Design Mechanisms: Steps  Pattern  A common solution to a common problem in a context  Analysis/Design Pattern  A solution to a narrowly-scope technical problem  A fragment of a solution, or a piece of the puzzle  Framework  Defines the general approach to solving the problem  Skeletal solution, whose details may be analysis/ design patterns Rational 7 Proprietary and Confidential
  8. What Is A Design Pattern A design pattern provides a scheme for refining the subsystems or components of a software system, or the relationships between them. It describes a commonly-recurring structure of communicating components that solves a general design problem with a particular context. - Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides 1994.“Design Patterns – Elements of Reusable Object-Oriented Software” Rational 8 Proprietary and Confidential
  9. Review: Why Use Analysis Mechanisms? Oh no! I found a group of classes that has persistent data. How am I supposes to design these things if I don’t even know what database we are going to be using? That is why we have a persistence analysis mechanism. We don’t know enough yet, so we can bookmark it and come back to it later Analysis mechanisms are used during analysis to reduce the complexity of analysis, and to improve its consistency by providing designers with a short-hand representation for complex behavior. Rational 9 Proprietary and Confidential
  10. Categorize Analysis Mechanisms  Purpose  To refine the information gathered on the analysis mechanisms  Steps  Identify the clients of each analysis mechanism  Identify characteristic profiles for each analysis mechanism  Group clients according to their use of characteristic profiles  Proceed bottom-up and make an inventory of the implementation mechanisms that you have at your disposal Rational 10 Proprietary and Confidential
  11. Identify Design Mechanisms: Steps  Categorize clients of analysis mechanisms  Documentation architectural mechanisms Rational 11 Proprietary and Confidential
  12. Design and Implementation Mechanisms Analysis Design Implementation Mechanism Mechanism Mechanism (Conceptual) (Concrete) (Actual) Legacy Data Persistency RDBMS JDBC New Data Persistency OODBMS ObjectStore Distribution Remote Method Java 1.2 from Sun Invocation (RMI) Analysis Design Implementation Rational 12 Proprietary and Confidential
  13. Review: Documenting Architectural Mechanisms  Architectural Mechanisms can be treated as patterns (i.e., stereotyped parameterized collaboration) Template Parameters Pattern Name Structural Aspect Behavioral Aspect Documented in Design Guidelines Rational 13 Proprietary and Confidential
  14. Review: Course Registration Analysis Mechanisms  Persistence  Distribution  Security  Legacy Interface Rational 14 Proprietary and Confidential
  15. Design Mechanisms: Persistency: RDBMS: JDBC  Persistence characteristics  Granularity  Volume  Duration  Access mechanism  Access frequency (creation/deletion, update, read)  Reliability Note: JDBC is the standard Java API for taking to a SQL database Rational 15 Proprietary and Confidential
  16. Example: Persistency: RDBMS: JDBC PersistencyClient Roles to be filled by the (from SamplePersistency Client) designer applying the PersistentClassList (from SamplePersistentClass) mechanism new() add(c: PersistentClass) DBClass 1 0..* create() : PersistentClass read(searchCriteria : string) : PersistentClassList PersistentClass update(c : PersistentClass) (from SamplePersistentClass) delete(c : PersistentClass) 1 getData() setData() command() new() DriverManager (from java.sql) 1 getConnection(url, user, pass) : Connection Statement ResultSet (from java.sql) Connection (from java.sql) (from java.sql) executeQuery(sql : String) : ResultSet createStatement() : Statement getString() : string executeUpdate(sql : String) : int Rational 16 Proprietary and Confidential
  17. Example: Persistency: RDBMS: JDBC: Initialize : DBClass : DriverManager 1. getConnection(url, user, pass) Rational 17 Proprietary and Confidential
  18. Example: Persistency: RDBMS: JDBC: Create : : DBClass : : Connection : Statement PersistencyClient PersistentClass 1. create( ) 1.1. New() 1.2. getData( ) 1.3. createStatement( ) 1.4. executeUpdate(String) Rational 18 Proprietary and Confidential
  19. Example: Persistency: RDBMS: JDBC: Read : : DBClass : Connection : Statement : ResultSet : : PersistencyClient PersistentClassList PersistentClass 1. read(string) returns a The SQL statement Statement built by the DBClass 1.1. createStatement( ) using the given criteria is passed to The criteria used to executeQuery() access data for the 1.2. executeQuery(string) persistent class Create a list to hold all 1.3. new( ) retrieved data 1.4. new() Repeat these operations for each element returned from 1.5. getString( ) the executeQuery() called for each command. attribute in the 1.6. setData( ) class The PersistentClassList is loaded with the data retrieved from the database. 1.7. add(PersistentClass) Add the retrieved course offering to the list to be returned Rational 19 Proprietary and Confidential
  20. Example: Persistency: RDBMS: JDBC: Update : : DBClass : : Connection : Statement PersistencyClient PersistentClass 1. update(PersistentClass) 1.1. getData( ) 1.2. createStatement( ) execute SQL statement 1.3. executeUpdate(string) Rational 20 Proprietary and Confidential
Đồng bộ tài khoản