Embracing The Open Web: The Technologies You Need To Know

Blog post info and actions

Blog post body

John R. Rymer

The open Web is a culture, a community — and a set of preferred technologies for Internet applications. While HTML5 is the best known of these technologies, the open Web also includes JavaScript (client and server), CSS3, Representational State Transfer (REST) application programming interfaces (APIs), and mobile frameworks such as jQuery Mobile. Together, these technologies comprise a new application platform for the Internet that will gradually replace today’s web platforms (HTML4, Adobe Flash, Microsoft Silverlight, Simple Object Access Protocol [SOAP] web services, Java EE, and .NET) for most applications. Forrester recently published research outlining the open Web platform’s key components, their readiness, and how the platform is evolving.

Open Web developers tend to use a variation of the façade pattern for their applications but refine the pattern to focus on standard web formats and protocols and services delivered via the Web — so we refer to it as the open Web façade. Developers draw on three bodies of de jure and de facto standards to implement the open Web façade pattern:

  1. Client standards. Application clients based on a body of emerging standards collectively labeled HTML5.
  2. Service plane standards. A service plane that exposes interfaces using the REST pattern and resource-oriented architecture principles. These services are often called RESTful web services.
  3. Virtual infrastructure standards. A highly virtualized server tier (often a public cloud service) that is easy to deploy initial solutions to but that is also able to scale up or down on demand to meet surges in capacity.
Read more

Here Comes The Open Web – Embrace It

Blog post info and actions

Blog post body

John R. Rymer

The Web is moving on to a new era of openness, mobility, and digital business. The open Web is a platform built on HTTP (the fundamental web protocol), a new generation of HTML, dynamic languages, and wide use of Internet services for everything from video encoding to social graphs to order management and payments. The open Web made its debut in consumer applications; for enterprises, it will power a new generation of customer engagement applications. The open Web will be particularly important to app Internet systems that bridge mobile devices, cloud services, and enterprise applications and data. Forrester recently published a report that will equip application development and delivery leaders with an understanding of the open Web and its potential value.

We define the open Web as: a culture and community emphasizing openness, transparency, and freedom of developer choice as well as an application platform based on HTML5, CSS3, and JavaScript clients, HTTP/representational state transfer (REST), and cloud services. The open Web includes the app Internet as one potential design pattern.

A new breed of developers is propelling the open Web: young developers who grew up on the Web and develop outside the firewall — primarily producing applications aimed at consumers. Their career expectations were also born of the Web, and they expect openness of information, technology, and expertise. Open Web developers share certain motivations that have shaped the open Web trend. They:

  • Strive to create great customer experiences.
  • Craft applications that can reach customers wherever they are.
  • Leverage customers’ inherent desire to be social.
  • Deliver applications and new functionality quickly.
  • Minimize time spent on low-value tasks to focus more on creating business value.
Read more

Here Comes The Open Web — Embrace It

Blog post info and actions

Blog post body

Jeffrey Hammond

One of the things I enjoy the most about being an industry analyst is that I've spent the past six years meeting some great developers. Personally, I’m not sure I could cover any other technology area then application development. The reason is simple: I see developers as a worldwide force for good (It's almost axiomatic, as the bad apples become "hackers"). Developers innovate, they create, they push technology forward — and they are fun to go have a beer with at the end of the day.

While writing for developers is fun, it’s not always easy. For the past few years, my topic coverage areas have sometimes felt a bit disjointed — almost as if there are two different developer communities out there that I deal with. In the past, I've referred to these groups as the "inside the firewall crowd" and the "outside the firewall crowd." The inquiries I have with the first group are fairly conventional — they segment as .NET or Java development shops, they use app servers and RDBMSes, and they worry about security and governance. Inquiries with the second group are very different — these developers are multilingual, hold very few alliances to vendors, tend to be younger, and embrace open source and open communities as a way to get almost everything done. The first group thinks web services are done with SOAP; the second does them with REST and JSON. The first group thinks MVC, the second thinks "pipes and filters" and eventing. I could go on and on with the comparison.

Read more

You Think Changing To Increase Business Agility Is Hard? If IOR Did It, Believe Me: You Can Do It Too

Blog post info and actions

Blog post body

Diego Lo Giudice

