US2010262473A1PendingUtilityA1

Systems and methods for software development

56
Assignee: HUGHES JOHN MPriority: Apr 8, 2002Filed: Jun 24, 2010Published: Oct 14, 2010
Est. expiryApr 8, 2022(expired)· nominal 20-yr term from priority
Inventors:John M. Hughes
G06Q 10/40G06Q 10/10G06F 8/20G06Q 10/06398G06Q 30/0208G06Q 30/0282
56
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

This invention relates to methods and a system for developing software. In one embodiment, a method for developing software includes communicating a specification for the design of a software program to a first plurality of developers, in response to the specification, receiving a design from a subset of the developers to a subset of the developers, facilitating a design review process for scoring the designs, selecting one design based on its score, communicating the selected design to a second plurality of software developers, in response to the design, receiving software programs from a subset of the second plurality of developers, facilitating a software review process for scoring the programs, and selecting one program based on its score. In another embodiment, a method for the distributed development of software includes providing a software development system to a distributed community of developers, the system including software development software that utilizes a structured development methodology, a communication server, and a review board for determining the quality of submitted software; accepting a request to create a software program; and facilitating the development of the program by a subset of the distributed community of developers using the software development system.

Claims

exact text as granted — not AI-modified
1 - 35 . (canceled) 
     
     
         36 . A method of distributed software development comprising:
 providing remote access to a software development system to a distributed community of software developers, the system comprising:
 a communication server for: (i) communicating specifications for the design of software programs to one or more members of the distributed community of software developers, (ii) receiving software program designs from some of the members in response to the communicated specifications, (iii) communicating designs to one or more members of the distributed community of software developers, and (iv) receiving software programs from some of the members of the distributed community of software developers in response to communicated designs; and 
 a review subsystem for facilitating review of the received designs and programs by review boards, each review board comprising one or more developers using an electronic scorecard and capable of determining the quality of the software design and the software program developed by some of the distributed community of software developers; 
   accepting a request to create a requested software program from an entity; and   facilitating the development of the requested software program using the software development system by (i) communicating specifications for designs of portions of the requested software program to at least a first subset of the community of software developers and receiving designs in response, (ii) conducting reviews of the designs using the review subsystem, (iii) selecting a winning design submission based on the reviews, (iv) communicating the winning designs to at least a second subset of the community of software developers and receiving portions of the requested software program in response, (vi) conducting reviews of the received portions of the requested software program using the review subsystem, and (vii) selecting a winning submission based on the reviews.   
     
     
         37 . The method of  claim 36  wherein the software programs are programs selected from the group of components, applications, modules, and libraries. 
     
     
         38 . The method of  claim 36  wherein the software developers were rated based on their participation in one or more coding competitions. 
     
     
         39 . The method of  claim 36  wherein the software development system is distributed geographically. 
     
     
         40 . The method of  claim 39  wherein the geographical distribution is administered via the Internet. 
     
     
         41 . The method of  claim 36  wherein one or more components of the software development system is implemented as a java applet. 
     
     
         42 . The method of  claim 36  wherein the review board is comprised of programmers that were rated in a coding competition. 
     
     
         43 . The method of  claim 36  wherein quality of the software is determined, at least in part by the review of design documents, source code, object code, compiled code, class definitions, and methods by the review board. 
     
     
         44 . The method of  claim 36  wherein the software program is developed according to a structured development methodology comprises multiple phases. 
     
     
         45 . The method of  claim 44  wherein the multiple phases comprise one or more phases selected from the set of a specification phase, a design phase, a development phase, a testing phase, and a support phase. 
     
     
         46 . The method of  claim 36  wherein the software development methodology facilitates one or more of: the development of UML models, the development of case models, the development of computer code, the compilation of computer code, and the testing of computer code. 
     
     
         47 . The method of  claim 36  further comprising receiving developed software programs from a subset of the community of software developers. 
     
     
         48 . The method of  claim 47  further comprising selecting one or more of the received programs to be delivered to the entity based on the quality of the software programs. 
     
     
         49 . The method of  claim 48  further comprising rewarding the developers that submitted the one or more selected software programs. 
     
     
         50 . The method of  claim 49  wherein the reward is monetary. 
     
     
         51 . The method of  claim 49  wherein the reward is an increased skill rating. 
     
     
         52 - 61 . (canceled) 
     
     
         62 . A method of distributed software development comprising:
 providing remote access to a software development system to a distributed community of software developers, the system comprising:
 a communication server for: (i) communicating specifications for a first software development task to one or more members of the distributed community of software developers, (ii) receiving submissions from some of the members in response to the communicated specifications, (iii) communicating a winning submission for the first software development task along with specifications for a second software development task to one or more members of the distributed community of software developers, and (iv) receiving submissions from some of the members of the distributed community of software developers in response to communicated specifications; and 
 a review subsystem for facilitating review of the received submissions by review boards, each review board comprising one or more developers using an electronic scorecard and capable of determining the quality of the submissions developed by some of the distributed community of software developers; 
   accepting a request to create a requested software program from an entity; and   facilitating the development of the requested software program using the software development system by (i) communicating specifications for the first task to at least a first subset of the community of software developers and receiving a first set of submissions in response, (ii) conducting reviews of one or more of the first set of submissions using the review subsystem, (iii) selecting a winning submission based on the reviews, (iv) communicating the winning submission from the first task and specifications for a second task requiring use of the winning submission from the first task to at least a second subset of the community of software developers and receiving a second set of submissions in response, (v) conducting reviews of one or more of the second set of submissions using the review subsystem, and (vi) selecting a winning submission based on the reviews.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.