Administration Modernization Promotes Productivity
IT management generally focuses on modernizing applications to stay competitive in the business environment. However, it’s time to also modernize administration.
By Jessica Tam02/01/2017
Modernization efforts involve many facets, from improving UI to refactoring a database to integrating new applications. IT management means different things to different people, but it generally focuses on modernizing applications to stay competitive in the business environment. However, it’s time to also modernize administration.
Scott Forstie, DB2* for i business architect and senior technical staff member, IBM, has made shining the light on administration modernization a personal mission since 2010. While past methodologies are not wrong, he explains that it can help IT teams become more effective and productive.
“This is more about reinvigorating your processes,” Forstie explains. “I never want to tell people they’re doing things wrong. It’s more about learning what you can do differently to move administration to the next level of effectiveness.”
Enhance Your Business Management Approach
Modernizing work processes requires four conditions:
1. People are aware of better ways to work
2. People are determined to apply those ways to work
3. Specific technologies are applied
4. New practices are adopted
IT teams should start with a self-assessment before moving forward with modernization efforts. “Be true to giving yourself a fair grade,” Forstie says. “Are you proactive or reactive? If you’re reactive—and maybe you’re the most skilled and capable reactive IT staff around—ask yourself if you’d like to make your life simpler.”
While RPG is widely used, administrators who want to simplify processes should take note of SQL, now one of the most popular programming languages.
“We’ve seen SQL become adopted across the industry,” Forstie notes. “It can be executed in every interface into the IBM i OS.” SQL requires administrators and programmers to think of questions they want to ask within their enterprise to complete data analysis—which 10 users are consuming the most spool storage, for example.
Those questions must then be turned into queries. One reason SQL is prevalent is because people understand the unique value offered by its optimizer, which can be used to reduce work done by an administrator or programmer. The SQL Query Engine analyzes candidate execution plans for a given query, estimates each plan’s cost and chooses the least expensive one (bit.ly/2gRUNHR). The optimizer can help users group, order, subset, transform, concatenate, substring, uppercase and lowercase data. In many cases, a single trip to the database can return data in the final form needed by the business.
IBM i Services
Administrators may be reluctant to change from green-screen command style methodologies, but even a small amount of SQL knowledge can modernize work streams. Forstie’s team creates IBM i Services, which are SQL alternatives to IBM commands and APIs, covering areas such as work, storage, spool and security management. “Clients have merely scratched the surface of not only what’s possible in these areas but also what should be managed,” he says.
When administrators add modern tooling through IBM i Access Client Solutions, even more is possible. For example, clients have used IBM i Services to automate system administration tasks that used to be done manually. Forstie shares the time he met a client to discuss administration modernization. By his second meeting with the team, they had already automated a weekly workload previously done manually at 2 a.m. The team was obviously thrilled to have achieved such improvement with little effort and no additional cost.
In addition to building IBM i Services, Forstie’s team also delivered education sessions at user-group meetings and conferences to push IBM i Services into the spotlight. Read more about this in “Scott Forstie: Transforming IT Takes More Than Technology”.
DB2 for i Services
IBM i Services provide alternatives for accessing the OS. DB2 for i Services allow users to automate the role of the database administrator—what’s now known as the database engineer. “Get Started” outlines the four categories of services.
Forstie and his database development team created a different set of services for database engineers to automate parts of their job. Because administration modernization reinvigorates, rather than replaces, operations and oversight, organizations can achieve better ROI by using tools they already have. This may require teams to be educated on the full capabilities of those existing technologies. It’s important to continue thinking of the ultimate questions their business-side colleagues want answered.
IBM i 7.3 offers the analytical support a client would want from a database on DB2 for i, so clients can do onboard operational analytics using SQL to study the artifacts of a business. DB2 Web Query already has these capabilities with many built-in consumable reports.
Another management offering is Administration Runtime Expert (ARE). This differs from DB2 Web Query in that you can use ARE to create a snapshot of what a proper IBM i installation looks like and ensure all is configured correctly. It’s available for IBM i 7.2 and 7.3 clients at no charge.
IBM i Access Client Solutions is also available at no charge for clients with an IBM i software maintenance contract. Access Client Solutions runs on any OS that runs Java* software, including Linux*, Mac and Windows*, and consolidates the most commonly used tasks for managing an IBM i OS into one simplified location.
IBM i Access for Web Mobile is part of the IBM i Access Family license. The solution has an SQL interface and allows users to access IBM i resources from any mobile device that supports a browser to manage jobs, messages, output queues and files, and update database records on the go.
Make Life Easier
Application developers can also benefit from administration modernization. For instance, if they successfully develop an application and all of the tests run clean, but they realize a failure at production, they’ll want to diagnose, isolate and solve that problem.
Many app developers don’t have all of the information they need to do so, however. But services that modernize application development error handling also exist.
One solution: use SQL to consume job logs at the point of failure. Or use SQL to detect lock holders at the point of failure. Highly concurrent systems are prone to have small windows where the application exposes the possibility of two conflicting work processes. See the “Application Development Example”.
SQL can also be used to examine history log and work management information as well as whether specific jobs are waiting on a job queue. Administrators can see if jobs haven’t had the chance to run yet, or whether they have been completed. Once they see this information, clients can think of periods in the past year in which work was poorly managed. “It’s time to re-examine those in the light of these new technologies and see if we have better solutions,” Forstie says. See the “Workload Performance Management Example”.
Gain New Insight
Database catalogs traditionally contain physical files with details of all of the relational database constructs in existence.
IBM i Services look and feel like traditional catalogs, but the services are implemented as SQL views built over user-defined table functions. When a user queries one of these views, the rows and columns are derived and returned to the user in real time. IBM i Services return IBM i details to the SQL user. DB2 for i catalogs also exist for the database engineer, returning statistics and operational insight into the database. IBM i clients can use SQL to leverage these powerful resources to gain business insights with minimal effort.
“We can extract useful information,” Forstie notes. “It’s fun, but we’re not just playing with technology; we’re mindful that we should be addressing business goals and extracting business value. That’s what we do.”
Nearly every client Forstie has worked with has shrinking resources with raised expectations. It’s up to staff leaders to meet that challenge head on. Over the past six years he has coached clients and gathered success stories from teams that have worked more efficiently through administration modernization. To stay competitive, IT administrators must strategize ways to take advantage of the tools and services they already have access to.
To learn more, find Forstie at industry events and COMMON conferences, where he teaches audiences on modernizing their processes.
“We routinely get not only positive feedback but also the ‘Oh, I wish I had known about this months ago because you would have saved me a ton of time,’ ” Forstie says. “I love to hear that, but it gives me fuel to push harder on getting this message in the right form in front of the right people so they can take advantage of what they already own.”
Scott Forstie: Transforming IT Takes More Than Technology
Many people tasked with IBM i Systems Management are not SQL experts. When I began pushing IBM i Services into the limelight, I was met with skepticism about the likelihood that users would embrace an SQL alternative. In addition to building services, we also:
- Delivered “how-to” education sessions at IBM i user groups and IBM Power Systems Technical University conferences, which explain the why and what, but most importantly included many working examples
- Incorporated working examples within the IBM i Access Client Solutions Run SQL Scripts tool, which is great for anyone using SQL on IBM i
- Collaborated with IBM colleagues, ISVs and advisory boards, some of whom built new Systems Management features into IBM i software products. For example, DB2* Web Query includes reports that can be consumed and deployed to achieve immediate improvements in Systems Management of IBM i partitions (bit.ly/2jv0Kj2).
These efforts have yielded many smiles from happy customers and even more requests to build additional services. When deciding what will be added to DB2 for i, I look at cost, value and risk. These IBM i Services tend to be fairly inexpensive to build, in part because the IBM i OS details are well-defined. The value is something anyone reading this article could influence. Let me know what you think about what we’ve done so far and what we should do in the future. Turn to page 41 to learn how to share feedback. To see what’s hot off the press on this topic, check out the following IBM i Technology Updates wiki pages, created whenever IBM delivers a set of IBM i enhancements:
- IBM i 7.3: Technology Refresh (TR) 2 timed enhancements: ibm.co/2j9Zjmt
- IBM i 7.2: Technology Refresh (TR) 6 timed enhancements: ibm.co/2ivJ3vz
Visit the IBM i services page: ibm.co/2hS6hQd
Workload Performance Management Example
Many difficult systems management topics are very approachable using SQL. In this example, we see how the IBM i history log can be mined for insights.
-- Compute the 10 jobs with the longest time span
WITH new_jobs(JN, job_start, from_user, sbs)
AS (SELECT from_job, message_timestamp, from_user,
substr(message_tokens, 59, 10)
FROM TABLE(qsys2.history_log_info()) x
WHERE message_id = ‘CPF1124’),
ended_jobs(JN, job_end, from_user)
AS (SELECT from_job, message_timestamp, from_user
FROM TABLE(qsys2.history_log_info()) x
WHERE message_id = ‘CPF1164’),
top_10_jobs(SBS, JN, JLIFE)
AS (SELECT n.sbs, n.JN,
TIMESTAMPDIFF(4, CAST(job_end - job_start AS CHAR(22)))
FROM new_jobs n INNER JOIN ended_jobs e ON n.JN = e.JN
ORDER BY 2 DESC FETCH FIRST 10 ROWS ONLY)
SELECT A.* from top_10_jobs A ORDER BY JLIFE DESC;
Sponsored Advertising Content: Reduce Risk With Agile Modernization
Legacy applications often get a bad rap, regardless of how well they address business needs and how reliable they are. This is for two main reasons:
- Old-looking and cumbersome green-screen interfaces
- Outdated RPG code, which makes it difficult to find developers to maintain the application
Management often takes a rip-and-replace approach, either by implementing a new package or by rewriting in a new language. These efforts can cost millions more than anticipated and take many more years than originally planned. More than 75 percent of these projects fail completely.
But you can mitigate the risk with agile modernization. This approach iteratively converts interfaces and application code into modern HTML5 and Node.js—an open-source language that runs on IBM i.
Unlike a traditional rewrite, the converted pieces work seamlessly with nonconverted legacy code, allowing for quick and iterative deployment. Agile modernization allows you to deploy modern applications and get feedback from end users 10x faster than by rewriting or migrating applications, and this can save you millions of dollars in the long run.
CEO, Profound Logic
Alex is an IBM i evangelist and educator who shares his knowledge of RPG and modernization with businesses worldwide.
Sponsored Advertising Content: The Importance of Bringing Your RPG Assets Forward
The IBM i platform does an amazing job of running—without much, if any, modification—30-year-old applications without breaking a sweat. The IBM engineers in Rochester, Minnesota, and Toronto, Canada, don’t get enough credit for this amazing capability. Many RPG applications running on the IBM i today were originally written for the 37-year-old S/38!
That’s the good news. The bad news is that these decades-old RPG applications look, well, like decades-old applications. But beyond that cosmetic issue, they are often challenging to modify and to provide the functionality needed to stay competitive in today’s online, connected world.
To keep your business competitive and ensure it continues to deliver its distinct value proposition, it’s critical that you retain your legacy applications. You can’t rewrite them with any rational budget and time frame, and canned packages marginalize your ability to deliver on your business’s unique advantages. Your business must bring your old RPG into the 21st century. It’s simply not an option. You’re betting your business otherwise.
ASNA Product Specialist, ASNA Inc.
Roger Pence has been working with IBM midrange computers since the Sanford-Townsend Band was riding high on the Top 40 chart with “Smoke From a Distant Fire.”
Sponsored Advertising Content: Generate Revenue With IBM i Web and Mobile Applications
Your IBM i holds valuable data and runs mission-critical applications. But are you getting the most value from it?
Deploying web and mobile applications that generate revenue is a great way to give you and your IBM i a more strategic role in your organization. Whether you modernize existing green screens or develop new applications, you can generate revenue with many different types of applications. This includes customer-facing applications for B2B/B2C e-commerce and internal order entry.
The business benefits are significant, including:
- Competitive advantage: Expand your business to new markets by making it easy for customers and partners to place orders online
- Mobile applications: Enable customers to place orders from anywhere
- Better customer service: Sales reps and administrative staff can focus on tasks that add more value to the company, rather than taking orders or rekeying data
- Real-time inventory: End users have the information they need, when they need it
Many IBM i shops are growing their business with IBM i web and mobile applications. You just need the right skills, the right tools and the right roadmap.
Senior Sales Engineer, BCD Software
Greg has over 17 years’ experience in the IT field, the last eight focused on IBM i. He currently coordinates technical demonstrations and performs business analysis for BCD Software clients.
Sponsored Advertising Content: Modernization 2.0: Beyond the UI
Modernization 1.0 was all about UI. After a decade of transitioning applications from the dark ages to the web, users have put down their torches and pitchforks—for now. Modernization 2.0 is about the user experience, improving business process and workflow, and leveraging web technology to handle core back-office applications.
It’s time to start thinking about the next phase of application modernization, which:
- Targets complex business processes and eliminates manual steps with innovative technology. Maximizing efficiency will pad your bottom line.
- Incorporates workflow to provide structure, checks and balances, transparency, and escalation to time-sensitive processes. Automate and monitor inefficient procedures.
- Utilizes single-page applications to provide web users with desktop-like performance. Using click-and-wait web apps eight hours per day will make users reach for their pitchforks again.
- Deploy composite applications that aggregate information from disparate sources into a single view. It’s time to ditch the alt-tab architecture.
We’ve made the effort to have our applications look modern; now let’s have them behave modern. This is where you’ll find the true value of modernization.
Product Marketing Manager, LANSA
David has 20-plus years of application development experience, including integrating IBM i applications with various Windows*, web and mobile technologies.
Sponsored Advertising Content: The Future Is Here. Are You Ready?
IBM i shops need a portfolio of modernization instruments to help them with a variety of business and technical challenges. If their objective is to get a web interface onto all application screens as rapidly as possible, automated transformation might be the right solution. On the other hand, if their goal is to connect internal applications to customer or partner systems, or if it’s necessary to change the application workflow, then web services might be a better answer. If modernizing the RPG code is required, then RPG transformation or code analysis could be the solution.
A complete modernization kit might include:
- Dynamic transformation
- Dynamic transformation with customization
- Service generation and management
- Code analysis and transformation
- Multiplatform application lifecycle management and DevOps
These are just some of the solutions that can help in the continual process of modernizing applications. With a complete kit of purpose- specific tools, IT professionals can ensure they will be able to successfully meet each modernization challenge.
Vice President, Rocket Software
Dan is vice president of application development and DevOps, and chief technologist for IBM i Solutions.
DB2 for i Services are grouped into four categories:
- Application Services. These procedures provide interfaces that are useful for application development.
- Performance Services. These services include procedures that provide interfaces to work with indexes and a view to see information about database monitors. In addition, the QSYS2.OVERRIDE_QAQQINI procedure can be used to establish a temporary version of the QAQQINI file.
- Plan Cache Services. These services include procedures to assist users in performing database administration and database engineering tasks.
- Utility Services. These procedures provide interfaces to monitor and work with SQL in jobs on the current system or to compare constraint and routine information across systems.
More information: ibm.co/2hTK9TS
Application Development Example
IBM i Services can also benefit application developers. In this next example, we see how SQL can be used to capture point-in-time detail related to a lock conflict failure.
DECLARE CONTINUE HANDLER FOR SQLSTATE ‘57033’
BEGIN /* Message: [SQL0913] Object in use. */
DECLARE SCHEMA_NAME VARCHAR(128);
DECLARE TABLE_NAME VARCHAR(128);
DECLARE DOT_LOCATION INTEGER;
DECLARE MSG_TOKEN CLOB(1K);
GET DIAGNOSTICS condition 1 MSG_TOKEN = db2_ordinal_token_1;
SET DOT_LOCATION = LOCATE_IN_STRING(MSG_TOKEN, ‘.’);
SET SCHEMA_NAME = SUBSTR(MSG_TOKEN, 1, DOT_LOCATION - 1);
SET TABLE_NAME = SUBSTR(MSG_TOKEN, DOT_LOCATION + 1,
LENGTH(MSG_TOKEN) - DOT_LOCATION);
INSERT INTO APPLIB.HARD_TO_DEBUG_PROBLEMS
SELECT * FROM TABLE(QSYS2.JOBLOG_INFO(‘*’)) A
ORDER BY A.ORDINAL_POSITION DESC
FETCH FIRST 5 ROWS ONLY;
INSERT INTO APPLIB.HARD_TO_DEBUG_LOCK_PROBLEMS
SELECT * FROM QSYS2.OBJECT_LOCK_INFO
WHERE OBJECT_SCHEMA = SCHEMA_NAME AND
OBJECT_NAME = TABLE_NAME;
Jessica Tam is an editor and writer.