It should come as no surprise to find out how much more complicated testing an app on a mobile device is than on a desktop. Desktop apps can be complicated sometimes, but typically they are fairly straight forward. This is due to several factors. First, desktops typically have a consistent screen size – this has become a non-issue when developing a desktop application. You only have to worry about one screen that is typically the same size or close the same size. Second, the desktop PC market has been dominated by a very limited set of OSes – specifically Windows, Mac, and Linux. Other vendors have attempted to make inroads into this market, to no avail.
Whereas on mobile, it is 10 times more complicated. You have different OSes including iOS, Android, Windows Mobile, BlackBerry, and now Mozilla. Plus you have different screen sizes that must be considered from 3.4” all the way up to 19” or even 47” if you include TV with apps support such as the latest Samsung TV’s.
Jason Tee of TheServerSide.com recently discussed this topic in a blog post. He states that “It's not an exaggeration to say that testing is the number one area where mobile ALM (Application Lifecycle Management) is several orders of magnitude more complex than traditional ALM. The recent Mobile Application Development Primer whitepaper from IBM describes just a few of the factors that come into play. "The same model of device may function in a subtly different way when connected to a different carrier network. Also, the quality of the network connection can have a profound impact on the behavior of a mobile application. Even the movement of the mobile device itself may be an important factor in the behavior of the application."
This means the enterprise must be prepared to use every trick in the book including simulators, emulators, device-cloud testing with hardware, and/or automated testing made available as a resource on a consumption based billing model.”
Tools like these make it easier to perform any test of any mobile app, and to do it from anywhere in the world. It is why testing on mobile apps has become such a critical part of any app development process. And it is why we are starting to see many enterprise Fortune 2000 organizations develop their apps with a ‘mobile first’ strategy. We will cover this strategy in a future post.
Modificado em por CCBranham
A first step in mainframe application modernization is to equip development teams with a modern development environment.
Enter IBM Rational’s Integrated Solution for System z Development (ISDz). The tools included in this solution offer a flexible, integrated development environment, automated features, asset visualization, and ease of use. They boost the productivity of developers, lower development costs, and make it easier for mainframe and distributed development teams to collaborate.
All technology and tool change can be disruptive, but change in the mainframe environment presents some unique challenges. Tool changes alter complicated development infrastructures and practices that were refined, often literally, over decades. Mainframe developers can face a steep learning curve as they attempt to unlearn now nearly automatic, “green screen” taskflows, recast their work in the new environment, and broaden their development capabilities.
These challenges are far from insurmountable, but they require organizations to take a strategic approach to learning and the solution adoption effort.
Change is disruptive
You can plot the course of a typical solution adoption effort in terms of time and productivity.
When adopting new tools, a development team experiences a temporary dip in productivity as their focus gets divided between work and learning new skills (A). As developers acquire the new skills and put them to work, they realize the benefits of the solution (B). As changes and opportunities arise (perhaps a new tool release, or unforeseen problems as processes change), the organization works to maintain productivity over the long term (C) to maximize the return on their initial investment.
The goals of the adoption effort are to reduce time in periods A and B, and to maximize gains in productivity in periods B and C, while avoiding derailment of the effort at any of these stages.
From a learning solutions perspective, the productivity graph like this:
Learning through the change isaccelerated with training and performance support. Learning is not a single event, and these approaches are not mutually exclusive. But these two approaches come to dominate at different stages in the process, based on the changing needs of the learner.
Training means instruction, structured hands-on learning in interactive events. Working with a coach or instructor is most efficient for the new user adapting to a fundamental change in practice. Training takes a tutorial approach, allowing the user to assimilate new skills incrementally. But training needs to become more self-directed over time. As the productivity curve rises into period B, the training approach tapers off into mentoring.
Performance support then comes to the fore. Performance support is learning that the user accesses in their day to day project workflow. The most familiar examples of performance support in software include online contextual Help, cheat sheets, tooltips, reference aids, video demonstrations, and so on. Experts and social networks (of the kind you find here on developerWorks, or on Jazz.net) serve a crucial performance support function as well.
Let’s explore these approaches and consider the case of mainframe solution adoption more closely.
Developer training events are cited time and again as being pivotal in successful ISDz adoption efforts. When using these tools for the first time, training provides the most efficient way to build foundational skills, share effective practices, and motivate process change. Although limited in scope—training amounts to little more than 25% of a successful rollout effort—a small, strategic investment in training pays dividends throughout the life of the solution.
The ISDz tools, such as Rational Developer for System z, are designed to make use of some of the intricate skills mainframe developers already possess, but most of the efficiencies and automation these solutions provide involve new, unfamiliar practices. Taking time out to learn these practices with experts and peers in a focused training event is more efficient for the mainframe practitioner and presents fewer risks of failure than self-study.
In order to be successful, training programs should be:
Tailored to the environment: Since the mainframe environment is usually tailored for the enterprise, each organization typically has its own usage model and development conventions for the ISDz tools. Training should incorporate some of the developer’s own artifacts and these conventions.
Focused on performance: Focus the learning on the application development and maintenance activities developers perform every day. At the same time, activities need to be simpler than real life so that participants can focus the effort on building new skills instead of on the complexity of the problem domain.
Learner centered: Training needs to be engaging for the learner, offering hands-on practice and group workshops. Foundational concepts and demonstration are provided just to provide context for each applied activity.
IBM Rational Software Services can help design the best training program for your organization.
Performance support and social learning
However important training may be in a rollout effort, learning is not a single event. We use training to transfer essential skills and set a foundation for learning and practice, not to try to serve up everything a user needs to know. The classic Ebbenhaus Forgetting Curve, demonstrating the exponential nature of forgetting, is a potent reminder that an all-in training event by itself is an incomplete enablement strategy.
The training approach itself becomes less useful as developer skill levels rise. When applying the tools on the job, learning needs to be more individualized and self-motivated. The learning challenges in the workflow are also more problem-focused than skills focused. On-demand learning resources are needed that help with the following activities:
Applying the tool: Reviewing skills learned in training, or applying skills in a new project situation.
Solving problems: When a process doesn’t work the way the user thinks it should, or where the user is blocked by an emerging problem.
Dealing with change: Adapting to a new tool release, adopting new development technologies, or changing configurations and usage models.
For these challenges, there are many resources available: the product information centers, YouTube and IBM Education Assistant videos, developerWorks articles, IBM Redbooks, blogs, and developer forum and Support archives, just to name a few examples. Developers can gather and pool useful resources like these for use in their teams as they use the ISDz solution.
During the rollout effort, early adopters, administrators, and other specialists emerge from the team as experts who can help with problem-solving, forming an informal “center of excellence” within the organization. At the same time, developers can turn to social networks, such as IBM developerWorks, to find answers in learning communities like the Rational Cafés.
Work of all kinds is becoming faster-paced, more automated, more distributed, and more agile. The need to control costs in change processes is part of this new normal. Given these challenges, it is essential to take a strategic approach to transforming development organizations, bringing together the right formal training and on-demand resources to reduce time to value and ensure maximum productivity for your tool investment.
Modificado em por JoshGalde
Recently, Chris Cook wrote an excellent article sharing some excellent obstacles enterprises have been hit with as they try to deal with the onslaught of demands in supporting internal-based mobile apps for their workforce as well as the BYOD revolution overtaking these companies.
In he writes “App revenues topped $30 billion in 2012, and the figures are getting better and better every year. ‘There’s an app for that,’ has become a cliché. There are apps on iTunes and Google Play for almost any need you may have (and thousands of apps for needs you don’t have). While generic apps are doing quite well, there hasn’t been concurrent upsurge in enterprises mobile apps development.
Most enterprises have enough resources and the will to create mobile apps for internal use. But there is no clarity in the market on the best strategy for enterprise app development. Some companies are adamant on creating close, internal apps, while others feel that using generic apps and tweaking them could be a better option. There is also a lack of best practices on how to distribute the apps and how to secure them.
As BYOD gains greater acceptance, the need for enterprise mobile apps increases. Although the enterprise mobile market is in its initial stage, most business leaders understand the need for mobile apps. A recent survey of industry leaders and managers by Appcelerator shows that most enterprises feel that more mobile apps will be developed than desktop applications in 2013. But, we are still not seeing the long-awaited enterprise app development revolution. Let’s take a look at the biggest obstacles to mobile app adoption by enterprises.
Security & Control Concerns – The strongest driving force behind the development of an enterprise app is a desire to provide better services to customers and help employee’s function with greater efficiency. So, most mobile apps for enterprises deal with company and/or client data. How secure the apps is, how it collects data and how secure the data is – these are the main concerns of most enterprises. Any security breach can spell big trouble for large organizations.
This is the main reason why most companies build internal apps and build their own app stores to manage their apps. Providing different privileges to different levels of employees and users through mobile apps is also a rather difficult process. Controlling and securing mobile enterprise apps is the biggest reason for the low rate of mobile adoption in enterprises.
Low on the IT Department Priority List – Many industry leaders feel that there are too many issues with enterprise mobile app development – lack of standard technology, problem of integrating the app with enterprise data, inability to formulate a long-term mobile app strategy, etc. Most IT departments in enterprises are working hard on other areas, and they simply do not have the time or resources to custom build applications.
Creating an app (or getting it developed elsewhere), setting the distribution channels for the app, updating the app and tweaking the app to support an array of mobile devices – these are daunting and time-intensive tasks. With most IT staff working on other organizational goals, it is, at times, not possible for enterprises to initiate a mobile app development project.
Inability to Calculate Impact in Long Run – Enterprise app development takes a lot of time, effort and money. Unless all the members who use the app have the same devices, the app will have to be developed for multiple mobile devices. This further exacerbates the situation. The rate at which technology is changing makes it extremely difficult for enterprises to measure the impact of apps in the long run. With Cloud technologies offering similar services, it becomes difficult for enterprises to come to a clear decision.
To Wrap it Up – While there are several factors that inhibit the flight of mobile enterprise app development, the popularity and ubiquity of mobile devices makes it imperative for all enterprises to replace many of their desktop apps with mobile apps. The mobile platform also creates opportunities that desktop apps simply cannot offer. Thankfully, there are countless success stories of large business organizations building and deploying mobile apps successfully. So, even if there are a few teething problems, the future holds promise.
Thanks to Ryan Benson who works for PLAVEB, a leading enterprise app development company in Los Angeles. He has been a part of several enterprise mobile app development projects and feels that 2013 will be the year when enterprises embrace mobile apps on a large scale.”
Modificado em por JoshGalde
This week we announced our new, advanced scripting tool – ScriptObjects. With DeviceAnywhere ScriptObjects, users can create object-level scripts for native, web, and hybrid applications within a real-device testing environment. Coupled with DeviceAnywhere’s existing image and text UI-based scripting capabilities, DeviceAnywhere ScriptOjects enables you to use the best testing and verification technique for your use case, with one script that seamlessly works across devices.
Object-level scripting for mobile web content acts on individual web elements at the code level. This means that you can record a script on one device, and play the exact same script back on another device regardless of the screen-size, manufacturer or operating system. Object-level scripting for native apps does the same thing for devices of the same platform while acting on native objects. Your scripts will be more resilient through UI changes, lowering maintenance costs. We also announced a faster, easier way to record those scripts. With the DeviceAnywhere Recorder even the newest member of your team will be able to quickly create scripts for web, native and hybrid applications. With DeviceAnywhere SmartObjects and the DeviceAnywhere Recorder, you will quickly develop scripts that can be used within short agile test cycles, saving time and automating tests without a large upfront investment.
To request a demo of DeviceAnywhere Enterprise click here.
What role does BYOD have to play in mobilizing your workforce? And how do you develop the guidelines and security protocols that will keep your most sensitive company data safe and secure in this new and inherently less-secure environment? These are questions that CIO’s, IT administrators and others in the enterprise with a stake in their organization’s security and workforce needs and requirements are actively grappling with today.
Spurred by the boom in smartphone adoption and usage, as well as the growth of enterprise mobile applications and their employees’ desire to use the device of their choosing to stay connected, BYOD has become a fact of life and no longer a question of, “Should we, or shouldn’t we?”. So now rather than weighing the potential benefits vs. drawbacks of BYOD, it is a question of what policies to put in place, how to ensure that employees are following those policies and that your organization is getting the desired benefits of increased mobility.
With regards to one of the more common and essential functions of enterprise mobility – file sharing – a recent study by a leading provider of workforce collaboration applications found that while mobile file sharing was being widely used by workers in the sensitive legal and finance departments of major U.S. corporations, only a third of them were using file-sharing apps that had been expressly approved by their IT departments. If that isn’t enough to keep CIOs up at night, then consider trying to keep track of the dizzying range of mobile apps coming onto the market every day, some of which are enterprise-ready, some of which are decidedly not.
But there are some BYOD developments and trends that should provide IT leaders with a little peace of mind. For instance, Google’s recently-announced launch of a new suite of BYOD features for Android devices that will allow for greater security and control over employee-owned devices. Also heartening is the increasing acceptance of the indispensable role of proper testing, monitoring and consistent QA procedures by makers of enterprise mobile apps.
So rather than resist the BYOD trend, it would be wise for IT decision-makers to try to get out in front of it and put the right policies and tools in place for their increasingly mobile workforce before any lasting damage can be done. As enterprise mobile guru Cesare Garlati recently stated in a blog post:
“My advice for organizations facing an increasingly consumerized IT world is to realize that Consumerization [BYOD] is happening and they can’t stop it – and in fact they shouldn’t. Embrace consumerization is the optimal approach: create a plan that spans the whole organization, say yes but not for everything to everyone and put the right new infrastructure in place to secure and manage consumer-grade technology in the enterprise. Rather than resist it, organizations should embrace Consumerization to unlock its business potential.”
Recently there was an article which reinforced many of the same issues that mobile app developers and QA teams are running into during development and post-release. They include such things as device diversity, OS diversity, and even organizational diversity, especially prevalant in enterprise organizations. One key struggle was the "tedious process" of manually testing each and every device, from phones to tablets. If you add in the number of test cases that have to be created to support the volume of devices you want them to run on, it can create very daunting task.
In the article the author writes "Manual testing (for mobile) can be a tedious process that involves many man-hours to be quite expensive. It can also lead to errors, because of the human trials. However, manual testing serves an important purpose because it provides a method to receive valuable information about the usability of the application. For mobile applications, the usefulness is a very important factor. In fact, in many applications the use of the only unique selling proposition (USP). That’s what happened, it is very difficult to imagine how easy it is for them, if people do not interact with it on a real mobile device.
Continuous testing of mobile applications - How you can ensure continuous testing while developing mobile applications How do you ensure that updates and upgrades work correctly answer is fingers and eyes! Many mobile devices and applications that can not be avoided for the fingers and the eyes of the method is the only way to test the application, at least in this situation. Manual testing should be performed in the cycle before it begins and life after the release of the application. Despite the advantages smells, manual testing can also be disrupted by the following reasons: Drastically slow down the development process and it leaves a wide margin for error."
Hence, the need for automation. This provides the ability to remotely automate your test cases on mobile devices, from anywhere in the world. This advanced "scripting" and "recording" technology finally provides the tools necessary for efficient mobile testing. Supplemented with manual testing on new devices, it can provide the perfect balance between efficiency and optimization to ensure the highest quality of any mobile app or website. To read more about automating your mobile testing, check out this link!
Modificado em por JoshGalde
Recently, Kerry Butters wrote an article on the advancement and future projections of mobile hybrid apps in the marketplace. This is something we have been hearing from our customers. While we aren’t finding that it is a one or the other approach (aka Native VS HTML5 view), we do see a continued need for hybrid app development as organizations struggle to provide the highest quality of app possible, with feature-rich experiences, combined with a stringent delivery system forcing them to meet certain requirements by the carriers and app stores.
In Kerry’s article she writes “According to the latest research from analysts at research firm Gartner, hybrid apps will be used in over 50% of mobile devices by 2016.
This is due to the growing use of HTML5-based web apps which unlike native apps, do not have to use multiple versions of an app for different devices. However, HTML5 with offline capabilities haven’t really come up to scratch, causing developers to consider using hybrid architectures.”
"The BYOD trend and the increased pressure on organizations to deploy mobile applications to accommodate mobile work styles of employees will lead businesses to manage a portfolio of mobile application architectures, and hybrid architectures will be especially well-suited to business-to-employee applications,” said Van Baker, research vice president at Gartner.
Gartner also predict that mobile devices will overtake PCs as the most common way to access the internet by the end of the year and by 2016, PC shipments are expected to be less than 50% of combined tablet and mobile shipments.
"The implications for IT is that the era of PC dominance with Windows as the single platform will be replaced with a post-PC era where Windows is one of a variety of environments that IT will need to support,” said Mr Baker.
It’s also thought that a wide range of internet-capable devices, including set-top boxes, smart TVs and wearable devices will become much more popular.
"While hybrid apps will be the majority of enterprise mobile apps, web technologies like HTML5 will make up the most commonly used languages for building mobile applications by 2015,” said David Mitchell Smith, vice president and Gartner Fellow.
"We recommend organizations are open to augmentations to the Web (such as hybrid Application Development) to deploy on mobile today, with the goal that more should be done without those augmentations after 2015,” said Mr. Smith.
"Organizations also need to continue to develop web technology skills, find the right uses for promising new technologies and approaches like HTML5, and deal with the uncertainty and speed of the consumer-driven mobile landscape. All the while it’s important to maintain IT governance while increasing productivity and usability.’”
A full copy of the report Predicts 2013: Portal and Web Technologies can also be found on the site.
We have long thought that this would come eventually. Mobile testing has been focused on mobile devices such as smartphones. But within the last year we have been seeing from our own customers a demand for tablet testing as well including the iPad and Android tablet devices. This has been recently supported by a survey released by IDC and Appcelerator. In it they say “over the next six months, nearly an equivalent percentage of mobile app developers expect to build for tablets as for smartphones: 81.34 percent vs. 84 percent, respectively. Since 2010, the number of developers focusing on enterprise apps has jumped from 38 percent to 51 percent, and the figure is further expected to rise as high as 63 percent by the end of the year.
These latest numbers come from a study conducted in April 2013, in which Appcelerator and IDC surveyed 6,046 Appcelerator Titanium developers. The duo claims this is the world’s largest survey of mobile app developers to date.
The two firms now have three years of survey data to work with, letting them discover some interesting trends supporting the mobile revolution. The fact tablet development has now caught up to smartphone development is noteworthy, as is the increasing focus on the enterprise, but one trend that hasn’t changed is developers’ interest in building for multiple operating systems.”
Recently Derek Britton of Micro Focus issued an article giving some great advice on how to develop one’s enterprise mobile strategy. As we have been discussing in recent posts, mobile is expanding exponentially and is putting even more pressure on IT teams to support these efforts. Derek covers some great ways to deploy a mobile strategy and support a mobile strategy in a cost-efficient way. In it he shared " The advent of the savvy end-user and the rising trend of “bring your own device” (BYOD) have immeasurably changed the way in which services must be provided by IT. As smart phone capabilities develop, so does the level of expectations for added functionality.
Businesses will find it impossible to ignore mobile if they wish to remain competitive in the next few years and must consider the most effective way to develop and adapt business applications to the needs of the mobile user.
The take-up of mobile technology will have “dramatic effect” on back-office IT systems, according to a study from Forrester Research. Modern users expect 24/7 mobile access to all the applications and online services that they would use on their desktop or laptop computer, visiting e-commerce sites, accessing their bank online, and more recently, loading their work applications. Yet, according to Forrester, “hidden costs and disruptions” are set to plague organizations that do not make appropriate pre-emptive action.
The Forrester Report suggests that mobile projects hide a variety of potential pitfalls as a result of infrastructure that is ill-prepared for exploding activity volumes. However, organizations need not think that embracing mobile will require a costly and complete overhaul of existing IT infrastructure to resolve these issues.
Businesses should consider re-using as much of their existing business applications and processes as possible in order to guarantee integrity, continuity and security of service for the future. Potential threats to the infrastructure of exploding activity volumes can be mitigated by making smart choices about application provision and workload management, to relieve pressure and offer a more cost- effective and viable solution to adopt mobile.
So what should businesses be doing to embrace mobile in a cost- efficient fashion? There are several steps that businesses can take to ensure that their IT infrastructures are prepared for the mobile explosion:
Re-use and adapt
All too often businesses approach mobile by developing new applications when in fact they could simply re-use and adapt existing, core back-end applications. The benefit of this approach is that costs are reduced and the existing infrastructure is not compromised.
While many may not consider COBOL for adapting business applications to support mobile use, its simplicity and therefore adaptability, makes this programming language, which accounts for approximately 70% of all critical business processes, the perfect candidate to take IT into the mobile era. With tools such as Visual Studio or Eclipse, developers are able to modernise applications to support new mobile applications across a wide number of technical platforms. COBOL can be used in each instance to efficiently deliver business services and their supporting data from the back-end to the user. The benefits of re-using COBOL systems rather than re-writing them are numerous and include a faster delivery of IT service, at lower cost and risk, while retaining intellectual property and competitive advantage.
Thoroughly test your mobile apps
When undertaking a considerable project such as adapting to mobile, testing is one area that cannot afford to be compromised. However traditional testing practices can mean that projects can overrun on time as well as budget. By moving application testing for mobile, web and related back-end systems to a more cost- effective environment that is easy to use, testing phases are able to be completed much faster and more thoroughly without eating into mainframe power. These environments also lend themselves better to supporting test automation and performance testing needs.”
As Derek reinforced - the need to thoroughly test your mobile apps is critical and that doesn’t have to be expensive either. Automated testing can be done in many different ways and utilizing different formats for different stages of your testing. From functional testing to performance testing, ensuring that your customers experience the highest quality of app or website is contingent upon how well it’s developed, and tested. More on this topic to come so check back soon or follow our blog today!
Recently Chris Marsh of Yankee Gropu wrote a great article on the explosion within enterprises to develop and support apps that enable their employees to be more effective and give them the ability to utilize the tools their used to using in their own personal lives. He writes” Employees are spending increasing amounts of time away from their primary workspace and understandably want access to technologies that help them remain productive. The benefit is clear - Yankee Group’s “Enterprise Mobility: Empowered Employee” June survey shows that employees’ self-stated productivity can increase by as much as 40% percent when they are provisioned with mobile devices.
Employees Push; IT Adjusts
While many employers are struggling to manage this technology shift, employees push on regardless. With the growing ubiquity in mobile computing power in their everyday lives, employees are resorting to using a variety of consumer tools and technologies for work purposes. Our surveys show that:
20% of all employees use consumer IM services for work using their smartphone
14% use social networks
8% use consumer web-based productivity tools for work
56% use or would be interested in using consumer productivity apps for work
16% do so even knowing their IT department’s policy is to prohibit their usage.
One-third believe they would be more productive at work if they had access to the tools they use in their private lives.
The main reasons why employees resort to their consumer applications is simply familiarity with them from their personal lives, the absence of an alternative provided by and the fact that they are more likely to be updated regularly than work-provided equivalents.
This flood of consumer technologies into the workplace and workflows is compelling them to revise their policies about what devices and technologies are and are not sanctioned in the workplace. This trend shows no signs of slowing down.
Over the past two years IT’s attitude has been forced to adapt. For example, in 2011 33% of organizations said that non-sanctioned apps and devices are absolutely not tolerated and immediately blocked or removed; today that number is only 13%.
In fact, 29% of companies said they allow employees to use any non-harmful app or device AND they provide some support, as opposed to 17% in 2011.
The pace of change of consumerization seems irresistible, but IT departments need to clearly understand the consequences of adopting a permissive policy, as this will open the floodgates to mass usage. Explicitly allowing employees to use consumer tools increases usage from 16% to 64% — a four-fold jump.”