The idea of microservices appears to be quickly gaining fame among today’s enterprises, however some IT experts warn that organizations may not be “culturally” prepared to leverage this new paradigm in a way that is beneficial for their business.
“People are asking about it a lot. They’re interested in what it is and how it’s helping companies become successful,” says Christian Posta, Principal Middleware Specialist/Architect at Red Hat and committer to the Apache Software Foundation. “But since it’s much more, at least in my opinion, about how an organization structures itself, it’s going to be difficult for some of these large enterprises that are structured the way that they are to adopt that architecture and really take it to its full extent. I think that’s the big challenge.”
But why is this organizational structure so important when it comes to delivering microservices? And what does it take to establish the “culture” needed to realistically adopt this approach to application development?
Arun Gupta, director of technical marketing and developer advocacy at Red Hat, says that this cultural requirement can be directly linked to Conway’s Law, a technology-based “philosophy” which claims that an organization’s application structure is going to be a very close mimic of their IT organizational structure.
“If your organizational structure is one UI team, one database team, one middle-tier team, etc., your application code will start showing those layers,” says Gupta. “[These layers] might not work well with each other, and they will have to have a ‘workaround’ to work with the other layers.”
“With microservice,” he adds, “because we are following mostly the domain-driven approach, the idea is to have a cross-functional team.”
So how do you create these types of microservice-friendly teams? The first step, says Posta, is to think small and take what Amazon calls the “two-pizza box mentality” – as in, create smaller, multi-functional teams that are no bigger than what two pizzas can feed.
“You need small teams that are focused on their one service or set of services – and that team is typically made up of both developers and operations-type people, or at least developers who do a lot of operations-type stuff,” says Posta. “And to me, that’s the pinnacle of what people want when they talk about DevOps.”
But not only do you need the right team structure, says Posta – the quality of these team members matters too. Do you have people do that are willing to learn? Are they interested in building a better product? Do you have developers that understand the business side of things as well?
This is a challenge for many larger enterprises, Posta believes, where business-decision makers may not see technology as core part of their business’s ability to innovate. However, he stresses that maintaining this focus is one of the three major qualifications for success with microservices, alongside having the right team structure and creating a culture for rapid innovation.
Gupta stresses that establishing this DevOps culture should absolutely be the first step an organization takes in their microservices journey, even if it doesn’t necessarily pan out. Establishing these strong DevOps practices will still benefit your organization.
“Today it’s microservices…tomorrow it’s going to be picaservices or nanoservices,” says Gupta. “So look at DevOps as the first, because that’s in general good. Whether you’re doing microservices, monolith, or whatever it is that you’re doing…that organizational alignment is one of the biggest challenges I’m seeing.”
Have you recently made, or do you plan to make, changes in your IT organizational structure in order to prepare for microservices? Tell us about your experiences with your comments.
What do developers need to do in order to make the most of open source software in their organizations? Are there certain steps they can take in order to ensure open source has a positive impact on their career?
I met up with James Falkner, developer at the professional open source company Liferay, to talk a little about this subject. Here are a few things Falkner says developers should be doing:
Take a leadership role
As Falkner points out, a lot of open source project communities are what are known as “meritocracies” – the higher your reputation, the more rights you have to manage projects. Whether developers agree on the fairness of the system or not, it still stands in a developer’s best interest to do what they can in order to solidify their open source street cred.
“Essentially an open source developer’s resume is their code. It’s not keywords on a resume,” says Falkner. “So the way to make themselves more attractive is to simply write more code…contribute into more projects, and to contribute to a wide range of projects.”
Those who advocate for the elimination of the meritocracy may have their way someday, but until then developers should still be actively looking for ways to take leadership roles – participating in mailing lists, contributing new ideas to projects, and generally doing things that help your “resume” speak for itself.
Know how open source could impact you
Could open source present a threat to developers? Well, let’s say a developer has been spending their time developing a company’s website, but now decides to adopt an open source solution to manage their enterprise portal. Should that developer now be worried about his own job?
“That’s definitely a thought that would pass through most people’s minds,” says Falkner. “‘You’ve just killed off the thing that I’ve been working on – are you going to fire me next?'” For developers with a wide range of project skills and expertise, this may not be worrisome at all. However, if working on web portals is all you know, quickly finding another project within your company may not be so easy.
So it’s certainly a real concern, but not all developers need be afraid. Knowing how open source may affect your career has a lot to do with the kind of environment you find yourself in currently.
“Developers working at a healthy company should not fear open source because the company has a lot more things that they could be doing,” says Falkner. “It’s the overweight, bloated companies where they have forty developers working on a project…those are the people that should be worried.”
Stay positive (and active)
But while open source may be perceived as a threat for some, don’t discount the opportunities it provides. For some developers, it is very much a double-edged sword – and keeping up with contributions and participation
“I was working at Sun Microsystems, and in 2008 Oracle decided to buy Sun, and at the time I didn’t have any Liferay experience,” Falkner recalls. “But I got to know Liferay through contributions, and I was able to switch over after the Oracle acquisition.”
As mentioned before, getting involved and taking a leadership role in open source projects is a monumental part of building your reputation as a developer – and could help insulate your career from unforeseen layoffs. At the very least, it can help keep new prospective positions on the horizon should you ever feel a need to make a change.
Has open source impacted your career in a significant way – or any way at all? Let us know with your comments.
Scouring the Internet reveals a number of heated debates about devices like the Pebble smartwatch. Is it useful? Useless? Will wearables become the way of the future – or an embarassing fad of the past?
“Alpha WatchBench allows all developers – not just iOS developers – to experiment with how Apple Watch can fit into their business processes and determine its best use cases for improved productivity,” said Bricklin. “This is a powerful tool that will give companies a head start on exploiting opportunities opened by Apple Watch.”
But why wearables? Are devices like smartwatches something that will lend itself to more efficient business? The sentiment is certainly there, it seems.
“Apple Watch creates an entirely new paradigm and category of hands-free, ‘glance-able’ apps that will create huge opportunities for enterprises to increase efficiencies,” said Ben Bajarin, Principal Industry Analyst, Creative Strategies, Inc.
“As organizations look to quickly roll out Apple Watch apps to their employees, developers will seek fast solutions for prototyping this new breed of app.”
Bricklin says he believes in this new paradigm and that these devices reek of “useful for business,” empowering organizations across a wide range of industries the chance to ramp up productivity.
“People are so enamored by the fact that it’s stylish that they forget it’s useful,” he says. Bricklin believes that in industries where the flow of information is increasingly critical, the ability to access information on something you wear has the potential to help businesses save a significant amount on their operational costs.
“Every extra minute a plane is on the ground costs money,” he says, citing an aviation-based example. The point is that any amount of time that can be saved – even if it’s just the time it takes an employee to reach into their pocket and pull out their smartphone – can have a significant impact financially.
So how has the use of WatchBench played out in the real world? A few places, actually – including the NHL. Developer David Kates was able to use WatchBench to create a simple app – NHL Stats – which connects to an Amazon S3 table containing JSON about the Stanley Cup Finals, delivering real-time scores and other game information to fans on their wearable devices. And while this might seem like a big undertaking, it took Kates less than two hours to construct his application – with absolutely no prior experience building a smartwatch app.
And as far as Bricklin is concerned, he is happy just to have the platform available to developers. In a field that he feels suffers from consumer-level fickleness, he hopes this platform will can help spurn a new wave of usefulness in the arena of wearable technology,
“People are so enamored by the fact that it’s stylish that they forget it’s useful,” he says, insisting that the value is there, no matter how vertical the application may be. And he is happy to have provided a tool developers prototype the new generation of device useful-ness.
“Prototyping is something I’ve done all my life,” says Bricklin. “Whatever developers do with it is gravy.”
Perhaps Bricklin has saved us from the fiery, seemingly never-ending debate over the significance – or lack thereof – of wearables.
Last week, the creators of Alpha Anywhere hosted a user meetup to talk about mobile application development – specifically, tablet applications for use in the field and workplace. One of the major pain points discussed was the issue of moving data from user to user across systems in real time in order to achieve the fastest business results.
While some may refer to this as the “latency” problem, Britt Whitaker, implementation consultant at Manufacturers ERP Services LLC, notes that it’s worthwhile to distinguish technology-based latency issues and “workflow-related” latency issues. He claims that within their own organization, even though their APIs are reconstructed to optimize the transfer of data, “it doesn’t really solve the problem: the data got in, but it wasn’t reacted to in real time.”
According to Whitaker, this issue is directly tied to how one has constructed their “workflow link” – the method by which applications alert users that new data has arrived on their tablet or that data they’ve sent has been received. Not only does IT have to worry about how long it takes that data to continue to the next user, but also how quickly is that data processed by the next user in line.
So how did Whitaker and his team tackle this issue? Ultimately, they decided that they were not going to try to develop workflow inherently in an interactive tablet application, but rather would actually construct unique workflow links for individual types of data and applications. To illustrate this point, he provided an example where if one specific user – let’s call her “Britta” – is not in the office, another user, “Alan,” would act as proxy.
“Those are things that, frankly, you don’t want to code into the application itself because people and their roles change – which is, again, a workflow issue.”
The point is, while your APIs may be designed to streamline the flow of data, IT will always have to consider the “people” factor. The solutions to these issues may not always be obvious, especially when people-based processes and roles often change at a rate much faster than IT can appropriately amend their “hardwired” applications.
“Companies should develop tablet apps to eliminate the delay in collecting field data compared to using paper forms, but that isn’t a complete solution,” says Adam Green of 140dev. “We have to change the systems – the ‘people systems.’ Just getting the data there is not enough.”
Have you struggled with latency issues related to “people systems” within your own organization? If so, how did you deal with it, or how do you plan to deal with it? Let us know with your comments.
Something old, business process management, has been made new again by the addition of a lowercase i. This three-part guide shows how and why adding cloud services and analytics to BPM will make it intelligent BPM, a must-have technology for many businesses. Why? iBPM promises to smooth business process workflow in hybrid computing settings where business logic and data run across many platforms.
Veteran IT reporters Christine Parizo and George Lawton explore the evolution of iBPM and its many uses for businesses. Parizo explains why iBPM is poised for widespread adoption and describes how it’s already being used. Lawton looks into iBPM’s backstory and many vendors’ plans for iBPM products.
Intelligent BPM adds data analytics and workflow collaboration capabilities to BPM’s traditional process workflow management system, say IT veterans in Parizo’s article on what is driving iBPM adoption. By bringing together various forms of intelligence capabilities, iBPM facilitates easier business process design, monitoring, analysis, execution and optimization.
As iBPM, BPM rises from the hype ashes, where it resided with SOA for a spell, say industry watchers in George Lawton’s article on the emergence of new cloud iBPM products. As recently as last year, IT pundits proclaimed that both SOA and BPM would be killed off by cloud. Instead, both technologies are viable today because they leverage services in business, on-premises, cloud and hybrid cloud environments to support business needs.
Finally, i buyers beware. That lowercase i is a popular way to hype a technology enhancement, but the i can stand for many things. The fad kicked into warp drive with Apple’s iMac, or Internet Mac, and has continued to thrive even though Internet connectivity is ubiquitous across devices today. The little i stands for intelligent in iBPM, for integration in iPaaS or IBM’s iSeries, for invisible in iMail and so on. The fad won’t stop, even though iWant it to.
IoT is the latest thing in embedded systems technology, and it’s not a fad. IT research firm Gartner Inc. projects installation of 26 billion IoT units by 2020, resulting in $1.8 trillion in revenue. IoT is not a consumer-only technology, either. Enterprise architects should plan now for the entrance of connected device technologies into their IT environments, according to experts quoted in SearchSOA’s feature, “The enterprise IoT wave rolls in: How to prepare”. Those who hesitate will soon be behind the curve. “It’s not a matter of where IoT is entering but where isn’t IoT going to push into the enterprise,” said Mike Walker, an analyst at Gartner, in this article.
In recent articles, SearchSOA contributors have provided a wealth of security tips and tricks for IoT development. This post links to those pieces, putting experts’ and users’ advice at your fingertips.
Developing IoT applications will require rethinking quality standards when building embedded and Internet of Things (IoT) applications. For example, enterprise executives release flawed software daily, a developer told me recently, in order to compare the cost of defects with the cost of delaying release. That luxury isn’t an option in these types of software releases, where failure and security breaches can put user safety at risk. That approach won’t work with IoT.
Failure is much less acceptable when it comes to embedded software. Unfortunately, people expect software and networks to fail or get hacked. Their expectations for mechanical devices are much higher, however. “You shouldn’t have to worry about a blue screen of death on your toaster oven,” said Carnegie Mellon University’s Philip Koopman, in the lead story of SearchSOA’s three-article handbook, “Embedded software, IOT development demand careful scrutiny”.
Likewise, people shouldn’t have to worry about a software hacker turning off his auto-ignition system. Billions of connected devices present a big target, so we’ve gathered advice on creating hack-breaking IoT approaches in this article, “How to cook up the right IoT security strategy for your enterprise”. A huge challenge in beating hackers is that IoT devices bypass firewalls and create ongoing connections to third party services, reported IT security consultant Mark Stanislav, Sr. of Rapid7. In this tip, he and other experts give advice on how to create outside-the-firewall security strategies.
Our sister site, SearchCloudApps, digs into the cloud side of IoT development. Asked how IoT will alter developers’ application strategies, resident expert Chris Moyer pointed to integration as a challenge. A sample of Moyer’s advice here is: “If you create APIs and integrate with popular IoT integration services like IFTTT, you’ll be better able to take advantage of all the devices in a user’s life.”
Watch SearchCloudApps for updates on cloud services and tools for IoT development and deployment, too. A recent report describes a new mobile and IoT application development toolset from Embarcadero, called RAD Studio XE8.
What do you need to know about IoT? Let us know. Our resident experts will address your questions.
Has DevOps adoption hit the mainstream? Well, IT analyst firm Gartner Inc. predicts that 66% of enterprises will be using DevOps tools and practices in the cloud – as will 25% of Global 2000 companies – by 2016. Gartner also expects sales of DevOps tools to reach $2.3 billion this year. That doesn’t look like a niche market.
First posited in 2009, the concept entails merging organizations’ software development, QA and IT operations groups. Cloud computing is driving the need for DevOps adoption by enabling faster development and deployment of applications and complicating what was once a simple housebound IT environment, according to Gartner’s and other reports such as 451 Research’s 2014 study.
Need drives the decision to find a solution, but evaluation leads to the purchase. To help IT and Ops managers make DevOps decisions, TechTarget’s app dev sites have published a slew of expert advice articles on that subject. Here are just a few:
- Cloud consultant Tom Nolle explores how cloud management tools are both influencing and incorporating traditional DevOps features in “The evolution of DevOps in the cloud”. In this advice article, he surveys some current cloud DevOps tools, such as Puppet, and explains the benefits of using frameworks and specifications. In the latter category, he recommends evaluating TOSCA (Topology and Orchestration Specification for Cloud Applications), an open standard which facilitates describing complex application structures.
- Let’s not forget mobile development. The SearchSOA article “Integration tools that bridge the mobile DevOps gap” examines how enterprises are using mobile DevOps integration tools services, such as PagerDuty, BigPanda and VictorOps. Here, you’ll find out how eHarmony used PagerDuty to streamline IaaS alerts.
- SearchAWS offers a handbook on DevOps called “Survive and thrive in cloud DevOps”. Even though DevOps adoption is on the rise, managers of siloed IT, operations and business departments may be hard to sell on the concept. This collection includes:
- Advice on pitching DevOps to department managers in the article “Gaining acceptance for DevOps in the cloud”.
- Various approaches for using AWS OpsWorks, a DevOps automation and management toolset, to enhance application security in “Using OpWorks’ configuration automation”. Here, expert Dan Sullivan examines the toolset’s uses for improving app security and reducing app policy and procedure missteps. The key is using OpWork’s standardized configuration options. “Automating configuration and update operations with OpsWorks can eliminate inconsistencies in application policies and procedures,” he writes.
- An explanation of why and how to implement security operations management in AWS by contributor George Lawton. The SecOps approach calls for continuous threat testing and monitoring in a secure software development lifecycle practice. The article describes several tools that automate those functions in AWS environments and shares steps for removing vulnerabilities during the application design phase.
Stay tuned – there are more DevOps tips to come! Meanwhile, let us know if there are DevOps challenges you’d like addressed by SearchSOA’s resident experts.
A photograph from a Mars Rover may be breathtaking, but it will not deliver the complex data space scientists seek. Scientists like Washington University-St. Louis computer systems manager Thomas Stein need broader sets of data in formats that work with modern data analysis software. Stein helped create Analyst’s Notebook, a tool that documents geological findings from space missions and organizes that data in an online offering that is made accessible to scientists and the public.
Look at the data coming from just one instrument, say, the Mars Rover Opportunity. Some scientists are focused on a certain type of data from that one instrument, some on others. Meanwhile, said Stein, the general science community may want broader data from that instrument to do research in other disciplines. In addition, many scientists are doing cross-instrument and cross-mission searches and correlations to study a variety of topics.
“Today’s scientists cannot simply convert an image to a .JPG and use it, because you lose so much of the science quality of the data,” said Stein, who works in the University’s Department of Earth and Planetary Sciences. Analyst’s Notebook helped enable replay and archiving mission images and data, but that information must still be archived in formats accessible to scientists using many different software applications and devices.
Stein’s group works with NASA (National Aeronautics and Space Administration) to archive planetary data for the long term – as in the next 50 to 100 years. “We wanted to develop a value-added tool that helps scientists bind this data in a meaningful way,” said Stein. “By giving them data previews, we’d help them understand what they’re getting before they actually hit the download button.”
Developing software for geological studies of space rocks wasn’t Stein’s intention when he got an after-college job in in the Smithsonian Institution’s Mineral Sciences Department. Yet, it was there that he was asked to develop software for a traveling exhibit on volcanoes. The success of the three applications he delivered led to more projects for the Smithsonian.
After achieving success in these geological software projects, Washington University contacted Stein about programming software for scientists studying “space rock” data from the Giant Magellan Telescope. The immediate problem Stein addressed was a flaw in the way scientists were doing field-testing. “Nobody was taking notes about the decision-making process,” he said. “After a week of field-tests, they realized, ‘Hey, we don’t even remember why did we decided to look at this rock instead of that rock.’”
Of the many challenges for building scientific applications, two in particular really perplexed Stein and the NASA team: unpredictability of data from Rovers and feature glut.
For an orbital mission, an obvious objective is to map the planet systematically, but the Rovers don’t make this process easy, because they, well, rove. “Scientists often don’t know where the rover will drive and what it’s going to find,” said Stein. Another goal is determining the characteristics of natural objects, such as rocks. The scientists need to know where and in what context, which is hard to tell from an image. To deal with this problem, the development team used Microsoft Image Composite Editor, which was built on Microsoft SQL Server. The Editor can be used to create images that aggregate the surroundings of a finding in context mosaic image.
The feature glut issue comes from the length of today’s space missions. “Keeping up with what our users need over 10-15 years is unbelievably hard,” Stein said. “Think of how different the expectations of software users were 15 years ago – nobody asked for one-click ordering online.”
The development team, focused on Opportunity and other NASA Rovers, sought an automated development platform that set up the back end so they could devote more time to building value-added tools specific to planetary data coming from Rovers. “We shouldn’t be building basic code, laboring over documentation and doing cross-platform testing,” he said. Telerik Platform, a cross-platform development suite, was chosen to help the software teams focus on high-level challenges and bypass earlier phases of software development.
A web-based application running on the Microsoft ASP.NET platform, Telerik Platform provides a user interface (UI) that NASA uses for framework controls. In addition, Telerik’s automated test and quality assurance tools reduce the time needed to build a feature. An example is a documentation feature Stein’s team built that enables rapid online searches. “Documentation becomes very difficult when doing rapid application development and dealing with such huge sets of data,” he said. Telerik’s toolset helped him build a feature that enables a user looking for images of a certain target find it quickly online “at the push of a button, instead of the user having to do literature searches.”
Being able to react quickly to user needs is a necessity today, one that automated test and development platforms makes possible. “In reality, I’m still not a computer scientist, I’m a geologist,” he said. “A foundation development tool really helps me not worry so much about the computer science side and focus on the science side.”
Any organization NOT doing an application modernization project this year is in the minority. Over 70% of businesses worldwide are modernizing their application environments to handle mobile, cloud and other emerging digital platforms in 2015, according to a recent survey.
Not only are most businesses engaging in application modernization (also called legacy application modernization) efforts, at least 61% consider it a strategic asset to drive business forward and a tool to help maintain market position and even survival. This is according to a recent survey of CIOs by app modernization vendor CSC.p
Application modernization projects will be a higher priority for businesses in Europe (80%) and Asia (73%) in 2015, largely because the technology refresh cycles have been slower in those areas than in North America, where 55% will invest this year.
A challenge in tallying application modernization projects is that they can be a part of larger projects, such as cloud modernization and portfolio modernization, both of which focus largely on app modernization. In some minds, the latter sounds old school, identified only with mainframe-to-server migrations, which are not irrelevant — as Moorcroft Debt Recovery Group’s recent project affirms.
Of course, the rapid rise in business use of cloud services is driving many businesses worldwide to modernize their app portfolios; that and the fact that their competitors are doing the same. Likewise, the rise in workers’ use of enterprise apps on mobile devices is exceeding IT’s ability to support either.
This cloud rush encourages a “fools rush in” modernization mentality. The sober but savvy enterprise architect approaches modernization from more than the cloud apps angle. By examining their app portfolios and on-premise IT infrastructure, they’re considering which applications should be re-platformed to hybrid or public cloud models. Which applications should be replaced by software as a service? Which strategic applications should be rewritten to take advantage of microservices architecture and platform as a service?
The complexity of modernizing applications and the importance and risk of these projects to business success is boggling. From my observations, the most successful projects started with intense application portfolio assessments. They choose app modernization products and services that are designed to be used in a systematic fashion and are flexible, the latter because every business will have different business needs, app portfolios and infrastructures.
There are many approaches to modernizing software, more than I can cover in this post. Fortunately, we’ve put together a library of articles on app modernization. Enjoy!
With 2014 coming to an end, we close the door on an eventful year. Technologies such as Hadoop, Docker and microservices made their way into our everyday lexicon. Some tried and true predictions held on for another year.
For example, in an interview with Forrester’s principal analyst Brian Hopkins at the end of 2013 he asserted that mobile applications should make waves in 2014. “Everybody is suddenly realizing that the platform is not the differentiator, it’s the apps,” he said.
In many ways, Hopkins’ prediction was correct. Over the course of the year, mobile application development proved to be important, especially in corporate environments. Several enterprise architects and developers shared with SearchSOA.com how they selected tools to help them gain an edge in the mobile sphere.
Indeed, it appears that mobile technology, big data and the Internet of Things, took the spotlight in 2014 – a position they will likely hold for quite some time. Some experts assert that SOA should have been right up there in the limelight too, but ended up in the wings. In an interview with Christine Parizo, 451 Research’s Carl Lehman said, “SOA is a wallflower … It was brought to the dance, but it’s not on the dance floor.”
Poor SOA. Will 2015 be the year SOA is crowned king?
Given what some industry insiders recently said, it doesn’t sound like SOA per se is going to be voted most popular — yet again. It appears that flashy mobile technology and the cloud will be most thought of, even though SOA may be the true underpinning of how everything is synched together.
Although the term mircorservices may be relatively new, some experts, like Gartner vice president and senior analyst Anne Thomas, believe it’s going to become increasingly prevalent. “I think that a small number of people, maybe 10% of organizations, will start trying to play with microservices and bounded context during the next year,” she said.
In fact, Thomas said she feels that microservices really is just SOA, but under a different name. So maybe SOA really will edge upwards in popularity, just under a different guise.
What are your SOA trend predictions for 2015? What do you think should have happened in 2014 that didn’t?