Get Dmitri's whitepapers from this blog

Monday, May 7, 2012

Integrating Oracle Content Server into larger architectures... In 30 minutes or less!


This whitepaper is the fastest way to tap into WebCenter Content (Oracle UCM) from your other enterprise application I know about. You’ll get a quick and practical introduction to all major integration scenarios, like using the UCM as your content database, long term storage, document management and web content management - both real time and batch-oriented. Plus you’ll get fresh, hands on insight into using various technologies and best fits for all integration scenarios.

Grab your copy here:



Wednesday, April 18, 2012


What can be better than a free one-on-one in-peron expert consultation?

Here's How To Have A Panel Of Renowned Oracle Web Center Content/UCM Experts Answer Your Questions Live, One-on-One With No Strings Attached

Attend one of our WebCenter Content Hot Seat sessions at the booth 1455 next week at Collaborate 12
 
All you'll have to do is climb up on our "hot seat" and ask about any WebCenter-related issue or concern you might be having.

We will give you a straight honest detailed answer from yours truly (Oracle ACE and the author of The Oracle UCM Handbook, wrote hundreds popular technical articles and he also runs the Independent Oracle UCM Knowledge Center) and Frank Woo (COO Softlinx, Oracle Gold Partner with dozens of successful WebCenter and UCM implementations and many dozens of happy clients over the years). No-nonsense, no sales talk just plain old PRO to PRO straight talk goodness.

And if that's not enough, you'll get an extra scoop of wisdom from your fellow attending crowd around you.  That's right. We're expecting a good number of people to attend these so we are expecting a crowd!

So if you are a Web Center Content/UCM client or a system integrator and you might have a question or concern regarding  Content Management, Site Studio, Records Management or Imaging  - stop by the booth 1455 and sign up for one of our sessions:

Tuesday, April 24, 2:00 PM
Wednesday, April 25, 11:00 AM and 2:00 PM

I'll see you then!

Best,
D

Wednesday, March 28, 2012

Oracle Document Capture - the fastest introduction I know about

A few folks have been asking me to do a demo of Oracle Capture and show what it can do and how to use it - so I figured I might as well share it with everybody. This will be fast, but its not one of those BS introductions that gives you marketing stuff and colored block diagrams that just get you feel dizzy and totally messed up. Nope. This one will get you comfy enough so that if you want to go ahead and start using Oracle Capture right away - you will just go ahead... and it will actually work.
So here it comes:
Let’s start by quickly looking at why so many Content Management implementations fail... and also...

What sales people are getting ... right?

You’ve probably heard that sales pitch about controlling the scary bloat of ever expanding mass of unstructured content – paper, email, file shares and how important it is to help your business people to really access the information they need, when they need it – from anywhere. And you know what – that part is right. I agree with the sales guys. Unstructured content really is hard and expensive to manage. I’ve personally seen clients losing hundreds of thousands of dollars having micro-chips manufactured to an outdated specification, ‘cause the production team looked in a wrong folder in an unwieldy SharePoint repository that gone out of control.
So there must be a simple solution, right?

Fast relief to information bloat problem... or not...


Here’s where many good intentions fall flat on a cold hard concrete of reality... the tool alone will not solve your business problem! No matter what tool you pick.
People install Oracle UCM, but unless they capture the metadata – the system is not much better than a plain old file system. Yes, they realize that and they define the metadata they would like to capture, so their check-in screens end up something like this screenshot on the previous page.
Problem solved, Right?
Uh... not exactly.

You see, when a contributor sees a form like that, they get terrified... or annoyed.... or both. And they try to get away with as little input as possible. So they skip as many fields as they can and when the system pops up a “value required” thing at them – they enter garbage.
So is it really practical to collect more than just a handful of metadata fields on check in?
Probably not, if you do it by hand... But who said you ought to do it by hand?

Introducing Oracle Capture

Let’s say, we’re checking in a monthly invoice and have five fields we’d like to capture. How would you like to – instead of putting them on the check in form – let your contributor to look at the actual document, side-by-side with a check in form... and have OCR to take its best guess at pulling that data and populating the form – before the contributor even gets to look at it?
Well, this is exactly what Oracle Capture is designed to do – pretty much out of the box.
Take a look at the screenshot below:

Not only contributor gets to see the document and the metadata fields side-by-side, each field has a corresponding OCR zone defined – and Capture is actually extracting the data out of this zone and puts it into the field.
When she moves to the next field, that field’s zone is highlighted in blue and she gets to see where the value in the field came from.
If the document was skewed or poorly scanned and the zone misses the value, contributor can simply drag and drop the value (See screenshot below)


