Method and system for providing tooling instructions through parameterization as an aid for software application development

Bibliographic Details
Title: Method and system for providing tooling instructions through parameterization as an aid for software application development
Patent Number: 8,074,200
Publication Date: December 06, 2011
Appl. No: 11/549920
Application Filed: October 16, 2006
Abstract: An invention is disclosed for a programming method and system of implementing parameterization of data types and/or categories to convert an example “instance” of using a software application into an actual product of program use by customizing the example to make it suitable for user needs. A parameter modeling component along with a parameterization component and an instantiation component are used to create parameterized example instances (“p-instances”) and tooling instructions are then invoked to customize a “p-instance” into a real instance reflecting creation of a document or file or other program artifact (i.e., data product) resulting from actual use of the software application.
Inventors: Aupperle, Bryan Eric (Cary, NC, US); Gellin, Jonathan (Raleigh, NC, US); Krauss, Cynthia Ferguson (Raleigh, NC, US); Muralidharan, Srinivasan (Apex, NC, US)
Assignees: International Business Machines Corporation (Armonk, NY, US)
Claim: 1. A system, comprising: a user interface; and a computing device that generates output via the user interface by execution of: a parameter modeling component for designing an application by defining parameters for data types or categories of data products generated by use of the application and specifying instructions for the parameters; a parameterization component for creating an example instance of a data product generated by use of the application comprising one or more of the parameters; and an instantiation component for setting parameter data values using the instructions to convert the example instance of the data product generated by use of the application into at least one generated data product; wherein the example instance invokes the instructions to define data values for the parameters that customize the example instance into the at least one generated data product.
Claim: 2. The system of claim 1 , wherein the parameter modeling component comprises at least one logical data parameter component comprising at least one of the following components: a referential parameter component that references at least one other parameter located in another data product; an invocable parameter component invoking instructions used to convert the parameter for instantiation within the data product; an informational parameter component that realizes instantiation of a parameter having contents that are not controlled by a user interface; an inplace parameter component that places parameter data in a selected location within the data product; and an ordered parameter component providing steps for carrying out the parameter instantiation based upon dependencies between different parameters.
Claim: 3. The system of claim 2 , wherein parameterization is initiated by execution of at least one program method to implement a selected set of invocable parameters for realizing instantiation of the example instance into the at least one generated data product.
Claim: 4. The system of claim 1 , wherein an actual data product is parameterized for use as a template in creating the example instance.
Claim: 5. A method, comprising: using a parameter modeling component for designing an application by defining parameters for data types or categories of data products generated by use of the application and specifying instructions for the parameters; using a parameterization component for creating an example instance of a data product generated by use of the application comprising one or more of the parameters; and using an instantiation component for setting parameter data values by use of the instructions to convert the example instance of the data product generated by use of the application into at least one generated data product; wherein the example instance invokes the instructions to define data values for the parameters that customize the example instance into the at least one generated data product.
Claim: 6. The method of claim 5 wherein the parameter modeling component comprises at least one logical data parameter component comprising at least one of the following components: a referential parameter component that references at least one other parameter located in another data product; an invocable parameter component invoking instructions used to convert the parameter for instantiation within the data product; an informational parameter component that realizes instantiation of a parameter having contents that are not controlled by a user interface; an inplace parameter component that places parameter data in a selected location within the data product; and an ordered parameter component providing steps for carrying out the parameter instantiation based upon dependencies between different parameters.
Claim: 7. The method of claim 6 further comprising initiating parameterization by execution of at least one program method to implement a selected set of invocable parameters for realizing instantiation of the example instance into the at least one generated data product.
Claim: 8. The method of claim 5 further comprising parameterizing an actual data product for use as a template in creating the example instance.
Current U.S. Class: 717/104
Patent References Cited: 6269473 July 2001 Freed et al.
6484149 November 2002 Jammes et al.
6694505 February 2004 Tan
6704120 March 2004 Leone, III et al.
6868427 March 2005 Herzog et al.
7188335 March 2007 Darr et al.
7552418 June 2009 Saad et al.
2005/0273759 December 2005 Lucassen et al.
2005/0278709 December 2005 Sridhar et al.
WO2005031510 April 2005


