| By Israel Hilerio | Article Rating: |
|
| October 1, 2000 12:00 AM EDT | Reads: |
10,908 |
CodeMarket is a global software development network where software developers and development managers can find and purchase freelance development work and ready-to-run Java components. It recently formed a partnership with ParaSoft, a provider of software error-prevention and error-detection solutions. ParaSoft's Jtest, a Java unit testing tool, will be the standard tool by which all components outsourced or purchased through CodeMarket will be tested.
JDJ: While your partnership with ParaSoft seems like a step in the right direction, how do you ensure the richness of the requirements you receive from customers? What methodology does CodeMarket use to ensure the accurate definition of requirements?
Mitchell: That's an excellent question. One of CodeMarket's best features is that the buyer can select from a number of different bids. Each bid from a developer contains a use case that illustrates, from the client's point of view, how the objects behave and the top-level architecture of the proposed solution. So a buyer can compare not only the price and delivery date, but also the quality and intelligence of the proposed solution. This allows developers to showcase their object-oriented analysis and design skills and gives the stronger, more experienced ones pricing power in the marketplace.
JDJ: Software unit testing certainly enhances the quality of the software component. However, how does CodeMarket define quality?
Mitchell: Quality is an ephemeral notion. It's difficult to put quality in a box. CodeMarket's goal is to allow developers to work on projects that interest them, to do the work offsite, and to protect them from feature-creep by establishing a fixed deliverable. For buyers, quality means that the code works as designed, handles unexpected inputs gracefully, and conforms to some stylistic conventions that encourage maintainability and readability, such as limiting method length and the number of return statements in a method. For developers, quality means a lot of things. It means being able to establish a reputation for producing excellent code and delivering it on time. It means knowing the ground rules won't change from project to project. And it means having the incentives and the structure in place to encourage a mentality of getting it right the first time building quality code now rather than wading through spaghetti a week before release tracking down bugs identifed in system- and user-acceptance testing.
CodeMarket uses ParaSoft's award-winning JTest for unit testing. JTest performs automated static, black-box, white-box and regression testing on all submitted code. Our partnership with ParaSoft allows us to offer the only service that provides an independent measure of development completion. CodeMarket pays the developer as soon as his or her code passes the JTest unit test, and that prevents the he-said/she-said, feature-creep and accounts-receivable collection headaches so common among freelancers today. That's the quality that every developer who is making the leap into the freelance economy appreciates most of all.
JDJ: What are the various test statistics and matrices provided by ParaSoft JTest? Do you deliver the test results, statistics and matrices output to the customer as part of the final deliverable? Is there an auditing process that ensures CodeMarket's accountability concerning the testing process?
Mitchell: ParaSoft's JTest provides a comprehensive suite of analytics and test outputs. Information about JTest is available at www.parasoft.com. Clients receive all test reports with the delivered code. The delivery of the JTest reports establishes that testing has been completed and the code meets the specified requirements.
JDJ: Do the components outsourced to CodeMarket for development need to be self-contained, or can they have dependencies on the customer's own components?
Mitchell: The issue of what makes a good CodeMarket project is an interesting one. Clearly some work is better suited to outsourcing than others. For instance, code that's proprietary or is part of the core competitive advantage of a company is probably not something you want to outsource over the Internet. Similarly, a project that requires access to specific large or difficult-to-duplicate resources (like a robotics controller for an assembly line) are not great candidates for outsourcing. CodeMarket doesn't expressly prevent someone from listing such a project but, as with any tool, CodeMarket works best on tasks for which it was designed. CodeMarket is the best way to develop fixed-cost, unit-tested loosely coupled Java components.
JDJ: As CodeMarket develops these components and ships them to its customers, what happens with component-integration testing? Is that the responsibility of the customer? What does CodeMarket do to ensure component-dependency resolution and interoperability with customer-developed components?
Mitchell: After a registered freelance developer (www.codemarket.com/reg.jsp) submits code to us and we unit test it, the code is delivered to the buyer, who's responsible for application integration and further testing. Studies by the prestigious Software Engineering Institute indicate that unit testing reduces the cost of integration and system testing dramatically by eliminating structural faults at the unit level.
JDJ: How is the ParaSoft JTest tool going to help CodeMarket define standards of completeness and operability?
Mitchell: JTest provides an objective standard for completeness and operability. It's that objectivity that's most valuable to buyers and developers. By establishing a standard level of quality and having that standard monitored and enforced by an independent third party, both developers and buyers are protected and empowered to produce excellent software.
JDJ: What are the additional types of testing services you provide as part of your component delivery contract?
Mitchell: In addition to JTest testing, CodeMarket allows developers to attach guarantees to their code. If after delivery the buyer is dissatisfied, CodeMarket will arbitrate any dispute that might arise. This gives buyers another measure of confidence in the process and lets developers, who know their code is good, charge a premium for the buyers' added peace of mind.
Published October 1, 2000 Reads 10,908
Copyright © 2000 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Israel Hilerio
Israel Hilerio is a program manager at Microsoft in the Windows Workflow Foundation team. He has 15+ years of development experience doing business applications and has a PhD in Computer Science.
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?









































