1 / 18

Compositional Pattern Search Method for Reuse of Software Process Elements

Compositional Pattern Search Method for Reuse of Software Process Elements. Takeo KASUBUCHI Hiroshi IGAKI Hajimu IIDA Ken’ichi MATUMOTO Nara Institute of Science and Technology. Background.

neron
Download Presentation

Compositional Pattern Search Method for Reuse of Software Process Elements

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Workshop on Software Product Archiving and Retrieving System Compositional Pattern Search Method forReuse of Software Process Elements Takeo KASUBUCHI Hiroshi IGAKI Hajimu IIDA Ken’ichi MATUMOTO Nara Institute of Science and Technology

  2. Workshop on Software Product Archiving and Retrieving System Background • The utilization of Organizational Process Assets (OPA) is one of the important topics of software process improvement activities such as CMM/CMMI. • OPA archives various software process descriptions including organizational standard software process and past enacted project process. • In many of today’s software development organizations, actual processes in whole are not so stable for repeated reuse and improvement.

  3. Workshop on Software Product Archiving and Retrieving System Process Diversity in Current Organizations • Software development process diversity is raising in many organizations due to following reasons: • Shorter product lifecycle and changing requirements • Heterogeneous product lineup in one organization • Simple reuse mechanism (such as solid standard process or project template file) may not work for these situations

  4. Workshop on Software Product Archiving and Retrieving System Proposed Solutions against Process Diversity • ProcessComponents as easily reusable process elements • NOT necessarily machine executable. • Self configurable / adaptable / descriptive • Process Patterns as easily reusable process templates • Compositional patterns describing the connections of the content process elements • Self organizing / descriptive

  5. Workshop on Software Product Archiving and Retrieving System Process Component • Is a unit of software process based on OO component modeling • May be reused with other components to compose larger process • Has interface following the common rule/manner of connecting each other • May self-configurable when connecting each other (plug-and-play) • Interface may contain work products and roles

  6. Workshop on Software Product Archiving and Retrieving System Process Pattern • Represents metadata for process composition with a set of process components and connections among them. • Is used as a template of process (contained elements may be replaced with subclasses) • Is based on formally defined structure • Also should be self descriptive (readable as well as descriptions in “Pattern Language”)

  7. Workshop on Software Product Archiving and Retrieving System Example of the Pattern-based Software Process Composition Compositional Pattern#1 for lifecycle Requirement Analysis System Development require ment system Compositional Pattern#2 for lifecycle Requirement Analysis System Design Program Coding System Testing require ment design code system Composed Process ready for enactment

  8. Workshop on Software Product Archiving and Retrieving System Main topic of this presentation:Reusing technique of process components • Process browsing and query mechanism should accelerate efficiency of process component reuse in: • Process Modeling Tool • Project Planning / Management Tool • Compositional pattern itself helps reuse of each components (a compositional pattern can be regarded as a context in which concerned components are used)

  9. Workshop on Software Product Archiving and Retrieving System Query Target :Project Defined Process Descriptions Project Defined Process Description contains following elements • Process Component • Task • Artifact • Relationship between components • Dependency between two tasks • Input/Output relation between task and artifact

  10. Workshop on Software Product Archiving and Retrieving System XML data description . . . . . . . . . . . Description Form of Component-based Project Defined Process PDSP description Planning Req. Analysis AnalysisResult Project Plan Requirement (Next) (Previous) Each PDSP is registered to organizational process asset repository for future analysis and reuse (IsRequiredBy) (Requires) (IsGeneratedBy) (Generates)

  11. Workshop on Software Product Archiving and Retrieving System DnD Implementation Image of Process Pattern Query Tool Process Pattern Query Query result Process Elements Search 1. Project○○ (:2001.○.△~2002.×.□) Similarity=2.0 ・Review Log 2002.○.X ・Reviewed Plan 2002.○.X ・ ・ →Browse Process http://www.******.co.jp/project/ Artifacts Add Arc Keywords review

  12. Workshop on Software Product Archiving and Retrieving System Searching reusable “Process Patterns” in Repository ~ A Typical Example <Example1> Which tasks are to be performed in Req. Analysis phase? Which documents should be created during Testing phase?

  13. Workshop on Software Product Archiving and Retrieving System Proposed Method of Similar Pattern Search (1) • Exact match of queried pattern is rare and useless in compositional pattern query • Low number of data • High diversity • Ranking similarities of PDSP descriptions to query pattern is practical approach • We employed graph-based pattern similarity calculation method proposed for text searching by Tomita et al.

  14. Workshop on Software Product Archiving and Retrieving System User Proposed Method of Similar Pattern Search (2) • Regard a component-based PDSP description as a graph composed of elements and their relationships • Specify query pattern as a fragment of PDSP that can also be regarded as a graph • Calculate and rank similarities to stored PDSP descriptions • Show rsulting ranking to users Target of comparison (PDSPs) Query Pattern Planning SystemDesigning Implementing query System Designing Iplementing Design Plan AnalyzedRequirement similar flow of tasks

  15. Workshop on Software Product Archiving and Retrieving System Outline of Graph-based Similarity Calculation~An existing method for similar graph model searching[1] is used Similarity (an initial model)= I×f(sum of degree of interest for each element in query pattern)+R×g(sum of degree of relevance for each relation in query patter) • I: weight of interests • R: weight of relevance • f(): normalize function • g(): normalize function • interest for each element= reference count from other elements • relevance for each relation=1 / shortest path length between start and goal nodes [1] Tomita et al. ” Proposal for a new IR system using subject graph and word‘s weighting by the relation ” (In Japanese), IPSJ Technical Report 98-F1-52,pp.17-24

  16. Workshop on Software Product Archiving and Retrieving System User Example 1 Relevance of Relation Past PDSP #m 1.0 Planning SystemDesigning Implementing Query Pattern X 0.2 0.5 0.7 search SystemDesigning Implementing Design Plan AnalyzedRequirement 0.7 0.4 0.5 Interests value(reference count from other elements) similarity =p×((0.5+0.7)/1.5)+(1-p)×(1/1) =0.5×1.2/1.5 + 0.5×1 =0.9 = Project Process Author (p=0.5, f=1/1.5, g=1)

  17. Workshop on Software Product Archiving and Retrieving System Relevance Query Pattern X SystemDesigning 0.5 Implementing user Example2 Past PDSP #n Planning VerifyingDesign Designing System Implementing 0.8 0.9 0.4 0.6 検索 Plan Design VerifiedDesign AnalyzedReq. 0.7 0.7 0.7 0.7 Interests similarity =p×{(0.4+0.9)/1.5}+(1-p)×{(0.5)/1} =0.5×1.3/1.5 + 0.5×0.5 =0.68 (p=0.5, f=1/1.5, g=1)

  18. Workshop on Software Product Archiving and Retrieving System Conclusion • A process compositional pattern framework for organizational process asset utilization is proposed • Patterns can be searched by graph-based matching model • This model may also be applied to evaluate similarities of component-based software system -> Applicable to SPARS systems • Future works: • Implementation of Modeling and Query tool • Evaluation and improvement of the pattern similarity calculation formula • Apply to software component reuse

More Related