Other References: “Reusable Asset Specification”; Object Management Group, Apr. 2005; [http://www.omg.org/cgi-bin/doc?ptc/2005-04-02], p. 1-131. cited by other
“Feature-Oriented Development of Applications for a Domain”; Kang, K.C., Jun. 1998 , Software Reuse, Proceedings, Fifth International Conference (1998), p. 354-355. cited by other
Lawrence Bergman, Tessa Lau, Vittorio Castelli, Daniel Oblinger, Personal Wizards: Collaborative End-user Programming, Article, Apr. 2003, pp. 1-4, International Conference on Human Factors in Computing Systems, Fort Lauderdale, FL, USA. cited by other
Assistant Examiner: Nahar, Qamrun
Primary Examiner: Zhen, Wei
Attorney, Agent or Firm: Lee Law, PLLC
Lee, Christopher B.
Accession Number: edspgr.08074200
Database: USPTO Patent Grants
FullText Text:
  Availability: 0
CustomLinks:
  – Url: https://ppubs.uspto.gov/pubwebapp/external.html?q=(%228%2C074%2C200%22).pn.&db=USPAT&type=ids
    Name: EDS - USPTO Patent Grants
    Category: fullText
    Text: View record from USPTO Patent Grants
    MouseOverText: View record from USPTO Patent Grants
  – Url: https://resolver.ebsco.com/c/xy5jbn/result?sid=EBSCO:edspgr&genre=article&issn=&ISBN=&volume=&issue=&date=20111206&spage=&pages=&title=Method and system for providing tooling instructions through parameterization as an aid for software application development&atitle=Method%20and%20system%20for%20providing%20tooling%20instructions%20through%20parameterization%20as%20an%20aid%20for%20software%20application%20development&aulast=Aupperle%2C%20Bryan%20Eric&id=DOI:
    Name: Full Text Finder (for New FTF UI) (s8985755)
    Category: fullText
    Text: Find It @ SCU Libraries
    MouseOverText: Find It @ SCU Libraries
Header DbId: edspgr
DbLabel: USPTO Patent Grants
An: edspgr.08074200
RelevancyScore: 721
AccessLevel: 3
PubType: Patent
PubTypeId: patent
PreciseRelevancyScore: 721.302856445313
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Method and system for providing tooling instructions through parameterization as an aid for software application development
– Name: DocumentID
  Label: Patent Number
  Group: Patent
  Data: 8,074,200
– Name: DateEntry
  Label: Publication Date
  Group: Patent
  Data: December 06, 2011
– Name: DocumentID
  Label: Appl. No
  Group: Patent
  Data: 11/549920
– Name: DateFiled
  Label: Application Filed
  Group: Patent
  Data: October 16, 2006
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: An invention is disclosed for a programming method and system of implementing parameterization of data types and/or categories to convert an example “instance” of using a software application into an actual product of program use by customizing the example to make it suitable for user needs. A parameter modeling component along with a parameterization component and an instantiation component are used to create parameterized example instances (“p-instances”) and tooling instructions are then invoked to customize a “p-instance” into a real instance reflecting creation of a document or file or other program artifact (i.e., data product) resulting from actual use of the software application.
– Name: Author
  Label: Inventors
  Group: Patent
  Data: <searchLink fieldCode="ZA" term="%22Aupperle%2C+Bryan+Eric%22">Aupperle, Bryan Eric</searchLink> (Cary, NC, US); <searchLink fieldCode="ZA" term="%22Gellin%2C+Jonathan%22">Gellin, Jonathan</searchLink> (Raleigh, NC, US); <searchLink fieldCode="ZA" term="%22Krauss%2C+Cynthia+Ferguson%22">Krauss, Cynthia Ferguson</searchLink> (Raleigh, NC, US); <searchLink fieldCode="ZA" term="%22Muralidharan%2C+Srinivasan%22">Muralidharan, Srinivasan</searchLink> (Apex, NC, US)
– Name: OtherAuthors
  Label: Assignees
  Group: Patent
  Data: <searchLink fieldCode="ZS" term="%22International+Business+Machines+Corporation%22">International Business Machines Corporation</searchLink> (Armonk, NY, US)
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 1. A system, comprising: a user interface; and a computing device that generates output via the user interface by execution of: a parameter modeling component for designing an application by defining parameters for data types or categories of data products generated by use of the application and specifying instructions for the parameters; a parameterization component for creating an example instance of a data product generated by use of the application comprising one or more of the parameters; and an instantiation component for setting parameter data values using the instructions to convert the example instance of the data product generated by use of the application into at least one generated data product; wherein the example instance invokes the instructions to define data values for the parameters that customize the example instance into the at least one generated data product.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 2. The system of claim 1 , wherein the parameter modeling component comprises at least one logical data parameter component comprising at least one of the following components: a referential parameter component that references at least one other parameter located in another data product; an invocable parameter component invoking instructions used to convert the parameter for instantiation within the data product; an informational parameter component that realizes instantiation of a parameter having contents that are not controlled by a user interface; an inplace parameter component that places parameter data in a selected location within the data product; and an ordered parameter component providing steps for carrying out the parameter instantiation based upon dependencies between different parameters.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 3. The system of claim 2 , wherein parameterization is initiated by execution of at least one program method to implement a selected set of invocable parameters for realizing instantiation of the example instance into the at least one generated data product.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 4. The system of claim 1 , wherein an actual data product is parameterized for use as a template in creating the example instance.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 5. A method, comprising: using a parameter modeling component for designing an application by defining parameters for data types or categories of data products generated by use of the application and specifying instructions for the parameters; using a parameterization component for creating an example instance of a data product generated by use of the application comprising one or more of the parameters; and using an instantiation component for setting parameter data values by use of the instructions to convert the example instance of the data product generated by use of the application into at least one generated data product; wherein the example instance invokes the instructions to define data values for the parameters that customize the example instance into the at least one generated data product.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 6. The method of claim 5 wherein the parameter modeling component comprises at least one logical data parameter component comprising at least one of the following components: a referential parameter component that references at least one other parameter located in another data product; an invocable parameter component invoking instructions used to convert the parameter for instantiation within the data product; an informational parameter component that realizes instantiation of a parameter having contents that are not controlled by a user interface; an inplace parameter component that places parameter data in a selected location within the data product; and an ordered parameter component providing steps for carrying out the parameter instantiation based upon dependencies between different parameters.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 7. The method of claim 6 further comprising initiating parameterization by execution of at least one program method to implement a selected set of invocable parameters for realizing instantiation of the example instance into the at least one generated data product.
– Name: Comment
  Label: Claim
  Group: Patent
  Data: 8. The method of claim 5 further comprising parameterizing an actual data product for use as a template in creating the example instance.
– Name: CodeClass
  Label: Current U.S. Class
  Group: Patent
  Data: 717/104
– Name: Ref
  Label: Patent References Cited
  Group: Patent
  Data: <searchLink fieldCode="RF" term="%226269473%22">6269473</searchLink> July 2001 Freed et al.<br /><searchLink fieldCode="RF" term="%226484149%22">6484149</searchLink> November 2002 Jammes et al.<br /><searchLink fieldCode="RF" term="%226694505%22">6694505</searchLink> February 2004 Tan<br /><searchLink fieldCode="RF" term="%226704120%22">6704120</searchLink> March 2004 Leone, III et al.<br /><searchLink fieldCode="RF" term="%226868427%22">6868427</searchLink> March 2005 Herzog et al.<br /><searchLink fieldCode="RF" term="%227188335%22">7188335</searchLink> March 2007 Darr et al.<br /><searchLink fieldCode="RF" term="%227552418%22">7552418</searchLink> June 2009 Saad et al.<br /><searchLink fieldCode="RF" term="%222005%2E0273759%22">2005/0273759</searchLink> December 2005 Lucassen et al.<br /><searchLink fieldCode="RF" term="%222005%2E0278709%22">2005/0278709</searchLink> December 2005 Sridhar et al.<br />WO2005031510 April 2005<br /><br /><br />
– Name: Ref
  Label: Other References
  Group: Patent
  Data: “Reusable Asset Specification”; Object Management Group, Apr. 2005; [http://www.omg.org/cgi-bin/doc?ptc/2005-04-02], p. 1-131. cited by other<br />“Feature-Oriented Development of Applications for a Domain”; Kang, K.C., Jun. 1998 , Software Reuse, Proceedings, Fifth International Conference (1998), p. 354-355. cited by other<br />Lawrence Bergman, Tessa Lau, Vittorio Castelli, Daniel Oblinger, Personal Wizards: Collaborative End-user Programming, Article, Apr. 2003, pp. 1-4, International Conference on Human Factors in Computing Systems, Fort Lauderdale, FL, USA. cited by other
– Name: AuthorEditor
  Label: Assistant Examiner
  Group: Patent
  Data: <searchLink fieldCode="ZE" term="%22Nahar%2C+Qamrun%22">Nahar, Qamrun</searchLink>
– Name: AuthorEditor
  Label: Primary Examiner
  Group: Patent
  Data: <searchLink fieldCode="ZE" term="%22Zhen%2C+Wei%22">Zhen, Wei</searchLink>
– Name: AuthorCorporate
  Label: Attorney, Agent or Firm
  Group: Patent
  Data: <searchLink fieldCode="ZG" term="%22Lee+Law%2C+PLLC%22">Lee Law, PLLC</searchLink><br /><searchLink fieldCode="ZG" term="%22Lee%2C+Christopher+B%2E%22">Lee, Christopher B.</searchLink>
– Name: AN
  Label: Accession Number
  Group: ID
  Data: edspgr.08074200
PLink https://login.libproxy.scu.edu/login?url=https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&scope=site&db=edspgr&AN=edspgr.08074200
RecordInfo BibRecord:
  BibEntity:
    Languages:
      – Text: English
    Titles:
      – TitleFull: Method and system for providing tooling instructions through parameterization as an aid for software application development
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Aupperle, Bryan Eric
      – PersonEntity:
          Name:
            NameFull: Gellin, Jonathan
      – PersonEntity:
          Name:
            NameFull: Krauss, Cynthia Ferguson
      – PersonEntity:
          Name:
            NameFull: Muralidharan, Srinivasan
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 06
              M: 12
              Text: December 06, 2011
              Type: published
              Y: 2011
ResultId 1