Application of software architecture model in Java EE

Source: Internet
Author: User
Tags data structures

This paper introduces the background of software architecture and the basic theory of architecture pattern. This paper focuses on the structure, implementation, advantages and disadvantages of the pipeline and filter architecture pattern, and then analyzes how it applies the architecture pattern in the case of the servlet filter of Java EE, and finally expounds the practice of other Java EE applications (jboss and axis).

Software architecture

1, the software architecture to create the background

After the software crisis of the 60 's, people began to pay attention to the research of software engineering. Software experts from different applications have summed up a lot of valuable knowledge. At the outset, people put emphasis on the software design of data structure and algorithm selection, such as Knuth proposed the data structure + algorithm = program. But as the software system becomes larger and more complex, the architecture of software system becomes more and more important. With the increasing degree of software crisis, the present software engineering method has become powerless. For large-scale complex software systems, software architecture has become significantly more important than the algorithms and data structures of the program. In this context, people recognize the importance of software architecture, and that the software architecture system, in-depth research will be to improve the efficiency of software production and solve the software crisis the most promising way. At this time, the study of software architecture has sprung up, there are a phenomenon, such as rational company proposed "architecture-centric" unified software development process (RUP).

2. Software Architecture model

A key issue in software design is the ability to use a duplicate architecture, i.e., the ability to achieve architecture-level software reuse. In other words, can use the same architecture in different software systems. For this purpose, many scholars begin to study and practice the pattern of software architecture. For the first time in

Java EE architecture

At present, the Java EE technology has become the preferred platform for enterprise application, and more and more software systems are built based on Java EE technology. The Java EE represents the advanced software architecture idea, many software architecture patterns are widely used in the Java EE, from this article has introduced each architecture pattern in the Java EE application.

Pipes and filters

1. Overview

Pipelines and filters (pipes and Filters) architecture patterns are a pattern provided for systems that process data flow. It is made up of filters and pipes. Each processing step is encapsulated in a filter component that transmits data through a pipeline between adjacent filters. Each filter can be modified individually, with a single function, and the order between them can be configured. The following figure is a schematic diagram of the pipe/filter pattern. A typical example of a pipe/filter architecture is a program written in a Unix shell. UNIX provides a symbol to connect the various components (processes of Unix) and to provide a process run-time mechanism to implement the pipeline. Another notable example is the traditional compiler. Traditional compilers have been considered as a piping system in which the output of a phase (including lexical analysis, parsing, semantic analysis, and code generation) is input from another stage.

2, the problem

If you are developing a system that must process or transform the input data stream. It is not easy to implement such a system as a single component, for several reasons: the system must be collaboratively developed by several developers at the same time, and the entire system task is naturally decomposed into several processing phases, and the requirements are easily changed. So you need to plan for future flexibility by replacing or reordering the processing steps. By adding such flexibility, it is possible to build with existing processing components. The design of the system, especially the internal connection of the processing steps, must consider the following factors:

Future system upgrades by replacing some of the processing steps, or reorganizing the steps.

In different contexts, small and medium processing steps are easier to reuse than larger ones.

Non-connected processing steps cannot share information.

There are different input data sources,

You can output or store the final results in a variety of ways.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.