Happy Tuesday! The following articles went live on developerWorks Rational today:
Title: Collaborative management of software subcontractors
By: Ana Lopez-Mancisidor
Abstract: Software development subcontracting is common, but there are still no clear definition of standards, tools, and risks. This article analyzes benefits and risks to consider and explains how to implement a collaborative framework to manage work with external providers of services.
Technologies: Agile software development, IBM Rational Jazz technologies
Title: Ways to optimize test data parameters for faster, better performance tests
By: Barath Raj Keshavamurthy
Abstract: Setting test data parameters at run time for high-volume load simulations can involve millions of rows and require repeated, intensive I/O activity, which degrades performance. Optimizing parameters in IBM Rational Performance Tester prevents this, so you get faster, more successful results.
Product: Rational Performance Tester
Title: Three ways to take full advantage of Rational Build Forge
By: Ashish Aggarwal
Abstract: Many developers use IBM Rational Build Forge to handle software builds through its management console. But it also has includes an excellent set of command line Java and Perl APIs. Plus, it integrates with Jazz technology-based software which can provides a complete and integrated set of test, build, change and release management tools. This article explains how, complete with sample code.
Product: Rational Build Forge
As a developer, wouldn't you love to log in and simply have all of the development, test and deployment environments that you need at your fingertips? Steve Abrams, Chief Cloud Architect, and Timothy Hahn, Chief Architect for Enterprise Modernization Tools describe what PureSystems really means for development teams. Both are IBM Distinguished Engineers and authors of last week's featured article about IBM PureSystems, the new expert integrated systems approach to IT.
What does PureSystems mean for practitioners and software engineers?
Steve: With PureSystems, developers can focus on development and not worry about details of infrastructure and configuration. Especially with PureApplication Systems, the patterns mean that developers can easily build applications that everyone can be confident will work and perform well in production. This will dramatically reduce the amount of time, money, and effort wasted by development teams tracking down what turn out to be configuration errors, rather than application defects.
Tim: PureSystems represents a significant advance in how practitioners and software engineers will use their computing resources. PureSystems will make it possible for software engineers to get access to high-performance computing systems quickly, and just for the time they need to use it, to develop and test their applications. For system administrators, PureSystems represents a new way of managing their computing infrastructure. Administrators can concentrate on managing system images (rather than a bevy of individual instances) and can devote more time to innovating new application architecture models. By automating the instantiation and setup of systems and applications, the mundane tasks of system administration are handled by the system itself, which enables people to concentrate on new solutions.
By using PureSystems capabilities, how can development teams realize increased productivity on both new and existing applications?
Steve: Typically, availability of test hardware is a major bottleneck in the application lifecycle. PureSystems makes it simple for teams to quickly get access to production-like environments for testing purposes, virtually eliminating this bottleneck. Further, teams can connect PureSystems to a continuous integration process and automatically get continuous, realistic feedback on the quality of the application throughout the development cycle. The simple application onboarding process means that this benefit extends equally to new and existing applications.
Tim: Development teams should be looking at PureSystems as a means of getting access to server-level computing resources quickly, easily, and just at the time that they need them to deploy and test applications. Development teams should no longer feel the need to manage loads of small desktop systems in order to cobble together an approximation of a server-level infrastructure. Now, developers can get an instance of exactly what the eventual deployment environment will be for their applications, run their applications in that environment, and then return that instance to the resource pool, confident that they will get those resources again the next time that they need to test their applications. Without the burden of managing their own systems, developers can spend their time creating innovative applications.
What is the one action that you have taken that has accounted for most of your success?
Steve: Asking questions. Too often, people are afraid to ask questions, and that limits their ability to succeed. I can't think of a time when asking a good, hard, clarifying question did anything to impede progress. More often than not, the questions reveal the critical next steps for success.
Tim: The one action I have taken is to always be curious, inquisitive, and ready to take on a challenge that I wasn't expecting to come my way.
What interests you outside of your job (hobbies, activities)?
Steve: I love photography. I don't take pictures as well or as often as I would like, but I still love it (mandatory shameless plug: http://bit.ly/Ipnw0J).
Tim: I am an active triathlete, competing in sprint and international distance events. I also enjoy scuba diving.
What books have influenced your ideas and thoughts the most?
Steve: Lately, many of the books that I've read relate to the course that I teach at Columbia University. A current favorite is Business Model Generation by Alexander Osterwalder and Yves Pigneur. It provides a nice, flexible structure for defining and understanding business models. Even in a large company like IBM, innovative, entrepreneurial thinking about changing and emerging business models is critical to our success.
Tim: I read mostly fiction when not reading for work. One of my favorite books is Cryptonomicon by Neal Stephenson. However, The World Is Flat by Thomas Friedman is one book that I enjoyed that also has helped me realize the potential of our global society.
You can read their article, IBM PureSystems: A game changer in the development, deployment, and management of IT applications, on developerWorks.
Have you already looked at PureSystems? What have you read? Is there anything that Steve or Tim can help you with? Leave a comment here or at the end of their article.
Help up help you with Rational product integrations through our integrations survey.
We want to hear from you about your experiences with integrating Rational products. We'll use your suggestions in several ways:
- to improve our integration documentation, from download to completion.
- to improve our integration testing
- to improve your overall experience with Rational integrations
The more detail you provide, the more we can fully understand any integration issues you report in this survey.
Please take a few minutes to complete the questionnaire. When you've completed it, click Submit Survey to send us your responses.
We're back, and calling on Tim von Niessen, Consulting IT Specialist with IBM Global Business Services and author of this week's feature article, Programmatically modify Rational datapools.
What is the one action you have taken that has accounted for most of your success?
I have to believe that my success has been primarily due to hard work and diligence. I came into the IT business in 1977 fresh out of high school, taking a job as a junior computer operator back in the days of punched cards. I strive to keep up with modern technology, learning as much as I can through hands-on interaction. I believe that we are each responsible for our own success, and we should treat ourselves as our own business and plan for our own future.
What interests you outside of your job (hobbies, activities)?
I am interested in Android application development, not only due to the rapidly evolving world of mobile computing, but also due to the open nature of the freely available Eclipse Java development tools.
What communities, forums, or user groups do you turn to for help or technical insight?
I find IBM developerWorks to be an invaluable source of knowledge in so many different fields of technology. Input from people worldwide, in different companies, provides an amazing forum for discussion of issues that plague us all. Having questions and answers from real people in real world situations provides a grounded view of the implementation of technology.
Which (future) standards are seen as important?
I believe that one of the next technologies that will require firmer standardization relates to changes to web based technology to support the touch screen input of mobile devices, adding another layer of complexity to the design of technology-neutral user access. DoJo and jQuery are early front runners, but there are many other similar web interface technologies now emerging.
It is important that technologies have standards, but not at the expense of innovation and openness.
When you're not working, what do you do?
Read bad science fiction and horror novels to escape the reality of day to day life.
And when the horror novels get to be too much, he retreats to playing with emerging technologies, having created several Media Center computers for the integration of music, films and television. Tim is now focused on the development of Android apps, as well as delving into new ways to create technology neutral web interfaces.
Often, test data is not given a very high profile on many testing engagements. Do you find this to be the case in your own testing engagement(s)? Are the topics discussed in the article useful to you in creating a stronger test data bed? Let Tim know by leaving a comment here, or on his article.
Accelerate delivery and reduce costs with the IBM Integrated Solution for System z Development – One Customer’s Journey
Modern, streamlined development environments are nothing new in distributed shops. But introducing efficiency, cost reduction, and modern methodologies for mainframe development can seem daunting in comparison. This complementary webcast is a case study of the success that a large financial institution had in establishing a modern mainframe development environment.
We’ll discuss how IBM worked with one of its customers to create a roadmap for deployment of the solution, starting with IBM® Rational® Developer for IBM System z® as the cornerstone. Learn how the team introduced tools in a strategic progression to provide an overall solution for addressing critical issues and ultimately improving quality of their applications. You’ll learn how the result was an overall solution that addressed critical issues such as collaboration, unit testing and change management, and ultimately improved the quality of the firm’s applications.
Sign up for this webcast at http://bit.ly/MBjsdf
Broadcast date: August 22, 2012, 11 a.m., EDT / 4:00 p.m. BST / 3:00 p.m. UTC
Join us after the webcast for a live question-and-answer session. This webcast will also be available for replay after the event.
IT professionals are continually asked to deliver more function with fewer resources in a shorter time. Transformation can be difficult in IBM® System z® shops, where major requirements are a challenge to implement quickly, testing cycles tend to be long and fixed, and the risk of change is high. Many shops are exploring modern development practices and delivery techniques to support these demands.
Test environments also rely on efficient and high-performing middleware. Older versions of compilers can limit application throughput and may also increase maintenance and development costs. Are your teams getting the most out of the latest improvements?
Join us for a complimentary webcast on September 26, 2012, 11 AM, EDT (4:00 p.m. BST / 3:00 p.m. UTC). You’ll learn how to use IBM Rational® Developer and Test Environment to implement changes such as adopting agile mainframe development practices, creating an isolated version-to-version test environment, and investigating a continuous integration process. We’ll show you how to exploit the latest advancements in IBM z/OS® XL C/C++, Enterprise COBOL, and Enterprise PL/I compilers to help improve programmer productivity, enhance application performance, and get a better return on investment.
You’ll also learn what’s coming soon in compilers to help optimize your testing and production environments, and participate in a live question-and-answer session.
Register now by visiting http://ibm.co/nextgen-ea-webcast. You will be able to access the webcast replay through this link, as well.
We look forward to chatting with you then.
The call for papers is open for IBM Innovate 2013
. This year there are two streams: The Technical Exchange @Innovate and Team Directions @Innovate. Full descriptions for these streams and their areas of interest are on the conference website
. The submission deadline has been extended to January 21, 2013!
So, think about ideas for your paper. If you have general questions about submission ideas, leave a comment on this post or use the message board
UPDATE: Information about all conference tracks is available on the call for papers site
, but track chairs for the following subjects have offered ideas about what might make a good paper topic -and- they are eager to hear any ideas that you have for these tracks:
When you have your idea, take a look at these tips for creating an abstract that gets noticed
(good advice for many conferences):
- Show measurable results: There is a big difference between saying “This worked for us” and “We achieved a 35% Return on Investment”. Measurable results are a great way to prove the effectiveness of your strategies to your audience.
- Use real-life examples: There is no substitute for experience. Audiences love to hear directly from people who have implemented winning strategies. If you’re an IBMer or an IBM Business Partner, team up with a client to bring your story to life. If you’re a client, dedicate some of your time to letting your audience know how things really worked, or didn’t!
- Avoid sales pitches: Infomercials are not welcome. Audiences want to learn how to be successful; if that includes a mention of a specific product or service, then great. If that focuses solely on a given product or service, then audiences will tune out. If you came to advertise, you should participate in our solution center.
- Explain the big picture: how your organization collaborated: Software delivery is a team sport. And while your presentation may focus on a specific aspect of software delivery, it likely has impacts on other areas of, or individuals within, your organization. Don’t forget about those impacts, tell us how you integrated and collaborated with other tools, areas or individuals. We want to understand the full impact of your strategies.
- Speak to your industry: Sometimes your successful strategies will be dependent on circumstances unique to your organization. Consider generalizing your guidance so that it will apply to others in similar industries or more generic situations.
It’s our first roll call of the year and this time we’re calling on Paul Urban. Paul has more than 25 years experience in developing systems, software, and hardware in the embedded and real-time systems industry. He is an OMG Certified Systems Modeling Professional Model User, and a senior systems market manager for IBM Rational software and has worked with Rational software in various roles since 1995. Paul is a prolific author on developerWorks and has earned the Contributing Author badge. Learn more from Paul at the Rational Rhapsody enlightenment webinar series
What books have influenced your ideas and thoughts the most?
Bruce Douglass's books on best practices on using modeling for the development of embedded systems, such as Doing Hard Time, have influenced my thoughts on effectively applying a model-driven approach to improve the development of embedded systems.
What communities, forums or user groups do you turn to for help or technical insight?
What magazines, newspapers and/or information products do you study?
SD Times, EE Times, Electronic Design, Medical Design Technology, Military and Aerospace Electronics
How do you handle defeat and/or failure?
If things do not work out as planned then I look at this as an experience to learn from. What good things occurred that need to be repeated and learn to avoid any mistakes in the future.
Which (future) standards are seen as important?
With increased focus on product quality and avoidance of product recalls, safety-critical standards such as DO-178C, ISO 26262, IEC 62304 or IEC 61508 will be important for the development of products where failure could result in injury.
To what extent is User Experience integrated with software development in practice?
First impressions are a critical aspect of any product, whether that is software, electronics or any product. With the proliferation of technology in our everyday lives there has come an expectation for an easy-to-use user experience. The Rhapsody development team strives to improve the user experience in every release. For IBM Rational Rhapsody v8.0, new Guide Me's were added to help new users perform tasks. User experience is a critical aspect of any software product.
How do you keep up with changes in the industry?
Usually from trade magazines, many mentioned earlier, or from social sites such as Linked In.
After hours Paul spends his time supporting his kids in their extracurricular activities (soccer, karate, dancing or cub scouts), and for the few moments he saves for himself he golfs. Paul was part of the 2011 IBM Golf League champion team. Paul’s latest article is Safety-related software development using a model-based testing workflow
. Think about this question as you read the article, and feel free to answer the question in the comments section:
Do you think the reference workflow described could fit into your existing safety related development process?
For Desktop-based testing it’s a no-brainer: Use object-based scripting to maximize reuse across platforms/browsers. In
today’s mobile world it really isn’t that simple. There are many
different platforms, OS versions, form factors and carrier/manufacturer
customizations. Multiply that by mobile web, native app, or some hybrid
in-between and you’ve got yourself a healthy testing matrix. A daunting
task for even the most skilled Automation Engineer.
In order to tackle
this problem, an Automation Engineer cannot simply look at it from a
“one size fits all” perspective to create a set of objects and re-use
them across all combinations of platforms. For example, there are
fundamental differences in how an app behaves on iOS and Android, even
with something as basic as a “back button” has its quirks.
these fundamental differences can be grouped together as a step or
action, they are unique enough to not be able to simply share an object
between the two OS’s.In some cases with mobile testing, you may be able
to get to the object-level, however this usually requires that you
instrument your app, or test on an emulator. While this fulfills a piece
of your testing matrix, you will probably need to seek a couple tools
to get this done across all platforms. In other cases, the content you
are testing might be HTML-based and you can test by WebKit profiling.
Again, part of your testing matrix is fulfilled, however you aren’t
quite there.This may be enough to satisfy a short-term goal, but at some
point you need to be testing on real mobile devices.
In order to
truly automate on mobile, your mobile testing “Utility Belt” needs to be
designed in such a way that allows for testing by object when possible,
element when possible, and also be able to quickly fall back on text or
image verification in order to satisfy all areas of your testing matrix
and assure the highest quality of your mobile product. Having the
flexibility to be able to choose how to get the testing done is
paramount since as an Automation Engineer,you very rarely have a say in
how a particular app or mobile web site is developed. The job requires
you to sometimes understand functionality without necessarily being
privy to the construction, and there is always a tight timeline to
achieve results. The right tool for the job is a tool that takes all of
this into consideration, and provides a platform to consolidate all of
these different types of testing approaches.The first step is to
determine the type of app you are testing. Is it fully native, fully
web, or somewhere in between?
it’s fully native, you may be able to get to some objects on a per
platform basis, but you will probably be falling back on text and image
based verification, especially if you are trying to go cross-platform.
it’s fully web, a lot of testing can be done up front in a WebKit
profiler. When it comes to real devices, element-based testing can be
done cross-platform if you want to instrument, or you can fall back on
text and image verification.
- If it’s somewhere in between, you’ll need to mix and match.
second step is to find which pieces or steps of your test cases are
reusable between each other, and can accept parameterization to fulfill
the task. For instance, automating the selection of an item or link on
your main screen of your app or landing page: Maximize reuse by
engineering a parameter to accept different values, and reuse it across
each test case. Although you may need to individually determine what
type of verification you will use to achieve this on a per platform or
device level, you will save time in the long run when you write
additional test cases. The third step is to then group those pieces or
steps together by device screens or pages. This way, as you write the
test cases you have an organizational structure that is easy to identify
by where you are within the app or site and where you need to navigate
to next.Following these steps will provide a structure that can be grown
to accommodate new features within an app or new sections within a
mobile web site. As mobile devices become easier to automate against,
this structure can easily adapt to emerging technologies that allow for
greater reuse across platforms.
Note: This article was recently published in the April, 2013 issue of Automate Software Quality Magazine.
Modified on by JoshGalde
Depending on your application, you will have to assess whether testing on an emulated device or real device is the best option. Many times it is not either/or decision and the best choice is both. Emulators offer the less expensive testing option, but they have many limitations for mobile testing and may not give an accurate depiction of the mobile user experience.
However, as part of the mobile testing process the use of emulation has an important role. There is certain testing that you can conduct with emulators that are sufficient which include testing for screen size or visual form factor. However, emulation is often an approximation of the rendering and can only get you so far.
Leveraging emulators is a positive step towards real device testing, however, not sufficient for comprehensive testing needs. With cloud-based testing you no longer need to have a bunch of people in a room with different mobile devices.
Testing on real devices gives the tester full functionality of the mobile device. While device types may be more limited than the emulated devices, testers should be able to have access to the real processor and hardware to understand the quirks that some real device have. Without this ability, users may not discover some real life issues that device differences would present in a real environment versus in an emulated environment.
It is important to conduct real device testing when needing to test mobile engagement with the device, launch applications, and interact with device at a more detailed level.
Keynote offers some useful free tools to perform mobile testing. Developers and testers can quickly conduct interactive functional testing on their websites from the convenience of their desktops with remotely accessed real devices and an accurate device emulator. To read more click here!
Modified on by JoshGalde
Automating your mobile testing has two main advantages, increasing efficiency and cost savings. With automated testing, imagine you are able to conduct manual tests with simple scripts and run it repeatedly. You save human resources and money. Automated testing helps QA teams quickly create and test scripts to capture, verify and replay user interactions.
Every second saved by forgoing continuous manual input adds up, thus relieving the stress and resources, enabling testing to be streamlined. Some companies are able to automate all of their mobile testing. Depending on the type of app you are testing, at least 80 percent of it can be automated, however, factoring app functionality on different devices and platforms, there is often a need to supplement it with ad hoc manual testing.
Leveraging the tools that help measure and evaluate the quality of your mobile app or website, you can use real device testing or automated scripting to assess the quality of services. This will help you to determine the user’s experience in the environment of the App or service once its launched.
To read more about why you should automate go here.
Over the last 5 years since 2007, we have seen an explosion in mobile apps to make our lives convenient and more efficient. And it appears there is no letting up. Recently, Forrester Research noted that there are now 7.3 billion mobile devices in a world where there are only 7 billion people.
"Mobile applications in the Enterprise may be a future vision for many companies, but mobile is a vision that is being realized much quicker than many had expected. What does the rise of mobile mean for the enterprise?
The global Enterprise Mobility (EM) market is expected to grow annually by 15 percent every year, eventually reaching $140 billion by 2020. By 2020 roughly 10-12 percent of the enterprise IT budgets will be spent on mobility, compared to less than 5 percent today. These numbers are based on a report by Nasscom in association with Deloitte.
Similarly,IDC is predicting that the biggest driver for new IT spending this year will be smart mobile devices, which include smartphones, tablets and eReaders. IDC expects that this segment will grow 20 percent and generate 57 percent of the IT industry’s total growth.
Industries where there are many customer interactions, like in banking, insurance and retail are seeing higher rates of Enterprise Mobile adoption. Mobile adoption is expected to also increase in government, healthcare and media.
The move to mobile is being fueled by mobile developers turning out applications for their businesses. Frost and Sullivan report that 82 percent of large North American businesses have already developed mobile apps for their employees. AndGartner is predicting that among in-house development projects, those that target smartphones and tablets will soon outnumber native PC projects by a ratio of 4-to-1." says Dick Weisinger of formtek.com.
Testing is critical in this process
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!
Modified on by JoshGalde
In a recent article by Chris Marsh of Yankee Group, he addressed the new partnership between HP and SAP to address enterprise mobile apps. The services are intended to help the clients improve employee productivity with mobile apps and turn customer interactions into revenue opportunities. In it he says “HP’s partnership with SAP is indicative of how complex the enterprise mobility ecosystem has become. HP has been building out its own enterprise mobility management portfolio recently releasing its Enterprise Cloud Services providing sync, share and store for mobile applications and has aspirations to offer a wider portfolio of managed services. On the other hand it cannot afford not to partner with SAP around its more mature portfolio. From SAP’s point of view, the more the merrier, and momentum is on its side. As it pivots to focus more of the SAP group’s services around impactful B2BC engagement for its own customers it will aim to carve out more value in the mobility ecosystem…”
Recently, Keynote announced a complete integration with SAP partner – Worksoft. Worksoft, the provider of next-generation test automation solutions in support of SAP® applications brings speed and agility to SAP software by automating end-to-end testing, not just for SAP, but everything it interacts with. Worksoft’s integration with Keynote’s DeviceAnywhere platform provides its customers with access to seamless mobile software testing given its tight integration with the DeviceAnywhere solution. The integration offers a true end-to-end mobile integration in which Worksoft customers have 24x7 access to test SAP apps on any mobile devices, platforms or OS from their Worksoft Certify® interface. All of the device capabilities are accessible through the Worksoft Certify Mobile Interface Extension™. There is no scripting required. The joint solution leverages the Worksoft Certify approach to creating business process automated tests. And no additional training required since existing Worksoft Certify users don't need to learn another tool and have complete access to Keynote's powerful DeviceAnywhere mobile device testing platform. Existing SAP customers interested in leveraging DeviceAnywhere services to support the extension can get more information here.
Modified on by 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.
Modified on by 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.
Modified on by 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.”
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!
Recently Mozilla announced its intent to build their own OS built on the Firefox browser. This, in theory is intended to give a standards-based framework for simplifying mobile app development and providing a strong platform for HML5 web-based mobile app development. In a recent article on this topic, the author writes "Currently, if you develop an app for Firefox OS then you can run it under the Firefox browser as well. The same is true of a Chrome app but these two forms of app are not compatible. You have to do some work to convert a Chrome app to a Firefox app. It is true that most of the work is in creating a suitable manifest and in packaging the app. You could say that this is an almost trivial difference but there are deeper reasons to suppose that this division might get worse.
At the moment we have the two browsers competing for your apps and the competition is frankly a bit weak. Despite the amazing Firefox demos and Chrome experiments, the world doesn't seem to be falling over itself to create packaged apps for either browser. Indeed there seems to be a big preference for creating pure HTML5 apps that run on either browser without modification.
This is all about to change.
Firefox OS is open and free to all. The only restrictions on the programmer are those imposed by the security mechanisms. If you want to see what Mozilla think about their creation take a look at the this video.
So Firefox OS is the platform HTML5 deserves.
Only there is a small problem.
To make this all work Mozilla is having to invent, at incredible speed, a complete set of web APIs which give access to the phone's hardware. These APIs are not standards, even though Mozilla hopes that they will be standards and has submitted them to W3C. If you want to see how fast Mozilla is innovating take a look at WebAPI and take special note of the implementation and standardization status columns.
At the moment Google seems to not be reacting to the rapid change. If you think about it for a moment this seems reasonable as Google already has a mobile operating system in the form of Android - and very successful it is. Why should Google incorporate WebAPIs such as the Camera API? It isn't a standard and in any case Chrome desktop generally doesn't have access to a digital camera. Chrome running on Android is a different matter, but why would Google go to the trouble of adding a feature which would undermine the Android app marketplace?
It is possible that Chrome will add a Camera API and any others that manage to become standardized, but Google's app extensions for Chrome are oriented to making Chrome OS a viable portable operating system not a phone operating system.
None of this looks as if it is going to be a revolution, until you take note of how the device manufacturers are behaving. They have been showing a lot of interest in Firefox OS. The latest news is that Foxconn, the manufacturer of the iPhone is hiring an additional 3000 programmer to work on Firefox OS. It seems that Foxconn sees Firefox OS as a way to make it less reliant on Apple's fortunes.
At the moment developers seem to be ignoring Firefox OS and there are few apps in marketplace. However, this is not taking into account the current state of the Firefox OS development environment. There is a simulator and Geeksphone has provided a developer preview phone, but when you actually attempt to begin work on app that is making use of the web APIs that Mozilla are working on you quickly find that they are not ready to be used. There is little documentation and much of the framework is marked "experimental". It isn't surprising that there are few finished apps on the shelves - there isn't yet a finished OS to program to!
So the question is, what happens to the idea that web apps are universal and can work anywhere?
Given the rate that Mozilla is inventing new web APIs this idea is more or less dead, for the moment at least. It is not the case that you can sit down and develop a web app and expect it to work on Firefox desktop, mobile and OS, let alone Chrome and Chrome OS and as to IE... forget it.
It is true that this could change.
All of the Mozilla web APIs could become standards and in an ideal world Google, Microsoft and Apple might just make their browsers support these standards - but it is difficult to believe in a world where this might happen. There are simply too many proprietary interests at stake. Microsoft needs to keep WinRT special, Apple would lose control of its walled garden and app store and Google would see Android decline in popularity. Only Mozilla has anything to gain from the standardization of the WebAPIs."
While the DeviceAnywhere platform continues to stay agnostic, this will no doubt add fuel to the fire over how and what to develop. With any OS, the problem remains - app quality is often overlooked and customer ratings are still king. Therefore, no matter what OS you develop on, testing is critical to its success in the real world.
In a recent article in ‘Search Consumerization’, Margaret Jones gives a great description for those unfamiliar with device fragmentation and why it exists. She also covers why it has become a headache for IT organizations in addition to mobile app developers and QA managers to support.
As the market continues to grow and the number of devices continues to escalate, especially on the Android iOS, we see no sign of letting up or consolidation.
To begin, we must first understand what fragmentation is and why it is important when supporting the Android marketplace. In the article Jones writes “a mobile operating system becomes fragmented when there are several different OS versions in use at the same time. Fragmentation is usually associated with Android because wireless carriers and device manufacturers, not OS developers, are the ones who control when OS updates are sent out to different devices.”
While Apple is in control of the updates of their OS, there is still a level of fragmentation based on screen sizes (i.e. iPad, iPad mini, iPhone, and coming soon, the iWatch).
Jones continues “additionally, fragmentation is the result of different device manufacturers adapting a mobile OS for their own devices, as is the case with Android. For example, the version of Android that runs on some Samsung devices has been modified to work closely with Samsung's hardware. It is not the same version of Android that runs on other manufacturer's devices, even if the name of the OS version is the same.”
To read more follow our blog and catch our next installment as we continue this conversation in a 4 part series.
Also, register now for the upcoming AnDevCon in San Francisco, CA, Nov 12 – 15, 2013. Be sure to visit our booth #303 to experience our real device testing platform for anyone developing, testing, or supporting mobile apps and websites.