<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The Business Intelligence Blog</title>
	<atom:link href="http://biguru.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://biguru.wordpress.com</link>
	<description>Learning for BI professionals</description>
	<lastBuildDate>Fri, 13 Nov 2009 13:21:09 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='biguru.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/0c6bb3ad2680fc1da0be59158e298f43?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>The Business Intelligence Blog</title>
		<link>http://biguru.wordpress.com</link>
	</image>
			<item>
		<title>Review of the BT Summit – Cloud computing, SOA and BI tracks</title>
		<link>http://biguru.wordpress.com/2009/11/13/review-of-the-bt-summit-%e2%80%93-cloud-computing-soa-and-bi-tracks/</link>
		<comments>http://biguru.wordpress.com/2009/11/13/review-of-the-bt-summit-%e2%80%93-cloud-computing-soa-and-bi-tracks/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 08:12:30 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Amzon]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[BT Summit]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[CMIS]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[Enterprise 2.0]]></category>
		<category><![CDATA[Excel 2010]]></category>
		<category><![CDATA[Google apps]]></category>
		<category><![CDATA[Hadoop]]></category>
		<category><![CDATA[Hive]]></category>
		<category><![CDATA[IaaS]]></category>
		<category><![CDATA[Infovis]]></category>
		<category><![CDATA[JSR 170]]></category>
		<category><![CDATA[OBIA]]></category>
		<category><![CDATA[OBIEE]]></category>
		<category><![CDATA[Oracle BI server]]></category>
		<category><![CDATA[PaaS]]></category>
		<category><![CDATA[PowerPivot]]></category>
		<category><![CDATA[RACE]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[REST vs SOAP]]></category>
		<category><![CDATA[RESTful web services]]></category>
		<category><![CDATA[SaaS]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SLATES]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[XAM]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=54</guid>
		<description><![CDATA[I attended the Business Technology Summit in Bangalore last week – 3rd and 4th November. There were 3 tracks on cloud computing, Service Oriented Architecture and Business Intelligence, and I chose a mix of sessions across each.
Overall impression: The BT Summit was heavily focused on cloud computing with half of second day having a deep [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=54&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I attended the <a href="http://www.btmarch.com/btsummit/">Business Technology Summit in Bangalore</a> last week – 3<sup>rd</sup> and 4<sup>th</sup> November. There were 3 tracks on cloud computing, Service Oriented Architecture and Business Intelligence, and I chose a mix of sessions across each.</p>
<p><strong>Overall impression: </strong>The BT Summit was heavily focused on cloud computing with half of second day having a deep dive into Amazon’s EC2 cloud offering, and several keynotes. SOA and web services, REST and similar architectural sessions were interspersed but definitely not a first-class citizen. BI came a poor third with a poor choice of sessions, and more of a rehash of what is out there for everyone, rather than something on the cutting-edge including use of appliances and columnar databases, as also in-memory databases and use of Flash and AJAX for interactive BI front-ends.</p>
<p><strong>Session-wise review:</strong> (Speaker profiles available <a href="http://www.btmarch.com/btsummit/speakers.html">here</a>). I was able to speak to and ask questions of Vinod Kumar, Vijay Doddavaram, Abhinav Agarwal and Dr. Bob Marcus.</p>
<p><strong>Keynotes:</strong></p>
<ul>
<li><strong>Smart      services, bright future</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Howard Charney</a></li>
</ul>
<p>Probably the highlight of the keynotes, this was a pep-talk about the inevitable interconnected future with smart products and services and for good measure Charney threw out some statistics on broadband growth and bandwidth usage and India’s readiness and potential in the scheme of things.</p>
<ul>
<li><strong>Give      cloud a chance</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Ramkumar Kothandaraman</a></li>
</ul>
<p>The worst of the lot – this started by comparing the spectrum of offerings in the cloud from <a href="http://aws.amazon.com/ec2/">Amazon’s DIY EC2 and AWS</a>, <a href="http://code.google.com/appengine/">Google appengine and apps</a> to <a href="http://www.microsoft.com/windowsazure/">Microsoft’s Azure</a> and ended up as a promo touting Azure as the best buy among all.</p>
<ul>
<li><strong>C</strong><strong>loud      computing: State of the union address</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Shouvick Mukherjee</a></li>
</ul>
<p>A very good keynote, focusing on what makes sense to migrate to the cloud and what doesn’t, what are the hidden costs, the myth of unlimited elasticity in the cloud and what Yahoo is doing to use open source software like <a href="http://hadoop.apache.org/">Hadoop</a> and <a href="http://wiki.apache.org/hadoop/Hive">Hive</a> for cloud computing. In the short time span, Shouvick also tried to address some of the other considerations – including re-architecting existing applications, availability, data storage and movement considerations.</p>
<ul>
<li><strong>Managing      IT in turbulent times</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Som Sharma</a></li>
</ul>
<p>This post-lunch keynote by Sharma was a rambling talk on how technology keeps redefining our lives, and why it is important to think outside-the-box. He used the example of the iPhone to illustrate how such thinking has the potential to alter the established rules of the industry and redefine it as we know it.</p>
<ul>
<li><strong>A New      world to protect</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Nils Puhlmann</a></li>
</ul>
<p>Puhlmann provided the security perspective on how easy it to break/hack enterprise systems and how anti-virus and anti-spyware are always playing catch-up, the entire economy that is spawned by the “bad-guys” in technology and why our systems need to be smart and be built from the ground-up for security rather than as an afterthought. He provided valuable insights into what questions we should ask ourselves as we embrace cloud computing, the changing technology landscape making it easy for consuming information but easier still for the security breachers. Puhlmann concluded by suggesting it may be worthwhile including a level of risk assessment and mitigation, and collaboration with ethical hackers, rather than trying to do the impossible of removing all security threats.</p>
<ul>
<li><strong>Moving      towards a virtual enterprise</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Srinivas Varadarajan</a></li>
</ul>
<p>Barely managed to sleep through it – this one talked about moving towards a virtual enterprise – with a focus on virtualized architecture, including cloud computing. As boring as they can get.</p>
<p><strong>Other sessions:</strong></p>
<ul>
<li><strong>SOA,      Composite Applications, and Cloud Computing:</strong> <strong>Three pillars of a modern      technology solution</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Robert Schneider</a></li>
</ul>
<p>Robert  Schneider presented the different facets of SOA, Composite applications (superset of mash-ups) and Cloud computing and contrasted them regarding the time to yield benefits, the maturity of the vision, involvement and buy-in from business and where they lie in the tactical-strategic plane. There wasn’t anything regarding why we are stuck with these three for a modern technology solution, or what other paradigms are out there beyond the old-world enterprise computing framework, possibly due to time constraints.</p>
<ul>
<li><strong>Self-service      analysis and the future of Business Intelligence</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Vinod Kumar</a></li>
</ul>
<p>A lot of the BI folks were waiting for this, as Vinod performed the <a href="http://blogs.msdn.com/excel/archive/2009/07/14/sneak-preview-of-project-gemini.aspx">Project Gemini (Office 2010 Excel and PowerPivot)</a> demo live for the first time in India, with several folks, including yours truly, sitting on the stairs. [We have had to rely on <a href="http://www.youtube.com/geminute">Youtube videos and MS Office 2010 preview videos</a> earlier]. The demo was impressive fetching over 13 million records into Excel using a standard DDR laptop, using compression and in-memory technologies. The bigger question around unleashing another round of Excel hell went unanswered due to time constraints, however the presentation probably hinted at Microsoft’s vision of “self-service BI” or so-called “underground-BI” as the power-users of Excel (estimated at 2M worldwide, at 4% of the Excel user base) have been doing. Microsoft’s strategy around pushing SharePoint adoption in the Enterprise was made clear tacitly with SharePoint being the only “portal” to publish and share BI analysis (typical size of these Excel spreadsheets is upwards of 200MB) with other users in the enterprise.</p>
<ul>
<li><strong>Designing      and Implementing RESTful web services</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Eben Hewitt</a></li>
</ul>
<p>Eben Hewitt started off with a very brief comparison between SOAP (Simple Object Access Protocol) modeled more on the lines of RPC (Remote Procedure Call) and REST (Representational State Transfer) and clarified that REST is more an architectural style rather than specifications. The remainder of the talk delved into details of implementation of REST – usage of simple ‘verbs’ and complexity in ‘nouns’, uniform interface, using named resources, java REST frameworks like Jersey, MIME types – JSON, XML, YAML and HTTP operations supported – POST, GET, PUT and DELETE.</p>
<ul>
<li><strong>Business      Intelligence project execution on a shoestring</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Rajesh Ramaswamy</a></li>
</ul>
<p>I attended with some expectations on how a BI project can be executed possibly with open-source or free software like MySQL/Postgres, Pentaho/Talend, Jaspersoft/MicroStrategy reporting suite etc., but was highly disappointed by the presentation. Ramaswamy spoke on BI usage, barriers to BI adoption, costs of BI implementation and spewed statistics like m&amp;m’s with cursory references to Forrester, Gartner and “research studies”, but there wasn’t anything tangible on how to go about a project execution except for some common-sense talk on “evaluating options” between open-source and licensing costs, offshoring and outsourcing, RDBMS vs. analytica databases and appliances etc.</p>
<ul>
<li><strong>Business      Intelligence – Leveraging and Navigating during current challenging times</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Vijay Doddavaram</a></li>
</ul>
<p>Vijay spoke of the current global economic downturn and how it had taken everyone unawares during the downturn as well as when the current quarter the tide seems to have returned. With the example of a fictitious company in China, he illustrated the importance of trade-off between tactical and strategic decision making and whether and how business intelligence can make a difference in either a downturn and the upswing (whether it is a U, V, or a W curve). Thought-provoking, one couldn’t help feel that BI software has not yet eliminated the “intelligence” that people bring to the table, and made a distinct point about the “human analysis/intelligence” against the out-of-the-box actionable-intelligence marketed by the BI vendors. It would have been interesting to prolong the discussion, with a focus on the “<a href="http://en.wikipedia.org/wiki/Predictive_analytics">predictive-analytics</a>” offerings in the market (from SAP, WPC, SPSS and the open-source R etc.), we had once again run out of time, and it was the last session of the day as well.</p>
<ul>
<li><strong>Towards      a unified Business Intelligence and Enterprise Performance Management      Strategy</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Abhinav Agarwal</a></li>
</ul>
<p>Abhinav is from Oracle and he used this session to basically present the BI and EPM strategy of Oracle. Refreshing when contrasted with the usual Oracle marketing hype, Abhinav made it a point to stress the difficulty of delivering best-in-breed products due to numerous acquisitions and the inevitable integrations compared to the disruptive start-ups which could be one-trick ponies but nevertheless manage to push the technology envelope. Most of the session focused on <a href="http://www.oracle.com/technology/products/bi/enterprise-edition-platform-components.html">Oracle BI server offering</a> and the roadmap of integrating with the <a href="http://www.oracle.com/technology/products/middleware/index.html">Fusion middleware</a>, and brief touchpoints on the capabilities of the Oracle BI server: federated queries (acquired from nQuire, which Siebel systems had acquired, prior to being bought by Oracle), and real-time updates, including <a href="http://www.oracle.com/appserver/business-intelligence/docs/oracle-rtd-product-brief.pdf">Oracle RTD</a> (Real-time Decisions) and the segregation of the BI and EPM software offerings.</p>
<ul>
<li><strong>10      Things software architects should know</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Eben Hewitt</a></li>
</ul>
<p>I was able to attend part of it, but for the most part- the bottomline of this talk was the trade-offs architects need to make and understanding there may not be a “solution” to a problem, it may just be “moving the problem” – the idea that each “solution” brings its own issues and tradeoffs into the picture. Being more focused on java APIs and cloud computing frameworks, it could have done better with something related to networks and database architecture in general for audience to relate better (for most of my time, I couldn’t relate to a BI applications and data-warehousing infrastructure).</p>
<ul>
<li><strong>Cloud      initiatives and standards roadmaps</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Dr. Bob Marcus</a></li>
</ul>
<p>Being late from an overcrowded dining hall, I was able to attend part of this. Bob spoke of the various public and private initiatives including those from the federal government, NASA <a href="http://nebula.nasa.gov/">Nebula </a>and made the distinction early on between the types of offerings on the cloud: <a href="http://en.wikipedia.org/wiki/Software_as_a_Service">SaaS </a>(Software as a service), <a href="http://en.wikipedia.org/wiki/Infrastructure_as_a_service">IaaS </a>(Infrastructure as a service) and <a href="http://en.wikipedia.org/wiki/Platform_as_a_service">PaaS</a> (Platform as a Service). He mentioned in passing the <a href="http://www.data.gov/">data.gov</a> and <a href="https://apps.gov/cloud/advantage/main/start_page.do">apps.gov</a> initiatives of the Obama administration as also about <a href="http://www.disa.mil/race/">RACE </a>(Rapid Access Computing Environment) from the Dept. of Defense &#8211; Defense Information Systems Agency.</p>
<ul>
<li><strong>Building      Enterprise      Dashboards</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Vivek Khurana</a></li>
</ul>
<p>Vivek Khurana did a very short presentation to an overflowing hall on clichéd but nevertheless important aspects of <a href="http://www.perceptualedge.com/examples.php">information visualization</a> while designing dashboards: clutter vs. simplicity, proper designing of KPIs, importance of delivery to mobile devices, and learning from news aggregation sites and portals on presentation.</p>
<ul>
<li><strong>Implementing      Enterprise      2.0 using Open Source products</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Udayan Banerjee</a></li>
</ul>
<p>Banerjee did a great job of presenting what his vision of implementing Enterprise 2.0 in NIIT was – implementing <a href="http://blogs.zdnet.com/Hinchcliffe/?p=71">SLATES </a>(coined by Andrew McAfee) – Search, Links, Authoring, Tags, Extensions and Signals. Within half-an-hour he navigated us through using open-source products for collaboration using blogs and wiki (MediaWiki), using single-sign-on with enterprise databases, using links and tag clouds and integrating Search as well as implementing a text-based instant messenger.</p>
<ul>
<li><strong>ECM-CMIS      and the emergence of standards</strong> by <a href="http://www.btmarch.com/btsummit/speakers.html">Alan Pelz-Sharpe</a></li>
</ul>
<p>I had missed the earlier session of Alan on lessons learnt using SharePoint, so I made it a point to attend the last of this at the summit – even though it meant I had no clue sometimes of what was being talked about! Alan spoke of the emergence of the multi-vendor <a href="http://blogs.the451group.com/information_management/2008/09/10/cmis-and-industry-standards-in-ecm/">CMIS </a>standard for Enterprise Content Management – the various facets of ECM – from digital and media assets, email archiving, Internet content, web analytics, document types, rich media and the problems with the earlier Java standards like JSR 170 – most notably the absence of support from Microsoft. He also spoke about the vendor landscape and a 9-block rating similar to Gartner’s magic quadrant, plus various other important standards, including <a href="http://en.wikipedia.org/wiki/Xam">XAM </a>– eXtensible Access Method – a storage standard developed by SNIA (Storage and Networking Industry Association)</p>
<p><strong>Presentation files:</strong> Most presentation files are available <a href="http://www.btmarch.com/btsummit/2009/presentationFiles.html">here</a>. You&#8217;ll need to register though to download.</p>
<p>- Maloy</p>
 Tagged: Amzon, AWS, Azure, BI, BT Summit, cloud computing, CMIS, EC2, Enterprise 2.0, Excel 2010, Google apps, Hadoop, Hive, IaaS, Infovis, JSR 170, OBIA, OBIEE, Oracle BI server, PaaS, PowerPivot, RACE, REST, REST vs SOAP, RESTful web services, SaaS, security, SharePoint, SLATES, SOA, XAM <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/54/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=54&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2009/11/13/review-of-the-bt-summit-%e2%80%93-cloud-computing-soa-and-bi-tracks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
		<item>
		<title>Evolution of the BO XI platform &#8211; from XI R2 to XI 3.1 SP2</title>
		<link>http://biguru.wordpress.com/2009/09/14/evolution-of-the-bo-xi-platform-from-xi-r2-to-xi-3-1-sp2/</link>
		<comments>http://biguru.wordpress.com/2009/09/14/evolution-of-the-bo-xi-platform-from-xi-r2-to-xi-3-1-sp2/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 02:00:46 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[@prompt]]></category>
		<category><![CDATA[backward compatibility]]></category>
		<category><![CDATA[BI services]]></category>
		<category><![CDATA[BOBJ]]></category>
		<category><![CDATA[CCM]]></category>
		<category><![CDATA[CMC]]></category>
		<category><![CDATA[csv]]></category>
		<category><![CDATA[database delegated]]></category>
		<category><![CDATA[fold-unfold]]></category>
		<category><![CDATA[query on query]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[SIA]]></category>
		<category><![CDATA[Web Intelligence]]></category>
		<category><![CDATA[XI]]></category>
		<category><![CDATA[XI 3.0]]></category>
		<category><![CDATA[XI 3.1]]></category>
		<category><![CDATA[XI 3.1 SP2]]></category>
		<category><![CDATA[XI R2]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=49</guid>
		<description><![CDATA[With BO XI 3.1 SP2 out in July this year, it is probably time to make a trip down the years to find out how the XI platform has evolved and matured.
The timeline:

XI R2 SP2 &#8211; service pack release in March 2007 with productivity pack &#8211; QaaWS and LiveOffice connectors
XI 3.0 &#8211; new major release [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=49&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>With BO XI 3.1 SP2 out in July this year, it is probably time to make a trip down the years to find out how the XI platform has evolved and matured.</p>
<p><strong>The timeline:</strong></p>
<ul>
<li>XI R2 SP2 &#8211; service pack release in March 2007 with productivity pack &#8211; QaaWS and LiveOffice connectors</li>
<li>XI 3.0 &#8211; new major release in February 2008 &#8211; the first release after SAP acquired BOBJ in October 2007</li>
<li>XI 3.1 &#8211; upgrade release in September 2008</li>
<li>XI 3.1 SP2 &#8211; service pack release on 24 July 2009 &#8211; with enhanced SAP integration</li>
</ul>
<p><strong><br />
Where were we with XI R2:</strong></p>
<ul>
<li>Change to Crystal service-oriented platform (Crystal 10 architecture)</li>
<li>Ability to plug Crystal Reports, Web Intelligence, Desktop Intelligence, OLAP Intelligence, Dashboard Manager, Performance Manager directly into the framework</li>
<li>Single repository, security, system management, publishing, portal</li>
<li>Infoview (Replaced old BO Infoview and Crystal ePortfolio)</li>
<li>Central Management Console (CMC)</li>
<li>Import Wizard (upgrades from BO 5, 6, XI, Crystal 8.5, 9, 10)</li>
<li>Desktop Intelligence (new name for BO full client + ability to query and display Unicode data)</li>
<li>Publishing, Encyclopedia, Discussions, OLAP Intelligence, Performance Management</li>
<li>Changes to Data Integrator, Composer, Metadata Manager</li>
</ul>
<p><strong>XI 3.0 (Titan)</strong></p>
<ul>
<li>All administration moved to the Central Management Console &#8211; CMC – with new GUI</li>
<li>Bulk action support in CMC</li>
<li>Central Configuration Manager &#8211; CCM is still there (to manage multiple nodes) with 2 entries : Tomcat &amp; SIA</li>
<li>Server Intelligence Agent (SIA) &#8211; handles service dependencies</li>
<li>Server Intelligence in CMC – clone server deployments</li>
<li>Repository Federation – replicate repository on other BO cluster</li>
<li>Repository Diagnostic Tool (Infostore vs FileStore – repair inconsistencies between CMS database entries and files in FRS)</li>
<li>Improved Import Wizard</li>
<li>Web Intelligence Rich Client (offline viewing of WebI reports, no session timeout)</li>
<li>Data change tracking in Web Intelligence</li>
<li>Designer – “Database delegated” projection on measures</li>
<li>Universe based on stored procedures</li>
<li>Prompt syntax extension (persistent/primary_key undocumented features, finally!)</li>
<li>Personal data provider – combine data from Excel, text, csv and get into a single report</li>
<li>Smart cubes – support for non-additive measures (percentages, ratios) and RDBMS analytical functions</li>
<li>Multi language support – dimensions, measures, prompts automatically localized to report viewer’s language</li>
<li>Native Web Intelligence printing (without PDF)</li>
<li>Enbed image in Web Intelligence report</li>
<li>Hyperlinks dialog box makes links easy to create – syntax generated by WebIntelligence (remember opendocument()?)</li>
</ul>
<p><strong>What&#8217;s new in XI 3.1</strong></p>
<ul>
<li>Support for multi-forest Active Directory authentication</li>
<li>IP v6 support</li>
<li>Lifecycle Management Tool (LCMBIAR files, replace Import Wizard)</li>
<li>Saving Web Intelligence documents as CSV (data-only files) – new sheets for every 65K rows of data</li>
<li>Web Intelligence Autosave</li>
<li>“Begin_SQL” SQL prefix variable</li>
<li>Prompt syntax extension (support for key-value pairs!)</li>
<li>Business Objects Voyager enhancements</li>
<li>Live Office enhancements</li>
<li>WebIntelligence &#8211; Automatic loading of cached LOVs, interactive drag-drop, report filter bar, cancel refresh-on-open</li>
</ul>
<p><strong>What&#8217;s new in XI 3.1 SP2</strong></p>
<ul>
<li>WebIntelligence Input controls</li>
<li><a href="http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/13566">OLAP universe based access to SAP BW using MDX</a></li>
<li>BI services &#8211; expose WebIntelligence document components as web services</li>
<li>Query on Query</li>
<li>Fold-unfold UI improvements</li>
<li>New SDKs &#8211; <a href="https://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/15320">WebI Calculation Extension Points, Custom Data Provider plugin, Interactive viewing extension and integration points</a></li>
<li>New universe SQL parameter SMART_AGGREGATE allows using most detailed aggregate tables</li>
<li>@Prompt editor in universe Designer</li>
<li><em><span style="color:#ff0000;">Backward compatibility is broken. Web Intelligence documents created using BO XI 3.1 SP2 cannot be opened in BO XI 3.1</span></em></li>
</ul>
<p>In one of my next posts, I&#8217;ll cover selected new features in detail.</p>
<p>-Maloy</p>
 Tagged: @prompt, backward compatibility, BI services, BOBJ, CCM, CMC, csv, database delegated, fold-unfold, query on query, SAP, SIA, Web Intelligence, XI, XI 3.0, XI 3.1, XI 3.1 SP2, XI R2 <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=49&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2009/09/14/evolution-of-the-bo-xi-platform-from-xi-r2-to-xi-3-1-sp2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
		<item>
		<title>Developing a Business Objects security model &#8211; BO XI 3.1</title>
		<link>http://biguru.wordpress.com/2009/08/28/developing-a-business-objects-security-model-bo-xi-3-1/</link>
		<comments>http://biguru.wordpress.com/2009/08/28/developing-a-business-objects-security-model-bo-xi-3-1/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 15:14:43 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[security model]]></category>
		<category><![CDATA[XI 3.1]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=43</guid>
		<description><![CDATA[While developing a Business Objects security model, you need to focus on the different types of security:
Functional Security &#8211; this would govern access to specific application features, e.g. editing reports, drilling down, ability to schedule reports etc.
Data Security &#8211; this governs access to specific data &#8211; rows or columns or cells as per authorization
Infrastructure Security [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=43&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>While developing a Business Objects security model, you need to focus on the different types of security:</p>
<p><strong>Functional Security</strong> &#8211; this would govern access to specific application features, e.g. editing reports, drilling down, ability to schedule reports etc.</p>
<p><strong>Data Security</strong> &#8211; this governs access to specific data &#8211; rows or columns or cells as per authorization</p>
<p><strong>Infrastructure Security</strong> &#8211; governs physical and electronic access to systems</p>
<p>The infrastructure security is the first to be designed. This typically happens when the architecture is being drawn up. It is important to get as much early visibility into the various ways the system is likely to be used, not only in the present but also in the foreseeable future, so that adjustments and capacity for future planning can be done to the extent possible. This also helps in deciding on the type of data security that would be required initially, though this can change over time.</p>
<p>The various security considerations for access control include:</p>
<p><strong>Identification </strong>- whether it is a valid user? Usually taken care of by password management</p>
<p><strong>Authentication </strong>- whether the user is allowed to use the system? This can be done by BO or externally with a third party tool, including but not limited to LDAP / Active Directory etc.</p>
<p><strong>Authorization </strong>- governs fine grained entitlements or access &#8211; which parts of the application and data can the user access?</p>
<p>Let us look at the security approaches to authorization. (I will cover the various approaches to authentication and single-sign-on in a separate post).</p>
<p><strong>Security policies can be held in the BO repository (functional + data security)</strong></p>
<ul>
<li>Authentication can be performed by BO or externally</li>
<li>Incorporates security policies in the BO repository</li>
<li>Supports row-level and column-level security</li>
<li>Data security can be controlled at application, connection, universe and report level</li>
</ul>
<p><strong>Custom security utilizing security tables, and joins forced in Universe Designer  (functional + data security)</strong></p>
<ul>
<li>Includes custom-built security tables to store users, groups, privileges etc. The joins to these are forced in report queries.</li>
<li>BO users are mapped to data in these tables &#8211; the data can be maintained with ETL processes</li>
<li>The @BOUSER variable can be used to get the user logins and can be used for implementing row/column level security</li>
<li>Allows both user-centric and object-centric views by querying the security tables</li>
</ul>
<p><strong>Table mapping or virtual private views &#8211; can be implemented with Oracle VPD and label security </strong></p>
<ul>
<li>Allows fine grained access control with airtight cell-level security if required</li>
<li>Policies setup in Oracle VPD, labels control column access, multiple views for multiple users</li>
<li>Works for ad-hoc queries also</li>
<li>Requires thorough testing to prevent sql-injection attacks; can lead to performance problems due to additional predicates</li>
<li>Can easily become overly complex; however a must-have where airtight security is required</li>
</ul>
<p><strong>Third party authorization using SiteMinder or LDAP or Active Directory</strong></p>
<ul>
<li>Authorization is based on directory entries in LDAP or Active Directory (people/group/role/IP address or rule)</li>
<li>Fine grained access control still requires some form of usage of BO or the database for auxiliary authorization.</li>
</ul>
<p>What should be the preferred approach? The answer is &#8220;Well, it depends!&#8221; The approach depends on what is actually required and is feasible at your particular organization. In all cases however (except for VPD), there are a few best practices to be followed, if BO is used and CMC is used to configure security:</p>
<ul>
<li>Grant rights to groups on folders, rather than individual objects to minimize complexity</li>
<li>Use pre-defined rights wherever possible, and Custom Access Levels instead of Advanced Rights</li>
<li>Avoid breaking inheritance to minimize complexity and simplify maintenance</li>
<li>Add multiple users to the Administrators group, rather than sharing the administrator account, for better traceability</li>
<li>Set up an audit policy and periodically review your deployment</li>
<li>Document and maintain the security structure outside the <strong>CMC </strong>- a spreadsheet can be a good choice.</li>
<li>Use <strong>Permissions Explorer</strong>, <strong>Check Relationships </strong>and <strong>Security Query</strong> to diagnose and correct security issues. These are also useful to verify tasks are completed without issues, while adding/deleting/modifying principals/objects/rights.</li>
<li>Allocate time and document the process for the administrators and support staff and prepare for their training on new workflows in CMC in BO XI 3.1</li>
</ul>
<p>- Maloy</p>
 Tagged: security model, XI 3.1 <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=43&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2009/08/28/developing-a-business-objects-security-model-bo-xi-3-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
		<item>
		<title>Change the location Google Desktop Search indexes your data</title>
		<link>http://biguru.wordpress.com/2009/07/26/change-the-location-google-desktop-search-indexes-your-data/</link>
		<comments>http://biguru.wordpress.com/2009/07/26/change-the-location-google-desktop-search-indexes-your-data/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 11:15:03 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[bo]]></category>
		<category><![CDATA[BOBJ]]></category>
		<category><![CDATA[business intelligence]]></category>
		<category><![CDATA[Business Objects explorer]]></category>
		<category><![CDATA[data_dir]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google desktop]]></category>
		<category><![CDATA[google desktop search]]></category>
		<category><![CDATA[information explosion]]></category>
		<category><![CDATA[Polestar]]></category>
		<category><![CDATA[registry]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=34</guid>
		<description><![CDATA[Desktop search has become an important component of our everyday work. With the amount of information explosion, it is only natural that users and enterprises move towards enabling desktop (and enterprise) search for users – subject of course to appropriate security and access controls. BI vendors have moved into this new business space that has [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=34&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Desktop search has become an important component of our everyday work. With the amount of <a title="information explosion" href="http://blogs.zdnet.com/Gardner/?p=3091">information explosion</a>, it is only natural that users and enterprises move towards enabling desktop (and enterprise) search for users – subject of course to appropriate security and access controls. BI vendors have moved into this new business space that has opened up and seems to be one of the most promising. While Business Objects had announced support for the Google Search appliance and Google Desktop <a title="back in 2006" href="http://www1.sap.com/about/newsroom/businessobjects/20060515_006446.epx">back in 2006</a>, their most important announcement lately has been the launch of the <a title="Business Objects Explorer" href="http://www1.sap.com/solutions/sapbusinessobjects/large/intelligenceplatform/bi/search-navigation/explorer/explorer-non-accelerated/index.epx">Business Objects Explorer</a> (formerly known as Polestar) product. More about that in a later post…</p>
<p><a title="Google Desktop Search" href="http://desktop.google.com/">Google Desktop Search</a> is one of the most widely used desktop search appliances.  One would expect it to have an intelligent installer as well. Unfortunately, it doesn’t allow you to either choose the installation directory or the location for the search index. It installs in your system drive without providing any means to modify it from the Options setting. This can be quite annoying and frustrating if your system drive is not set up with a huge amount of space, as the Google Desktop search index will expand soon and hog a lot of space (up to 2 GB) on the system drive. I will show a tip here on how you can get around this issue by modifying the location of the Google Desktop search index to change it from the default system drive and without having to rebuild the index.</p>
<p>1. Right click and exit Google Desktop.</p>
<p><img class="alignnone size-full wp-image-35" title="Exit_Google_Desktop" src="http://biguru.files.wordpress.com/2009/07/exit_google_desktop.png?w=228&#038;h=246" alt="Exit_Google_Desktop" width="228" height="246" /></p>
<p>2. Open Windows Explorer and navigate to C:\Documents and Settings\&lt;username&gt;Local Settings\Application Data\Google\&lt;google desktop search&gt;</p>
<p><img class="alignnone size-full wp-image-36" title="Navigate_To_Google_Desktop_Search_Folder" src="http://biguru.files.wordpress.com/2009/07/navigate_to_google_desktop_search_folder.png?w=451&#038;h=262" alt="Navigate_To_Google_Desktop_Search_Folder" width="451" height="262" /></p>
<p>Note: If you’re unable to see “Local Settings” – (it’s a hidden folder) – change your folder options from Tools – View – Show hidden files and folders.</p>
<p>3. Move the &lt;google desktop search&gt; folder to a different drive, e.g. D:\ Google Desktop\&lt;google desktop search&gt;</p>
<p>4. Open the Windows registry editor from Start – Run – typing regedit – Hit Enter.</p>
<p>5. Navigate to HKEY_CURRENT_USER\Software\Google\Google Desktop.</p>
<p>6. Select the “data_dir” key in right pane, double-click to change its value to the new location of the &lt;google desktop search index&gt;</p>
<p><img class="alignnone size-full wp-image-37" title="Modify_Registry_Google_Desktop_data_dr" src="http://biguru.files.wordpress.com/2009/07/modify_registry_google_desktop_data_dr.png?w=500&#038;h=226" alt="Modify_Registry_Google_Desktop_data_dr" width="500" height="226" /></p>
<p>7. Exit the registry editor.</p>
<p>8. Restart Google Desktop Search.</p>
 Tagged: bo, BOBJ, business intelligence, Business Objects explorer, data_dir, google, google desktop, google desktop search, information explosion, Polestar, registry <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/34/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/34/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/34/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=34&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2009/07/26/change-the-location-google-desktop-search-indexes-your-data/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2009/07/exit_google_desktop.png" medium="image">
			<media:title type="html">Exit_Google_Desktop</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2009/07/navigate_to_google_desktop_search_folder.png" medium="image">
			<media:title type="html">Navigate_To_Google_Desktop_Search_Folder</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2009/07/modify_registry_google_desktop_data_dr.png" medium="image">
			<media:title type="html">Modify_Registry_Google_Desktop_data_dr</media:title>
		</media:content>
	</item>
		<item>
		<title>BusinessObjects universe design best practices</title>
		<link>http://biguru.wordpress.com/2009/07/19/businessobjects-universe-design-best-practices/</link>
		<comments>http://biguru.wordpress.com/2009/07/19/businessobjects-universe-design-best-practices/#comments</comments>
		<pubDate>Sun, 19 Jul 2009 22:43:12 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=30</guid>
		<description><![CDATA[Having relocated from the Silicon Valley to Bangalore a year back, I’m now working in an MIS – strategic reporting role. In my role to evangelize the use of BI best practices and tools, one of the foremost is that of universe design.  As a matter of fact, I’m currently being involved in formalizing a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=30&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Having relocated from the Silicon Valley to Bangalore a year back, I’m now working in an MIS – strategic reporting role. In my role to evangelize the use of BI best practices and tools, one of the foremost is that of universe design.  As a matter of fact, I’m currently being involved in formalizing a BI policy around the tools we use most – Oracle, Informatica and SAP Business Objects (along with migration from our legacy BO to the XI platform!) – so a lot of my current work is related to best practices, design guidelines and preparing unit test checklists for my team of developers.</p>
<p>So here goes my list of universe design best practices. Being the cornerstone of the Business Objects semantic layer, the universe design becomes one of the most important (next only to the data warehouse design if there is one, and foremost if there is none) aspects of getting the right data out there in time for analysis and decision making.</p>
<p>The best practices are grouped by the reporting area they belong to.</p>
<p><strong>Universe design: object creation</strong></p>
<ul>
<li>Object      and class naming should be in business terms – so that it makes sense to      the end-user. This also reduces development overhead since reports can use      descriptions out-of-the-universe, instead of editing headers or creating      report level variables.</li>
<li>All      objects should have help text or usage information – corollary from above.</li>
<li>Object      formatting should preferably be done at the universe level.</li>
<li>Pre-build      condition objects in the universe rather than forcing users to build      conditions for reports.</li>
<li>Build      logic into objects &#8211; translate code, common calculations etc rather than      forcing users to do it in report variables.</li>
<li>Avoid      using WHERE clauses in the object definitions; use CASE statement instead.      In most cases, using WHERE clause will return incorrect results when      similar objects are included in the result set, due to combined      restrictions imposed by the multiple WHERE clauses.</li>
<li>Use      aggregation in all measure objects &#8211; to push the aggregation to the      database wherever the performance bottleneck is likely to be BO server and      the database performance is optimal. Generally the database is much more      powerful at doing aggregation calculations, and this also reduces the      volume of data to be transported over the network.</li>
<li>All measure objects should include aggregation functions for projection. When this is not included, BO will not automatically roll-up the data in the report, which could result in incorrect data and analysis.  Note that in the 3.0 version of Designer, a new feature &#8211; Database Delegated projection function is available to take care of these anomalies while doing &#8220;averages&#8221; for instance.</li>
<li>Use      Custom LOVs or cascading prompts to display LOVs where hierarchies and      numerous values are involved.</li>
<li>Use      relative date objects for scheduling e.g. Today, Yesterday, Previous Month      etc. Create a separate class to contain these reporting objects – this helps      in improving maintainability.</li>
<li>Use      dynamic HTML in objects where required to avoid users having to build it      in report variables – end users wouldn’t like to code hyperlinks      themselves, but would love to have an object which when clicked can lead      them to Google Maps for example.</li>
<li>Use      contexts in universes having multiple fact tables – this helps in getting      your measures (built from multiple fact tables) right.</li>
<li>Use      derived tables to define measures dependent on multiple fact tables.</li>
<li>Use      derived tables to reduce complexity of queries to be written by users or      in place of views or procedures. A note of caution here: Use derived      tables sparingly. If you have access to the database or DBA and can get      views or tables created for the same purpose, go with it rather than using      derived tables. This is not only to push the logic and work closer to the      database, but also to take care of the performance and maintainability aspects.      Exceptions to this include cases where your derived table may include a      prompt which would restrict the number of rows returned and thus improve      performance over a conventional view.</li>
<li>Reuse      code with @Variable. Reuse interactive objects with @Where (if you use      them at all).</li>
<li>Use      @Prompt syntax for conditions and interactive objects where input values      are likely to change or absence of prompt would lead to inaccurate values      or unacceptable query response times. Also make sure regularly used conditions      e.g. current year / latest date should not have prompts to avoid annoying      users.</li>
<li>&#8220;To      limit the number of objects created to avoid user confusion, build      interactive objects with @Prompt syntax followed by additional OR clause      to include &#8220;&#8221;All&#8221;" condition.</li>
</ul>
<p>E.g. &#8216;ALL&#8217; IN @Prompt(&#8216;Enter Value or ALL&#8217;,'A&#8217;, &#8216;Class\Object&#8217;,multi,)</p>
<p>OR</p>
<p>Table.Column IN @Prompt(&#8216;Enter Value or ALL&#8217;,'A&#8217;, &#8216;Class\Object&#8217;,multi,)&#8221;</p>
<p><strong>Universe design: resolving join and performance problems</strong></p>
<ul>
<li>To      resolve a chasm trap, define a context for each table at the      &#8220;many&#8221; end of the joins.</li>
<li>To      resolve a fan trap, create an alias table for the table producing the      multiplied aggregation. Create a 1:1 join between the original and the      alias tables. Modify the select statement to use the columns from the      alias table instead of the original table.</li>
<li>Use of      contexts should be evaluated w.r.t. use of aliases for resolving join      issues, to take care of maintainability of code.</li>
<li>Integrity checks on the universe structure, parsing of objects, joins, contexts, detecting loops etc is mandatory. If you wish to use Business Objects to help you detect fan traps or chasm traps &#8211; you must set the cardinality on the joins. Do not rely on BO to suggest the cardinality &#8211; this is often erroneous, based on the records sample that BO fetches for each table.</li>
<li>Uncheck the &#8220;Multiple sql statements for each measure&#8221; option in universe parameters, if this is not required for resolving any join problems. This option should be checked if the measures being retrieved in the same query involve different tables. &#8220;Prevent Cartesian product&#8221; should be checked, as should there be limits placed on the number of records returned and the time for the sql connection &#8211; to prevent runaway queries which can bring the database down to its knees and cause an outage for all users.</li>
</ul>
<p><strong>Universe design: optimization / miscellaneous</strong></p>
<ul>
<li>Use      shortcut joins wherever possible to reduce number of tables used in a      query</li>
<li>Use      aggregate tables /materialized views with aggregate awareness set up to      improve query performance</li>
<li>Use      keys instead of labels where possible to take care of index awareness      benefits of performance and uniqueness</li>
<li>Use      the JOIN_BY_SQL parameter to shift process from BO server to database      wherever the bottleneck for performance is the BO server and the database      performance is optimal.</li>
<li>Update      the .prm files to enable access to custom SQL functions and improve help      text</li>
<li>Do not      use derived tables instead of aggregate tables.</li>
<li>Turn off LOVs for all dimension and detail objects that are redundant or not required. This prevents performance problems when users inadvertently click on the &#8220;Values&#8221; and the query sets to return all the IDs or other irrelevant data.</li>
<li>Consider      using linked universes with a master kernel universe to ensure consistent      dimensions across multiple universes</li>
</ul>
<p>This list is certainly not an exhaustive one &#8211; but a work-in-progress. I&#8217;d update it as and when I compile more; meanwhile if you feel anything has been left out, drop in a line.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/30/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/30/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/30/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=30&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2009/07/19/businessobjects-universe-design-best-practices/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
		<item>
		<title>SPC – Using statistics to get insight from BI</title>
		<link>http://biguru.wordpress.com/2008/07/08/spc-%e2%80%93-using-statistics-to-get-insight-from-bi/</link>
		<comments>http://biguru.wordpress.com/2008/07/08/spc-%e2%80%93-using-statistics-to-get-insight-from-bi/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 13:46:21 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[common cause variation]]></category>
		<category><![CDATA[control charts]]></category>
		<category><![CDATA[control limits]]></category>
		<category><![CDATA[Deming]]></category>
		<category><![CDATA[outliers]]></category>
		<category><![CDATA[PDCA]]></category>
		<category><![CDATA[Shewhart]]></category>
		<category><![CDATA[SPC]]></category>
		<category><![CDATA[special cause variation]]></category>
		<category><![CDATA[statistical process control]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=24</guid>
		<description><![CDATA[

There is a well known adage that if you keep doing the same thing and expect different results, that is a sure sign of idiocy.  In the BI world too, we come across several instances where people take it for granted that the ‘BI tool’ will magically generate insight and spur ‘intelligence’ rather than ‘idiocy’. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=24&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><div></div>
<p><span style="font-size:small;font-family:Times New Roman;"></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#000000;font-family:Verdana;">There is a well known adage that if you keep doing the same thing and expect different results, that is a sure sign of idiocy.  In the BI world too, we come across several instances where people take it for granted that the ‘BI tool’ will magically generate insight and spur ‘intelligence’ rather than ‘idiocy’. Yet the very practices of reporting the same measures, or of creating reports for metrics just because they are now made available by the tool, without sparing any ‘intelligence’ into what will generate insight is a major cause  of failures of BI.  Most of the leading commercial BI products are expensive and cost a lot of money in maintenance and support, so it is rather important to understand how to design the proper metrics and KPIs (key process indicators) which would generate insight. Even more important is to have a process focus and a general idea of the basics of statistical process control, in order to make sure that the right decisions are made and resources are spent on processes and strategies where they would have the most impact.</span></p>
<p class="MsoNormal" style="margin:0;"><strong><em><span style="font-size:10pt;color:#000000;font-family:Verdana;">Statistical Process Control</span></em></strong><span style="font-size:10pt;color:#000000;font-family:Verdana;"> (SPC) is quite well known in the manufacturing industry and also in software engineering. In effect, it applies rules of statistics to the processes that are followed to predict whether a process is stable (and therefore in control) and its output is predictable or not and how to identify out-of-control processes and take corrective measures. Quality aids like causal analysis done using brainstorming/ nominal group techniques/ Ishikawa diagrams or fish-bone analysis are helpful in analyzing outliers and reasons of deviation from control limits. A substantive discussion of SPC and quality process areas is not possible in this post so I’ll just touch upon some concepts concisely.</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:10pt;color:#000000;font-family:Verdana;">PDCA</span></strong><span style="font-size:10pt;color:#000000;font-family:Verdana;"> – Plan-Do-Check-Act cycle, proposed by economist William Shewhart and later by quality guru Dr. Edward Deming. This is the foundation of the management and feedback cycle underlying any software engineering process.</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:10pt;color:#000000;font-family:Verdana;">Control limits</span></strong><span style="font-size:10pt;color:#000000;font-family:Verdana;"> – Any process which follows the Gaussian normal distribution would have a normal bell-shaped curve and be subject to control limits. The stability of the process can be gauged by the outliers (number and pattern of data points falling outside the control limits).</span></p>
<p class="MsoNormal" style="margin:0;"><strong><span style="font-size:10pt;color:#000000;font-family:Verdana;">Causes of deviation</span></strong><span style="font-size:10pt;color:#000000;font-family:Verdana;">: Outliers indicate deviation from a stable and predictable process. Causes of deviation could be due to special causes or common causes. Common causes are like background noise and may be present in stable processes. Special causes must be removed and steps taken to prevent their occurrence to bring a process under control. Common causes may be reduced to have a sharper curve with a narrower band of control limits and have greater control on the process.</span></p>
<div></div>
<p><font face="Times New Roman" size="3"></p>
<p class="MsoNormal" style="margin:0;"> </p>
<p></font></span></p>
<p class="MsoNormal" style="margin:0;"> </p>
<div id="attachment_25" class="wp-caption alignnone" style="width: 310px"><a href="http://biguru.files.wordpress.com/2008/07/copy-of-520px-controlchart.png"><img class="size-medium wp-image-25" src="http://biguru.files.wordpress.com/2008/07/copy-of-520px-controlchart.png?w=300&#038;h=140" alt="Wikipedia)" width="300" height="140" /></a><p class="wp-caption-text">Control Chart (Image courtesy: Wikipedia)</p></div>
<div></div>
<p><span style="font-size:small;font-family:Times New Roman;"></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#000000;font-family:Verdana;">Users of BI tools haven’t tapped into the power of SPC to gain insight and control operational processes to the extent possible. There is even danger of damaging with a stable and in-control process due to tinkering with the process based on common-cause variation observed in operational reports. Part of the reason for SPC not gaining sufficient currency is that business analysts are not trained in the basics of SPC or quality processes like DAR (defect analysis and resolution) but mostly it is due to there not being any BI product in the market so far which allows easy use of SPC analysis. It is only of late that vendors like SAP-Business Objects have come out with specific SPC modules and predictive analytics in the BI product marketplace.</span></p>
<p><font face="Times New Roman" size="3"></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"><span style="font-size:10pt;color:#000000;font-family:Verdana;">BI is a specialized discipline which involves a lot of investment on the part of customers in terms of pre-sale-evaluation (proof-of-concepts / comparisons), implementations, maintenance and support. However the returns from BI implementations are not easy to quantify and ROI (return on investment) figure calculations could be vague and incorrect. Using SPC along with the right quality process framework allows in maximizing the value of BI implementations, as well as provides a ready-reckoner for calculating ROI based on projected process improvements based on statistical control limits.</span></span></p>
<p></font></span></p>
<p class="MsoNormal" style="margin:0;"> </p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/biguru.wordpress.com/24/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/biguru.wordpress.com/24/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=24&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2008/07/08/spc-%e2%80%93-using-statistics-to-get-insight-from-bi/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2008/07/copy-of-520px-controlchart.png?w=300" medium="image">
			<media:title type="html">Wikipedia)</media:title>
		</media:content>
	</item>
		<item>
		<title>Thrive or Survive &#8211; the changing rules for databases</title>
		<link>http://biguru.wordpress.com/2008/05/07/thrive-or-survive-the-changing-rules-for-databases/</link>
		<comments>http://biguru.wordpress.com/2008/05/07/thrive-or-survive-the-changing-rules-for-databases/#comments</comments>
		<pubDate>Wed, 07 May 2008 09:59:04 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Amazon S3]]></category>
		<category><![CDATA[Ants software]]></category>
		<category><![CDATA[appliances]]></category>
		<category><![CDATA[berkeleyDB]]></category>
		<category><![CDATA[Bigtable]]></category>
		<category><![CDATA[column database]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[DATAllegro]]></category>
		<category><![CDATA[DBaaS]]></category>
		<category><![CDATA[ETL]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[Infobright]]></category>
		<category><![CDATA[Infosphere]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[netezza]]></category>
		<category><![CDATA[OLTP]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[RDBMS]]></category>
		<category><![CDATA[SimpleDB]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sql server]]></category>
		<category><![CDATA[SSDS]]></category>
		<category><![CDATA[Teradata]]></category>
		<category><![CDATA[Vertica]]></category>
		<category><![CDATA[XQuery]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=22</guid>
		<description><![CDATA[Not  since the late seventies, when  Larry Ellison&#8217;s Relational Software Inc. (RSI) turned out the first commerically available RDBMS &#8211; Oracle, has there been such rapid changing of the rules (read disruption) in the database industry.
With Web 2.0 pushing enterprise adoption, and the ensuing information explosion in the maze of audio, video, data [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=22&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Not  since the late seventies, when  Larry Ellison&#8217;s Relational Software Inc. (RSI) turned out the <a href="http://www.oracle.com/timeline/index.html">first commerically available RDBMS</a> &#8211; Oracle, has there been such rapid changing of the rules (read disruption) in the database industry.<br />
With <em><strong>Web 2.0</strong></em> pushing enterprise adoption, and the ensuing <em>information explosion</em> in the maze of audio, video, data and ever-growing data warehouses, it seems that the conventional relational database systems are growing tired. With estimates of <em><strong>unstructured data</strong></em> being anywhere between 80% to 95% of all business data, and the ever changing requirements imposed by Web 2.0 &#8211; storage of <em>pictures</em>, <em>audio </em>and <em>video</em>, the demands being made on conventional RDBMS technology are monstrous. With the load window available being fixed due to availability and uptime  requirements, the ever increasing data to be loaded into data warehouses, the bulking-up of the data due to usage of <em>XML </em>based formats, conflicting requirements of <em>SQL</em> and <em>XQuery</em>, the database is also being challenged by the demands of business intelligence.</p>
<p>And so the time has never been better for start-ups with innovative technologies. From the self-tuning <em><strong>column databases</strong></em> of <a href="http://www.vertica.com">Vertica</a> to the <em><strong>data compression</strong></em> technologies of <a href="http://www.infobright.com/">Infobright</a> and the <em><strong>lock-free</strong></em> database from <a href="http://www.ants.com">Ants Software</a> , there is renewed interest in reinventing the RDBMS to optimize performance.</p>
<p>The competition has already hotted up in the high-end data warehousing segment  with the introduction of <em><strong>appliances</strong></em>. With both <a href="http://www.netezza.com">Netezza</a> and <a href="http://www.datallegro.com">DATAllegro</a> gaining traction rapidly, incumbent <a href="http://www.teradata.com">Teradata</a> is feeling the heat.</p>
<p>Another entrant to the Web 2.0 database race is Database as a service (<em><strong>DBaaS</strong></em>). With Google opening up its <a href="http://code.google.com/appengine/">cloud computing platform</a> and making available <a href="http://labs.google.com/papers/bigtable.html">Bigtable</a> , and Microsoft offering a beta release of <a href="http://www.microsoft.com/sql/dataservices/default.mspx">SQL Server Data Services (SSDS)</a>, the incumbent <a href="http://aws.amazon.com/s3">Amazon&#8217;s S3</a> and <a href="http://www.amazon.com/SimpleDB-AWS-Service-Pricing/b?node=342335011">SimpleDB</a> is getting some competition.</p>
<p>The incumbent conventional RDBMS vendors like <a href="http://www.oracle.com">Oracle</a> are not resting on their laurels.<br />
With its aggresive acquisition strategy, Oracle has acquired Sleepycat&#8217;s open-source embedded database <a href="http://www.oracle.com/database/berkeley-db/index.html">BerkeleyDB</a> in early 2006 and now licenses it commercially. With its other acquisition (2005)  &#8211; <a href="http://www.oracle.com/timesten/index.html">TimesTen</a>, now integrated as an in-memory database, Oracle  has been  <a href="http://www.oracle.com/newsletters/information-indepth/on-demand/feb-08/saas.html">targeting SaaS ISVs</a> to sell its <a href="http://www.oracle.com/technologies/saas/index.html">Oracle SaaS platform</a>.<br />
IBM has already moved into the BI infrastructure segment since 2005 with its pSeries Data Warehousing Balanced Configuration Units and evolved on to the <a href="http://www-306.ibm.com/software/data/infosphere/balanced-warehouse/">Infosphere Balanced Warehouse</a> applicances. Apart from <em>SSDS</em>, Microsoft has designed SQL Server 2008 with <a href="http://www.microsoft.com/sqlserver/2008/en/us/data-warehousing.aspx">data warehouse features</a> like the star join  query, SSIS persistent lookups or the MERGE SQL statement. Most of the biggies (<em>e.g. BOBJ acquiring Inxight</em>) have acquired small companies with technologies to search and analyze unstructured data.</p>
<p>Yet with all this &#8220;new and improved&#8221;, the newer and innovative technologies are gaining a lot of traction at least in the data warehousing/ETL space. It remains to be seen if the trend catches on in the OLTP segment as well. But for now, the staid and bland database segment is on fire.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/biguru.wordpress.com/22/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/biguru.wordpress.com/22/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/22/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=22&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2008/05/07/thrive-or-survive-the-changing-rules-for-databases/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
		<item>
		<title>It&#8217;s all in the universe &#8211; handling chasm and fan traps</title>
		<link>http://biguru.wordpress.com/2008/05/01/its-all-in-the-universe-handling-chasm-and-fan-traps/</link>
		<comments>http://biguru.wordpress.com/2008/05/01/its-all-in-the-universe-handling-chasm-and-fan-traps/#comments</comments>
		<pubDate>Fri, 02 May 2008 05:10:00 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[chasm trap]]></category>
		<category><![CDATA[data modeling]]></category>
		<category><![CDATA[fan  trap]]></category>
		<category><![CDATA[loop]]></category>
		<category><![CDATA[universe]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=19</guid>
		<description><![CDATA[Recently I worked on an assignment where the Business Objects universe was designed by a business analyst. Nothing wrong with that, as long as we get the correct results in reports or queries on the universe. But it was not to be.
We encountered incorrect results  primarily due to two reasons:
1. Mixing of grains in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=19&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Recently I worked on an assignment where the Business Objects universe was designed by a business analyst. Nothing wrong with that, as long as we get the correct results in reports or queries on the universe. But it was not to be.<br />
We encountered incorrect results  primarily due to two reasons:<br />
1. Mixing of grains in fact tables by not using proper contexts or the aggregate navigator<br />
2. Unresolved chasm traps<br />
It was obvious that the business analyst was not trained in data modeling, nor did the universe  go through a proper QA cycle where it is reviewed for data modeling errors.</p>
<p><strong>What is a chasm trap?</strong></p>
<p>The Chasm trap occurs when 2 &#8220;many-to-one&#8221; joins converge on a single table, which has not been resolved by any context. The most common problem caused by a chasm trap is fetching more data than expected.<br />
Below is an example showing this many-to-one-to-many relationship:</p>
<p><a href="http://biguru.files.wordpress.com/2008/05/chasm0.jpg"><img class="alignnone size-medium wp-image-20" src="http://biguru.files.wordpress.com/2008/05/chasm0.jpg" alt="Chasm Trap" /></a><br />
<strong>How  does a chasm trap inflate results?</strong><br />
The chasm trap causes the query to return every possible combination of rows for one measure (fact table 1) with every possible combination of rows for the other measure (fact table 2), thus effectively creating a Cartesian product. Under normal circumstances we would receive as many records as fetched from the tables.  However due to the way fact tables are designed, measures  have  aggregate functions like SUM() or COUNT() applied on them, and this leads to  an aggregated and inflated value for either measure.</p>
<p><strong>Solution</strong><br />
The best way to resolve a Chasm Trap is to define a context for each fact table at the &#8220;many&#8221; end of the joins. This creates two SQL statements and two separate microcubes which Business Objects synchronize to return the correct  output.</p>
<p>Another way to resolve a Chasm Trap which aplies only to measure type of objects is to select the option &#8220;Multiple SQL Statements for Each Measure&#8221; from the Universe Parameters dialog box. However this does not generate multiple SQL statements for dimensions and doesn&#8217;t resolve chasm traps in such cases.</p>
<p>Apart from <strong><em>chasm traps</em></strong> and the very familiar <strong><em>loops</em></strong>, there is another possible join problem encountered while  designing Business Objects universes &#8211; the <strong><em>fan trap</em></strong>. This is however much infrequent compared to the other two.</p>
<p><strong>What is a  fan trap?</strong><br />
A Fan Trap is a join between 3 tables where a one-to-many join links the first table to the second and another one-to-many join links the second table to the third.  Inflated results are obtained when fields from all 3 tables are included in the query.<br />
Below is an example:</p>
<p><a href="http://biguru.files.wordpress.com/2008/05/fan1.jpg"><img class="alignnone size-medium wp-image-21" src="http://biguru.files.wordpress.com/2008/05/fan1.jpg?w=300" alt="Fan Trap" width="300" height="193" /></a><br />
<strong></strong></p>
<p><strong>How does a fan trap inflate results?</strong></p>
<p>A fan trap &#8220;fans-out&#8221; the one-to-many relationships thus multiplying the result by the details at  one end of the one-to-many relationship.  An incorrect result is returned as you are performing an aggregate function on the table at the “one” end of the join, while still joining to the “many” end.<br />
<strong>Solution</strong><br />
The best way to solve a fan trap using dimension objects in the query is to use an alias and contexts.  Create an alias for the table producing the initial aggregation. Create a join between the alias table and the original table.<br />
Next modify the object that is causing aggregation by using the alias table. Then, create separate contexts &#8211; one each for the alias table and the original table. Select &#8220;Multiple SQL Statements for Each Context&#8221; in the universe parameters.</p>
<p>Another way to resolve a fan trap only for measure objects is to use the universe parameters<br />
option &#8220;Multiple SQL Statements for Each Measure&#8221;. This forces the generation of separate queries for each measure, but doesn&#8217;t ensure the same for dimensions.</p>
<p>Potential chasm and  fan traps can be detected by <em><strong>visually inspecting the schema</strong></em> by suitably arranging the tables in the Structure pane, so that the “many” ends of the many-to-one joins are to one side of the pane, and the “one” ends to the other.</p>
<p>If you wish to read in more detail about SQL traps in Business Objects Designer and don&#8217;t mind a little drama or suspense, I highly recommend checking out <a href="http://www.dagira.com/category/design/fan-chasm-trap/">Dave Rathbun&#8217;s posts</a> on this topic.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/biguru.wordpress.com/19/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/biguru.wordpress.com/19/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/19/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=19&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2008/05/01/its-all-in-the-universe-handling-chasm-and-fan-traps/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2008/05/chasm0.jpg" medium="image">
			<media:title type="html">Chasm Trap</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2008/05/fan1.jpg?w=300" medium="image">
			<media:title type="html">Fan Trap</media:title>
		</media:content>
	</item>
		<item>
		<title>Export data out of Xcelsius dashboards</title>
		<link>http://biguru.wordpress.com/2008/04/26/export-data-out-of-your-xcelsius-dashboards/</link>
		<comments>http://biguru.wordpress.com/2008/04/26/export-data-out-of-your-xcelsius-dashboards/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 05:11:17 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[clearpeaks]]></category>
		<category><![CDATA[csv]]></category>
		<category><![CDATA[dashboards]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[export]]></category>
		<category><![CDATA[jsp]]></category>
		<category><![CDATA[war]]></category>
		<category><![CDATA[xcelsius]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=14</guid>
		<description><![CDATA[Accessing data in Xcelsius is pretty easy. You can have static data loaded from Excel, or dynamic data loaded through Web Services, Excel XML Maps, QaaWS (Query as a Web Service), Crystal Reports, Web Intelligence Reports or queries using Live Office.
There are however only a few ways to export data from Xcelsius. Either we could [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=14&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Accessing data in Xcelsius is pretty easy. You can have static data loaded from Excel, or dynamic data loaded through Web Services, Excel XML Maps, QaaWS (Query as a Web Service), Crystal Reports, Web Intelligence Reports or queries using Live Office.</p>
<p>There are however only a few ways to export data from Xcelsius. Either we could use Flash variables or use the XML Data Button to export data out of the compiled .swf file.</p>
<p>Here I present a simple method to export data from an Xcelsius .swf to a csv/Excel file. This method utilizes the XML Data Button&#8217;s capability to send and receive XML data.</p>
<p>The source code is provided at the end of this post as a download. Copy the code from the PDF and save as export2csv.aspx on the web server.</p>
<p>Note that this is an ASP.Net (.aspx extension) file, which works with an IIS Web Server. If you wish to use this code, please  remember to change the links to point to your webserver and the appropriate directories.<br />
For being able to write the exported data to a directory, you may need to grant Write access to the IUSR_&lt;MachineName&gt; account to allow anonymous access.</p>
<p>After you&#8217;ve placed the export2csv.aspx file on your webserver, perform the following steps in your XLF file.<br />
1. Add an XML data button [ Xcelsius 4.5 ]/Connection Refresh button [ Xcelsius 2008 ] and check the &#8220;Enable Send&#8221; box. Make sure that in the <strong>MIME Type</strong> dropdown, <strong>&#8220;application/x-www-form-urlencoded&#8221;</strong> is selected.</p>
<p><a href="http://biguru.files.wordpress.com/2008/04/export2csv11.jpg"><img class="alignnone size-full wp-image-17" src="http://biguru.files.wordpress.com/2008/04/export2csv11.jpg?w=499&#038;h=234" alt="" width="499" height="234" /></a></p>
<p>2. Type out the URL of the export2csv.aspx file in the XML Data URL and add the ranges of data that you need to export. The screenshot above shows 2 ranges being exported.<br />
3. Check the &#8220;Enable Load&#8221; box and add a  single cell range (Sheet1!$J$1 in the example) to receive the URL of the CSV file that will be returned by the export2csv.aspx file.<br />
Note that the XML variable name returned by the export2csv.aspx  is <strong><em>exportdataurl</em></strong>, so you need to name the range the same. If you wish to change  the name, you&#8217;ll need to update the same in  the export2csv.aspx file.</p>
<p><a href="http://biguru.files.wordpress.com/2008/04/export2csv2.jpg"><img class="alignnone size-full wp-image-16" src="http://biguru.files.wordpress.com/2008/04/export2csv2.jpg?w=500&#038;h=248" alt="" width="500" height="248" /></a><br />
4. Add a URL link button and set its URL to the cell  defined in the previous step (Sheet1!$J$1)<br />
5. Export the .swf file and try out exporting the  data by  clicking on the Connection Refresh Button and then opening the file by clicking on the URL link Button.</p>
<p>Now you can easily export data from any .swf that you&#8217;ve created in Xcelsius.</p>
<p><strong>How does this work?</strong><br />
1. The XML Data Button exports the ranges you&#8217;ve selected in an XML file to our export2csv.aspx file.<br />
2. Our export2csv.aspx file parses and saves this XML in a .csv format on the web server.<br />
3. The path of the .csv file is returned to  the .SWF file through the &#8220;Enable Load&#8221; range.<br />
4. The URL Link component retrieves the URL from this cell and opens the .CSV file when clicked.</p>
<p>Source code:<br />
<code><br />
&lt;%<br />
'-----------------------------------<br />
'Name: export2csv.aspx<br />
'Author: Maloy Manna<br />
'Date: 04.26.2008<br />
'Purpose: To export data out of Xcelsius .swf in csv format<br />
'Input: Xcelsius data manager Send ranges in XML format<br />
'Output: CSV output file URI<br />
'Last Modified:<br />
'Modification:<br />
'-----------------------------------<br />
'Variable declarations<br />
Dim sXMLString as String<br />
Dim sFormitem as String<br />
Dim sFileName as String<br />
Dim sRPath as String<br />
Dim sPath as String<br />
Dim sXML as String<br />
Dim iRangeLength As Integer<br />
Dim iRowLength As Integer<br />
Dim iRangeCounter As Integer<br />
Dim iCounter As Integer<br />
Dim oFile as File<br />
Dim oWrite as StreamWriter<br />
Dim oXML as Object<br />
Dim oRNodeList as Object<br />
Dim oRNode as Object<br />
Dim oNodeList as Object<br />
Dim oNode as Object<br />
'Get XML that was sent from SWF file<br />
For Each sFormItem In Request.Form<br />
sXMLString = sXMLString &amp; sFormItem &amp; " = " &amp; Request.Form(sFormItem)<br />
Next<br />
'Load XML into object<br />
oXML = Server.CreateObject("MSXML2.DOMDocument")<br />
oXML.async = False<br />
oXML.validateOnParse = False<br />
oXML.loadXML(sXMLString)<br />
'Create output file with timestamp in the name<br />
sFileName =  "Exported_Data_" &amp; DatePart("m",Now()) &amp; DatePart("d",Now()) &amp; DatePart("yyyy",Now()) &amp; DatePart("h",Now()) &amp; DatePart("n",Now()) &amp; DatePart("s",Now()) &amp; ".csv"<br />
oWrite= oFile.CreateText("C:\Inetpub\wwwroot\" &amp; sFileName)<br />
'Use XPath to get the data<br />
'Find the number of ranges or variables to be exported<br />
sRPath ="/data/variable"<br />
oRNodeList = oXML.documentElement.selectNodes(sRPath)<br />
iRangeLength = oRNodeList.Length<br />
For iRangeCounter = 0 to iRangeLength - 1<br />
oRNode = oXML.documentElement.selectSingleNode("/data/variable["+CType(iRangeCounter,String)+"]/row")<br />
'Write out the data set for  the range<br />
sPath = "/data/variable["+CType(iRangeCounter,String)+"]/row"<br />
'Find the number of rows for the range<br />
oNodeList = oXML.documentElement.selectNodes(sPath)<br />
iRowLength = oNodeList.Length<br />
For  iCounter =0 to iRowLength - 1<br />
oNode = oXML.documentElement.selectSingleNode("/data/variable["+CType(iRangeCounter,String)+"]/row["+CType(iCounter,String)+"]/column")<br />
oWrite.Write(oNode.text)<br />
While Not(oNode.nextSibling Is Nothing)<br />
oWrite.Write("," +oNode.nextSibling.text)<br />
oNode = oNode.nextSibling<br />
End While<br />
oWrite.WriteLine<br />
Next<br />
'Write a blank line before the next range starts<br />
oWrite.WriteLine<br />
Next<br />
oWrite.Close()<br />
'Build XML data to return<br />
sXML = ""<br />
'exportdataurl<br />
sXML = sXML &amp; ""<br />
sXML = sXML &amp; ""<br />
sXML = sXML &amp; "" &amp; "http://localhost/" &amp; sFileName  &amp; ""<br />
sXML = sXML &amp; ""<br />
sXML = sXML &amp; ""<br />
'close out the XML data string<br />
sXML = sXML &amp; ""<br />
'Set the Response type<br />
Response.Buffer = True<br />
Response.ContentType = "application/vnd.csv"<br />
Response.Write(sXML)<br />
%&gt;<br />
</code></p>
<p>Download code as PDF: <a href="http://biguru.files.wordpress.com/2008/04/code-for-export2csvaspx.pdf">Code for export2csv.aspx</a></p>
<p><strong>Update on 06 September 2009:</strong></p>
<p>Several of you have asked me for the JSP version of the export code. Unfortunately, I don&#8217;t have the expertise to do this in JSP, but fortunately Luca Spinelli and Ivan Aguilar from ClearPeaks have created the JSP version. The .war file is available for free if you  send an email to info@clearpeaks.com (I&#8217;m unable to include the .war file it here due to lack of compressed file extension support in WordPress). Please get in touch with ClearPeaks, if you want the source code.</p>
<p>- Maloy</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/biguru.wordpress.com/14/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/biguru.wordpress.com/14/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=14&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2008/04/26/export-data-out-of-your-xcelsius-dashboards/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>

		<media:content url="http://biguru.files.wordpress.com/2008/04/export2csv11.jpg" medium="image" />

		<media:content url="http://biguru.files.wordpress.com/2008/04/export2csv2.jpg" medium="image" />
	</item>
		<item>
		<title>Agile Development for BI</title>
		<link>http://biguru.wordpress.com/2008/04/06/agile-development-for-bi/</link>
		<comments>http://biguru.wordpress.com/2008/04/06/agile-development-for-bi/#comments</comments>
		<pubDate>Mon, 07 Apr 2008 05:43:39 +0000</pubDate>
		<dc:creator>biguru</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[ASD]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[database refactoring]]></category>
		<category><![CDATA[Deming]]></category>
		<category><![CDATA[DSDM]]></category>
		<category><![CDATA[evolutionary data modeling]]></category>
		<category><![CDATA[extreme programming]]></category>
		<category><![CDATA[FDD]]></category>
		<category><![CDATA[PDCA]]></category>
		<category><![CDATA[SCRUP]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://biguru.wordpress.com/?p=13</guid>
		<description><![CDATA[How can you reduce development costs and improve software reliability and accuracy at the same time? How can you make IT work together with Business while architect-ing your BI applications? If these goals sound contradictory and difficult to achieve, then Agile development may well fit the bill. Indeed in numerous BI projects, one or the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=13&subd=biguru&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>How can you reduce development costs and improve software reliability and accuracy at the same time? How can you make IT work together with Business while architect-ing your BI applications? If these goals sound contradictory and difficult to achieve, then Agile development may well fit the bill. Indeed in numerous BI projects, one or the other flavor of Agile is used to attain these very goals.</p>
<p><em><strong>Defining Agile</strong></em><br />
There are several Agile development methodologies available:<br />
•	eXtreme Programming (XP)<br />
•	SCRUM<br />
•	Feature-Driven Development (FDD)<br />
•	Crystal Clear<br />
•	Dynamic Systems Development Method (DSDM)<br />
•	Adaptive Software Development (ASD) and more&#8230;</p>
<p>At the core of any flavor of Agile development methodology is the <em><strong>iteration</strong></em>, which may last from 1 to 4 weeks (one unit of time) to develop a piece of the software. Each iteration is treated as an entire software project with its associated planning, design, coding, testing and documentation  tasks.</p>
<p><em>What is it about Agile development which makes it particularly suitable for data warehousing and business intelligence projects?</em></p>
<p>* Agile emphasizes on <em><strong>communication </strong></em>be it through meetings (be it  through the phone, VOIP, web or IM) over written documents. The idea is to get the user involved much early in the development process and incorporate their feedback, so as to minimize the risk of developing faulty software. For organizations adopting BI, very often users are clueless about the systems to build, the technology to use  or even the range of analysis they require. Products are often bought after effective sales pitches from vendors and left to IT to deploy and architect. In such cases,  IT can use Agile methodologies like DSDM, SCRUM or ASD to flesh out the requirements and deliver BI which actually provides insight rather than building a monolithic and unreliable data warehouse difficult to query and administer.</p>
<p>* Agile gels well with the <em><strong>evolutionary approach</strong></em> required for a data warehousing / BI lifecycle. Requirements change over time, and the iterations of the Agile methodology (with <em><strong>database re-factoring</strong> and <strong> evolutionary data modeling</strong></em> ) is more efficient in capturing these changes than the classical waterfall approach.</p>
<p>* <em><strong>Proof </strong></em>of the concept, technology and architecture is crucial to justify continued investment in DW/BI projects, especially on the enterprise scale. This is simpler and easier to do with Agile.</p>
<p>* Agile imbibes every member of the project team with extra responsibilities,  making them <em><strong>owners </strong></em>of discrete functions and helps the project manager overcome the &#8216;<em>taskmaster</em>&#8216; stereotype and concentrate on being a leader or a visionary.</p>
<p>BI is essentially gaining competitive edge by insight into your business through lagging (measures) and leading (predictive model-based) metrics, which allows feedback cycles and restructuring of processes  (<em><strong>Plan-Do-Check-Act</strong></em> <span style="text-decoration:underline;"><span style="color:#0000ff;">Deming cycle</span></span>).  This essentially involves cooperation and <em><strong>teamwork </strong></em>across functions to model and understand the multi-faceted perspectives. Teamwork being the foundation of Agile, it is a natural fit for projects in BI and data warehousing.</p>
<p>~biguru</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/biguru.wordpress.com/13/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/biguru.wordpress.com/13/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biguru.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biguru.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biguru.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biguru.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biguru.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biguru.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biguru.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biguru.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biguru.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biguru.wordpress.com/13/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biguru.wordpress.com&blog=2231154&post=13&subd=biguru&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://biguru.wordpress.com/2008/04/06/agile-development-for-bi/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36ad7ce7513cc87cc4d12b35070833c2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biguru</media:title>
		</media:content>
	</item>
	</channel>
</rss>