Just select the area containing the text that you want to see in the field with your right mouse button and see the OCR extract the text out of the area and place in the field for you! How many fields do you think you can capture now?
You can combine also multiple documents into one and you’re free to remove junk pages as you see fit. Imagine what would it take to delete a page from a PDF document during normal Content Server check in. It’s simply not practical so these junk pages end up in repository...wasting time when searching for information... and folks print them every time and waste trees.
All solved in Oracle Capture at a click of a button (See screenshot below)

I hope you’re getting a feel for what it can do. So now it would be a perfect time for some...

Real life stories

I’m going to show you a couple of real life examples, so I want to quickly prove to you that this tool actually works.

Slashed half of the load of overworked Document Control people

One of the projects we recently completed was automating workflow and document control for a nuclear power station operation management provider. As part of doing business, they exchange a ton of technical specifications and formal transmittals with their government clients and sub-suppliers. Prior to implementation, information was duplicated, not easy to organize and retrieve and they didn’t have a structured workflow process.
Before using Capture, average time spent per document was benchmarked at 2 min 17 sec – on a 15 field check in form. With using Capture for extracting verifying and correcting pre-filled values – time spent per document dropped to just over 33 seconds!
That’s over two hours of added productive time (out of estimated 4) per Document Control person per day – or a killer 200% increase in productivity!

One more (75%) productivity increase here

Another our recent project I’d like to mention is the one where we’ve automated document storage, acquisition and workflow for a mid-sized insurance company. They have significant volume of incoming claim-supporting correspondence – mostly scanned documents coming in by email.
Over the years, they’ve tried more than once to extract meaningful metadata fields such as claim number and policy id – on check in – with various degrees of success.
They’ve also relied on a custom, outdated component that automatically checked in incoming email attachments. The component was buggy and unreliable.

Implementing Oracle Capture allowed them to finally retire component and begin to extract important metadata values out of incoming documents – during the check in process. Time spent per-document dropped from an average of 1.5 minutes to just under 22 seconds!
And the unsupported and buggy custom component was Capture Import Server.
I hope you’re getting a feel for the kind of massive, nearly instant savings I’m talking about!
And now let me tell you a more about...

How it works

If you look “under the hood” – at the core of Oracle Capture you’ll find a tool, called Zone Editor, that lets you define the zones where OCR should be looking for metadata values (See screenshot below)


You can create multiple document profiles, each with its own set of fields and its own form layout.
Now how would you get documents into Capture?
There’re several ways. The most obvious one is to use a scanner. Capture is happy to take in the scanned docs and you can also apply a bunch of image enhancements (See screenshot below)



But if your documents are coming in as MS Word and PDF on a shared drive or email attachments - you don’t have to print and re-scan them. Simply use the Import Server that will gladly import anything that can be virtually printed. You can also tell it to watch a folder, and drag and drop documents there – and see them appear in Oracle Capture.
Ok, but what happens when the user clicks “Commit” button on her Capture toolbar? There’re many options, but the one I want to focus on is having the document committed to Oracle UCM (See screenshot below)



It’s easy enough to configure, and you can have a searchable PDF/A committed to the Content Server... in addition to being able to map your Capture metadata fields to Content Server.
And now here’s a feature so profound, I had to put it into its own section:

Rapid customization facility

If you need to apply business rules on Content Server check-in - you can use profiles and rules, but they are quite limited. Custom Java components take a long time to write, plus you risk having to re-write them after every version upgrade...
Good news! Capture offers you quick, powerful and easy to use alternative – Basic Macros. Just like in MS Word, Excel and Outlook, you can verify and alter data in the fields, handle events like page load (and Capture’ own commit and OCR-related events), populate dropdown values and display custom dialogs.
Another thing you can do is go back to the database (a Content Server one if you like) and bring back a bunch of metadata values based on just one field. If you do that – all you need to grab off the scanned image is just one field! Claim number brings back the Broker Name, Adjuster, Policy Number and so on.

And once we started to talk about writing macros in Oracle Capture – there’s something else I have to mention...

Don’t say I haven’t told you!

