News from the World of Software Development – December 2016

With the Holiday Season in full force, many technology organizations take a few days to rest up before 2017 begins. Despite the break a few interesting stories from the software development still arose in the past few weeks. Let’s take a look and see if any recent news offers some inspiration for you and your team. If you are interested in last month’s digest, simply click this link.

How Design is transforming the Practice of Software Development

Principles from the world of design are influencing how software gets written, especially at companies leveraging Agile as their methodology of choice. This is the opinion of a December article in ZDNet. The piece explains the similarities of thought between design and Agile as noted by Matt Cooper-Wright, a senior designer at IDEO.

“Both processes seek input from beyond the team doing the work. For designers this is user research, business needs, and technology possibilities. For software development this looks more like a backlogs, user stories, and success metrics. Both processes also embrace iteration and ongoing refinement. Design is more about jumping backwards and forwards where software is the continuous loop of development — but both talk to the same notion of ongoing refinement,” said Cooper-Wright.

Faster release cycles combined with a move towards continuous deployment is a major goal of many shops embracing Agile. Design concepts come into play with elegant user interfaces that serve the needs of end-users. Involving creative professionals during the storyboarding portion of the development cycle (and elsewhere as needed) ensures the final product offers a compelling user experience.

Tom Dabson, software engineering manager at Cognizant, sums up this evolution of application development. “We use design thinking as the approach to solving problems,” Design thinking is centered around truly understanding client needs and opening yourself up to try as many things as possible before coming up with the preferred solution,” commented Dabson.

Apple slowing down Mac Application Development?

The rumors are hot and heavy that Apple is deemphasizing software development for its Mac desktop computers. Engadget reported on this potential news story in late December. Considering the lack of new Mac computers for nearly four years until the recent introduction of an updated MacBook line, it is obvious mobile devices, wearables, and streaming media are Redmond’s major focus.

The article noted the poor battery power of the new MacBook as proof Apple’s engineering focus lies elsewhere. More tellingly, an analyst for Bloomberg reported Apple no longer maintains a dedicated team working on macOS software. Tim Cook denies these rumors when speaking to the press, but the real proof is in the lack of innovation on the Mac side of the shop compared to other areas within Apple.

A quote the late Steve Jobs made to Fortune Magazine 20 years ago rings true concerning the current priorities in Redmond. “If I were running Apple, I would milk the Macintosh for all it’s worth — and get busy on the next great thing. The PC wars are over. Done. Microsoft won a long time ago,” said Jobs.

We hope everyone enjoys their Holiday season, and looks forward to a fruitful 2017. Keep returning to the Betica Blog for additional insights from the ever changing world of software development. Thanks for reading!

News from the Worlds of Software Development and QA – November 2016

Welcome to this month’s look at a few interesting news stories from the worlds of Software Development and Quality Assurance. Last month, we covered Microsoft Teams – Redmond’s attempt to enter the enterprise social communication space dominated by Slack. November’s collection of news stories hopefully offers a few insights to apply to your daily work routine.

Without further adieu, here is the news!

Enterprises still struggling with Agile Software Development

An article in ZDNet from mid November takes a look at how enterprises are still finding it difficult to implement Agile as their software development methodology. The story is based off of a recent podcast between Santiago Comella-Dorda, Roberta Fusaro, and Gerard Speksnijder, all from the management consulting firm, McKinsey.

A main cause of problems is the large number of legacy systems in production at most enterprises. This makes it harder for their software project teams to be as nimble as required by Agile. Gerard Speksnijder commented on how this core issue isn’t present at startups or smaller firms.

“(Startups) don’t have the application-architecture legacy. There are no monolith applications. Everything typically is being defined in a pretty modular fashion, with lots of microservices, APIs, which allows you to make changes to the specific component of the application architecture. You can test it and release those features quite fast and without having lots of dependencies on other parts of your application landscape,” said Speksnijder.

The McKinsey analysts feel starting small, and using a product-based model, helps larger companies successfully implement Agile. They recently published a four-point program aimed at bringing Agile to the Enterprise. It is worth a perusal if your larger firm hopes to take advantage of this modern software development methodology.

