Enterprise Systems

Java Enterprise Products

We differentiate Java Enterprise Products virtually by a single attribute - it is implemented predominantly in Java or Scala language and runs on the JVM. The runtime depends very much on the product architecture, customer's preferences and functional and non-functional requirements: JEE application container, Spring framework based or even pure Java SE application.

Distributed Applications

Distributed Applications are designed with scalability and performance considerations as the major non-functional requirements. It is not only about JEE facilities to communicate remotely among Beans and multithreading, but the holistic architectural design for multiple instances of modules, services or components to be deployed on a cluster of machines or hosts with predefined capability to grow horizontally.

  • functional components decomposition
  • requests load balancing
  • data flow piping
  • data partitioning
  • shared state contention avoidance
  • asynchronous communication
  • multilevel caching

Event Driven Applications

Event Driven Products are specifically designed to process extremely high incoming request rate. The Complex Events Processing signifies one type of such applications. Virtually by definition event driven application are also distributed in nature, since scalability, concurrency and low latency requirements are not feasible to meet without horizontal load distribution. Event Driven Applications are very common for Telecom area and get increasingly viable for Web applications and Enterprise Application facing multimillion user base clients with critical requests processing requirements.

To design Event Driven Application we apply the following paradigms:

  • Message oriented asynchronous communication and avoidance of RPC based communication
  • Finite State Machines
  • Actor or Agent programming models
  • Functional programming paradigms
  • Load balancing
  • Data partitioning and distribution
  • Shared state contention avoidance
  • In-memory data caching and processing

IntroPro has experience in the following Enterprise System technologies:


Java Enterprise Products

We differentiate Java Enterprise Products virtually by a single attribute - it is implemented predominantly in Java or Scala language and runs on the JVM. The runtime depends very much on the product architecture, customer's preferences and functional and non-functional requirements: JEE application container, Spring framework based or even pure Java SE application.

Distributed Applications

Distributed Applications are designed with scalability and performance considerations as the major non-functional requirements. It is not only about JEE facilities to communicate remotely among Beans and multithreading, but the holistic architectural design for multiple instances of modules, services or components to be deployed on a cluster of machines or hosts with predefined capability to grow horizontally.

  • functional components decomposition
  • requests load balancing
  • data flow piping
  • data partitioning
  • shared state contention avoidance
  • asynchronous communication
  • multilevel caching

Event Driven Applications

Event Driven Products are specifically designed to process extremely high incoming request rate. The Complex Events Processing signifies one type of such applications. Virtually by definition event driven application are also distributed in nature, since scalability, concurrency and low latency requirements are not feasible to meet without horizontal load distribution. Event Driven Applications are very common for Telecom area and get increasingly viable for Web applications and Enterprise Application facing multimillion user base clients with critical requests processing requirements.

To design Event Driven Application we apply the following paradigms:

  • Message oriented asynchronous communication and avoidance of RPC based communication
  • Finite State Machines
  • Actor or Agent programming models
  • Functional programming paradigms
  • Load balancing
  • Data partitioning and distribution
  • Shared state contention avoidance
  • In-memory data caching and processing

IntroPro has experience in the following Enterprise System technologies:


Related Case Studies:

Continuous Delivery

Program Guide Repository

Video Provider PaaS

VOD System