Home > SOA News > Best practices for effective software development
SOA News:
EMAIL THIS

Best practices for effective software development

By John Hogan, SearchWebServices.com News Editor
14 Aug 2003 | SearchWebServices.com

Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   

BOSTON -- At the XML Web Services One conference, Michael Cusumano, an author and professor at MIT's Sloan School of Management, offered several tips for creating an effective software development project, based on his 17 years of research in the field.

  • Make big teams work like small teams. Break a large project into several modules or subcycles, and place no more than three to eight people on each team. Try to put together teams that can generally work together in one location. ("Seeing the whites of their eyes" is a strong motivator for team members, Cusumano said.)
  • Place a strong leader in charge of the overall project. This person has to have the clout and the vision to bring the smaller teams together as a unit.
  • Take a "rigid" approach to team rules. For example, "builds" must be submitted to project leaders daily. ("Being slightly out of control is OK," but too few rules results in chaos, he said.)
  • Reuse software components often, but don't overdo it. Cusumano recommends reusing no more than 10% to 20% of your components. ("XML has been very helpful in making that happen," he said.)
  • Respond to market changes without sacrificing future plans. Plan to develop applications two to three years in advance through a multi-release strategy.
  • Plan your software architecture incrementally. ("If you rush to build your architecture, you'll get spaghetti," he said, describing the resulting jumble of code.)
  • Divide long projects into smaller pieces. The deadlines will become more realistic. ("We've known that for a while, but it should be built into project plans," Cusumano said.)
  • Make software engineers accountable. Have them schedule their own work, and then track their accuracy in meeting those goals. Compile all of the resulting historical data to help gauge the timeliness of the project as a whole.
  • Build in quality-control procedures. Quality should be tracked on a continual basis, not just at the end of a project.
  • Automate the quality-testing process. But assign someone to regularly update the testing metrics.
  • Do a post-mortem. This will give the entire development team a good idea of what went right and what went wrong so that future projects are more effective.

FOR MORE INFORMATION:

Article: Developers sink 'waterfall' in favor of 'sync'

Article: Breaking XML to optimize performance

Best Web Links: Web services architect



Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   



RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary


SOA Web Services: Application Server, Portals, Java, Microsoft .NET
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2001 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts