To BS or not to BS ?

Should Browser Scripts be part of the Open UI universe, going forward?

Honestly, the jury is still out on that one. At least as far as the Open UI design team sees it. A thorough analysis of an adequate number of examples is still pending.

But this has been a very common question that we are facing. So I would like to share my thoughts and would appreciate the same from you.

Its always about assigning the right concerns in the right places. What are the concerns that Browser Scripts could address pre Open UI?

  1. Replicating domain logic (most commonly validations) . Note the "Replicating" part. Just so that things can be a little more user friendly - among other things, maybe avoiding round trips. Never any business logic that is actually NOT implemented on the server and therefore only on the browser. That's just BAD.
  2. Implementing custom UI where there is room for doing so and a valid use case. By "room" I mean - you can creation a popup window with a bit of interactivity and data entry capability, or maybe a window to just display information. But these are silo UIs away from the main Applets on the screen, where there isn't "room" for UI customization, even by browser scripts (at least in HI).
  3. Doing custom browser-side pre or post processing for default functionality invoked due to user actions, at the Application, Applet, Business Component or Business Service Level. These are the well known pre and post hooks on InvokeMethod or SetFieldValue, at one or more of the the mentioned levels. Needless to say, this extra embellishment should make sense on the client and should not be something that should ideally sit on the server.
  4. Interaction with external applications. Again, the first question would be why we are doing this on the client. If we are talking to a desktop application or we are doing a simple browser side mashup (like showing addresses on a map) it may make sense. Remember, we are talking pre-Open UI.
  5. Injecting styling.

Now, coming to Open UI, and addressing the above concerns in the same order

  1. Server Domain Logic (typically validations) replicated on the Client is probably the only thing that makes sense in Browser Scripts in the Open UI scenario. And that too only in Business Components. Looking forward to what others feel about this. My thoughts are that this is not "Presentation Model". If anything, it can be considered "Client Mirrored Domain Model".
  2. All UI concerns in Open UI should be met by the PM-PR stack. Browser Scripts provide a few gaps, where available, to squeeze in UI creation. The PM lets you do whatever you want with the UI, including any level of modification. So which should be used is a no-brainer. And flirting with a hybrid option can provide unpredictable results, apart from the fact that it is an ugly thing to do.
  3. Unless it is Replicated server domain logic, it must be User Interaction related logic. If it is anything else it does not fit on the client. If it is User Interaction related logic, it should go into the PM-PR stack for the same reasons as mentioned in 2. You have facilities to add all the pre and post hooks that you can add in Browser Scripts, in Open UI Presentation Model extensions as well.
  4. There is no possibility of interacting with a desktop app from the browser JavaScript, and as far as web mashups on the browser are concerned, the exact same logic as 2 applies.
  5. Do I even need to talk about that?

So in a nutshell, only domain logic (typically server validations replicated on the client) are possible candidates to retain in Browser Scripts. As I said in the beginning, we believe this requires more analysis.

Would love to hear your opinion on this.

 See you later! And apologies for the title of the post - no offence meant. I just couldn't help myself. :)

Comments:

You may want to talk to Wendy Wills and Missy Moore in Expert Services. They are working with a large and long standing customer that has 230 browser scripts. They are classifying them as to what can be migrated to Javascript and what can't.

Posted by guest on January 18, 2013 at 12:22 PM PST #

Hi Chandan,

I was just thinking in another angle.

1)Going through the different objects, it is much easier for a Siebel developer (probably not the original developer of the code) to right click on the objects may be BCs or Applets to see what is the browser script or server script code that is causing the issue. Tools is a bit more organized way of maintaining the code.

2) There are many projects out there running that still use Check in check out and no source controls. That way browser scripts on objects(even though they finally are JS files) are a way lot easier to maintain.

I do understand I am looking through a siebel developer lens but thats what we have been doing all these day. May be you could help us change that perspective.

Thanks
Sridhar

Posted by Sridhar on January 19, 2013 at 02:54 AM PST #

Is it possible to render SI applets in OPEN UI because it is showing ? on screen and how to configure Google Maps in Open UI ??
Plz help me out..

Posted by guest on January 28, 2013 at 08:53 PM PST #

@guest,
You may have noticed the post by Vishal Thilak of the Open UI Development Team detailing Open UI handling of SI Applets. SI Applets that do not have any custom rendering (different from typical list of form rendering) will automatically be rendered in Open UI (though not actually by the SI mechanism). That is probably why you are seeing them.
For the Google Maps example, please see the book "Configuring Siebel Open UI" in the Siebel Bookshelf.
Thanks

Posted by Chandan DasGupta on February 11, 2013 at 10:08 AM PST #

@Chandan
I have already tried examples given in config pdf but i cant get proper idea of how to configure either google maps or rendering of si applets and still reports icons is not showing in OpenUI.

Posted by saurabh dixt on February 11, 2013 at 09:59 PM PST #

Post a Comment:
  • HTML Syntax: NOT allowed
About

Insights on Open UI Architecture, Best Practices for Open UI Development and Examples of Open UI Customization - Straight from the Open UI Development Team!

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today