top

Blog about solutions for Siebel, BI, Integration

Integrating SalesForce and DropBox

This article will guide you through configuring integration between SalesForce and DropBox, how to avoid user interaction to grant access to DropBox and also how to keep SalesForce notified about changes in DropBox.

There are some situations when you think it would be good to take files from DropBox, parse it in SalesForce and make some operations according to parsed data within SalesForce. Even more, it would be good if SalesForce could take required action right after the file has been changed or uploaded to DropBox. read more

Posted: Thursday, October 8th, 2015 | Posted in Application Integration, SalesForce

Profiling JavaScript memory in the browser and on the server

Recently we were executing a memory usage analysis in my current (node.js) project. This article summarizes some of our findings, which may be useful to other projects. It does not describe the very basics of the mark-and-sweep garbage collection algorithm. Instead, it focuses on the details of the particular tools we used. read more

Posted: Thursday, September 24th, 2015 | Posted in JavaScript, Node.js

Azure Mobile Services approach to Offline Data Support

It’s not something new that Mobile Phones and Mobile Applications comes into our daily life, and they come not only as a tool for communication and entertainment. Many enterprises adopt mobile technologies to give their field workers ability to fulfill operations that previously could be done only in office.

Enterprise mobile applications are recognized as a separate class of mobile application. Microsoft outlines a set of features important to enterprise users and providing tools and practices to fulfill them. read more

Posted: Thursday, September 17th, 2015 | Posted in .NET, Azure, Mobile

Using Java HotSpot Serviceability API to fight deadlocks

Sometimes there is an urgent need popping up in the middle of an investigation of what is happening with your application server – e.g., a process is showing up, but refuses to serve network connections. There could be thousands of reasons why it is stuck, but one of the most common and a classic problem is deadlocked threads, i.e. threads that didn’t share some of the resources on start-up correctly. read more

Posted: Thursday, September 3rd, 2015 | Posted in Java

Logging user actions: what do your operatives do in Siebel?

Suppose that weeks of developing business processes, building user interface and integrating Siebel with other systems are gone at last; implementation can be considered completed, and users have started to work with Siebel. There are no fatal bugs, nor annoying performance issues. Still, there can be something left to improve, specifically ergonomics of your Siebel implementation – and, possibly, efficiency of users’ actions and operations in Siebel. read more

Posted: Thursday, August 27th, 2015 | Posted in Siebel

Documenting your RESTful API with Swagger

On one of my recent projects I’ve been asked to describe how our Restful API can be consumed by a third party service. In a SOAP world this task usually boils down to providing a WSDL, which can simplify understanding of exposed API, and can also be used for generating API clients in a most standardized manner. read more

Posted: Thursday, August 20th, 2015 | Posted in Application Integration, Java

A few more tricks to manipulate PropertySets

In my previous article I described some basic tricks that are helpful for working with property sets. Here I am going to describe a few more tricks, which are still simple enough to quickly incorporate those in your daily routine. For doing something more complex, you can consider scripting, just as we did when we decided that workflows with huge number of steps are quite difficult and time consuming to develop and maintain. read more

Posted: Thursday, August 13th, 2015 | Posted in Siebel

Agile retrospectives: tips and tricks

When practicing any of the agile software development methodologies – despite an inherent flexibility of those – it is rather important at least to start with a “by the book” approach. This means that when you roll out your agile processes, you try to implement each and every aspect of it, even if that seems useless or not required in your particular situation. Only then you can see from experience that something needs to be tailored – and a retrospective is a powerful tool to facilitate that kind of team learning. read more

Posted: Thursday, August 6th, 2015 | Posted in Project Management

Scrum: is the bullet really silver?

Scrum, being one of the most well-known lightweight agile process frameworks, is used a lot nowadays. But are we using it right? One might argue that an adaptable framework suggests no „wrong” uses – you’d simply tune it so that it suits your needs just perfectly. Although that might be the case in theory, but looking at how real-world Scrum projects cope with different situations, one might come to a conclusion that it isn’t as straightforward as it seems… read more

Posted: Thursday, July 30th, 2015 | Posted in Project Management

