Skip navigation
1 2 Previous Next

Developer Community

21 posts
Share:|

Innovation Suite offers a different approach to application development, but as it’s grounded in the same principles as Remedy a lot of the traditional Remedy components and naming conventions translate quite well. Rules are similar to Filters, Escalations are now called Timed Rules, which makes a lot more sense anyway. Processes are a different beast altogether, but once you get your head around it, you’ll get it. Records, absolutely. Views, Named Lists, totally get it. But wait, where are my Active Links? What happened to them?

 

I’m sure you’ve written your fair share of Active Links. They make your application interactive: they handle events, respond to button clicks, execute when forms open, run when you perform a search. That’s how you get applications to interact with the end users. Dynamic behaviour is an integral part of application design. Your business processes form the engine of the application, but end-users care about the UI – this needs to be intuitive and easy to interact with. As developers we need to consider how data is presented and how users can interact with the application.

 

Good application design involves caring how you interact with the end user, this goes further than just buttons and tables, just think about the apps available on your phone; consider how you manage your photos, your bank account or even how you train for the marathon. A lot of user interfaces are very intuitive and with the right design make it lot easier for end users to use the applications.

 

With classic Remedy almost all of interactivity is done using Active Links, which is a proprietary scripting-like technique. It does two things: sometimes it is used for business logic (validation, calculating something, integrating data, etc), but mostly it is used for screen interactivity. Active Links are easy to write with Developer Studio, but the technique has its limitations: there’s a specific set of functions and you can’t go beyond that. This limits your options to control the dynamic elements of your application. You can display a table field, control what happens when you click on the entries, but if there’s anything specific you want, that’s simply not possible. It can’t be extended.

 

With Innovation Suite there is a different approach, you don’t design Active Links anymore. So how do you design dynamic behaviour? There’s no easy answer to this, there’s no one-to-one translation for this one. The UI in Developer Studio is made out of views which are made up of view components. These should have the most important interaction patterns baked into them – they are part of the components. These contain all the necessary code that make the interactivity possible and you don’t have to worry about this. Interaction can be done via the component’s available configuration. For example, you can configure the navigation between top-level views via the shell or filter the data in a grid based on the input of data fields. By configuring the view component you determine the dynamic behaviour. For example, this Record Grid uses an expression which is based on the values of Text Fields. I link them together via the Expression field and the records in the Record Grid change as I type. I don't have to write any code for this, all that behaviour is baked into the component and I simply take advantage of the available configuration.

 

escalada4.png


That should take care of the majority of the behaviour you need to build applications, as new components are made available you can extend the application by simply adding them to the view and configuring them.

 

