Skip navigation

June 2014 ACI.jpgThis month, application creators convened, conversed, and pushed the ACI back to levels not seen since March. The index gained 4.7% during a time when the broader S&P 500 index gained 2.1%.

 

The increase can mostly be attributed to rising stock prices and new investment in cloud platforms. One example is the Apache Foundation's promotion of Stratos, its PaaS environment, to Top-Level Project status. Stratos will struggle to establish an identify distinct from myriad other, similar open source app platforms including OpenStack and CloudStack but that's less significant than the message it sends: app creation and app lifecycle ownership continue to dominate the CIO board room agenda.

 

Endless banter about new data on PaaS adoption from North Bridge Venture Partners also contributed to ACI's increase. It included these compelling stats (sample size: 1,358 respondents): PaaS enterprise adoption will increase to 41% this year while SaaS adoption will grow to 74%.

 

ACI's 4.7% jump in June is impressive since it's one of the quietest months for M&A and industry events. Expect more meandering upward through September then a surge as we enter the last quarter of 2014.

parliament_debate.jpgI finished presenting our roadmap and platform strategy in Milwaukee a few weeks back. We hosted an event before the Brewers-Cubs game at Miller Park. Before I could enjoy my first liquid manna (PSA: please support MillerCoors - excellent ServiceNow customer, fine brews) I got distracted by a group of customers huddled in the corner having an animated conversation. It resembled one of those heated debates in Parliament without the powdered wigs. I arrived just before punches were thrown.

 

  • The topic: how to manage demand from the business for new ServiceNow apps.
  • The debate: how much is too much of a good thing.
  • The context: word got out that IT could replace SharePoint apps and the flood gates opened. Opportunity or problem?

 

I was mesmerized. Inspired. Excited. I felt like Wayne and Garth at an Aerosmith concert. These were my brethren geeking out about the one thing that will re-define the identify of IT.

 

I bit my tongue. I tried to not dominate the conversation. Then when it devolved into third graders sharing baseball cards on the playground I jumped in. We spent the first inning exchanging ideas for apps and demonstrating our wares on smartphones. I must admit Taylor's learning management system for tracking employee training put most of mine to shame.

 

We came to a few conclusions about how best to accommodate demand:

  1. Establish a model for app ownership and support. Before committing to the business, answer these three questions:
    • Who owns the feature backlog?
    • Who takes first-line support calls?
    • What will it cost to deliver the service and who is paying?
  2. Require a dedicated business sponsor from the line of business. Develop requirements with the business, in scrum-style sprints where possible, and treat the business sponsor as your product owner. Each story (requirement) must have clear acceptance criteria from the business.
  3. Focus on the end-user experience. Before defining requirements, white board the lifecycle of an interaction from the perspective of the user. Then recruit a power user and have him/her provide feedback during the development process.

 

The Brewers lost. My new friends barely noticed. Taylor and Warren, you're bigger geeks than me. And that's the highest compliment I can pay.

Chuck Tomasi

Exam Manager

Posted by Chuck Tomasi Employee Jun 12, 2014

The Exam Manager application is available for download on the share site.

 

The Exam Manager application builds on the easy-to-use ServiceNow platform to quickly create, manage, and administer exams. The system is designed around multiple choice style questions to be delivered to multiple users. The student (user) interface is a custom UI page to make the exam taking process intuitive. If you have any type of internal training, this is a great way to validate the students' knowledge.

 

exam.png

 

Find out more by watching the video.

Our customers and partners have built thousands of custom applications on ServiceNow Service Automation Platform – from nigh-on every industry vertical and every function within an enterprise.  And, over the years we have cataloged some of these applications in our Platform book, others are described in the ServiceNow Community, but too many remained trapped in our personal email accounts.  So for Knowledge14 we wanted to bring all of our customers’ achievements together in one place, so that conference attendees could understand and visualize the breadth of custom applications their peers are creating on ServiceNow.


Creating the ServiceNow App Showcase

To make this dream a reality, we engaged Siva Dirisala, Senior Director Applications Development at ServiceNow, who quickly turned this idea into the ServiceNow App Showcase with, you guessed it, a custom application on ServiceNow. 

The core requirement was to have a table that captured various attributes of the application – the application name, the developer, industry category, and summary information – and a compelling UI front end to visualize the applications.  On the backend, we wanted a simple approval process, before an app becomes visible, and the ability to report on the apps by categories, contributor, etc. We also wanted as much of the application behavior to be configuration-driven rather than hard-coded.  photo 3.JPG

Custom app Q&A with Siva Dirisala

After the success of the App Showcase, I sat down with Siva to talk about the app design and some best practices.


Nick: Siva, thank you for spending time with me to share what you know with others.  Can you start by describing your role at ServiceNow?

Siva: I head a development group called Application Technology Group (ATG) within the Applications division. I focus on building out common application components, setting standards and guidance for all the application teams within ServiceNow, and working closely with the Platform team to channel enhancement requests from the apps teams.

 