Visiting Gartner Summit 2015 in London

On 18-19 of May in the heart of London “Gartner Application Architecture, Development & Integration Summit” took place. Most probably, you’ve heard about Gartner in relation to their famous Magic Quadrants that emphasize leaders in selected categories. Nevertheless, they do a lot of other interesting stuff including various events organization. read more

Posted: Thursday, July 23rd, 2015 | Posted in Events

Using Redis Lua scripting for complex queues

Redis is described by its author Salvatore Sanfilippo as a “strange project”. It’s a distributed cache, it’s an in-memory key-value store, and it’s a notification (publish/subscribe) server. A kind of all-in-one, which is actually good at everything it does. Although Redis keys and values are essentially just strings, one can group them into lists, sets, hashes and all-powerful sorted sets. It also stores numbers very efficiently, which makes such values consume less memory and enables fast numerical operations on them (like atomic increments). read more

Posted: Thursday, July 16th, 2015 | Posted in Redis

Fast Forward: decisions

Today we commonly feel the urge to move faster – take notice faster, learn faster, decide faster and act faster. It becomes a struggle. Still we can’t just decide: let’s be faster. There are situations, behaviors, previous experience and other things slowing us down. Let’s gather some analysis on what are the common situations asking for faster action, and what could be the simplest solutions at hand helping us find a way to move in a Fast Forward way – e.g., quick decision making. read more

Posted: Thursday, July 9th, 2015 | Posted in Fast Forward

Using rpart.utils.push on a model with many attributes

The last few months I’ve spent on an interesting Data Mining project. The aim of this data science exercise was to help business reduce customer handling time in a contact center. The project itself and the results we’ve achieved will be covered in my next article, but today I would like to share how I solved a technical issue that came up during the project. read more

Posted: Thursday, July 2nd, 2015 | Posted in Data mining

Fast Forward: become an inspiring team leader

Today we commonly feel the urge to move faster – take notice faster, learn faster, decide faster and act faster. It becomes a struggle. Still we can’t just decide: let’s be faster. There are situations, behaviors, previous experience and other things slowing us down. Let’s gather some analysis on what are the common situations asking for faster action, and what could be the simplest solutions at hand helping us find a way to move in a Fast Forward way – e.g., to establish a more effective team via becoming a real leader for the team. read more

Posted: Thursday, June 25th, 2015 | Posted in Fast Forward

Do we need ESB?

Sure we do! But… Wait a minute. What is ESB? Is it yet another 10-year-old “fancy” technology on its way to Valhalla? Before answering these questions, let us first understand what does this term actually mean. read more

Posted: Thursday, June 18th, 2015 | Posted in BI Port

Simple tricks to manipulate PropertySets

Siebel provides good tools for working with Siebel Hierarchies, e.g. a developer can query Siebel data using the EAI Siebel Adapter business service, transform the queried data into an instance of external integration object using the EAI Data Transformation Engine business service, and then send the result to an external system. If there are no complicated requirements, and the transformations are straightforward, most of Siebel developers can implement outbound or inbound web service in a couple of hours. read more

Posted: Wednesday, June 10th, 2015 | Posted in Siebel

Zen of the PropertySet

The pain

Imagine yourself in the middle of the integration process. You’re staring at a requirement asking you to update, let’s say a SiebelMessage, that was just queried, and is being processed by one of your workflows in order to be consumed by some 3rd party system somewhere around the edge of the universe. But the update is not just an ordinary update, it has conditions. For example, “Action Code” of the Order Line Item to be passed for further transformation has to be “Add”, and the product of the same OLI has to be some kind of a phone, any kind you can imagine. Add a bit of sorting, a teaspoon of “Get The First That Matches The Condition”, a drop of “Delete That Element”, and you have your recipe of a complex and painful solution you are about to implement. read more

Posted: Thursday, June 4th, 2015 | Posted in Products, Siebel

Java: using embedded Rhino JavaScript engine

Java supports a lot of scripting languages, and since Java 6 it supports JavaScript out of the box. JDK 6 and JDK 7 both have embedded Rhino JavaScript engine that was developed by Mozilla. In JDK 8 though, the Rhino engine was replaced with Nashorn. Being the Rhino successor that was rewritten from scratch to meet modern script engine expectations, it offers a better performance, but since Java 8 is still not so widely adopted in the enterprise environments, let us focus on Rhino for now. read more

Posted: Thursday, May 28th, 2015 | Posted in Java, JavaScript

Fast Forward: say no to panic

Today we commonly feel the urge to move faster – take notice faster, learn faster, decide faster and act faster. It becomes a struggle. Still we can’t just decide: let’s be faster. There are situations, behaviors, previous experience and other things slowing us down. Let’s gather some analysis on what are the common situations asking for faster action, and what could be the simplest solutions at hand helping us find a way to move in a Fast Forward way – e.g., overcome inability to act because of the state of panic caused by pushing factors, such as your project schedule. read more

Posted: Thursday, May 21st, 2015 | Posted in Fast Forward

Fast Forward: belief in success

Today we commonly feel the urge to move faster – take notice faster, learn faster, decide faster and act faster. It becomes a struggle. Still we can’t just decide: let’s be faster. There are situations, behaviors, previous experience and other things slowing us down. Let’s gather some analysis on what are the common situations asking for faster action, and what could be the simplest solutions at hand helping us find a way to move in a Fast Forward way. Sometimes, however, emotional breakdowns and feeling of failure slow us down considerably – so let us have a look at what can be done about that. read more

Posted: Thursday, May 14th, 2015 | Posted in Fast Forward

AWS cloud applications: forklift

It seems rather obvious that modern applications should be structured in a way that permits an easy deployment to existing cloud infrastructure, such as Amazon Web Services (AWS). In this article I will cover the Amazon solution, which is quite popular nowadays; there is, of course, also Google Computing Platform, which goes hand in hand with Amazon and offers more or less comparable core services, but let us focus on AWS for starters. read more

Posted: Thursday, May 7th, 2015 | Posted in Cloud, Java

Siebel Server Sync: Microsoft Exchange integration

Why Outlook?

It isn’t that much of a secret that Microsoft Outlook applications in conjunction Microsoft Exchange are a very popular piece of technology for enterprises. We have observed that enterprises generally use Outlook quite often, and most of our customers are also using Outlook as their core communication tool. Microsoft itself listed 12 reasons why users prefer Outlook over Gmail at work and these are the following: read more

Posted: Thursday, April 30th, 2015 | Posted in Siebel

Fast Forward: Making Mockups

Today we commonly feel the urge to move faster – take notice faster, learn faster, decide faster and act faster. It becomes a struggle. Still we can’t just decide: let’s be faster. There are situations, behaviors, previous experience and other things slowing us down. Let’s gather some analysis on what are the common situations asking for faster action, and what could be the simplest solutions at hand helping us find a way to move in a Fast Forward way (and mark those topics this way).

To start off, let’s address this simple point today: fast way of making easy to understand and easy to adjust mockups. read more

Posted: Thursday, April 23rd, 2015 | Posted in Fast Forward

Break free with CRM Desktop

Sometimes it looks like a sales agent have just eaten a bucket of lemons when asked to use a CRM system. When that happens, CRM Desktop comes in: there is no need for special training, because most agents are familiar with Outlook – or a similar application. CRM Desktop allows managing enterprise data in sales agent’s native environment – be it Microsoft Outlook or Lotus Notes – and it is a truly offline solution. CRM Desktop was first made for Siebel, and it is now possible to use it with SAP CRM and Salesforce as well. read more

Posted: Thursday, April 16th, 2015 | Posted in Siebel

Oracle Advanced Analytics: insurance claim fraud detection

The insurance fraud problem is as old as the insurance industry itself. The magnitude of insurance fraud today is enormous, and it is not limited to a single geographic location. One company investigated an average of 300 suspicious claims a month in Slovakia in 2009 – and that is just one insurer in one small country of just over 5 million inhabitants. read more

Posted: Thursday, April 9th, 2015 | Posted in OAA

Siebel upgrade: a success story