If you require more advanced behaviour you can use different Actions (out-of-the-box and custom ones) and string these together to create various effects (similar to the way you'd use Active Links). That’s all very well, but what can you do if the behaviour you want is not available? Innovation Suite allows you to extend the application by introducing custom actions and custom view components.

 

Custom actions are used when you need to execute custom code on an event. For example if you have rows in a record grid you can add buttons that do something with the selected rows: open the record, delete them, etc. But you can add your own actions here as well. So if you need to change the value of a few fields with a specific patters, you can write your own custom action.

 

If you want to take it a step further can you can write your own custom view components and bake in the behaviour you need. Like the out-of-the-box components you can use configuration parameters to interact with the system and link them to existing out-of-the-box components. You’ve got a lot of flexibility here and as you’re writing the components yourself you’re only limited by your imagination (and of course coding skills). A good example of this is the way you can present data. Consider this record grid which lists customers who escalated their support cases. Click on it and you see the escalation details.

 

escalada5.png

 

This is all put together with out-of-the-box components. You recognise the record grid, the views, the buttons. It works well, but I want a different way fur users to interact with the data. That wasn’t available out-of-the-box so I wrote it myself. This is what I came up with:

 

escalada2.png

 

 

 

Same data, different way of displaying this. How I wrote this is too long to explain, but it’s mainly AngularJS code. I made sure I made configuration items available which allowed me to link it to existing out-of-the-box components, in this case the selection fields:

 

escalada3.png

 

So all my interactivity here comes in the form of the AngularJS code I wrote as part of that view component, it’s baked in, when I use it in Innovation Studio I don’t have to worry about it.

 

Going back to the original question, what happens to my Active Links, the answer I heard a few times is that Active Links are now replaced by AngularJS. But I don’t think that’s the right answer, it assumes that you have to code all your dynamic behaviour in Angular, and that’s not true. Yes, you can extend and if you build your own View Components you need be pretty familiar with coding. But that’s the not the place to start, dynamic behaviour is part of the components and by configuring them, by linking them together you create an interactive UI. But if you want to write your own fancy components, build on the principles of Innovation Suite, you are of course more than welcome.

 

Best wishes,

Justin

Share:|

T3 Website.png

BMC is excited to announce that we will be the Flagship Sponsor for the upcoming T3: Service Management & Automation Conference,

or “T3SMAC”, taking place during the week of November 6, 2017 at the Palms Casino and Resort in Las Vegas.

 

This year’s conference is being put on by the Tools, Technology & Training organization (T3) to provide an interactive, educational experience for attendees looking to gain mind-share and hands-on views to the latest best-of-breed technologies. This conference will be focused on giving you an in-depth, technical view with valuable training to help you succeed in your roles and accomplishing your business needs!

 

Take advantage of the current Early Bird pricing that’s in effect until June 30, 2017: http://tooltechtrain.com/registrations.html

 

We look forward to seeing you all in Vegas!

 

More fun techie developer activities planned - news to follow...

Share:|

Eriks Hotel.jpg Munich.JPGwelcome VIPCON.JPGVIPCON House Team.jpg

First German Innovation House hosted by VIPCON. Six Customers, Six apps created in three days!

 

VIPCON was excited to host the first Innovation House with their enterprise customers in Germany. This was the perfect opportunity to introduce Innovation Suite. BMC Innovation Suite is a new solution that empowers developers and business analysts to co-create powerful enterprise apps with stunning user experiences.

 

The VIPCON Innovation House took place in the Bavarian countryside near Munich. VIPCON’s development team Christoph Klapetke Ludger Woelfel joined forces with BMC product team Dave Sulcer Anand Vidyasagar Robert Curlee to empower Customers to get hands on experience and discover the power and simplicity of the new platform.

 

The program ran for 3 days where VIPCON and BMC worked with six customers from various industries (automotive, insurance, retail and media) to build individual apps to address business challenges they were currently experiencing in their day to day work.  By the end of the Innovation House program, six different business apps were created and presented to the group. They include:

Communication app: Reducing project related e-mail communication with approvals and changes.

Phone book app: Company phone book with reservation of number blocks for departments.

Extended data management: Workflow driven approvals for changed service attributes with automated classification.

Security subscription app: Loading BSI security incidents automatically and share with IT.

Bid Request app: Administration of bids with related workflow after acceptance.

Service Description Lifecycle Management app: Workflow for controlled creation of services and automated delivery to target system.

 

The “Service Description Lifecycle Management app” was voted and awarded the best idea by all participants. It was something they found they could use in their workplace.

 

Participants at the house came from various different roles such as developers, business analysts and IT managers.  Although participants came from a diverse background, we found that the feedback received had many commonalities and these included:

"with BMC Innovation Suite you can simply solve painful challenges"

“after three days I nearly finished my new business application without any coding and not having seen the tool before”

“the result of the Innovation House is an enormous success for me” – CEO who built his own app.

 

“We found that Customers were excited at the Innovation House program. After 3 days with our Customers, we continued with sales conversations. This confirmed VIPCON's confidence and strategy to introduce the BMC Innovation Suite to the European market” said Andreas Kunz ,CEO  & Co-founder of VIPCON.

 

THANK YOU to our friends @VIPCON for hosting a great 3 days of collaboration and for your generous German hospitality!

 

To learn more about VIPCON, contact Conni Kunz Christina Koob

 

More Information

Are you a Partner who is interested in hosting a BMC Innovator House with your Customers?

Contact May Bakken Tony Myers

 

 

Group2.JPGGroup1.JPG

Pre-dinner Innovation House Team Building

Share:|

Innovation Suite as a service is now available to run custom and partner Innovation Suite applications in the BMC Cloud.

 

Innovation Suite for developers was created to solve a common problem. Business owners interacting with a business analyst interacting with developers can waste valuable time and cause rework due to churn and miscommunication. A developer wants to use modern coding languages to quickly create components and applications. A business analyst wants to take that application and easily tailor it to make sure it delivers the value the business demands. Just this past December, BMC announced a powerful new way to develop and tailor modern applications. Innovation Suite for developers is a cloud-based service that empowers developers and business analysts to co-create and tailor custom applications.

 

Applications created using Innovation Suite for developers can now be run in the BMC Cloud! The BMC Cloud provides a reliable, secure and trusted environment for your custom applications.

 

  • Customers can purchase Innovation Suite license subscriptions
  • Customers that have developed Innovation Suite applications can be deployed in the BMC Cloud
  • Partners can monetize their Innovation Suite applications by signing up for the ISV Partner Program and publishing in the BMC Marketplace
  • Customers can try new partner applications published in the BMC Marketplace
  • Developers across partner and customer organizations can continue to access the Innovation Suite developer environment by signing up for the BMC Developer Program

 

How do I get started?

 

Contact your sales representative once you are ready to run your application in the BMC Cloud!

Share:|

New BMC Innovation Suite enables Developers and Business Analysts to co-create apps in the  cloud

 

BMC is evolving its capabilities and unveiling a new set of cloud based developer tools and resources to help enterprises innovate at a rapid pace.We are excited to announce the launch of Innovation Suite, our cloud-based offering that enables developers to create complex workflow-based digital service management applications using a combination of modern app architecture, coding languages and intuitive drag-and-drop design tools. Read on for more detail:

BMC IS.JPG

Tailored for third-party developers, freelancers as well as partner and customer app developers, the new BMC Innovation Suite will include:

  • Innovation Studio: Simple, intuitive drag-and-drop UI to do codeless innovation.
  • SDK: A set of tools and samples that is integrated with the studio.
  • Library of connectors and components: Capabilities that can be used to extend and build new apps.
  • REST APIs: APIs required integrating with external systems.
  • Developer Education: Self-paced labs and documentation to get familiarized with the Innovation Suite.

 

Innovation Suite will be available to all BMC customers and partners to consume and build modern digital apps, on AWS.

 

Developer Program

To drive adoption and support of the Innovation Suite, we are also launching a BMC Developer Program.

The Developer Program provides members with access to everything they need to build and deploy digital innovations for the enterprise.

  • Access to a tooled personal Sandbox
  • Access to a library of developer tools, components & APIs
  • Access to Developer Community
  • Documentation and other learning resources

 

Get Started Today

Customers, Partners & Developers can get access to an Innovation Suite Developer Environment by signing up for the Developer Program.

 

We look forward to have you signed up for the program.

 

As always, thanks for your continued support and participation in our programs and ecosystem.

You are a critical part of our success and we look forward to your feedback.

 

Kind regards,

Innovation Suite Team

Web Banner.jpg

Share:|

I was invited to attend a conference call at the start of October between Hagrid Solutions and BMC (May Bakken & Prue Palmer to be introduced to the Innovation Suite and discuss whether we would be interested in developing a proto-type application using the Innovation Suite that could be demonstrated at the BMC Exchange Melbourne to be held on the 25 October. This was my first exposure to the Innovation Suite and only other BMC product that I have had any experience with was Remedy. So along with my colleague Nick Lukies, we had accepted the challenge to get an application up and going within 3 weeks using the Innovation Suite with no prior experience with this technology.

 

Our strategy was to find an application that we had already done some initial development on and would be a good fit, and then attempt to port it over to the platform. We had a number of candidates that ranged from a Pokemon tracking application to integrating a work placement app into the BMC HR application. We ended up deciding on building the Cloud Management Application for the following reasons:

  • We had already done some initial development with the AmazonAWS EC2 Web Services which can be used to monitor and control Virtual Servers in the Amazon Cloud Environment.
  • With this application, we didn't require any other software to be installed and configured
  • We had developed the data discovery component but didn't have an User Interface component which is where the Innovation Suite could be utilised.
  • And we only had 3 weeks to get it in a state that it can be demonstrated.

 

I spent the first two weeks of this time frame coming up to speed with the suite initially reading documentation such as "Developing a Smart application using Innovation" that was provided on the BMC documentation site. It took me a week to get my development environment setup mainly because I initially tried to set it up on the Server running the Innovation Suite. This server was located in an Amazon Cloud Environment on the west coast of America and I am based on the east coast of Australia, so the response times were not good. The break through for me came when Dave Sulcer sent me a link to a series of tutorials that he has developed that take you through the process from setting up a remote development environment to developing an application (Work Order).

 

The second week was spent going through the Tutorials which covered all the component areas of the Innovation Suite. During the second week, we also had calls with the Innovation Suite Development team in India which helps with us the RecordService API which we used in the Cloud Management Application to retrieve existing Virtual Server records, update and create them as well.

 

The last week before BMC Exchange, we developed the Cloud Management Application in Innovation Suite. The architecture of the application has two major components:

  • The first is the background process that runs remote to Innovation Suite and provides Restful Web Services that can be invoked to discover all Virtual Servers in our environment and allow control functions such as starting and stopping of these Virtual Servers based upon their current state and the desired state of the Server. This background process to polling the virtual server(s) environments for updates to state and discovery of new servers.
  • The other component is the Application in Innovation Suite which provides the interface to a list of all virtual servers and various attributes of these servers such as state, type..etc. If the desired state of a virtual server is updated and it is different to the current state (i.e. desired state = running and current state = stopped), this will trigger an Innovation suite rule and process to perform the appropriate action such as start the virtual server.

For the BMC Exchange, we had interfaces developed to Amazon AWS EC2 instances and Microsoft Azure instances showing attributes of these virtual servers and being able to control their states from within Innovation Suite.

 

Configuration information on each Cloud Environment (Amazon & Azure) was also displayed.

 

 

Screen Shot 2016-12-02 at 4.45.52 PM.png

 

 

 

Looking forward, we had plans to add more Cloud Environments such as SoftLayer & Rackspace and integration our discovery process with the Atrium component that comes with the Innovation Suite so that we can define inter dependencies between Virtual Servers to manage the deployment, starting and stopping of virtual servers in client environments.

 

Overall, I found creating an application in the Innovation Suite to be a flexible and open development environment and provided the ability to get an application up and running in a very short period of time. I would encourage others to consider this development platform for their next or existing application development projects.

 

Written by Bernie Symons from Hagrid Solutions | Melbourne, Australia

Share:|

You know what I like about Remedy? That it allows to me to quickly build complex applications. Things like approvals and authentication, which are difficult to manage are put together quite quickly using workflow. So if you need an application to manage your inventory, manage your holiday planning or even your lunch orders, Remedy will do the job. The range of functionality added by Remedy is great, but what if you need the application to do something that’s not available out-of-the-box? Well that’s my problem with Remedy, there’s a ceiling and it’s difficult to add new functionality. Yes, you can write your own plugins or try to accomplish it through web services, but it’s not straightforward and it doesn’t always integrate that well.

 

But here's the good news: Innovation Studio changed this. You still have the ability to build applications using a workflow-based design, but if the functionality you’re after isn’t there, you can just build it yourself. A spoiler alert should probably be in place here: we'll be looking at some Java code. But rest assured, we'll keep it as simple as possible.

 

Last time we had a look at the Process Designer which allows us to build processes with various out-of-the-box activities. But the application I am working on requires functionality that's not available by default. This is the process I designed; I highlighted the parts that I had to  write myself:

 

extending1.png

 

So there's an activity called Ping which accepts a machine name as the input and returns a Boolean indicating if the machine is alive or not. Then there are two activites which retrieve version information. The ARS activity accepts the machine name and returns the AR server version (if available), the Mid-Tier component accepts the server URL and returns the Mid-Tier version (again if available). They're both fairly simple and didn't require a lot of complicated code. So let's have a look at the Ping component to see how I wrote this. Don't worry, we'll definitely have a look at some more complicated examples in future blog articles, but let's get the basics right first.

 

Apps written in Innovation Suite use Maven, which is essentially a build tool that helps you to manage your files, libraries, dependencies and so forth. If you want to extend your current application with new activities you can write these using Java code. The first thing you need to do is import the Maven project into an IDE, our preferred IDE is Eclipse. What you'll be writing are called Services which translate into the activities you see in Process Desiginer.

 

To do this you need to create two new packages which help us to order the various files we require. Think of a package as Java's equivalent to a namespace, it helps you to organise the various files and avoids name conflicts. You'll already find the package at com.bmc.bundle under src/main/java, which is created by default. This contains MyApplication.java or MyLibrary.java depending on if you're building an application or a library. You need to create a new package, choose a name in line with your project, for example com.acme.service and put this under src/main.java. Just right-click, choose New and Package. This is what this should look like:

 

extending2.png

 

Next, create your Java files under the new package. You create one new file per category. This corresponds to the categories you'd see in Process Designer (Activities, Events, etc). You can't specify the name of the category it will just take the first part of the name. I'll call mine PingService.java, so the category name will be Ping.

 

Here are the bare bones of the component. Notice the BMC specific imports which are required. The package corresponds to the package name we set earlier and the class name of course matches the file name.

 

extending3.png

Essentially a Service is a group of methods, each of which has an input and it returns an output. That's all it is. So if you're familiar with writing Java functions this should look pretty familiar. But notice the BMC-specific Annotation which extends the normal functions to ensure it's recognised by Innovation Suite. If you want your function to show up as a service in Innovation Suite it needs to be annotated with @Action – if you leave this out it will be handled as a normal (internal) function. There's additional Annotation added to handle the input parameter: I add @ActionParameter to make sure it's recognised as an input, I also add @NotBlank and @NotNull to specify the parameter's prerequisites. But other than that, I just handle it like a normal function.

 

Let's go back to our example: I want to check if my machines are available or not, so I want to execute some form of ping command to check if they're alive. There's no TCP ping command in Java, but I can just use InetAddress. I'm aware this doesn't work under all circumstances, but it does the job in my internal network. I always start with a simple Java class, I want to ensure all the code works correctly before I convert it to a proper Innovation Suite service, so without any annotation. In this case I work with this example:

 

extending4.png

 

It's a straight forward test: if I run the class it correctly returns True if the machine exists and False if it doesn't. When all of that works fine it's time to convert it to a service. I copy the code to my new Java file and add the correct Annotations:

 

extending5.png

 

There are no major changes, it's just formatted in a specific way. The only thing that remains is to register the services in MyApplication.java (or MyLibrary.java if you're building a library). I reference the libraries and register them:

 

extending7.png

 

And that's all you need to do. Next we need to recompile it using a Maven (mvn clean install -Pexport -Pdeploy for existing projects) and keep our fingers firmly crossed we don't end up with any weird errors. If all goes well refresh Innovation Suite and the new service should now show up in Process Designer as an activity and it's ready to be used. So let's start building those Processes and Rules and and see if it actually works!

 

extending8.png

 

I know my example was very simple, but you can see how easy it is to enrich the current functionality of Innovation Suite. If there's something you need for your project and it's not available out of the box, you don't have to log an enhancement request and hope for the best – you can just write it yourself. It can be as simple as a small function to ping a server or as complicated as a full integration with an external system. But the great thing is that it's completely up to you.

 

That's it from me, next time we're going to have a look at how to actually debug your Java service. Trust me, it's easier than you think! In the mean time, if you want to learn more about developing Java Services and want to have a look at an example which goes into more detail, be sure to check the Development Tutorial.

 

Until next time,

 

Justin Bakker

Share:|

Come check out what we built at London BMC Exchange in the KTSL booth, Thursday, November 10!

house 2.JPG

Whilst sitting in the US Engage conference talk about Innovation Suite and after using the initial BETA it occurred to me immediately how well this new technology fitted what we have been doing at KTSL over the last 2 years.  Namely extending the BMC platform to be able to take advantage of the visual and integration components available within Java and outside of the Remedy toolset.  We approached BMC and working with BMC came up with the idea of hosting a UK Innovator House similar the to one held in the US but this time with customers present and with a fixed requirement from those customers.  From this, the idea of the UK Innovation House came to fruition. 

The house was hosted over 3 days in the Surrey Hills in a quiet country location with a house able to sleep all of the required participants.  The customers were chosen because they too have had a similar vision to extend the platform and one of the customers, Unilever, have actively been extending and laying HTML 5 User Interfaces over Remedy already.  Unilever and IBM attended the house, with Unilever providing a Systems Developer and a Solutions Analyst.  IBM sent a Systems Developer.  KTSL sent 3 Systems Developers and they all worked with 2 BMC representatives and a member of the US house.

The solutions analyst at the house outlined the business process and the requirement. Simply they have multiple alert systems and they wanted one view of this external data from the Operations Bridge. Alerts marked as ‘down’ need to cut Incidents straight away but other alerts which could be an Incident need a manual verification.  The requirement was to allow the Operations Bridge one view and a quick way of creating the Incident or ignoring the alert.  This was done based on the severity of the alert.

 

The application was ideal as a showcase because we needed integrations into the underlying alerting tool (in this case Omnibus) and we also wanted links to the CMDB models.  We used the development capabilities to not only use direct REST Webservices to get the data but use a table and a graphical javascript display for the graphical element.  The suite allowed us to build something quickly which would have needed extensive customisation previously.

 

The real plus points of the suite were the speed and the scalability of it and allowing both the developers but also the solutions analyst to play a key role in the development.  It also allows you to develop additional features yourself and really make use of industry standard user interface techniques alongside the integration capabilities of the BMC technology stack.  Longer term, taking this as a base and extending it into the BMC Panama application as well building up a set of core components for the Suite will make this a industry leading and powerful development platform.

 

The house was a perfect location for the developers to thrive, with the constant interaction and the focused goal giving a much better opportunity than a training course or a Q & A session.  By working through the requirements it really gave a focus to not just 'learning' the tool but 'using' the tool which is much more valuable.  From a KTSL perspective we intend to leverage this by building applications both with our customers but also for ourselves over the coming months.  Allowing us to leverage our work over the last 2 years but now inside the Suite.  Using Innovation Suite will become a core part of the KTSL technology products alongside other exciting new technologies we intend to invest in over the next year.

 

Aaron Perrott

KTSL Head of Technology

 

 

 

Mark Robinson

 

Save

Share:|

Innovation Suite Graphic.JPG

Please join Robert Curlee, Principal Product Manager and Alex Henson, Principal Solutions Marketing Manager, as they introduce BMC Innovation Suite. Innovation Suite is new platform that empowers developers and business users to co-create powerful enterprise apps with stunning user experiences. The highly scalable platform combines the flexibility of modern coding languages with the ease of drag-and-drop designers to enable coders and non-coders to innovate together.

 

In this webinar we will introduce you to a brand new method for co-creating enterprise applications with key insights from BMC Product Managers and developers involved in the Innovation Suite early access program.

 

Event Registration Details

 

Date and time: Wednesday, December 7, 2016 8:00 am

Pacific Standard Time (San Francisco, GMT-08:00)

Duration: 1 hour 30 minutes

Registration Link: https://bmcsoftware.webex.com/bmcsoftware/onstage/g.php?MTID=e7bd83198fdf9f71edfad62d6f48b44a3

Registration Password: bmc

 

After registration, you will receive a confirmation email.

 

If you haven't done so, join our Developer Program developer.bmc.com to get access to BMC Innovation Suite!

Vidhya Srinivasan May Bakken

 

Question about this webinar? Contact developer@bmc.com

 

RECORDING: BMC Innovation Suite Launch Webinar Recording

Save

Share:|

Innovation Suite is going to be different, quite different indeed. Brace yourself to be introduced to a whole new way of designing applications, which also comes with a new array of terminology. Soon you won’t be talking about Active Links, Filters or Forms anymore. BMC Support won’t be asking you for the workflow logs anymore and we promise we won’t be advising you to flush the Mid-Tier cache every time. Instead watercooler talk will revolve around a discussion about Maven Archetypes, Record Definitions, View Components, and most of all Processes. Intrigued to learn more? Let’s go!

 

It’s the new Process Designer that will provide the engine of your new application. This is where we will write those complicated business processes in an easily understandable and manageable way. Because that’s what’s always been at the core of Remedy’s application design: you can design complicated applications in an easy way. And the new Process Designer will certainly make your life a lot easier.

 

It’s tempting to try translating traditional Remedy components one to one to Innovation Suite components. But this doesn’t always work that well. Yes, it’s similar to server workflow, but it’s a different approach. You describe a business process by defining a set of steps to achieve a goal. That could be anything from onboarding a new employee or approving a server change to placing a new holiday request.

 

I know, it all sounds a bit, well, vague. So let’s have a look at a real example. To make it more interesting, let’s compare how we’d resolve the same problem without a Process. I am working on an application which periodically needs to check a list of machine entries to check if they’re still available and if not to check if they need to be retired. I also want to update the version information and even inform the machine’s owner if the machine hasn’t been seen for a while. So we have quite a list of things the application needs to do in sequence. How would I go about implementing this?

 

Well, I’m glad you asked. Let’s try resolving this via Rules first. Yes, Rules do translate to Filters and Escalations quite well and you could use them in the same way. I have a record definition with all my data (think forms in Remedy) which looks as follows:

 

process1.png

 

The first thing I need to do is check if every machine in this record definition is still valid. I use a custom component which accepts the machine name and outputs a Boolean (true or false). First we need an escalation, sorry I mean Timed Rule (I’m getting used to the new lingo as well) which updates a hidden field called Ping:

 

process2.png

 

So all the records now have a value in the field Ping of either True or False. The update will be interpreted as a change event, so next I use another Rule which executes when a change occurs and updates the version information. This uses a Set Field action:

 

process3.png

 

Never mind the first two version components, they're custom built as well. We'll discuss how to do this in a later blog article. In addition I need a Rule that also runs on change with a later execution order which checks if the machine is expired or not. But I need even more Rules to handle the various other bits and pieces. So I need at least five different Rules plus hidden fields to make this work – it's suddenly getting really complicated. Yes, it will do the job and if you’re familiar with workflow design you can follow it, but it’s not easy to manage. If you want to change anything you need to make sure you’ve got everything documented in detail or else it’s a matter of working it out using the logs. Not ideal.

 

So is there a better way? As a matter of fact there is: you can define a Process to handle the whole transaction. It requires a different way of thinking about it. Rather than trying to resolve a problem with a series of workflow entries you think of it as an actual process. And I don’t mean designing it on paper before translating it to a series of components, I mean actually designing it as a process.

 

Let’s go back to my specification. So we check a series of machines and for each machine we go through a series of steps: check if it still exists, if so check if the versions are up to date. If not, check if the machine can be retired. So for each machine I’d expect it to go through this series of steps:

 

process4.png

 

That's of course still conceptual and the challenge is to get this flowchart translated to something that actually works. And that's a lot easier that you'd think – all I have to do is translate this flowchart to a Process in Process Designer. Let's give it a go. Processes don’t have a trigger, that comes later. Instead we define an input parameter first – after all we need to store our data somewhere.

 

process5.png

 

I use my parameter to store the record retrieved from Record Definition. Next I build the Process itself. I don't worry too much about passing data between the components at this stage, I just want to get the basics right. This is what I came up with:

 

process6.png

 

Pretty neat looking isn't it? It does the same thing as the Rules we looked at earlier but it's a lot easier to understand what it's doing. If you compare it to the flowchart I initially wrote, it translates very well. I use a few custom components like the Ping and the Version Information, but the rest is all out-of-the-box. Check the Retire machine component for example. It's an Update Record action; the Update machine details is similar.

 

I used Gateways to make decisions based on the outcome of the preceding component. So I first ping the machine and a Boolean is returned. I use the Gateway to check if this outcome is True or False. The link between the Gateway and the next components has a condition:

 

process10.png

 

That's how I work out what route is taken based on the decisions. Next I provide the various components with the data. Remember we defined the parameter? I use this for most of the components, here's Ping for example:

 

process8.png

 

It's the same for the other components. So I either use the output of a component (like the Gateway) or from the initial parameter (like the Ping component).

 

Assuming everything works okay I can now execute my Process. I want to test it first via the Manage Processes option, any problems I might have should show up here:

 

process12.png

 

All that's left to do is hook it up to a Rule and execute it!

 

Processes allow you to quickly construct complicated business functionality. They're easy to manage and it's easy see what they're doing. I don’t have to spend a lot of time working out what does what, it’s all pretty obvious. A few weeks after I wrote the initial Process I had to change it to account for machines that never were seen online. I simply added a few extra steps and it was picked up:

 

process14.png

 

See, what I mean? It takes a little while to get your head around it, but once you do Process Designer offers a powerful way to design and define your business logic. And what to you do when the functionality you need is not available? Well, you write it yourself of course – this is Innovation Suite after all. You can extend it if required. And how do you do this? Well, you have to read my next blog article.

 

Until next time,

 

Justin Bakker

Share:|

BMC is excited to work with our Partner KTSL, as they hosts the first BMC Innovator House with enterprise developers in the UK. With the upcoming release of BMC Innovation Suite, KTSL is working with their Customers, Unilever and IBM to build an app to showcase at BMC Exchange London.

 

BMC Innovation Suite is a brand new solution that empowers developers and business analysts to co-create powerful enterprise apps with stunning user experiences.

 

The UK Innovator House program kicked off today, October 18  and will run through October 20 in a grand house in Surrey. The KTSL Remedy development team  joined by BMC Lead Developers, BMC Product Management and several enterprise developers came together to build an app. Developers are excited to test the power and simplicity of the new platform. Stay tune for more updates ...

UK House Collage.jpg

BMC UK Innovator House

  • Aaron Perrott, KTSL CTO "test drives" BMC Innovation Suite
  • Customer Developers: Unilever and Legal & Counsel
  • #BMC_Innovator #BMC_Developer

Vidhya Srinivasan Bhanu Singh Michele McFadden Misi Mladoniczky Aaron Perrott Dave Sulcer Justin Bakker

Vic Collins Andrew Davies stephen Grant Andrew Davies Jez Jones Gary Ikin Stephen Hawkins Mark Walters

Mark Robinson May Bakken

Share:|

What's the buzz with Innovation Suite?

Capgemini MyCloud application, delivering rich end to end functionality to request and provision VMs, from request submission and approval, through automatic provisioning, request distribution to our Service Providers, to update of relevant central and client CMDB, has been build 100% using Innovation Suite.  What is this, you may ask. Well this is certainly something worth checking if you are in IT Service Management business. I had access to early beta and this is how it changes the game we play.

 

You CAN teach old dog new tricks

Zrzut ekranu 2016-09-04 o 16.12.27.jpgComing from “traditional” Remedy development and architecture background, seeing Innovation Studio was one of the “wow moments” for me, breath of fresh air. For a start – record and view definitions are separated. This makes extending both the data model and presentation layer much easier and more flexible. I especially enjoyed the concept of record inheritance, in which on top of existing records (in my case mainly records from Foundation Library), I could easily build my own definitions, that add extra content to base records while still maintaining the parent characteristics. Hence, if you need more or less what “Person” definition offers, but would like to add fields holding information on what sort of pizza does an employee like – this is just few mouse clicks away!   Building view definitions has never been easier as well, one just need to drag and drop either out of the box components or custom made UI elements.

 

Zrzut ekranu 2016-09-15 o 17.46.01.jpgCustom stuff at your fingertips

Ah yes, custom made components. Ever wished this fancy Facebook widget was there is “classical” Remedy? Or wanted to include Google Maps in your application? Well, now with Innovation Suite, you can easily build anything you want with Java, based on either your own skills and imagination, or widely available code snippets on the internet. You can then use them in your Smart Application directly, create a reusable library for all the apps to use, or even, with BMC Marketplace, sell your library to everyone else dreaming of introducing those cool looking maps! This is in my view one of the best features of the new suite, as you are no longer limited to components pre-installed with your Remedy engine. And if you are skilled appropriately, you can monetize your work and let others benefit from your work.

 

Zrzut ekranu 2016-09-15 o 19.16.48.pngDevelopment made easy

Recently I was pulling my hair out trying to debug some workflow populating user cache. Traditionally you read the logs, analyze filters, guides etc, GO TO 120, Set z1D_Action and so on – not the most pleasant task. Did you ever fantasize about workflow being a simple BPML diagram that actually does all the “complex”processing for you in the background? Guess what – this is what Innovation Suite excels in. You simply drag and drop process components, connect them into intuitive and understandable process diagram and off you go. Remedy does all the hard work for you, so you can focus on really important stuff – modeling the business process to make your users happy. No matter big or small process, in Innovation Studio it is always very easy to read and analyze. My hint for all of you building very large processes is – keep them modular. Rather than cluttering the process with all the tasks required – divide your process into sub processes, which are then called by your main process. This way not only your diagram looks nicer and will be more understandable but you have much more flexible ways to test parts of your app using Manage Processes. I found this extremely useful while building a complex functionality calling multiple adapters.

 

14139171_1253715437992448_1372070700_o.jpgIntegrate with everything you need

Ah, OK, I dropped another name – “adapters”. This is what we liked a lot in Innovation Suite. You now have an adapter framework, allowing you to create interfaces with any system you like. Adapters can be built in any programming language of your choice (ok, we did not test with Logo, but I suppose the little turtle there might have issues understanding modern IT concepts J ) and as long as they follow Remedy standards, they can be used as a gateway to any system you like. What we did in Capgemini MyCloud is we created connectors to Cloud Provisioning Portal (to deploy VMs), another external ITSM with SmartIT, Jira and external CMDB. Once developed, our connectors were hosted in Azure (although you can host them wherever you like, including your testing datacenter in the basement, and this is not a made up example) and opened up Innovation Suite for all the interfaces mentioned above. What is cool about this framework is the connectors can easily be reused – for different tenants in Innovation Suite, different remedy instance or even completely different system.

 

Zrzut ekranu 2016-08-30 o 11.19.34.jpgJazzy GUI in minutes

I wanted to end up my post with something really sexy and the choice was obvious – GUI for applications. Angular JS based UI means you can create look and feel of the application in no time. We have created a custom, fully branded GUI for our Capgemini MyCloud in HTML and Angular JS and were really happy to see how simple it is to include something completely custom into Innovation Suite application.  Innovation Suite in general brings features and improvements we all have been waiting for and I believe that this release will be a game changer for BMC. I certainly hope that based on my blog post (oh and I did not even mention Multi Tenancy redesign in this version and tons of other features), you feel similar.

 

...and by the way...

We Polish people are shy by nature, but worth mentioning that our Innovation Suite based Smart Application - Capgemini MyCloud won 1st prize in Smart App Competition at Engage 2016. If you would like to see how it looks (and works) or know more about Capgemini and what we do, please check the video below, or reach out to Lukasz Piech or Daniel Musiał

 

Special thanks to May Bakken and Dave Sulcer for letting us play with pre-release version!

 

Share:|

"Secure Site Visitor App," developed by Fusion Business Solutions is an application for the management of visitors to secure environments such as Data Centres, Government Offices or any other security conscious site. With a variety of contractors, visitors and staff attending offices and sensitive areas and secure sites across your company, tracking and managing the risks presented is vital.

 

The idea behind the Secure Site Visitor App is fairly simple, the application first allows users to quickly and easily request access for a visitor to the required location. Once requested, it creates an auditable approval and clearance process for the new visitor. The visitor can directly receive confirmation once approval is granted. Finally, it monitors the real time access of visitors’ entry and exit from a site. It is worth noting that visitors can be checked in and out manually or even have the status updates linked to automated check in or security systems.

This application is the result of the collaborative work of several of Fusion Business Solutions’ developers. Guruprasad Balachandra has been one of the key developers working on the project. It was spawned as a result of the needs of many of Fusion’s security conscious clients and our vast experience working in secure environments.

 

“We looked at how we could help manage the needs of some of our customers with strictly regulated organisations that require the highest levels of clearance to get in and out. Making this process as clear and simple as possible was our top priority. Out of the box the App may not suit everyone’s needs but it is very simple for us to customise it to suit individual requirements.” explained Guru.

 

Secure Site Visitor App 1.0 is available from BMC’s Marketplace from September 8th 2016. Daren Goeson

 

Congrats to Fusion for placing 2nd place in the App Showcase at Engage 2016! Daniel Swann

 

guru.JPG

Alexis Brown

The Innovation Suite

Posted by Alexis Brown Sep 13, 2016
Share:|

The suite is a cloud-based dev environment that's tailored for third-party developers and freelancers, as well as partner and customer app developers. The suite includes:

  • Innovation Studio: Simple, intuitive drag-and-drop UI to do codeless innovation
  • SDK: A set of tools and samples that is integrated with the studio
  • Library of connectors and components: Capabilities that can be used to extend and configure when building powerful applications
  • REST APIs: APIs required to integrate with external systems
  • Developer Education: Self-learning content

 

Robin Purohit, group ESO president at BMC, says the suite is a major step forward in our commitment to developers.

 

“We support ‘no-code, low-code, and pro-code’ developer environment capabilities,” he said. “This new suite empowers business users and enterprise developers to accelerate digital apps and services getting to market through agile app development, and will offer a huge competitive advantage to those companies adopting it.”

Alexis Brown

Developers @ Engage

Posted by Alexis Brown Sep 13, 2016
Share:|

At Engage, we unveiled the beta version of a new Innovation Suite  for developers. The cloud-based development environment is designed to empower developers and business analysts to co-create powerful enterprise apps with stunning user experiences.

 

When it launches later this year, the free suite will be available for both Remedy and non-Remedy developers to consume and build modern digital apps. It will initially be offered on the Amazon Web Services (AWS) cloud computing platform. To drive adoption and support of this new approach, BMC is also launching the BMC Developer Program.

Innovator+Bus+2016+with+logo.jpg

As part of this Developer Program, BMC hosted the Innovator Bus at the start of Engage 2016 — real-life developers came together and traveled from Los Angeles to Las Vegas all together to get a feel for the innovation suite. On the bus, they were able to use the suite and talk to "BMC gurus" who actually designed the suite, and they got the opportunity to meet and collaborate with other developers.

 

Watch the BMC 2016 Innovator Bus Video

 

Once in Las Vegas and at the conference, the developers hung out in the Developer Lounge in the Innovation Hall. Partner apps were featured in the lounge, and there was a booth for developer sign-up to the BMC Developer program.

 

Hear what they had to say from the Developer Lounge:

Guruprasad Balachandra, Fusion

Daniel Musial andLukasz Piech, Capgemini

 

The new BMC Marketplace, which was launched last week, will also help these developers — it gives them an avenue to market and monetize their work, building a brand with BMC.