Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздаточный 5 / Lecture_05_2_Architecture_WorldVillgeSAD_examp.doc
Скачиваний:
14
Добавлен:
03.06.2014
Размер:
689.66 Кб
Скачать
  1. Deployment View

  1. Implementation View

    1. Overview

The implementation view depicts the physical composition of the implementation in terms of Implementation Subsystems, and Implementation Elements (directories and files, including source code, data, and executable files).

Unlike logical view it is dependent on technology. The programming language is Java. Also the technologies and frameworks will be used:

Presentation layer – JSP, JavaScript, CSS, Ajax, Html, Struts 2 (tegs)

Business logic layer – Struts 2, Xml (for configuration)

Data access layer – Hibernate, Xml (for configuration)

Database layer – SQL (on MySql server)

The layers of the implementation view fit the layering defined in the Logical view in the following way:

  1. Presentation tier in logical view (orange) is split into presentation layer, which contains JSP pages and HTML prototypes with only html code. Html prototypes will not be part of final products, but helps to split work between different developers.

  2. Business logic tire (blue) defined in logical view is split into two layers in implementation view – control and business logic layers. Control layer serves as an interface between presentation tier and business logic tier. Business logic layer includes business logic itself.

  3. Data access tier (green) was split into hibernate configuration layer, which only makes mapping between entities and database, and database access layer.

  4. Common elements layer (yellow) was split into web configuration layer, common elements layer and entities. Web configuration layer includes configuration for connecting presentation and control layers, which, apart from configuration are independent. Common elements layer includes entities, logging, as in logical view, but also some elements containing common functionality. Entities layer contains entities, as name suggests.

  5. DB layer corresponds to DB layer in logical view.

The diagram below shows relations between layers. The connections specify that one layer uses another, or we could say one layer knows about another.

This diagram gives understanding of dependence between subsystems (layers). For example we can see that entities layer, html prototype layer and database layer are absolutely independent from others. This means that each of them can be easily used in different system and can be developed by independent developer.

In this way this dependencies can be a guide of how to divide work between developers. Also the diagram can be a hint of the sequence of developing. For example it is clear that most subsystems need entities, so developing them must be number one priority.

The diagram below shows overall package hierarchy.

For more details see detailed layers description.

    1. Layers

      1. Presentation Layer

The Presentation layer contains all the components needed to allow interactions with an end-user and a controller. It encompasses the user interface.

According to Logical view this layer is part of presentation tire.

JSP pages, js (JavaScript) and css (Style sheets) are included here.

The diagram shows package hierarchy.

      1. HTML Prototypes Layer

HTML Prototypes layer contains html prototypes - .html files. This layer enables separate working on user interface. In the end html prototypes must be merged with jsp pages.

The diagram shows package hierarchy.

      1. Control Layer

The Control layer contains all the components used to access the domain layer.

According to Logical view this layer is part of business logic tire. It contains Struts 2 actions.

The diagram shows package hierarchy.

      1. Web Configuration Layer

Web configuration layer includes web.xml file, which is standard for web applications and struts configuration xml files. These files will be in WEB-INF directory.

      1. Business Logic Layer

The Business Logic layer contains all the components related to the business logic. Managers are POJOs (plain old java objects). This layer interacts with data access layer.

According to Logical view this layer is business logic tire.

The diagram shows package hierarchy.

      1. Entities layer

This is the model of the system. This layer contains entities (POJOs).

The diagram shows package hierarchy.

      1. Hibernate Configuration Layer

This layer maps database layer to entities. It contains XML hibernate configuration files - *.hbm.xml

The diagram shows package hierarchy.

      1. Database Access Layer

The Database Access layer contains the components needed to enable communication with the database.

According to Logical view this layer is data access logic tire. It contains DAO objects – POJOs, and hibernate specific classes.

The diagram shows package hierarchy.

      1. Common Elements Layer

The Common Element layer contains the components re-used within several layers. Log4j library will be used for logging as part of this layer.

The diagram shows package hierarchy.

      1. Database Layer

This is the database, created with SQL scripts. MySql server will be used.

  1. Size and Performance

Volumes:

  • Estimated calls: 100 a day, with peaks in work timings.

 Performance:

  • Time to process and online payment (credit card validation + confirmation) : less that 10 seconds required

  1. Quality

As far as our application is concerned, the following quality goals have been identified:

 

Scalability:

    • Description : System’s reaction when user demands increase

    • Solution : Jboss or Tomcat web servers support several workload management techniques

Reliability, Availability:

    • Description: In case of failure, application can respond and give appropriate messages. Application doesn’t crash on failure.

    • Solution : Tomcat web server also supports mechanism for handling failures.

Portability:

    • Description: Is reusable and customizable with change in environment.

    • Solution : The system is developed in java so easily portable to any environment.

Security:

    • Description: Authentication and authorization mechanisms make it secure

    • Solution : Webserver has good mechanism for authorization and creating new sessions.

Соседние файлы в папке Раздаточный 5