What makes an upgrade project challenging? For the most part that’s the time gap between the source and the destination versions of the system; imagine migrating from something that is 8 years old, add some changes in the data model on top of that – and you’ll get a picture of what we have recently done for one of our clients, moving from Siebel v7.8 (SEA repository) to v8.1.1.10 (SIA repository). Regardless, the upgrade has been a success, and this is a story about it. read more

Posted: Thursday, April 2nd, 2015 | Posted in Siebel

Does Siebel have a future?

Our company employs over 50 Siebel consultants, which yields more than several hundred years of overall experience gained in different Siebel projects across the world. When most of us started with Siebel, we felt a huge demand for Siebel consultants, and usually we had a bunch of projects to choose from. However, some time ago we’ve noticed that this demand has started to decline. So for the last few years we find ourselves quite often in discussion of Siebel future. The idea of this post is to accumulate our thoughts on the subject and see whether the whole picture starts making any sense… read more

Posted: Thursday, March 26th, 2015 | Posted in Siebel

Securing your API with OAuth 2.0

As the web evolves, more and more businesses are shifting their applications and data from internally hosted to the cloud. They provide publicly available APIs to expose valuable data (resources) and business functionality. To provide controlled access to exposed resources, API should be secured somehow, and that is where OAuth comes into play.
read more

Posted: Thursday, March 19th, 2015 | Posted in Java

Siebel at the Doctor’s Office

Most of our clients know at least one place in their Siebel solution, where they can click and then go grab some coffee while waiting for a response. Perhaps, there are such places in your Siebel system as well? Are users telling you that Siebel is slow? And do you know how to approach those issues? read more

Posted: Thursday, March 12th, 2015 | Posted in Siebel

Introducing BI Port for Siebel – a Siebel CRM analytics solution

So you have your Siebel CRM system up and running, a lot of data has already been accumulated, and now the time has come to establish a better control over your business processes? Say, you want to see the overall sales dynamics, find out which of the products sells better, or who in the sales team is your star player? There are two distinct ways how you can accomplish this: read more

Posted: Thursday, February 19th, 2015 | Posted in BI Port, Products

Siebel Open UI and Google Maps integration – Part 2

Last time we’ve seen how to transfer address information from Siebel to Google Maps and display a location on the map, i.e. implemented a unidirectional integration. Now the time has come to make the address data travel the other way around: from Google Maps picker to Siebel, so let us see what needs to be done to make it happen! read more

Posted: Thursday, February 12th, 2015 | Posted in OUI, Siebel

Siebel Open UI and Google Maps integration – Part 1

When trying to integrate Google Maps with any other system – such as Siebel – there are two possible approaches one could implement: a unidirectional integration, when the address data travels to Google Maps from the other system only (e.g., this is when you display an address stored in Siebel on the map), and a bidirectional integration, which basically entails unidirectional approach and on top of that – an ability to select and address in Google Maps picker and then transfer it back to the other system, such as Siebel. read more

Posted: Friday, January 30th, 2015 | Posted in OUI, Siebel

Achieving Silver Partner status in Application Development

Having been a Microsoft partner since 2010, Idea Port Riga has now achieved yet another major milestone in the partner program, becoming Microsoft Silver Partner in Application Development. This qualification requires both certified technology professionals on staff, and confirmed client references – thus emphasizing our ongoing commitment to creating, delivering and maintaining innovative custom solutions and services based on Microsoft technologies. read more

Posted: Wednesday, January 28th, 2015 | Posted in .NET

Introduction to Siebel Open UI

Thinking about Open UI, there are two most common perceptions around:

  1. That’s something that changes the look and feel of Siebel
  2. That’s something that helps developers deliver more


Both of these statements are true, but at the same time they illustrate the gap in understanding the Open UI scope; perhaps, we should rather view Siebel Open UI (OUI) as a standards-based, open architecture client that is supported by all browsers and provides end-user with a modern-looking UI. Let’s go through each of these key characteristics in a bit more detail.

read more

Posted: Monday, January 26th, 2015 | Posted in OUI, Siebel

Recent Posts