Software and Computer Directory

Five Trends in Software Engineering

Globalization. Test automation. Commoditization of technology. Regulatory compliance and tort law. Education and certification.

These are five trends in software engineering identified by consultant Rex Black in his keynote speech at the Software Test & Performance Conference produced in Boston in mid-November by BZ Media, publisher of SD Times.

The move toward outsourcing development projects was facilitated by softwares ability to knock down distance barriers with tools for collaboration and project management, as well as by the demise of'artificial political barriers due to the end of the Cold War, Black said. "Now," he noted, "everyone wants to make money."

Black displayed a chart showing the relative median salaries of software engineers in what he called the "old" development countries and the "new." While salaries in the U.S., U.K. and Germany are highest, it was interesting to note that in "new" places such as Ireland and Mexico, developer salaries are almost on a par with such "old" locations as Israel, Japan and New Zealand. India, Russia and Poland still provide big bargains for outsourcing projects on the cheap.

The thrust of Black's remarks regarding automated testing was, "Programmers who don't know testing will deliver poor quality code; testers who can't program can't automate." In other words, unit testing, command-line testing, APIlevel testing and the like are increasingly becoming the responsibility of programmers-no longer are development and testing separate endeavors.

In his keynote, Black wondered if high tech and IT will become commodities like electricity and transportation. For something to become a commodity, it must have the characteristics of adequate, consistent quality; equal features; and ease of use. Further, Black pointed out, people tend to have no tolerance for bugs in commodities. When they want light in a room, they expect immediate, continuous light. When they commute to work, they expect the train to be on time and to stop at their station every day. Software, in my opinion, is getting close. People are certainly less tolerant of software that fails when they are shopping online, or sending e-mails, or completing a transaction that could mean millions.

Laws also influence how software has to work. Industry and governmental regulations put additional requirements on developers. Privacy, accountability and traceability are becoming more important than ever as the amount of information kept on mainframes and servers and in other data stores grows exponentially.

Finally, Black said, certification is sweeping through the software and systems fields. If your skills fall behind, you become noncompetitive. Developers need to know how to differentiate themselves in terms of their skills, and to grow the ones that are lacking.

OFF THE OPERATING SYSTEM

AJAX, and other technologies that move development off of operating systems and onto the Web, might not have hit the software world like a meteor. Nonetheless, if realized, the vision could make extinct a stalwart of the software market-installers.

They're still quite necessary, as much software continues to be shipped via CD-ROM to be loaded onto a desktop or server. And, they control permissions, feature sets and service-level agreements. But as Web specifications evolve, and more development is done for the Web than for client or server installations, there will be less need to upload drivers, libraries and other operating system specifics.

We are moving toward a time when widgets can persist outside the browser environment. An icon can reside on the desktop, and when double-clicked, bring up an application in its own window. The window looks like any desktop application, but it's actually running on a browser. "The benefit to developers is that they coded for the Web, not for Windows or Linux. There's no install to the end user, and no issues of drivers or APIs," said Håkon Wium lie, the chief technology officer at browser maker Opera.

"We see an outline of a world where the operating system becomes irrelevant, and you don't have to restart when installing something significant," he continued.

There is a catch, of course. The Web was not created as an application platform. It was created so people in different locations could share documents.

Since then, though, JavaScript and other programming languages have emerged, and standards have been agreed upon for the presentation of materials on the Web. Yet Ue continues to believe the Web is not an ideal environment.

He's part of WHATWG-the Web Hypertext Application Technology Working Group-that wants to evolve existing standards for graphics and audio for use in what is being called Web 2.0.

The members of that group all also work within the World Wide Web Consortium on other Web standards. There remains, though, a philosophical difference between WHATWG and the W3C, which has focused its efforts on XHTM L2 and XForms, and other new models designed to replace existing ways to create apps for the Web, lie said.

It seems minor, but the full vision of Web 2.0 won't be realized until all parties are working toward the same end.


Back to main
Software Stores | Hardware Stores | Online Schools  | Internet Services
Hosting and Domain Registration  | Software Solutions | Hardware Solutions
Business Services | Ecommerce Sites | Networking | Document Solutions

 

 

 

 

 

 
© 2004 4C Software and Computer Directory. All rights reserved.