DevOps is the Key for Success with Agile

Agile is definitely all over the IT news this month. CIO magazine published a piece describing the successful Agile implementation at Fannie Mae. A major factor in their success was an organizational structure based on DevOps.

A commitment to automation and a Continuous Deployment model for software delivery also played an important role. Using a racing metaphor, Fannie Mae CIO Frederic Veron described how DevOps helped his team achieve new benchmarks by doubling its software output over the last 18 months.

“If you do agile without DevOps, it’s like you’re trying to race with a tractor instead of a car. You can go and do the laps but it’s not going to go very fast, you’re probably going to consume a lot of fuel and it won’t be a lot of fun,” commented Veron. A software enhancement that used to take nine months is now fully implemented in 10 weeks using the Agile methodology, automated tools, and a DevOps organizational structure.

Needless to say, large and medium-sized companies need to consider switching to a DevOps structure at the same time they embrace Agile.

Well, this month’s post featured two valuable news stories from the trenches of the corporate software development world, as they try to leverage Agile for the purpose of faster software delivery. Starting with a small pilot program or completely restructuring your organization to a DevOps model raises your chances of success.

Stay tuned to upcoming editions of the Betica Blog for additional news and insights from the evolving world of software development. Thanks for reading.

Monitor API Usage with Runscope

Any company involved in the development of APIs, or even those simply building web or mobile applications dependent on them, benefits from being able to analyze API performance before deployment to production. A tool combining this performance testing functionality with testing and monitoring capabilities offers a full range of features wanted by most software teams. Runscope is just this kind of application.

What follows is an overview of Runscope to help you determine whether it makes sense to add it to your organization’s API testing toolbox. It may just ensure your applications and APIs perform as expected in production.

A Closer Look at Runscope

Runscope is a relatively new product and company. Formed by two software engineers, John Sheehan and Frank Stratton, the initial version of the application became available in the first half of 2013. The primary goal of their API analysis tool involves trusting an API running on a remote server just like it was running on a developer’s local machine.

Runscope Monitoring Features and Functionality

Uptime monitoring of an API – in real-time – is a major selling-point for Runscope. The product promises the engineers responsible for tracking an application in a production environment will know if an API breaks before the client or customer. It integrates with a wide variety of popular notification and messaging apps, including Slack, PagerDuty, email, as well as offering support for webhooks.

An on-premises agent (supporting Linux, OS X, and Windows) allows for the seamless monitoring of private APIs. This is in addition to Runscope’s standard Cloud-based SaaS (located in 12 global data centers) used for public API analysis. The tool includes threshold-based notifications to lower the instance of false positives. 

Real-time performance data helps analyze an API’s response times as well as the ratio of successful calls to failures. Engineers are able to quickly detect any issues requiring closer analysis and debugging. Runscope’s data can be imported into third-party analytical tools, like Keen IO, Datadog, and New Relic Insights.

Additional API Testing Capabilities

Runscope sports other functionality aimed at the testing of APIs. You are able to verify data in the JSON and XML formats, as well as validate HTTP headers and response status codes. Advanced validations are also possible in code using JavaScript and the Chai Assertion Library.

Users are able to create dynamic test scripts for vetting API workflows, without any coding effort. Test plan creation in the Swagger format, among others, offers a more structured level of API QA. Runscope also integrates with Jenkins and other similar tools for organizations leveraging a Continuous Integration release cycle.

Interested customers can test drive Runscope on a free trial basis. Their premium service is structured across three tiers based on the number of API requests and users, with monthly prices ranging from $79 to $599; the higher two levels also include priority support and live chat. There is also a Premier level with additional custom features and extra traffic handling.

In short, Runscope’s full range of API monitoring and testing features, along with its compatibility with industry standard messaging and analytical tools, makes the tool worth checking out at any shop specializing in API development.

Stay tuned to the Betica Blog for additional dispatches and analysis from the software development and QA world. Thanks for reading, as always.