Think of a medieval fortress: It was originally used for a small army, it has walls nine meters thick, and it’s surrounded by buildings hundreds of years old. Upon entering, you are confronted with the concept of eternity.

This fortress is located in the smallest state on earth — though it is also perhaps the best-known state in the world. The business housed within the fortress is what many might classify as a SME but with with complexity of a large enterprise, holy but busy, centralized but truly global — its work spans hundreds of countries with hundreds of currencies and hundreds of languages — and it serves very special and demanding clients.

Have a clue yet of where we are?

Zoom on Italy, then zoom on Rome, then zoom on Vatican City, and you can’t miss the round tower (Torrione Sisto V) where the Vatican Bank, or Istituto per le Opere di Religione (IOR ), is located. You won’t be allowed in if you are not a client, an employee, or part of a religious congregation. Change comes hard to institutions this steeped in tradition. To give you a clue, IOR’s previous managing director spent his entire career at IOR — 60 years — and retired at the age of 80. We all know it’s the soft and cultural aspects of transformation that are the hardest part for any organization.

Nevertheless, IOR has been going through a major change since 2008, working to replace its legacy IT system with a modern BT one. The new BT system brings more flexibility for the business, richer business functionality, and greater integration and development capabilities. Enabling fast change is the key driver for IOR’s IT transformation program from IT into BT.

Read more

Collaborative Problem Solving And Robot Design

Blog post info and actions

Blog post body

Jeffrey Hammond

To pick up the narrative from my last post, we're currently one week into the First Robotics build season for 2012. Team 811 is busy working away on an initial sprint. The goal is to get a minimum viable product (a drivable robot) up by the end of sprint one, which will then be used as a base to move toward a competitive robot that can play this year's game, Rebound Rumble.

So how did Team 811 get from "huh?" to full-speed prototyping in 4 days? How does anyone get 40+ teenagers moving in the same direction when the number of unknowns is significant and the problems to solve look insurmountable? For team 811, the key was starting with a 3-day process called "Collaborative Problem Solving (CPS)." Think of it as a pre-sprint process to build team buy-in and reduce downstream back-biting and second guessing.

So what is CPS? It's a technique that starts with a problem statement and then encourages divergent thinking to brainstorm creative solutions to that problem. Criteria that allow evaluation of those potential solutions are then applied by the entire group. This starts a process of combining divergent ideas into stronger overlapping concepts and identifying those ideas that have the strongest combination of feasibility and ability. The result would be recognizable to many agile teams: a burndown "punch list" of items and strategies to drive early prototyping and the team's first sprint.

Read more

Agile Development And Robots: Are You Smarter Than A 10th Grader?

Blog post info and actions

Blog post body

Jeffrey Hammond

One of the counterintuitive things that we observed early on in the days of object-oriented programming was that developers with no previous programming experience often picked up concepts like inheritance, encapsulation, and polymorphism much more quickly than seasoned programmers and became productive earlier than their more experienced counterparts. Today I feel like I'm on the other end of this learning challenge as I try to adapt to new programming concepts in JavaScript or Python. I think the biggest reason for this phenomenon is that experienced folks have to unlearn what we know, and it's hard to give up certainty and the mechanisms that allowed us to achieve success in the past. I think the same principle is at work when you look at toddlers that instinctively "get" how to use the iPad - they expect everything to work that way. It should be so easy for all of us.

Does this same sort of thinking apply to software and systems development processes? I'll tell you why I think it does. For the past three years I've been a mentor for a US FIRST Team (Team 811, the Bishop Guertin Cardinals). During this time period, I've seen high school students with little to no technical experience instinctively adopt many principles that experienced Agile teams would recognize. For these kids, Agile development is like using an iPad - they take to it naturally because it just makes sense given the context of what they are trying to do.

Read more

Software Requirements Are Where We Define Value

Blog post info and actions

Blog post body

Tom Grant

Revolutions take two forms. The most familiar kind is the noisy, conspicuous, disjunctive event that marks a clean break from the past. Yesterday, George III was our monarch. Today, he's not. The other kind of revolution is a more gradual and subtle event, when multiple forces pointing in the same direction push people into a new world. The shock of Pearl Harbor, the power vacuum left by a devastated Europe and Japan, a reinvigorated economy, and an aggressive superpower adversary made Americans feel, for the first time, that they needed to be far more deeply involved in international affairs than ever before. Without any formal declaration, Americans became internationalists after 1945.