Nick: Where have you previously worked? What did you bring with you to ServiceNow?

Siva: I worked at Oracle for over 15 years building large-scale enterprise applications, business intelligence, and master data management (MDM) solutions. The building of large-scale enterprise apps is the experience that I continue to make most use of at ServiceNow.

 

Nick:Which other platforms have you built applications on?  How would you summarize your experience building on ServiceNow compared to these?

Siva: I have used various Java and Oracle technologies including Oracle Forms, Oracle OAF, Oracle ADF and Oracle APEX over the years.

These platforms require a lot of care and “feeding” that has nothing to do with the application that I wanted to build – infrastructure, multiple development and management tools, and very coding-heavy. The ServiceNow Platform in contrast lets me focus on the application. It’s possible to build the entire application from within the browser - creating the data models, defining business rules, ACLs (access control lists), setting up workflows, email notifications (outbound and inbound), import and export data, reports and dashboards. Most of it doesnt require any coding.  The best part is, after building the app, I can export the entire definition as a single unit and upload it to another instance. The system also takes care of highlighting merge conflicts, allowing me to select what I want to merge and helps propagate an application from one instance to another! So it has been liberating building apps on ServiceNow platform.

 

Nick: Focusing in on the App Showcase: Can you describe the high level architecture and design of the app, and how you take advantage of the built-in functionalities and services the platform provides?

Siva: A couple of weeks prior to Knowledge14, I was approached to build an app using ServiceNow platform to showcase customer apps. We had a high-level vision of what was required and we took an iterative approach to build it. I initially gathered the data that needed to be captured for each application and came up with the data model. I then built the app and the tables using ServiceNow App Creator.  Since I was planning to use Javascript libraries, I built a  service to stream out the application data in JSON format, which I could access from the UI page.  The initial prototype took me a couple of days, it helped everyone visualize the app and they were able to suggest modifications.  We iterated on it over the next couple weeks and then loaded the data.

 

Nick:Can you drill-down into the UI to talk about the Javascript libraries you use - why did you choose these libraries and how easy or hard was it to integrate these libraries with the platform?

Siva:The ServiceNow Platform automatically creates many of the UI elements like Forms, Lists etc. when you create a table. This is sufficient for most applications. However, in this case we wanted to have a completely custom UI that provided a tiled look, a pop-up image gallery, etc.  There are several open source JavaScript libraries that already provide this functionality.  I used tilesjs, Metro JS and Magnific Popup libraries since these provided the UI functionality I required.  I used UI pages that execute on the server, and retrieve data from the database as well as easily incorporate JavaScript and CSS.  Incorporating the Javascript libraries was very easy to do, I used the include_script directive that is documented on the wikiFinally, the ServiceNow Platform allows a UI page to be available as a public page (i.e. it doesn’t require login to the system). This allowed us to expose the final App Showcase as a public page such that it could be linked to from the corporate website.

 

Nick: Let us talk about the features of the app that are configuration-driven rather than hard-coded.  Can you describe a few of these features and how you built them?

Siva: One of the requirements which was initially daunting was the ability to show a list of apps where the list is based on ad-hoc conditions. However, the Platform has a data type to capture filter conditions as data. So, rather than hardcoding the lists and the filter conditions for each list, it’s completely data driven. This allowed the Marketing team to define additional filters once it is put into production. As we were tweaking the UI constantly, rather than changing the code each time, I wanted to make it configurable. ServiceNow provides the ability to define properties and also the ability to group a set of related properties together for configuration. So, the App Showcase had a set of configurable properties to change the behavior of the app at runtime without requiring changes to the code. 

 

Nick: BTW, this configurability has been extremely useful since it has allowed us in Marketing to make changes ourselves. 

 

Nick: Finally, what are some best practices to keep in mind when creating a custom app on the ServiceNow platform?

Siva:I suggest identifying the key functional objectives and then design the data model that best supports the functional objectives. You want the data model to be fairly stable, as drastic changes in the data model can be expensive to incorporate. This is a best practice for building applications on any platform. Once the data model is built, the UI and logic can happen iteratively and incrementally. Of course, it’s always possible to add additional tables and columns to your application data model and, as long as these are meant to augment rather than replace/reorganize your existing data model, then it doesn’t require much effort.

The other best practice is don’t reinvent the wheel – the ServiceNow Platform has a lot of built in functionality and, since it’s metadata driven, a lot of the common application behavior gets created for you automatically.  Take advantage of this – the less code you write, the less code you have to test and maintain.

 

Nick: Siva thank you for your time.

 

If you have additional questions for Siva please post them as a comment below.  I also encourage you to submit your own app for inclusion in the showcase.  Just follow the instructions here.  Once you post it on the community, we will extract it and add it to the App Showcase AND send you a cool t-shirt!

Filter Blog

By date: By tag: