Download presentation
Presentation is loading. Please wait.
1
The Power Of Generic Infrastructure
Eli Arlazoroff V.P. R&D 14-Sep-18
2
Why Are We Obsessed With Generic Infrastructure?
Focus on business logic and core capabilities The infrastructure is a development risk The infrastructure is at the project’s critical path Easily keep-up with the constantly changing requirements Re-use application components
3
Generic Infrastructure – The Challenges
It costs more We don’t have the time We do it, actually we have one for every project… It’s too complicated, we want a “simple” application The NIH factor
4
C4I Systems – A Broad Definition
Defense Homeland Security Simulators Communication & Telco Industrial
5
mCore Application server
Where IT Meets Real-Time
6
mCore Application Server
Near Real Time Application Servers IBM Web sphere, Oracle AS, BAE Web Logic, Microsoft BizTalk Server Propriety Hardware Dedicated Operating Systems Psos, VXworks, Rmx mCore Application Server Commercial Database (Oracle,SQL Server) Oracle/SQL Dedicated database Windows OS Wintel Servers and Workstations Standard OS (Windows,Unix,Linux) Cots Servers ( Wintel,Sun,IBM) IT Technologies
7
mCore mCore is a Command and Control Application Server designated for developing systems with the following characteristics: Multiple computers networked system Performing sensors information collection Real-time data processing Presentation for human control
8
Challenges In-memory objects management
High performance and low latencies Several servers and clients The objects are active and initiate actions Multi-threaded environment Distributed over the network Recording & playback Scalable Database integration Robust, fail safe
9
The Solution: Application Server
A unified framework Takes care of common infrastructure Let developers focus on application needs Built-in functionality: Speeds application development Relieves developers from creating these crucial services mCore
10
mCore Concept Open infrastructure for distributed applications
Micro-kernel extendable architecture Service-based approach Native .Net implementation Easy to learn and use for application programmers
11
mCore Principles Proxies used for invocation interception and caching
Defaults to asynchronous programming Interface based programming Acts as a “sand box” for executing application objects Advanced functionality provided through generated code Declarative-based programming Provides transparent thread safe multi-threaded environment Supplies in-memory data caching for application objects How about changing each bullet to a slide (or something like this)
12
mCore Features Optimized for in-memory management of a large number of objects Transparent distribution between servers and clients (objects cloud) Automatic thread safety Object persistence to a database In-memory queries with data caching Optimized scheduling Distributed asynchronous events Recording & playback In-memory transactions
13
mCore Features – Roadmap
Online and offline monitoring Fault tolerance Redundancy
14
Behind the Scenes Project Part Mission Unit Target Warning Area Damage
App mCore mCore Manager Execution Scheduler State Manager Record & Playback Events Distributed Execution Proxy Generator Components mCore Queries logging Building Blocks cache schedule record proxy state threads Common Part
15
a .NET Command and Control Application Server
16
a .NET Command and Control Application Server
17
mClient A Generic Client Infrastructure
18
Problem Description Building a modular UI
Providing common services to UI components Facilitate code reuse Sharing views between components Sharing context menus between components
19
Client Run-Time Configurability
mClient supports simple and intuitive configurability by non-developers at run time Configuration is available at every level: Menus Toolbars Context menus Screen layouts and docking management Each configuration is saved as a workspace System can be configured with different capabilities Configuration level can be controlled (developer, system engineer/administrator, operator)
20
Workspace Management mClient provides run-time control over the user experience The workspace includes: Menu tree Tool bars Context menus Screen layout View state Workspaces can be saved and loaded dynamically by the application
21
Advanced Docking Management
GUI components are developed independent of docking and layout logic Docking and layout logic is fully configured at run-time Dock provider is hidden from the application developer
22
Commands Manager The developer implements commands which are simple functional units, independent of the presentation logic At run-time configuration a catalog of available commands is built Specific commands in each workspace are organized into menus and toolbars Context menus are built of commands The commands model enforces a modular implementation
23
Tools Manager A tool performs actions that needs interaction with the user Tools cascading Tools availability is configurable Enforces a modular implementation
24
Model-View-Presenter Pattern
mClient implements the infrastructure required for MVP pattern Application developer provides the following components: Model – application entities View – entities display area (user control) Presenter – translates an entity state into its visual representation on a specific view Filter – provides system/view based filtering of displayed entities Advantages: Componentized and modular implementation Flexibility and extensibility mClient provides common services (hit testing, focus, etc.) Robustness mClient manages workflow and state between the application components
25
Selection Service Provides client wide selection
Manages entities selection state for use by all views Associates additional data to entities at the client context
26
User Notification Service
Provides a uniform way for modules to send user notifications Default implementation of message service is part of mClient The service can be extended by developing custom providers
27
WPF Ready WPF components can be easily combined with WinForms components WPF mClient is under development Transition to the WPF mClient is seamless
28
Additional Required Features
Stable and robust solution mCore integration Leverages 3rd party GUI components Multi language support (no compilation required) Rendering optimizations – slow & fast objects History & instant playback Authorization & authentication
29
Demo – Ituran
30
Additional Generic Infrastructure
Logging utility Configuration utility ICD generator
31
Generic infrastructure is a key success factor
Conclusion Generic infrastructure is a key success factor Infrastructure can be generic
32
Thank You 14-Sep-18
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.