Notes on Demantra Created 04/25/10 Updated 04/28/10, Updated 05/02/10 Introduction Demantra is a demand planning application that competes with i2, SteelWedge. It was developed by Demantra on the East Coast, and then bought by Oracle in 2006. It supports several modes of use: Demand Management Forecasting S&OP collaboration Some of its unique features are a Bayesian forecasting engine that integrates multiple models, using Bayesian statistics to determine the appropriate weighting of those models. This is highlighted more in 2003-era documents, while the later documents focus mostly on data management and integration. Some of the features include: Analytic engine at the core of the system Configurable levels and series Supporting a product hierarchy Custom “worksheets” Charting and dashboards Collaboration, including approval workflow Support for corporate calendars Most of these features are fairly standard. What also appears to be an advantage is the ability to perform topdown, bottom-up, or middle-out planning. It appears that Demantra is offered as a desktop-based application, or a web-based application. The technology is all J2EE, and the database is Oracle. Resources http://www.oracle.com/us/products/applications/056849.pdf - this is a 10-page white paper summarizing the architecture and use of Demantra for Sales and Operations Planning. Written in 2006. http://www.oracle.com/technology/documentation/demantra.html and select document E05136-09. This is a 300page Implementation guide, for version 7.3, written in 2009. http://download.oracle.com/docs/cd/B53825_03/current/acrobat/730dmtug.pdf - this is 294 page user’s guide for Demantra 7.3, written 2009. Concepts The local structure is shown below: Page 1 of 5 Key Elements Worksheets: A worksheet (sometimes known as a query) is the primary user interface to Demantra data. The data is organized in a set of multi dimensional hierarchies that enable users to slice and dice data in any way. These hierarchies are completely configurable and are easily extended. The Basic Input Data: item, location, sales, promotion (optional) Time Resolution: provides three sizes of base time unit (day, week, or month) and can support hourly time units if needed. Levels: The first interesting feature of any worksheet view is the aggregation level or levels that it uses. An example would be “Account level”. Combinations: Each possible pairing of item and location is known as a combination. Series: A series is a set of data that represents some value that varies over time or that varies between item-location combinations Filtering and Exceptions: Both filters and exceptions both limit the members that users can see. Filters act directly, and exceptions act indirectly Methods: You can define level methods, which the user sees as ordinary right-click menu options in Demantra Security: The Demantra data and menus are secured, so that not all users have access to the same data and options. Forecasting: The Analytical Engine reads data from the database, generates a forecast and performs other analyses, and writes the forecast to the database. Page 2 of 5 User Interface Here is the collaboration screen Here is a typical operations screen: Page 3 of 5 Demantra Data Model Looks a lot like the Serus one What does this suggest to us for the Juliet Development? Slice and dice – these are summation queries. For instance, Select sum(normalizedActivity.amount) group by normalizedActivity.year, normalizedActivity.activityType Is different from Select sum(normalizedActivity.amount) group by normalizedActivity.activityType, normalizedActivity.year Hence, the slice and dice logic is in the query generator. Demantra is very flexible in this regard, and allows for managing queries into worksheets. What types of reports/queries does JIRA support, for example? What about rollups? Here, we would like to get value for sales region 4, which stems from 2 child regions under sales region four, and two splits into subchildren below that. Assume that there are normalizedActivity records at any node, and that the tree is not traversable easily through a query. Page 4 of 5 One approach is to pre-query the region tree, assemible it in memory, find the matching ObjectId values, and create a summation query where the child nodes are specified in the where clause. Page 5 of 5
© Copyright 2026 Paperzz