Test-driven (or test first) development (TDD) is an excellent method for improving the quality of software applications. It forces the programmer to focus on ensuring that the behavior of the objects at the lowest level of the system is appropriate. It also provides a mechanism to ensure that future source code changes do not break existing behaviors.
Better Software Conference & EXPO 2004
You must successfully test your browser-based applications before hackers do the job for you! Whether you have to worry about critical business applications or government compliance issues like HIPPA (Health Insurance Portability and Accountability Act of 1996) or GLBA (Financial Services Modernization Act of 1999), security failures can cost your organization big dollars, unnecessary embarrassment, or both.
Usability testing of early GUI designs with paper prototypes validates that you are building the right applications for your customers. This low-cost, high-impact practice allows you to rapidly evolve the GUI interface and find many design bugs early in the development process before coding begins. With this process, you can get external customers and internal users actively involved in designing and testing the GUI with tools they can easily manipulate.
Through the application of a rigorous measurement model, which includes both quantitative and qualitative analysis, organizations can identify high impact areas of software development performance. With these organizational practices identified, you can more effectively align process improvement programs and realize significant gains in productivity and quality. Using three case studies, David Herron describes what leading organizations are doing to reduce costs and to produce higher quality deliverables.
Are you looking to install new measurements at the department or enterprise level? Are parts of your existing measurement program shaky? Starting a measurement program or revitalizing an existing one requires a good road map and checkpoints along the way. Janet Russac offers the fundamentals for establishing an organization-wide measurement program based on defined objectives. Find out about the principles of when to use metrics and when not to use them.
Inexpensive and technically competent labor in developing countries has made outsourcing some software development and testing activities an attractive alternative. As a result, more and more US-based companies are looking to India, China, and other countries to develop software. The success or failure of an outsource operation and whether or not it is a viable alternative depends upon some key factors important to both the outsourcer and the software provider.
In the Earned Value Management (EVM) approach, as work is performed, it is "earned" on the same basis it was planned-both the original plan and agreed to changes. Today, more and more software projects are using this approach. Function Point Analysis has been shown to be a reliable method for measuring the size of computer software based on detailed requirements and specifications.
In this presentation Terrence Craft, a Certified Six Sigma Black Belt, provides an experience-based look at how to make the capability maturity model (CMM®/CMMI®) work most effectively with Six Sigma. While CMM®/CMMI® give us the "what" should be done for software development, Six Sigma gives the tools to answer the "how." The overlap of the two approaches provides an opportunity to leverage the best from each.
Typically, organizations pick metrics they feel will accurately measure the results their projects are achieving. We know, too, that metrics can affect behavior, and, therefore, we try hard to pick unbiased metrics. For example, you might not use "lines of code" as a metric to track productivity because you know metrics might cause developers to write more inefficient code. However, you can do the opposite! Jan Scott shows how to choose metrics designed to improve the progress of your projects by inspiring people to improve.
Your team is assigned to a new project, and you've had the kickoff meeting. Now, your boss' boss sends an email to you asking for a "guesstimate" of how long and how many people-days the project will take. What do you do? Even though developers and project managers can see the futility of doing premature, fixed cost estimates prior to requirements development, the industry still demands early estimates, often before a project is even named.