Something like that second kind of revolution has happened with software requirements. Over the past decade or so, organizations grew increasingly worried about the problems that took root in bad requirements. The problems took many forms (portfolios filled with applications no one was using, users unhappy with the software that complicated their lives more than helped them, ideas that no one vetted carefully, etc.) and arose from just as many sources.

All of these discontents pointed in a common direction: Take requirements more seriously. In Forrester's Q1 2011 Application Development And Delivery Organization Structure Online Survey, "improvements of requirements" appeared at the top of the list of initiatives that would improve software development the most.

Read more

Five Axioms For Application Development In 2012

Blog post info and actions

Blog post body

Mike Gualtieri

Software Is Not Code; It Creates Experiences

Ultimately, customers don't judge you based on how well you gather business requirements, choose development technologies, manage projects, or march through the development process — they judge you based on how they feel before, during, and after they use your software. This is the digital experience. If you get the customer experience wrong, then nothing else matters. And expectation inflation is sky-high thanks to the Apple-led smartphone revolution. To succeed in the new age of digital experience, application development professionals must collaborate with their business partners and customers to create experiences that customers love. You need a new approach represented by these five axioms:

  1. Software is not code; it creates experience.
  2. Development teams are not coders; they are experience creators.
  3. Technical talent is table stakes; great developers must be design and domain experts.
  4. Process is bankrupt without design; you get what you design, so you had better get the design right.
  5. Software is a creative endeavor, not an industrial process like building automobiles. Structure your methodology to empower your creative talent.

Doable? Definitely. Forrester clients can read the full report to learn how: Digital Experience Strategy: Follow These Three Mega Rules To Beat The Competition In 2012.

So, Are Accounting Systems Non-Differentiating?

Blog post info and actions

Blog post body

George Lawrie

Do you ever wonder which IT investments really drive competitiveness or comparative advantage for your firm and which are there simply to support mundane processes that are identical to those of all your competitors? Do you ever wonder if it might make sense to standardize on "best practices" for non-differentiating processes and supporting application implementation?

Received wisdom is that accounting processes are not differentiating and so it makes the most sense to support them with packaged apps or maybe with software-as-a-service solutions. Larger firms often implement shared services for financial management across all their business units or even outsource altogether apparently dull processes such as invoice settlement or collections.

But does that really stand up to scrutiny?

One retailer, with which Forrester worked, confessed to having 17 definitions of margin depending on which types of supplier rebates and volume discounts were included. We asked how they calculate markdown and they grinned.

The more I thought about it, the more this fact disturbed me. In some types of specialty retail, inspired opportunity buying is the key to competing with the bulk buying muscle and supply chain scale economies of global discount retail chains.

Many retailers import merchandise and have to calculate "landed cost" based on customs and freight invoices that arrive long after the goods in question have been sold. What price weighted average actual cost accounting, or margin calculation, in such a scenario?

Where is the scope for creative dealmaking in standardized accounting applications that deliver lowest common denominator functionality across verticals as diverse as local government, with its focus on fund or commitment accounting,  engineer to order manufacturing with a focus on multi-period project costs and retail with a focus on margin measurement and management?

Read more

Three Things I'd Tell Your CIO

Blog post info and actions

Blog post body

Kyle McNabb

Back in August of this year, Marc Andreessen published an essay in the WSJ highlighting his thoughts on why software's eating the world. I encourage you to read it. It highlights something we firmly believe. We’ve entered the age of software, and you’re at its center. With December upon us and many of you engaged in finalizing 2012 plans and reviewing your 3 - 5 year strategies, I encourage you to look beyond tech developments like cloud, big data, and the App Internet. Focus instead on what you need to deliver good software, and keep three things I'd gladly tell you and your CIO top of mind. 

  1. Software IS your business. This age isn't just about Borders and Amazon, game developers, or online service delivery capabilities. No, look at how software's increasingly a part of everyday life. What about your TV, your car? Heck, my wife's new ovens have software embedded in the digital display that takes all the guesswork out of baking! Whatever business you're in, be it financial services, public sector, consumer products, insurance, healthcare, energy, or logistics, you name it, you can no longer simply look at software or application development as a support function. Software IS your business. 
     
Read more