The first time we used Capture a few years ago – we quickly flipped through developer manuals and it only took us 15 minutes to install the tool itself , so went for a beer to celebrate! What an easy tool! Phew! We felt like we’ve almost completed the project. Same time next week.... Bitter disappointment! Nothing works! Can’t even create an object! Assigning values to properties.... no result! Enumerating collections.... collection is empty!
EMPTY? But I’m looking at the damn batch! It has 10 pages! How can the pages collection be empty?
Pounding on keyboards... Screaming... A few days of fun!
But you know what, it all started to work after we’ve learned a few tricks. Macros do seem really simple at first, and they are, they do take a little time and experimentation to get used to and get them to work. So here’re the few tips I wish we had in front of us back then.
So if you are planning on writing macros in Oracle Capture (or you've tried and are facing these kind of issues) - the best way to get you over the hump is to take advantage of my free consultation offer. Check it out at http://www.stellentexperts.com/ - its totally free and you are under no obligation whatsoever. We just get on the phone and I answer your questions... Check it out.
And now that we’ve looked at these and the core features of Oracle Capture, let’s see what it takes to really crash it on results on the corporate level. So here’re the...

3 keys to achieving maximum benefits with Oracle Capture

This section will give you some important pointers on bridging the gap between a really helpful tool and massive enterprise-wide business results. I’m giving you 3 critical keys to a successful corporate rollout of Oracle Capture. Ignore them at your own risk.

Key #1 - It won’t work in isolation

If one of the departments starts using Capture and correctly populate a bunch of metadata fields... and other departments continue to grudgingly punch in required values by hand – the good and the bad entries will all end up in the same repository and you won’t be able to tell the good from the bad.
If you want to see some real results – you may be looking at an enterprise-wide rollout and, possibly, some data cleanup work down the road.

Key #2 - The more you use – the more you gain

Yes, it does sound common sense, but it’s true. The more of your content you have in electronic form, available for searching – the greater the power you give your business people. The more of the relevant metadata fields you define – the easier it is to search, manage and orchestrate your processes.
Once all of your content is in – you can also control its retention. Delete or archive what’s not being used. Eliminate multiple versions of the same document....
This is why companies undertake back file conversions, scan and eliminate paper copies, get rid of their mail rooms and off-site storage. If it takes a day or two to obtain a paper copy – what’s the benefit of having that copy in a first place? Sometimes, spending even 5 minutes searching for it will be posing a risk of making a wrong business decision or missing out on important opportunity.

Key #3 - One size... won’t fit all

Here’s the last one, but by far not the least. To really get what the Capture has to offer - the true benefits, like the smooth, tailored user experience that takes you to the next level of productivity – you got to customize the product ... Add business logic... clean up your OCR data... make your metadata fields “smart” – to handle partial matches, pop up custom dialogs, link the fields, capitalize on database lookups... An extra day of development may well bring you hours worth of saved contributor effort – day in and day out.
Beyond the turbo-charged check-in
That’s great, but what if you don’t want someone to sit there and verify every document? What if you’re looking at a back file conversion of thousands of documents – and you want to have it run unattended?
You really have two options – use bar codes and Oracle Capture Recognition Server or step up to Oracle Forms Recognition
If you can afford to use database lookup and macro code to infer the values of your metadata fields from one or two key fields, the Recognition Server that comes with Oracle Capture will be an ideal solution. Simply add a bar code to your document – to represent the key value, such as your policy or file number - and have a database lookup pull out the rest. That gives you fully automated forms recognition. No human intervention required.
If you need to process a variety of forms and you want the system to decide what form it is – and pull out the correct metadata values – you’re looking at a totally different animal and you got to use a different tool. This tool called Oracle Forms Recognition or OFR.
While Capture is based on a set of user-selected document profiles, each with a fixed OCR zones, OFR comes with intelligent full-form OCR and automatic matching to a document profile. That said, its more expensive and more work to setup and “train”. So once again, one size does not fit all. Pick your tools to match your project.

Conclusion

You’ve just learnt about a killer tool that can quickly put controls around a growing mass of your corporation’s unstructured content and take your business people to the next level of productivity. You’ve seen how Oracle Document Capture slashes manual input with its simple, intuitive and flexible interface... and you’ve seen the actual numbers that come with the massive time savings and productivity gains this tool produces in real life settings.
I’ve shown you what tools you have to customize Oracle Capture to fit to your own requirements and I’ve also given you some insider tips and things you need to be aware of when writing Basic code in Oracle Capture.
You’ve also seen the three keys to achieving the maximum benefits with Oracle Capture and what options do you have when going beyond a “turbo-charged check in screen” solution.Now once again, if you are a Web Center Content (Oracle UCM) client or a System Integrator, You can get me on the phone and get your answers... FREE. This is part of my community work so no sales talk and so strings attached.
That's all I got for today. Stay tuned for more...

Monday, January 30, 2012

Top 7 project-killing "Best Practices" - Part 3

Thanks for checking back! Here's the final post in the series and the last two Oracle UCM anti-patterns you gotta be aware of:

Component Hell

Just  as the name suggests, this is an all too common final destination of these dozens of Content Server installations maintained by Component Lovers. Whether for the love of java code, pride of craftsmanship or an old stupid belief that complexity creates job security, these folks package everything as java components.
A component for a custom check in form, when a simple HCSP page or a content profile can do the job... A component for duplicating the out of the box content expiry feature... A component for custom reporting instead of using the Content Tracker.... A component for custom Content Server User Interface and then putting it into an iFrame inside the Site Studio web site... Cheez! A 5 week project that was replaced by a simple HCSP Region Template, done by a junior developer in a day!
Reinventing the features that come ready to use with the Content Server, the Site Studio or any of these many supported and documented additional components from Oracle – for no good reason is a crime so when a business is asking for a few feature to be developed – make absolutely sure you’ve checked all the features and all supporting products in the UCM suite and building a custom component is justified.

Short Names

Or meaningless names used in the titles, content IDs and identifier names in your iDoc scripts better be avoided. When you check in a Page Template and Site Studio – be sure to specify a content id. If you don’t – the template will look funny in the Designer.
When creating a Region Template, I personally prefer to call it _RT_
There you have it. Not an exhaustive list by any means and not an earth-shattering revelation. I bet you were aware of many of these before... But hopefully, this article have stirred up some thoughts and you will “make 3 steps back” re-examine your UCM practices and your system from a new angle. It’s one of those “small things” that can reverse the trend and bring forth the big things you really want to see in your projects.

Thursday, January 12, 2012

Top 7 project-killing "Best Practices" - Part 2

This is the follow up to the post I've cooked up for you over the holidays. Here're another two oh... way too common, embarrassing situations a UCM project may end up in... and how to prevent them:

The Snowball

This is what happens when you ignore the rule above.

Picture yourself having a nicely configured system with clean data. Every document has correct meta values. Now you begin asking for a field that doesn't make sense.

Your contributors will begin putting garbage there... And they'll be putting garbage in other fields as well! How?

Once you done it in one filed - you just keep on typing "asdf" all the way down the form...

The system will soon become polluted. And you might end up losing the meta values for your entire repository. Why?

You won’t know which records have the real values - and which just garbage. Soon enough you won’t be able to trust the data anymore!

Keep an eye on what content is getting entered. And always keep communicating with your business users. Know this single, most expensive type of ECM activity - manual Cleansing and Matching. Unless you have an army of data analysts looking for stuff to do - I don't recommend you letting your project get to this point, so you must try really hard to prevent it.

Gold Plating

This one is a UCM-specific twist on every developer’s all times favourite. All too often I see technical teams continuing to toy with a task or project way past the point when its ripe and ready for the business to start using it.

The key here is to have a live working system in the hands of your business people - as soon as you possibly can.

And then keep improving it. All you need to do is make small incremental changes. Like adding different types of documents, new modules, new workflows etc.

Keep listening to feedback. If business is happy - you did great. If not - all you have to undo is just a few more of these small changes!

And don’t try to bite more then you can chew and don’t sit on an egg that has already hutched! You build 80% of value in the first 20% of the time you're working on the project and that's a really good time to have a business take a look and make a call if they'd like to start using it.

Sounds good?

Ok, gotta go...  back to client's work!

Stay tuned for more.

Wednesday, December 28, 2011

Top 7 project-killing "Best Practices" - which ones are you falling for?

Whether you are a developer or consultant getting down and dirty or a business person or project manager in charge - this may very well be the most revealing technology article you've seen in years.

The project killers I'm about to reveal here are nothing like those plain old "watch for this" common pitfalls everyone is aware of, like testing the expertise before you hire, watching the project scope and making sure you get lots of comments in your source. Nope. The ones I'm talking about here will snick up on when you least expect it... Geez, many folks are even proud of adopting those and get complimented for using them.... all the way to post-mortem project reviews.

Sure, they may not kill the project in one fell swoop, but given a little time, they are certain to do its job.

What I'm about to describe now is these commonly-reinvented bad solutions to typical problems you'll encounter in almost any Oracle UCM implementation. And once you see their ugly faces for what they really are - you won't be making the mistakes and your projects will run much smoother. I’m also giving you my best tips for getting yourself out of these situations on a short notice.

So now let’s get down there and take a look. I've collected the most common and the most deadly ones I've seen in my 7+ years in the frontline trenches of Oracle Stellent UCM.

The Kiss of Death

The worst thing of all is when your new Oracle ECM is not accepted by your organization. If that happens - the project is not going to make it. When people don't like your system, they won't be using it... When they are not using the system, no one can not benefit from it. End of story. The next three patterns give you some scoop:

Idiots In Charge

Almost every talented developer has a point in their career when they laugh at business people. These folks use CD trays to hold their coffees! "Incorrect version of user" huh? It’s true, they may act funny when it comes to technology, but chances are - those “dummies” are actually paying your bills!

Oracle ECM - just like SharePoint, Vignette, BroadVision - you name it - is just a framework. All it does is allow you, the designer, to quickly and easily automate business processes. Eliminate paper. Help them find the information faster. Destroy when it has to be destroyed...

You need to adjust your content collection, management and presentation systems to processes and demands of your organization. That's the real goal, not the software installation!

So guess what comes first?

If you misunderstand your organization's culture, processes and business requirements - no system out there will save your project.

Take the time to understand the real needs of business people. Understand the goals of your enterprise. Then go ahead and automate them. You won't be stuck trying to automate a bad process!

And be sure to read about UCM Gold Plating later in this article.

Metadata Marshlands

When it’s that easy to add new metadata fields, you gotta be on the lookout!

If you store Project Plans - you might like to add a project managers name, completion date and expense account number. But will those fields make sense in a vendor invoice? If users don't understand a purpose of a metadata field - they'll skip it, put wrong stuff in there or just type up some garbage - so the system lets them submit the form.

Check out these tips for successful metadata design - they are expensive to ignore...

Don't ask for all of your fields every time.

If they check in an employee record and you're asking them for PM name - guess what kind of name you'll get. It must make sense. So be sure to hide irrelevant fields with Content Server profiles or custom check in forms.

It’s also must be as quick and painless as possible. Business people are busy or, at least, they like to think that they are.

Ok... You’ve got the first three. Try guessing the other four will you?

Or you could simply stay tuned...

Happy Holidays!
D

Tuesday, July 19, 2011

Save time and wow your friends with this cool Dynamic Converter hack

If you ever wanted to add logic to the output of dynamic converter - this article will give you the best "gotcha" in a longest time. In the next few minutes I'll show you how to conditionally display parts of a dynamically converted word document - based on ... the query string parameters!

Yeah, you won't find this in the manual, but  if you think about it - its a really simple and natural thing to do....

Let’s imagine that you have a bunch of word documents that contain a summary and the full story (or English and French sections) and you only want to display the first sections in your  summary page, and full docs on the story page. And you don’t want to have to store your summary in a separate word document. 

Using just one document will avoid duplicated content and make it much easier and intuitive to update - all content in one place.

To show you exactly how to do it I've setup  a simple template with a region and inserted a dynamic converted word document in it. 

What I want to see happening is this:
  • When I don’t send anything on the query string or send "show=0" - I only want to see the summary or my "regular content" section (See screenshot below)




  • When I send "show=1" on the query string - I want to see my entire document (See screenshot below)



So how do I make my converted word document "that dynamic"?

Well, I can embed some java script in the document as hidden text but this is really messy and fragile. Contributors will have to look at this every day and will soon begin to hate you to a degree that actually affects your digestion system. Don’t do that!

So here's a better option. Let me give you a little hint - dynamic converter converts native application content to.... HCSTs!

Yes, you can simply use iDoc in your dynamic converter template!

Here's how:
  • In your word document create a new paragraph style. Formatting and the style name are not important for what we're trying to accomplish here
  • Apply your new style to the section that you want to dynamically show and hide
  • Save your document and check it into the Content Server.
  • Fire up your Dynamic converter Template Editor and click Element Setup on the right
  • Create a Dynamic converter element (on the Elements tab) and a new style (On the Styles tab)
  • Now match them up (Below is a screenshot showing you how you can map a Word Style called "Image Aligned Left" to a new element called imgAlignedLeft)




  • Go back to the Elements tab and select the element you've just created and mapped
  • Click Properties and go to HTML Tag tab
  • See screenshot below for a sample of how you can add iDoc script to hide your section based on the value from the query string!

Oh, but  what if you want to use other styles in your story and cannot apply your new style to an entire section?

Well, how about a pair of styles? Call the first one "Begin Body" and only specify a custom tag before the content. The other one will be the "End Body" and use the <$endif$> as its custom tag after the content




There  you have it

Really simple if you think about it! Using the if statement as a custom before tag for the element! That's it - entire solution fits in just 8 words :)

Hope you enjoyed this neat and powerful hack. And remember, if you ever need a hand with your UCM project, task at hand, training, support or simply an independent third party opinion - we're one email away. Just shoot us a quick note at contact at stellentExperts dot com. You'll be glad you did, just like a lot of  folks in these companies...

Oh, and we don’t have any sales people working here so after you do contact us - no one will be harassing you in the weeks to come - guaranteed!

Cheers
D