Close
  • Latest News
  • Artificial Intelligence
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Logo
Logo
  • Latest News
  • Artificial Intelligence
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Home Development
    • Development

    Software Development Shift

    By
    Peter Coffee
    -
    February 5, 2007
    Share
    Facebook
    Twitter
    Linkedin

      Its ironic that software developers create the most complex artifacts of enterprise infrastructure while having the benefit of so little infrastructure themselves. Changing that paradigm—to make the construction of a development infrastructure the norm when establishing an application development center—is more than a matter of acquiring and installing automated project management and testing tools. Its also a cultural process, without which even the most elaborate development tools are at best mere decoration, at worst a cumbersome distraction.

      It might seem absurd to say that the process of writing software has not fundamentally changed in a quarter century or more. Beginning with the arrival of Borlands Turbo Pascal in 1983, or even with the appearance of Smalltalk environments in the early 1980s or LISP machines in the 1970s, programmers have enjoyed a progressive tightening of the loop of tasks thats often summarized as “edit, compile, debug.”

      A process that once involved punching cards, running jobs and leafing through bulky diagnostic printouts has become for most developers a far more rapid and integrated process that takes place in a single electronic environment. Are these integrated environments not a major step toward a powerful “developer infrastructure”?

      Id argue that integrated environments, on their own, are to software development what automobiles are to the tangled and congested streets of Boston. Yes, the level of comfort has gone up—and when things are going smoothly, they go much more quickly than before—but “complex systems usually operate in failure mode,” as noted by John Gall in his seminal 1978 satire “Systemantics.” A software development team of more than trivial size is certainly a complex system, and when developers encounter confusion or error, their modern environments may be as powerless to solve the problem as a Formula 1 racing car would be to get through a downtown traffic jam any more quickly than an able-bodied pedestrian.

      The continued use of the term “debug” is evidence that the fundamental process has not evolved—at a time when its becoming overwhelmingly clear that the challenges faced by developers are evolving at growing speed. Software is not a natural material, found in the wild and inherently requiring purification or concentration to make it useful. Every so-called “bug” was produced by exactly the same process as the rest of the code that makes up an application, meaning that every act of debugging represents doing work—then doing more work to undo it.

      Never an attractive proposition, the model of debugging becomes entirely unworkable when software increasingly can go live to its users as quickly as it can be written—and when an application may be a composite of both local code and third-party remote services. Were not talking about hacking a statue out of a block of marble and walking around it again and again to make it right by repeated refinement. Were talking about a process that should produce nothing that isnt correct, so that all new code adds function rather than offering its users a dangerous mix of improved function offset by lessened reliability.

      Advocates of fundamental process change are attacking the cultural implications of debugging with labels such as “Automated Software Defect Prevention”—the foundation of the forthcoming textbook “Automated Defect Prevention: Best Practices in Software Management,” by Dorota M. Huizinga and Adam Kolawa, due for publication in August by John Wiley & Sons. The authors offer a platform of six principles, which Ill abbreviate as establishing infrastructure; applying best practices; customizing those practices to the project; measuring and tracking project status; automating repetitive tasks; and making incremental implementation of these techniques.

      Without automation, this approach is technically impractical; without an incremental approach, this approach is culturally impractical.

      Kolawa backs up his doctrine with deliverables in his role as co-founder and CEO of Parasoft, of Monrovia, Calif. That companys Jan. 29 release of SOAtest 5.0 makes major improvements to a product that eWEEK Labs found to be “a useful contribution … to process transparency and certification” in a review of Version 4.5 last May.

      Walking through the 5.0 release in a session with Parasoft engineers last month, a week before its release, the Labs found especially interesting its new aids to defining and reproducibly testing quality of service as well as functional correctness measures. But Kolawa and Huizinga between them can only point the way to the door, with Kolawa further easing entry with his companys tools and its demonstrated success in using them. Walking through that door is a management choice, and developers are ill-served if their managers fail to do so.

      Check out eWEEK.coms for the latest news, reviews and analysis in programming environments and developer tools.

      Peter Coffee
      Peter Coffee is Director of Platform Research at salesforce.com, where he serves as a liaison with the developer community to define the opportunity and clarify developers' technical requirements on the company's evolving Apex Platform. Peter previously spent 18 years with eWEEK (formerly PC Week), the national news magazine of enterprise technology practice, where he reviewed software development tools and methods and wrote regular columns on emerging technologies and professional community issues.Before he began writing full-time in 1989, Peter spent eleven years in technical and management positions at Exxon and The Aerospace Corporation, including management of the latter company's first desktop computing planning team and applied research in applications of artificial intelligence techniques. He holds an engineering degree from MIT and an MBA from Pepperdine University, he has held teaching appointments in computer science, business analytics and information systems management at Pepperdine, UCLA, and Chapman College.
      Get the Free Newsletter!
      Subscribe to Daily Tech Insider for top news, trends & analysis
      This email address is invalid.
      Get the Free Newsletter!
      Subscribe to Daily Tech Insider for top news, trends & analysis
      This email address is invalid.

      MOST POPULAR ARTICLES

      Latest News

      Zeus Kerravala on Networking: Multicloud, 5G, and...

      James Maguire - December 16, 2022 0
      I spoke with Zeus Kerravala, industry analyst at ZK Research, about the rapid changes in enterprise networking, as tech advances and digital transformation prompt...
      Read more
      Applications

      Datadog President Amit Agarwal on Trends in...

      James Maguire - November 11, 2022 0
      I spoke with Amit Agarwal, President of Datadog, about infrastructure observability, from current trends to key challenges to the future of this rapidly growing...
      Read more
      IT Management

      Intuit’s Nhung Ho on AI for the...

      James Maguire - May 13, 2022 0
      I spoke with Nhung Ho, Vice President of AI at Intuit, about adoption of AI in the small and medium-sized business market, and how...
      Read more
      Applications

      Kyndryl’s Nicolas Sekkaki on Handling AI and...

      James Maguire - November 9, 2022 0
      I spoke with Nicolas Sekkaki, Group Practice Leader for Applications, Data and AI at Kyndryl, about how companies can boost both their AI and...
      Read more
      Cloud

      IGEL CEO Jed Ayres on Edge and...

      James Maguire - June 14, 2022 0
      I spoke with Jed Ayres, CEO of IGEL, about the endpoint sector, and an open source OS for the cloud; we also spoke about...
      Read more
      Logo

      eWeek has the latest technology news and analysis, buying guides, and product reviews for IT professionals and technology buyers. The site’s focus is on innovative solutions and covering in-depth technical content. eWeek stays on the cutting edge of technology news and IT trends through interviews and expert analysis. Gain insight from top innovators and thought leaders in the fields of IT, business, enterprise software, startups, and more.

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Advertisers

      Advertise with TechnologyAdvice on eWeek and our other IT-focused platforms.

      Advertise with Us

      Menu

      • About eWeek
      • Subscribe to our Newsletter
      • Latest News

      Our Brands

      • Privacy Policy
      • Terms
      • About
      • Contact
      • Advertise
      • Sitemap
      • California – Do Not Sell My Information

      Property of TechnologyAdvice.
      © 2022 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.

      ×