Tag: mobile apps

  • DevOps Q&A: Datalink’s Dennis Vickers on MobileApps

    DevOps Q&A: Datalink’s Dennis Vickers on MobileApps

    Companies are custom-building mobile enterprise applications to enhance employee productivity on smartphones. devopsy.kinsta.cloud recently spoke with Dennis Vickers, director of Software Solutions at data center services and solutions provider Datalink about this trend and where DevOps fits in to the process.

    devopsy.kinsta.cloud: Why does applying smartphones to business initiatives require so much additional custom-built software?

    Vickers: Companies have developed and designed legacy software to group things that need to get done together into applications. With mobile application development the focus is more granular in terms of functionality. It’s not that the applications that we designed for the legacy environment don’t fit on the smaller screen, though they don’t. It’s really that the whole concept of having a group of functionalities in a single application doesn’t really work in a mobile environment. You need to rethink the way that not only your applications work but really the way that you do work. You need to think more in terms of granular work than accumulation of work.

    In finance, for example, you might have an application that combines accounts receivable, accounts payable, even expense management. You would have an application that would have all of that functionality in it. For mobile apps, what would make sense is to break out the expense management part of that and make that a mobile app that allows users to be able to use their smartphones to actually capture expenses as they’re incurred, as opposed to having to save a receipt or remember what your expenses were and then go back to an application and fill that in later at the office.

    devopsy.kinsta.cloud: How do you apply DevOps development approaches to provide usability on mobile devices for the most needed features and functions of in-house applications?

    Vickers: Mobile applications tend to be single functions focused on getting something done. Users are much less tolerant of anomalies in the software, whether that anomaly is a bug, a poor user interface or anything that is undesirable about the application. They’re not nearly as willing to look for workarounds with a mobile app as they are with legacy applications.

    You have to have a continuous delivery approach with mobile applications because the time frame between deliveries has to be accelerated. You have to automate that process. We’ve made good use of some of the automation tools, specifically Puppet, around doing continuous delivery. We use tools for source control and QA (quality assurance). Some type of automated delivery process is critical because the turn time for release has to be shortened. There’s just not a willingness for users to wait long periods between releases.

    devopsy.kinsta.cloud: Can you discuss the custom-built software project where you developed a custom equipment maintenance app that feeds into the customer’s proprietary maintenance application?

    Vickers: We developed that for an aerospace company that had a requirement to provide field service for one of the Department of Defense systems. They had to be able to maintain large pieces of equipment. We had to build an application that enabled them to be at the equipment and do the data collection that they needed at that time. It walked them through the data collection process right then.

    Before that, they had a paper process where they would print out instructions, go out and write down the information that they needed to collect, and then go back and enter that into an application. This allowed them to be able to do that closer to the actual event, which cut transcription errors and data collection errors and made the whole process much more efficient. That was an extension of a legacy app that added quite a bit of value.

    devopsy.kinsta.cloud: For that Department of Defense project, were there particular development tools or approaches in DevOps for the software?

    Vickers: We used an agile methodology where we iteratively released the software and did test and review and then essentially layered the application. We provide a layering process as we build and add features to the application. We delivered to the customer through an automated process using Chef. We use Jenkins to do some release management, but we often revert back to Chef or Puppet.

    What we haven’t done a lot of yet, which I think is important and I see growing in the mobile platform, is monitoring. I think that monitoring is an important part of DevOps. I haven’t seen that move into the mobile environment nearly as much as I think it needs to. I think it will happen in the short term. I think there’s some good monitoring tools out there that are coming online or that are maturing and are going to be adopted for mobile app dev.

    devopsy.kinsta.cloud: There was another project where you custom-built a jobs app that enables union members to apply for posted jobs without going into the union hall.

    Vickers: We developed a mobile app so union members can review jobs that are available and request the job through the app. They can receive job assignments and electronic tickets to go out and do that job. It saves traveling down to the union hall on a regular basis and makes the whole process much more efficient.

    The only difference in that project is that we needed to integrate with the back end through an API. The tool we used to help us interface with that API and manage that API integration was Postman. We use it for testing, managing and documenting APIs we build or work with.

  • Appster Must Produce Mobile Apps Using Nimble DevOps Practices (It Has No Choice)!

    Appster Must Produce Mobile Apps Using Nimble DevOps Practices (It Has No Choice)!

    In order to meet the many challenges of producing loads of different app/server projects large and small in extremely rapid succession, Appster collaborates on, automates, and dashboards everything it can. “Unlike traditional product companies (i.e. one product with lots of developers) or corporate IT shops (i.e. silos of products and services that rarely change), Appster has to handle a wide spectrum of software projects across a myriad of industries and vastly different client profiles,” says Martin Halford, CTO, Appster. Many of the projects Appster works on are mobile apps.

    To do this, the DevOps tools and processes must tackle each new and unique development project in a continuous project stream with the same fervor that any large development project requires. “Our DevOps focuses on automating testing, builds, and deployments for highly custom, highly complex app/server software development projects,” says Halford.

    The tools that help Appster to accomplish this include the XCode IDE, the Eclipse IDE, Atlassian’s BitBucket, SourceTree (for source control), and Jira (for Agile project and issue tracking), Jenkins for build automation, Amazon Web Services, and Klipfolio for dash-boarding, lists Halford. “And due to the short turn time and short duration of app/server projects—between 6 to 16 weeks—Appster does not at present practice Continuous Integration,” says Halford.

    Appster has three main objectives: to deploy only from BitBucket, to protect the non-development servers from the developers, and to display the build statuses via dashboard to all. Deploying only from BitBucket holds the source code repository accountable as the “single source of truth”, says Halford. In order to protect the non-development servers, developers do not have root level access to the testing, staging, or production servers, only to the development server in this four server stack, Halford explains. Further, the QA Team has access to the development and test servers as well as limited access to the staging server, but no access to the production server. Only the Dev Ops Team / Linux Admins have access to the production server; they also have responsibility for the maintenance and administration of the entire server stack, Halford says.

    App Dev At Appster Prior To DevOps

    Prior to moving to DevOps approaches, Appster developed apps using manual steps and documented processes that were prone to human error, says Halford. “The process was also prone to human shortcuts and attempts to hot fix builds by circumventing source control and documented protocols such as those that demanded that no one make direct updates to the production server,” Halford says. These issues were not immediately uncovered.

    A Typical Trip Through Today’s Appster Development Sprint

    CTO Martin Halford shared his take on a round trip through Appster’s development process today. Appster will first generate development servers from saved generic Linux server images, which the Dev Ops Admins will also secure. Servers will ultimately include development, testing, staging, and production servers (or DEV, TST, STG, PROD). Appster will then generate source repositories in BitBucket, and Jira Projects that it will link to BitBucket. Appster will also create a product backlog using an Agile Scrum Software Methodology.

    According to Halford, the development team will begin to develop software using Sprints, and each Sprint will follow this process:

    A. The developers will check out their code and associate tasks with User Stories and / or Bugs in Jira.
    B. They check code in as Changesets that are attached to tasks, which are in turn attached to User Stories or Bugs.
    C. Developers automate and deploy builds as needed to the development server.
    D. At the completion of a Sprint, the QA Manager selects completed tasks (User Stories/Bug Fixes) for deployment to the test server.
    E. BuildMaster initiates the build, which pulls Changesets from the source repository, generates the build, and deploys it to the target server for testing.
    F. After a successful Smoke Test, the QA team performs more involved tests to verify the build.
    G. BuildMaster follows a similar process to deploy the build to the staging server for User Acceptance Testing.
    H. The next Sprint begins and the cycle repeats itself.

    Concluding Thoughts

    “DevOps can heighten the effectiveness of mobile development by forcing and enforcing discipline on all parties, preventing human error, speeding QA testing cycles, effectively stopping defects, and highlighting inefficiencies in the existing development process such as could be alleviated through additional developer training and mentoring,” says Halford. Further, having a dashboard that is visible to all parties providing transparency into server issues so that Dev Ops Admins can respond immediately during build or production is critical to the DevOps process.

  • 5 Ways To Speed Up Mobile App Testing

    5 Ways To Speed Up Mobile App Testing

    We’re all familiar with the story of the tortoise and the hare, where a plodding tortoise wins a race against a speedy hare because the over-confident hare takes a nap midway through the race.

    It’s a valuable lesson about the power of smarts over sheer speed. But all due respect to the methodical approach, the tortoise does NOT win the race in mobile app testing. The hare wins. But he needs to be smarter than Aesop’s reckless rabbit.

    Despite efforts to expedite app release cycles, enterprise mobile teams still struggle with what we call “velocity blockers”, which are testing practices and processes getting in the way of fast, iterative app releases. To get to the bottom of velocity blockers, the Perfecto Mobile research team surveyed a group of 350 enterprise-level developers, DevOps and QA people of various responsibilities about what testing-related issues are slowing them down.

    The survey data revealed an encouraging shift to Agile practices that emphasize quick results and integrated feedback. It’s like having a hare’s body with a tortoise’s brain. Of our respondents, 86% said that they’re either Agile, or have made the first steps towards Agile. And 94% say they’ll be there within a year.

    This shift is reassuring, but testing lags remain in the way of progress, according to survey results. Here are the five main velocity blockers cited by respondents, with tips on how to be smart like a tortoise while moving as fast as a hare.

    1. Slow QA to Developer Feedback

    As developer teams begin using agile practices, the feedback loop between QA and developers tends to be unbalanced. Often when a company speeds up to a monthly release cycle, a team will spend three weeks developing and the last week testing and fixing bugs. The problem here is that as much work needs to happen in the final week as in the previous three weeks.

    Solution: We recommend embedding quality throughout the entire lifecycle, a concept we call Continuous Quality. QA feedback is always visible and developers always know where their code stands because it’s constantly being tested. Maintaining this kind of control over the quality of your mobile app throughout all stages of your SDLC will boost the speed of development and reduce the number and severity of defects reaching production.

    1. Ineffective Test Automation

    Automation, on its own, may speed up testing and releases. But it’s how automation is implemented that really makes a difference. Automating your test scripts is an important step, but it’s not enough. You must first make sure your environment is stable for automated tests. When you run automated testing across an unstable environment, false negatives happen.

    Solution: Start by automating the provisioning of your test environment to make sure it’s stable and will support your test automation correctly. If your environment is stable, your tests won’t return false negatives.

    1. Delays in Device Readiness

    Was your app ready to run on the Samsung Galaxy S6 when it released? Did someone on your team wait at the store to purchase it so you could deliver 0-day test results? Better yet, did you get it before it was released to test your app against it before users could upgrade? The answer is probably no, just based how quickly new devices are released to the market. But to maximize test coverage, device readiness is a full-time job. So how do you get the latest devices into your test lab, online and ready for testing before your users are impacted?

    Solution: Let a managed lab-as-a-service do some work for you, where a vendor acquires new devices, maybe before they’re publically available. Let them manage your test lab for you, and dedicate experts to you. Make sure they also offer an SLA. It costs an estimated $6,500 per device per year to manage in-house. Multiply that number by the total devices you need to test on, and this gets unscalable, unmanageable and unprofitable.

    1. Slow Access to Mobile Devices

    Let’s say you do buy devices and manage your own lab. The next issue you’ll run into is making those devices available to your testers all over the world in real time.

    At one of the top U.S. mobile carriers, when a new device was released, the carrier had staff who had to acquire the device and ship it to where testing was performed. This group had limited time to test the device before shipping it to another testing group. When timelines weren’t being met, the staff member physically traveled with devices, from test group to test group, to ensure they made it into the right hands and on time. Travel costs made for an inefficient process.

    Solution: Once the carrier chose to put devices in the cloud, the device procurement and deadline challenges were eliminated and a scalable, on-demand cloud emerged. They can now centrally manage devices for testing via the cloud and groups can access devices remotely while still ensuring the same user experience.

    1. Manual Testing Takes Too Long

    Manual testing is by far the top app development velocity blocker. We work with a lot of the major banks because, more than most industries, banks win and lose customers on the merits of their mobile app. One of the top U.S. banks came to us back in 2010. They were doing lots of manual testing of a wide range of complex scripts. It took them a long time to push through their test cycles, and app defects were missed.

    Solution: The bank’s pre-automated test environment relied heavily on manual testing, and included duplicate labs and a 16-20 day regression cycle. After automating their testing scenarios, they saw a 90% time reduction per regression cycle. That’s bringing weeks-long cycles down to mere hours. They were even able to quantify that they saved $40,000 per test cycle. In the end, the bank was able to decrease their cycle times and the defects released to production by doing test automation. A major velocity blocker was unblocked!

    About the Author/Eran Kinsbruner

    Eran Kinsbruner_150x175Eran Kinsbruner, is director of product marketing at PerfectoMobile, one of the leading mobile cloud and automation companies. Formerly CTO for mobile testing and Texas Instruments project manager at Matrix, Eran has been in testing since 1999 with experience that includes managing teams at Qulicke & Soffa, Sun Microsystems, General Electric, and NeuStar. The co-inventor of a test exclusion automated mechanism for mobile J2ME testing at Sun Microsystems, Eran has experience in the mobile testing world. You can find Eran on Facebook, Twitter @ek121268, LinkedIn, and his professional mobile testing blog at ek121268.wordpress.com.

  • Five areas of software development innovation to watch

    Five areas of software development innovation to watch

    Software development has undergone a massive transformation in the last two decades. From the first wave of breakthrough do-it-all PC applications such as Lotus 1-2-3 and Microsoft Office, to the launch of the first iPhone and its all-new “app” category, to the recent release of the iWatch and its projected evolution of apps, developers have never been more in demand to support these new technologies.

    In May, my company Gemini Solutions will be celebrating our 10-year anniversary, and we’ve been fortunate to have worked first hand on huge advancements. Our close partnerships with some of the most innovative technology companies have given us firsthand insight into areas of significant change, growth and importance for software engineering. 

    1. Mobile Keeps on Rolling

    The biggest area on the horizon for developers is the increasing prominence of mobile. Active in the mobile space since 2007, we have seen the demand for mobile-focused projects explode in recent years, and anticipate it is only going to get more popular. This space has seen incredible change in just a few short years. iOS app development continues to be the most requested, but we’re seeing a lot of growth in Android as well and expect it to continue to gain prominence as more Android devices enter the market. As Microsoft establishes itself as a platform, its apps will not be as in demand as iOS or Android, but I have a feeling that we’ll see growth for them as well.

    2. Be Aware of Wearable Apps

    Apps are no longer limited to mobile and are branching out to new devices, such as smart watches and bracelets, as they gain in popularity. There’s been a lot of buzz around Apple’s iWatch and the demand for the device is expected to be huge. We’re already receiving requests for the development of wearable apps so companies can keep up with the technology. Many of the inquiries are consumer-focused at the moment, but are beginning to move into the enterprise as well as these devices have the potential to become a one-stop-shop for both everyday and business uses. In addition, we believe that connected app development is also going to increase sharply in prominence. As these new devices link to mobile phones, tablets and computers the demand for interconnectivity is going to be huge.

    3. Functional Programming Making a Comeback

    We’ve noticed that the functional programming model is starting to see an increased push again. Scala is very popular for functional programming and is gaining traction with developers. We’ve also noticed people using Scala in conjunction with big data installations. JavaScript is immensely popular right now as well and we’re also seeing increasing use of Angular. This space is constantly changing and we expect to see even more infrastructures appear to offer more variety and choice for development.

    4. It’s the Real Thing: The Internet of Things

    The Internet of Things is the perfect amalgamation of mobile, embedded and cloud. The Internet of Things is bigger than the Internet of Humans. We’re seeing a lot of intelligent connected devices appearing on the market, and this is only going to accelerate as demand increases. A prime example is the popular internet-based security systems, with web-enabled locks, internet-controlled light and heating/cooling accessibility and the ability to view your home at any time via the device of your choice. Companies continue to make large investments in this space, prompted by the growing popularity of connected devices. We’ve been working with the Internet of Things for several years, but it is still a new frontier in many ways and we’re looking forward to being part of the space as it continues to develop.

    5. Making a Big Deal About Big Data

    In just a few short years, the hype of Big Data has gone from dream to reality. Everyone has their own interpretations of what Big Data actually means, but don’t let that fool you into thinking it’s a flashy trend; it is here to stay. The cloud is emerging as an increasingly popular way to develop and test new analytics apps and for processing big data outside of the enterprise. Data agility will also become even more central as organizations begin regularly using massive amounts of data, as opposed to just capturing and managing it. The umbrella of big data covers many disparate applications. Being able to analyze massive amounts of data to determine user activities, actions and preferences will be priceless to companies, and is why we will continue to see this space explode in popularity.

    The software development space has never been constant or stagnant. Huge advancements and innovative new technologies are continuously appearing to change the game and open up new possibilities. We have been honored to be part of this movement for the past decade to help drive these crucial projects forward. If the past 10 years were any indication, the future of software engineering will be bright, unpredictable and unfathomable. I can’t wait to be there for the next chapter.

    About the Author/ Theo Nissim

    Theo headshotTheo Nissim, CEO, Gemini Solutions – Theo is a seasoned Silicon Valley technology executive with more than 20 years experience. He has led pre-IPO start-ups, built dozens of technical teams, developed technology strategies and driven innovative products and solutions to market. One of Theo’s many strengths and passions is managing large scale, cross-functional development efforts to high profile product releases. Theo has held executive and management positions with large public companies, Sun Microsystems and Wind River Systems, and served as the Engineering Vice President for VC funded start-ups, Digital Fountain and AdKnowledge.

    Theo has a Masters Degree in Computer Engineering from the Technion, Israeli Institute of Technology in Haifa Israel. He lives in Palo Alto, California, with his wife and twin boys.

  • Redefining the state of quality with mobile apps

    Redefining the state of quality with mobile apps

    While many organizations are looking to agile methods to deliver mobile apps faster, they are also facing challenges in embracing the methodology across the organization. The keystone of agile for mobile apps is the focus on “the state of quality,” or the need to know if your code works, so will your app. The major problem that so many organizations are facing is this: DevOps teams are doing agile for mobile halfway. They perform nightly builds but no one is aware of the state of quality.

    What’s limiting visibility into the state of quality? There are three factors:

    1. First, unstable or limited test automation capabilities impacts the number of non-unit tests that can be run. Test automation capabilities are often similar to a slice of Swiss cheese – it looks good but there are definitely holes.
    2. Secondly, unstable development environments cause for workarounds, such as non-scalable scripting or skipping over major factors that impact a test environment, such as weak connections to wifi. Stabilizing a development environment is so crucial to the rest of the agile mobile app development lifecycle, while workarounds are not a sustainable solution.
    3. Finally, out of cycle tests are impacting the quality Many times, organizations keep test sections, like load testing, out of the lifecycle because of complexity. That means there’s never true insight into the state of quality during the mobile app lifecycle.

    To figure out how to know where the quality stands on any given day, organizations need to take a “no code left behind” type process. Continually embedding quality into the mobile app lifecycle will assure working code and working apps.

    Here are steps to achieve this:

    • Cut out the Swiss cheese: Combat limited test automation by implementing a wide and stable automation that meets requirements. Set those requirements before selecting an automation engine:
      1. Do you need to interact with the device or just the app?
      2. Do you need to analyze what is on the screen?
      3. Do you need self-recovery in case the system crashes?
    • Staff Accordingly: Devices are unstable by definition. Humans are more stable. Organizations can make an environment stable by staffing it accordingly, making someone available to handle testing.
    • Leverage the hybrid cloud: Create an always-on test lab with a person to take care of it. This reduces traps like USB connectivity issues, breach of security guidelines, Mac support, etc. Staffing an outlier to manage a test lab WILL break your cycle.
    • Bring it In-Cycle: Out-of-cycle test sections will also break your cycle. Build an environment that supports a variety of test cases and brings the outliers in such as different network conditions, multiple devices connected at the same time, capacity issues and the ability to always ready for load or security testing.
    • Educate the organization: In embracing Continuous Quality, educate your staff on the benefits and power of using automated testing in the cloud and the results that they will see experience with their own work.

    An environment that’s open and integrated and offers the least amount of limitations possible will allow DevOps to generate creativity from a comfortable place and give visibility into the state of quality. Continuous Quality is the only way to ensure your apps are working well and are released faster.

    About the Author/Yoram Mizrachi

    Yoram-Mizrachi-ws-newYoram Mizrachi is the CTO of Perfecto Mobile. Yoram brings to Perfecto Mobile a wealth of experience in networking, security and mobile telecommunications. Yoram founded Perfecto Mobile after serving as the CTO of Comverse Mobile Data Division. In this capacity, Yoram handled a variety of technological aspects in mobile applications, WAP and location-based services.  In 1999, Yoram was the CTO (and founder) of Exalink, which was later acquired by Comverse for $550 million. Prior to founding Exalink, Yoram held several technology-related positions in the fields of communication and cryptography.

     

  • PacketZoom Announces Mobile Speed as a Service, Enabling Mobile Apps to Access Cloud Content Up to 10X Faster

    PacketZoom Announces Mobile Speed as a Service, Enabling Mobile Apps to Access Cloud Content Up to 10X Faster

    First Round Capital, Baseline, Founders Collective and Tandem Capital Back Innovation Designed to Address Mobile Users’ ‘Need for Speed’

    San Mateo, CA – April 6, 2015 – PacketZoom, pioneering Mobile Speed as a Service (MSaaS), today announced a completely re-envisioned platform that addresses mobile app users ‘need for speed.’ The service, designed specifically for mobile app developers and today supporting millions of users, speeds up app content download time from the cloud by up to 10 times.  The PacketZoom service retires the 40-year-old TCP protocol, leveraging a new protocol that identifies the device as the address for data packets and easily accommodates for the intermittent nature of mobile connections in an intelligent, fault-tolerant way.  PacketZoom is designed to work particularly well in low-bandwidth networks or areas with spotty coverage.  To leverage the PacketZoom service, mobile app developers simply drag and drop the PacketZoom Speed SDK into their app, which immediately provides unprecedented speeds for downloading cloud content.

    Defying conventional technologies that at best deliver marginal performance improvements, PacketZoom comes to market with prominent investors such as First Round Capital, Baseline, Founders Collective and Tandem Capital, who provided the seed funding for PacketZoom and its proprietary protocol-based service.

    With this announcement, PacketZoom addresses the stark reality of mobile-user behavior:  more than two-thirds – 68 percent – abandon an app due to slow loading, according to Zogby Research, a custom research firm.  Digi-Capital Mobile Internet Investment Review 2015 Executive Summary provides further evidence of fickle and impatient mobile user behavior.

    “There are many mobile apps offering slow, clunky hotel booking services . We stay ahead by ensuring our iPhone app is very accurate and very quick – essential when people are booking time-sensitive last minute hotel deals,” said Harry Jones, co-founder & CPO, Top10, a site that specializes in finding top hotels based on destinations.  “Once we integrated PacketZoom into Top10, we significantly sped up data downloads for our one million users and increased click-through rates – helping convert more visitors to customers.”

    Innovating for Speed

    The underlying PacketZoom protocol eliminates legacy network techniques that have been critical to mobile-network operation but delay content delivery including DNS lookups, three-way TCP handshakes, slow starts, and aggressive back-off to reduce packet loss.  By eliminating the most challenging obstacles of legacy technology, PacketZoom enables delivery of mobile app content up to 10 times faster than otherwise possible.

    PacketZoom also handles connections differently than legacy protocols, which consider the device’s IP address as the destination for data packets.  By identifying the device itself, and not its IP address, PacketZoom easily accommodates for the intermittent nature of mobile connections in an intelligent, fault-tolerant manner, ensuring continuous connectivity as any mobile device moves across networks.  And because the PacketZoom protocol incorporates sophisticated “situational awareness,” it always knows a device’s location, tracks dead zones, and recognizes packet drops and other critical factors in real time.  All these capabilities are provided through the PacketZoom stack without any client or service side code changes.

    “We tried several solutions in the past but we were either  unimpressed or unsuccessful. We have 69M installs of four games worldwide and about 2 million monthly active users. As the demand for HD quality graphics grows in the mobile space, so do the sizes of our games and subsequently the need for us to stream content from the cloud. Streaming takes time and adds friction to the first load experience,” said Victor Rubba, CEO of Fluik Entertainment, a creator of games for mobile devices. “PacketZoom helps remove the friction and avoids compromising the quality of our games. Initial download times are now faster and the visual experience and quality of the graphics in our games improved as well. We see less players leaving before ever really experiencing the game. Sitting and waiting for content to finish loading now takes seconds and in this day and age, seconds is about as much patience as players can muster.”

    Easy-Install SDK Makes Mobile Speed as a Service a Snap for Apps

    App developers can quickly integrate PacketZoom’s Mobile Speed as a Service via an industry-first  drag-and-drop SDK, eliminating the need involved changes to the app. PacketZoom developed the SDK in response to challenges of native mobile app development.

    “With more than $32 billion in investment planned for mobile-first and mobile-only startups  in 2015, there is no doubt there is an exciting opportunity to solve the mobile performance problem,” said  Bill Trenchard, First Round Capital.  “PacketZoom has resisted the temptation of force-fitting legacy technologies by tweaking parameters to solve problems for which they weren’t designed. They have been tenacious about finding a solution that works for modern app developers. It’s easy to call a new approach a ‘radical departure’ from the norm, but that’s exactly what PacketZoom has done. They have literally rethought and reengineered mobile content delivery down to the underpinnings.”

    “Every mobile app developer knows that the fate of their app is based on the user experience which drives loyalty to their app,” said Chetan Ahuja, CEO of PacketZoom.  “Unfortunately, too many apps miss their chance at mass adoption because slow data downloads kill the user experience.  Our early traction with app developers like The ArtStack, Fluik Entertainment, Frenzoo, Proletariat, Top 10 and Voltage shows that this is a real problem for developers of all sizes, all around the world. As more companies move to take down websites and move their users to mobile apps, performance is more important than ever.”

    For more information, please visit: www.packetzoom.com

    About PacketZoom

    PacketZoom is changing the equation for mobile productivity, delivering the only Mobile Speed as a Service (MSaaS) platform that allows developers to speed downloads of mobile content from the cloud by up to ten times.  Built on a patent-pending protocol that makes existing protocols obsolete, the service enables developers to drag and drop the PacketZoom Speed SDK to their applications, reducing go-to-market times and eliminating the technical challenges that have hampered competing approaches to fostering productivity with mobile apps.  The company’s MSaaS platform has been adopted by companies such as ArtStack, Fluik Entertainment, Frenzoo, Top10,  and Voltage Entertainment USA.  PacketZoom is backed by investors including First Round Capital, Baseline, Founders Collective and Tandem Capital.  More information is available at www.packetzoom.com.

    ###

    Editorial Contact

    Suzie Linville

    Trainer Communications

    slinville@trainercomm.com

    415.800.5371

  • 7 Tips for testing the usability of mobile apps

    7 Tips for testing the usability of mobile apps

    Of the one million mobile apps, only half are used more than 5 times

    If you study any random cross-section of successful mobile apps and games you’ll find that they have one common factor. All of them are accessible. They have user interfaces that people can navigate intuitively without instruction. This is partly about building on expectations and established norms with Android, iOS, or whatever platform you are developing on. But there’s no substitute for thorough usability testing.

    According to Localytics, 20% of apps are used once and never opened again. Only 50% of apps are used more than five times. The window for app developers to impress and hook the user slams shut quickly and it stays shut. First impressions are vital if you want to boost retention rates and stand out in a crowd of over a million apps.

    It can be difficult and expensive to extract actionable data from usability tests. Here are a few practical tips for successful usability testing:

    1. Create a mock up – Starting with user-centric design is a smart move that will pay dividends down the line. You can save yourself a lot of time and money by discovering weaknesses and potential problems before the development really begins. There’s no reason you can’t mock up your user interface with simple screenshots and then frame it in an actual size smartphone surround. You can even do this with card and paper if need be. That way you can find out how potential users expect to interact with your app and identify the tasks that are most important to them. It’s a lot easier and cheaper to change your design on paper than it is to rewrite code.
    1. Examine how people interact – This applies to every usability test you conduct, whether it’s a paper mockup, a prototype, or the functional app on a smartphone. If you’re doing it in person then provide minimal guidance, ideally none at all, so you can uncover genuine failure points. Make sure to take plenty of notes. It’s not enough to just record what’s happening onscreen, you need to observe what people are doing with their hands, and see their facial expressions and body language. Are they trying the wrong gestures? Are they getting frustrated? Is it working the way they expect? Close observation will deliver the best insights.
    1. Test in the real world – If you can conduct tests in real world conditions in public then you might uncover some pertinent details about the usability of your app that you would miss in a controlled environment. This means conducting tests in real environments, whether it’s a busy shopping mall or a person’s home. It can be a good idea to avoid giving any instruction, that way you can see just how intuitive the design really is. There are services that offer video footage and audio narration of testers from around the world in different demographics using your app in real world conditions. Without the official framing of a test situation you have relaxed users and this can deliver different insights. Sometimes it might be more indicative of real world conditions to have someone test in their own home.
    1. Keep it short and simple – The longer a test is, or the more complicated it gets, the less likely it is your users will stay focused and interested. If they have to think too much about the parameters of the test and what you’re asking them to do then they’re less representative of an end user. This is particularly important when you’re asking members of the public to test in return for a small reward or for free. 
    1. Vary platforms and devices – Try to let people use their own devices wherever possible. That way the device won’t be a distraction and you’ll get data about different devices. The more variations you can cover, the more useful data you can gather. If you’re releasing on more than one platform then make sure you cover each one. You’ll need to cater for differences in expectations about standard platform navigation.
    1. Ask the right questions – Observation should be your primary source of data during usability tests, but you may want to ask some questions after each session. Be careful about what you ask and focus on getting actionable data. Asking if the app made them happy on a scale of one to ten isn’t going to tell you anything useful in a practical sense. You should also ask for elaboration, and where possible, have people show you what they mean using the app or prototype, rather than tell you, to avoid misconstruing any answers.
    1. Assess and act – You need to aggregate the data you collect and create a plan to assess it. Make sure you draw meaningful conclusions that are backed up by a weight of data. Don’t let personal bias cloud this process. You should be acting on the things that will resonate with the most end users. Just because one vociferous tester shouts louder than the others doesn’t make their feedback more important. Take your time, get further feedback on specific areas if it’s needed, and create a plan of action that you’re confident will result in concrete improvements, then test them again to confirm.

    There’s a lot of work involved in usability testing, but there’s no better way to improve the accessibility of your app and create a favorable first impression with the end user.

    About the Author

    Mush_Headshot cropMush Honda is QA Director at KMS Technology, a provider of IT services across the software development lifecycle with offices in Atlanta and Vietnam. He was previously a tester at Ernst & Young, Nexidia, Colibrium Partners and Connecture. KMS services include application management, testing, support, professional services and staff augmentation.

     

  • Monitor mobile apps behavior with freemium tool from AppDynamics

    Monitor mobile apps behavior with freemium tool from AppDynamics

    One of the core elements of DevOps is rapid development. Organizations remove obstacles, and function more efficiently to compress timeframes and evolve in real time. In order to be more effective, though, you also need to have real-time feedback on the existing app experience so you can adapt on the fly. AppDynamics wants to provide that with a new self-service freemium version of its Mobile Real-User Monitoring (RUM) platform.

    Free mobile crash analytics puts powerful data into the hands of mobile app developers who want to understand the critical failures that drive users away from their app and damage credibility, whether it’s the latest game or a business enterprise app. AppDynamics Mobile RUM enables mobile developers to quickly identify unique and recurring crashes for specific devices, operating systems, or carrier types, and fix them before they become pervasive.

    “If you don’t know what your mobile users are doing or know at what point and why your mobile app is crashing, you’re essentially flying blind in the brave new mobile world. With millions of apps available on the Apple and Android app stores, customers have little patience for a poor mobile experience. Not only does the poor mobile app hurt revenues, but it also hurts brand perception” said Jyoti Bansal, founder and CEO of AppDynamics in a press release statement. “With such rich mobile app performance management capabilities available in the market today, there is no reason businesses should leave their brand experience to chance. With free mobile crash analytics, you can quickly pinpoint the causes of mobile crashes and get them fixed before your users defect in droves.”

    AppDynamics launched a free, self-service, 15-day trial of the full-featured version of the enhanced mobile RUM product today. After the 15 days expires the full-featured professional version converts to a limited functionality lite version and continues to provide users with valuable mobile crash analytics data entirely free, forever. The freemium offering provides the crash analytics capabilities for free, with data retention for a 365-day period. Mobile developers can flashback up to a year to learn from historical trends and patterns.

    The full-featured professional version includes a variety of additional features and capabilities, like mobile business transaction correlation, enhanced mobile end-user experience management, and mobile behavior analytics. AppDynamics Mobile RUM can be deployed locally on-premise, or as a SaaS (Software-as-a-Service) offering.

    Bansal added, “Mobile is an essential component for software-defined businesses. That’s why it’s an essential component of the AppDynamics Application Intelligence platform as well. AppDynamics enables customers to move seamlessly from mobile data to server data, from smartphone to PC, so they have command of performance and reap actionable intelligence at every level.”

    You can use the lite version, and leverage the benefits of free mobile app crash analytics forever. If you want the features and capabilities of the more comprehensive professional version, AppDynamics Mobile Real User Monitoring costs $3,000 per year for every 5,000 monthly active users.

    Whether or not the feature in the professional version are worth the cost for your organization, it’s hard to argue with free. If you develop mobile apps, you should at least take a look at the data that AppDynamics Mobile RUM can provide, and determine whether or not it can be an asset that helps you adapt and evolve your mobile app experience to maintain your brand reputation and retain loyal customers.

  • Mobile App Development Will Soon Grow More Enterprise-Focused

    Mobile App Development Will Soon Grow More Enterprise-Focused

    As the global mobile app market begins to swell, many consumer-focused developers inexperienced in the ways of enterprise development will soon follow the money to become better initiated, a new report out this month explained. Until then, the more mature types of development methods and tools that enterprise developers depend upon are still relatively scarce in the mobile app development community.

    According to analysts with VisionMobile, which recently released its Developer Economics State of Nation Q3 report,  mobile developers accounted for 12.6 percent of the global developer population in 2013, but the number of developers in these ranks is expected to grow to close to 5 million in the next three years.  As things stand at the moment, more than two out of three mobile app developers currently target consumers. And even among those 27 percent who do focus on business users, 11 target individual business users—the independent BYOD early adopter type that many an IT department  has struggled to keep up with.

    That leaves just 16 percent of the mobile app developer population focused on the enterprise, with about half of them working in the enterprise environment and the other half in third-party or freelance situations.

    Given those demographics, it is no surprise how few tools the entire class of mobile app coders uses during development. Currently, just 9 percent of these developers use any kind of automated app testing tools, only 16 percent use crash and performance monitoring tools, and just 21 percent use beta testing tools. Even the use of cloud computing tools lags, with just under 30 percent using services such as AWS or Heroku to aid their development.

    It’s a perplexing problem, according to the report’s authors.

    ” Developer tools add value at every step of the developer journey from prototyping through to customer support,” the report stated. “It makes sense that hobbyists with no intention of making money from their apps would avoid tools that might incur costs at some point. However, 26% of developers that are interested in making money don’t use any third party tools.”

    This could potentially change as the economic incentives for more mobile app developers to shift to the enterprise and business users push them to create the more dependable apps features that these users demand.

    According to VisionMobile, overall the app economy stacked up to $53 billion in 2012, and its analysts predict 28 percent growth annually through 2016, when the market will reach $143 billion. Currently, the enterprise market leads the pack in terms of revenue generation opportunity, with developers focused on enterprise audiences far and away leading the pack in revenue from their apps, followed by those focused on individual professionals.

    “Smartphones and tablets were introduced as consumer-first technologies, which led to developers initially building consumer apps. Now a growing number of enterprises are adopting mobile technology; this is all businesses, governmental and non-profit organizations, not just large corporations with IT departments,” the report said. “The platform owners are providing clear signs that there is much greater enterprise adoption and significant opportunities for developers to come.”

    In an earlier report this year, VisionMobile predicted that the business and productivity market will double in size by 2016, reaching $58 billion by then.