The Artima Developer Community
Sponsored Link

Java Buzz Forum
Quality Software Engineering

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Bernard Choi

Posts: 74
Nickname: bchoi
Registered: Jun, 2003

Bernard Choi is online
Quality Software Engineering Posted: Jun 26, 2003 6:44 AM
Reply to this message Reply

This post originated from an RSS feed registered with Java Buzz by Bernard Choi.
Original Post: Quality Software Engineering
Feed Title: Bernard Choi
Feed URL: http://bchoi.livejournal.com/data/rss
Feed Description: Bernard Choi - LiveJournal.com
Latest Java Buzz Posts
Latest Java Buzz Posts by Bernard Choi
Latest Posts From Bernard Choi

Advertisement
http://www.softwarelogics.co.uk/sl_facts.html

In the long run, the biggest gains in productivity come from software re-use.

NASA's Software Engineering Laboratory found that, with planning, functionally-oriented programs could take about 35% of their code from previous projects, rising to 70% for object-oriented programs.

Familiarity breeds productivity. Programmers using a language they have used for at least 3 years are 30% more productive than programmers who are new to a language.

Using high level languages can increase productivity, simplicity, reliability and comprehensibility by up to 5 times.

Defects introduced upstream have a wider impact.

TRW found that a change to requirements costs 50-200 times less to fix if completed during requirements capture than if delayed until construction.

Time needed to fix an error is greater the higher level the error - requirements take the longest, then architecture errors, etc.

IBM found that purging an error early costs 10-100 times less to fix than if delayed until unit or functional test.

Progressive understanding of the development process is a major cause of changing requirements

The average IBM project undergoes about 25% change in requirements during development

Defining the design's rationale is at least as important to maintenance as the design itself.

Lack of familiarity with a language causes developers to overlook that languages capabilities and force it into the mould of languages they know.

The proportion of the project time spent coding is inversely proportional to the project's total productivity.

Productivity of programmers varies by a factor of 10-20

Programmers find modular code 15% more comprehensible.

Up to 90% of code can be dedicated to error and exception handling, housekeeping, etc., with as little as 10% for cases for which the system was nominally built.

Extremely modularised code (eg, 10 lines per routine) is no easier to read than completely unstructured code. Breaking code into routines of about 25 lines increases comprehension by up to two thirds.
Only about 5% of errors are caused by hardware, compilers of the operating system.

Almost 40% of all errors are interface errors.

Defects cost more to fix the longer you leave them - much more.

In a small project, the cost of fixing a requirements error during maintenance is about 20 times higher cost of fixing it during the requirements phase itself. In a large project, it can be 100 times higher.

A study of 450 routines showed that 50% of highly cohesive routines were fault-free, but only 18% of routines with low cohesion. Card, Church & Agresti (1986) McConnell (1993), p.81

About 50% of development (not maintenance) effort comes after release.

Modularity contributes more to maintainability than structure.

Almost 90% of code users find modular code more maintainable.

Large programs using information hiding techniques are 4 times as easy to maintain.

Read: Quality Software Engineering

Topic: What Would You Ask James Gosling? Previous Topic   Next Topic Topic: Introducing Artima Weblogs

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use