CN105677655B - A kind of analysis method and device of the framework fractionation for concurrent development - Google Patents

A kind of analysis method and device of the framework fractionation for concurrent development Download PDF

Info

Publication number
CN105677655B
CN105677655B CN201410660056.XA CN201410660056A CN105677655B CN 105677655 B CN105677655 B CN 105677655B CN 201410660056 A CN201410660056 A CN 201410660056A CN 105677655 B CN105677655 B CN 105677655B
Authority
CN
China
Prior art keywords
conflict
framework
data record
path
record
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410660056.XA
Other languages
Chinese (zh)
Other versions
CN105677655A (en
Inventor
王娇龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410660056.XA priority Critical patent/CN105677655B/en
Publication of CN105677655A publication Critical patent/CN105677655A/en
Application granted granted Critical
Publication of CN105677655B publication Critical patent/CN105677655B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

This application discloses a kind of analysis methods that the framework for concurrent development is split, comprising: the branch obtained for module merges the colliding data record generated;Colliding data record is analyzed according to the Measure Indexes of setting, obtains the metric of different Measure Indexes;Judge whether the metric of the different Measure Indexes meets given threshold corresponding with framework model of optimum and matching;If satisfied, selection framework model of optimum and matching corresponding with the Measure Indexes;By the different Measure Indexes of setting and the analysis to conflict data record, granularity of division when reference being provided or being split for framework can be optimized for framework, reference is provided.

Description

A kind of analysis method and device of the framework fractionation for concurrent development
Technical field
This application involves field of computer technology, and in particular to a kind of analysis method that the framework for concurrent development is split And device.
Background technique
Framework is the general solution provided aiming at the problem that having systemic property, generality certain particular target system Certainly method.It is the one mode of project organizational form in a certain specific application area of description, to being stored in Active Directory The description of object type and attribute, for each object type, framework defines what the object type must have Attribute, object can be made up of the module that can complete corresponding function multiple abstract components.Conversely, the module can be anti- The characteristics such as the structure of the project organization, semanteme and function in field are reflected, and guides and how modules is efficiently organized into one Complete framework.
Complete framework may include the subsets framework such as business structure, Technical Architecture, application architecture and data framework.Its In, the infrastructure of the core deployment and mission critical applications software of Technical Architecture described project, such as: layering, Development Framework Selection and speech selection etc., the non-functional demand being related to;Business structure description management, tissue and key business process etc. Functional demand;The overall planning of application architecture described project;Data framework describes the structure of data management resource.The frame Structure needs usually to realize corresponding functional requirement by framework member, by define interface between framework element and interactive relation, And constraint condition etc., realize corresponding nonfunction requirement.
Therefore, on the one hand the building of framework needs to meet the non-functional requirement of the qualitative attribute of project development, such as: easily With property, maintainability, performance and reliability etc..On the other hand, need to meet the functional requirements of project development, such as: expand Malleability etc..Meet the non-functional requirement and functional requirement of framework, can realize by technology or operational improvement to frame The optimization of structure.
In concurrent product development, the framework of exploration project is divided into multiple sub-project modules, each technology group It is responsible for the exploitation of a sub-project module, and can be mutually influenced between each sub-project module, such as: when a certain sub-project Module terminates, and will receive another ongoing sub-project module when testing it influences, and then causes test that can not lead to It crosses.For the generation for avoiding this phenomenon, need to create sub- projects module branch, it is multiple that branch can according to need creation.When Branch's exploitation is completed, and multiple branches are merged into trunk, can be tested the sub-project module, the behaviour such as version publication Make, to avoid interfering with each other between each sub-project.
However, the coupling between each sub-project module can be increasingly stronger, module with the continuous development of concurrent development Code administration also becomes increasingly complex, and conflicting when merging branch necessarily will appear.It, can be by right to continue to optimize framework performance Framework fractionation is resolved.
Therefore, how a kind of analysis method that the framework for concurrent development is split is provided, those skilled in the art are become A technical problem for needing to solve.
Summary of the invention
The application provides a kind of analysis method that framework is split, to solve the above technical problems.
The application provides a kind of analysis method that the framework for concurrent development is split, comprising: obtains point for module Branch merges the colliding data record generated;Colliding data record is analyzed according to the Measure Indexes of setting, is obtained not The metric of unison figureofmerit;It is opposite with framework model of optimum and matching to judge whether the metric of the different Measure Indexes meets The given threshold answered;If satisfied, selection framework model of optimum and matching corresponding with the Measure Indexes.
Preferably, the colliding data record generated for branch's merging of module that obtains includes:
Acquire all colliding datas record in set period of time;
Reject the invalid data record in the colliding data record;
Wherein, the invalid data record includes the data record that wrong report is conflict.
Preferably, the invalid data record rejected in the colliding data record includes:
The record type label value in colliding data record is read one by one;
Select the label value for the data record of engineering noise;
The data record that the label value is engineering noise is deleted.
Preferably, the colliding data record generated for branch's merging of module that obtains includes: to be remembered by merging conflict The colliding data record is read in record database.
Preferably, described to include: by merging to read the colliding data in conflict database of record and record
Acquisition merges the module root path in the path column that conflicts in conflict database of record;
It positions to the next layer of path in module root path;
Obtain the conflict file or folder in the next layer of path in module root path;
And the conflict file or folder under the next layer of path in each module root path is considered as a data record.
Preferably, the Measure Indexes include: individual module conflict total number of files, publication number, individual module conflict text Part mean number, conflict path frequency of occurrence, individual module conflict and line number average value, conflict total number of files, total conflict are parallel Number average value, total conflict file mean number and total conflict path are averaged frequency of occurrence.
Preferably, the framework model of optimum and matching includes: business structure model of optimum and matching and Technical Architecture optimization With model.
Preferably, whether the metric for judging the different Measure Indexes meets opposite with framework model of optimum and matching The given threshold answered;If satisfied, selection framework model of optimum and matching corresponding with the given threshold, comprising:
It is greater than zero, and/or the road that individually conflicts in the difference of individual module conflict file mean number and the first given threshold When the difference of diameter frequency of occurrence and the second given threshold is greater than zero, then it is considered as Technical Architecture and needs to optimize, selection technique framework is excellent Change Matching Model;
When the difference of individual module conflict and line number average value and third given threshold is greater than zero, then it is considered as business structure It needs to optimize, selects business structure model of optimum and matching.
Preferably, first given threshold is that total conflict file mean number is conflict file average either total Several last base-line data values;
Second given threshold is averaged for total conflict path, and either always conflict path averagely frequency of occurrence occurs The last base-line data value of number;
The third given threshold is total conflict and the either described total conflict of line number average value and line number average value Last base-line data value.
The application also provides a kind of analytical equipment that the framework for concurrent development is split, comprising:
Acquiring unit, the branch obtained for module merge the colliding data record generated;Setup unit, according to setting Measure Indexes analyze the colliding data record that the acquiring unit obtains, and obtain the metric of different Measure Indexes;Sentence Disconnected unit, judges whether the metric of difference Measure Indexes obtained in the setup unit meets and framework model of optimum and matching Corresponding given threshold;If satisfied, selection framework model of optimum and matching corresponding with the given threshold.
Preferably, the acquiring unit includes:
Acquisition unit acquires all colliding datas record in set period of time;
Culling unit rejects the invalid data record in all colliding datas record acquired in the acquisition unit, institute Stating invalid data record includes the data record that wrong report is conflict.
Preferably, the culling unit includes:
Reading unit reads the record type label value in colliding data record one by one;
Selecting unit, selecting record type label value in the reading unit is the data record of engineering noise;
Unit is deleted, the data record that the record type label value in the selecting unit is engineering noise is deleted.
Preferably, the acquiring unit includes:
Database reading unit reads the colliding data for merging and recording in conflict database of record.
Preferably, the database reading unit includes:
Path acquiring unit obtains the module root path merged in the path column that conflicts in conflict database of record;
Positioning unit is positioned to the next layer of path in module root path described in the path acquiring unit;
File obtaining unit obtains the next layer of path in the module root path positioned in the positioning unit Conflict file or folder;
Data record unit, next floor road in each module root path that the file obtaining unit is obtained Conflict file or folder under diameter is considered as a data record.
The analysis method that framework provided by the present application for concurrent development is split, by obtaining under concurrent product development The colliding data record that branch generates when merging, and according to the different Measure Indexes of setting, the colliding data of acquisition is divided Analysis, obtains the metric of different Measure Indexes, judge according to the metric and given threshold, determines the module punching The prominent corresponding framework model of optimum and matching of data metric index, and then can be provided by the Measure Indexes for framework optimization Granularity of division when splitting with reference to or for framework provides reference.
Detailed description of the invention
In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this The some embodiments recorded in application can also be obtained according to these attached drawings other for those of ordinary skill in the art Attached drawing.
Fig. 1 is the flow chart for the analysis method that a kind of framework for concurrent development provided by the present application is split;
Fig. 2 is the first embodiment process for the analysis method that a kind of framework for concurrent development provided by the present application is split Figure;
Fig. 3 is the second embodiment process for the analysis method that a kind of framework for concurrent development provided by the present application is split Figure;
Fig. 4 is the structural schematic diagram for the analytical equipment that a kind of framework for concurrent development provided by the present application is split;
Fig. 5 is the first embodiment structure for the analytical equipment that a kind of framework for concurrent development provided by the present application is split Schematic diagram;
Fig. 6 is the second embodiment structure for the analytical equipment that a kind of framework for concurrent development provided by the present application is split Schematic diagram.
Specific embodiment
Many details are explained in the following description in order to fully understand the application.But the application can be with Much it is different from other way described herein to implement, those skilled in the art can be without prejudice to the application intension the case where Under do similar popularization, therefore the application is not limited by following public specific implementation.
It please refers to shown in Fig. 1, Fig. 1 is that the application provides the of a kind of analysis method that the framework for concurrent development is split One embodiment flow chart, the described method comprises the following steps:
Step S100: the branch obtained for module merges the colliding data record generated;
Step S200: colliding data record is analyzed according to the Measure Indexes of setting, not homometric(al) is obtained and refers to Target metric;
Step S300: it is corresponding with framework model of optimum and matching to judge whether the metric of the different Measure Indexes meets Given threshold;If satisfied, selection framework model of optimum and matching corresponding with the given threshold.
The metric of module colliding data difference Measure Indexes is obtained by the analysis of the colliding data to acquisition, according to institute The judgement for stating metric and given threshold determines the corresponding framework model of optimum and matching of the module colliding data metric, into And it can judge whether to need to optimize corresponding framework by the framework model of optimum and matching of offer.
Above-mentioned each step specific implementation process is referring to FIG. 2, Fig. 2 is provided by the present application a kind of for concurrent development The flow chart of first embodiment for the analysis method that framework is split.
Below with reference to Fig. 1 and Fig. 2, process is implemented to the application and is illustrated.
Step S100: the branch obtained for module merges the colliding data record generated.Its specific implementation process includes:
1-S110: all colliding datas record in acquisition set period of time.
Under concurrent product development, conflict can be generated when branch is merged on trunk, the conflict can be version punching A variety of individual module conflicts such as prominent, filename conflict and/or local covering conflict and individual module conflict parallel.The step can be with In any time period for acquiring setting, all colliding datas occurred when branch merges, such as: assuming that set period of time is On April 8,18 days to 2014 March in 2014, the colliding data of acquisition are the module one (module1) in the period, mould Block two (module2) and all colliding data records of module three (module3).
1-S120: the invalid data record in the colliding data record is rejected.
What is acquired in step 1-S110 is colliding data record all in set period of time, and these all conflicts Data record includes effective data record and invalid data record.Invalid data record may be branch merge when it is existing not Combined colliding data record or system wrong report are influenced for the data record etc. of conflict.For collected colliding data Record, which needs to record invalid colliding data, to be removed, and effective colliding data record is retained.
It, can be by the way of label by valid data record and nothing to distinguish valid data record and invalid data record Effect data record distinguishes.It is distinguished that is, by setting label unrelated data record will be merged with branch.This Application can record setting label value to invalid data, and the label value can be engineering noise or other display modes, pass through The record type label value in colliding data record is read one by one, is selected the label value for the data record of engineering noise, will be selected The label value selected is that the data record of engineering noise is deleted, and then improves the efficiency recorded and analyzed to valid data.Such as the following table 1 Shown in, table 1 indicates that in set period of time be module one (module1), mould on April 8,18 days to 2014 March in 2014 Block two (module2) and the valid data of module three (module3) record.
Table 1
Module title Conflict path Conflict file Issuing time Conflict simultaneously line number
module1 module1/A module1/A/A1 March 18 in 2014 4
module1 module1/A module1/A/A2 March 18 in 2014 2
module1 module1/A module1/A/A3 March 18 in 2014 2
module1 module1/B module1/B/B1 March 18 in 2014 1
module1 module1/C module1/C/C1 April 08 in 2014 3
module2 module2/B module2/B/B1 March 18 in 2014 1
module2 module2/B module2/B/B1 March 22 in 2014 1
module2 module2/B module2/B/B2 April 03 in 2014 1
module2 module2/B module2/A/B3 April 08 in 2014 1
module3 module3/A module3/A/A1 March 18 in 2014 3
module3 module3/B module3/B/B1 March 22 in 2014 2
module3 module3/B module3/B/B2 March 22 in 2014 3
Step S200: colliding data record is analyzed according to the Measure Indexes of setting, not homometric(al) is obtained and refers to Target metric.
In this step, the Measure Indexes may include: individual module conflict total number of files f (c), publication number f (r), individual module conflict file mean number f (v), conflict path frequency of occurrence f (n), individual module conflict and line number are average Value f (p), conflict total number of files f (C), total conflict and line number average value f (P), total conflict file mean number f (V) and total conflict Path is averaged frequency of occurrence f (N), and above-mentioned Measure Indexes can be shown in reference table 1.
By analyzing colliding data record of the above-mentioned Measure Indexes to modules, modules are calculated not The metric of unison figureofmerit, as shown in table 2 below:
Table 2
It is as follows to the analysis of the metric of each Measure Indexes and calculation in table 2:
F (r)=unduplicated issuing time number and;
Such as: the publication number f (r1)=2 of module1 in table 1;The publication number f (r2)=4 of module2;module3 Publication number f (r3)=2.
F (c)=conflict file number × conflict and line number;
Such as: conflict total number of files f (c1)=1 × 4+1 × 2+1 × 2+1 × 1+1 × 3=12 of module1;F (c2)= 1 × 1+1 × 1+1 × 1+1 × 1=4;F (c3)=3 × 1+2 × 1+3 × 1=8.
The sum of f (C)=all modules conflict number of files;
Such as: f (C)=f (c1)+f (c2)+f (c3)=12+4+8=24.
F (v)=individual module conflict total number of files/publication number;
Such as: the f (v1) of module1=f (c1)/f (r1)=12/2=6;The f (v2) of module2=f (c2)/f (r2) =4/4=1;The f (v3) of module3=f (c3)/f (r3)=8/2=4.
The sum of the sum of f (V)=each module conflict number of files/each module publication number;
Such as: f (V)=((f (c1)+f (c2)+f (c3))/(f (r1)+f (r2)+f (r3))=(12+4+8)/(2+4+2) =3.
F (n)=single conflict path frequency of occurrence;
Such as: module1/A frequency of occurrence is that 3, module1/B frequency of occurrence is that 1, module1/C frequency of occurrence is 1, Module1 individually conflict path frequency of occurrence be 5 times, it may be assumed that f (n1)=5;Module2/B frequency of occurrence is 4, module2 single The path frequency of occurrence that conflicts is 4 times, it may be assumed that f (n2)=4;Module3/A frequency of occurrence is that 1, module3/B frequency of occurrence is 2, Module3 individually conflict path frequency of occurrence be 3 times, it may be assumed that f (n3)=3.
The sum of f (N)=conflict path frequency of occurrence/conflict total number of paths;
Such as: totally 6, path of conflict, f (N)=f (n1)+f (n2)+f (n3)=(5+4+3)/6=2.
F (p)=individual module conflict total number of files/conflict counts frequency of occurrence parallel;
Such as: the f (p2) of the f (p1) of module1=f (c1)/5=12/5=2.4, module2=f (c2)/4=4/4 =1;The f (p3) of module3=f (c3)/3=8/3=2.7.
F (the P)=all modules conflict total number of files/parallel number frequency of occurrence of all modules conflict;
Such as: f (P)=f (C)/12=24/12=2.
According to recording and analyzing and calculating to colliding data in above-mentioned table 1 and table 2, can obtain at set period of time 2014 In 18-2014 April 08 in March, the metric of different Measure Indexes in colliding data record, as shown in table 3.
Table 3
Step S300: it is corresponding with framework model of optimum and matching to judge whether the metric of the different Measure Indexes meets Given threshold;If satisfied, selection framework model of optimum and matching corresponding with the given threshold.
The specific implementation process of the step can be, firstly, for framework model of optimum and matching according to function and non-functional Demand can provide business structure model of optimum and matching and Technical Architecture model of optimum and matching;Business structure model of optimum and matching needle To the function optimization of module, Technical Architecture model of optimum and matching is directed to the non-functional optimization of module.
The realization process specifically judged may comprise steps of:
Step S310: it is greater than zero in the difference of individual module conflict file mean number and the first given threshold, and/or single When the difference of a conflict path frequency of occurrence and the second given threshold is greater than zero, then it is considered as Technical Architecture and needs to optimize, select skill Art framework model of optimum and matching.It in this step include two kinds of judgment modes, described two judgment modes can select a selection Use can be merged, judgment mode is illustrated below.
Mode one: when individual module conflict file mean number f (v) and the first given threshold difference be greater than zero, then regard It needs to optimize for Technical Architecture, selection technique framework model of optimum and matching.Wherein, the first given threshold can be total conflict The last base-line data value of the either total conflict file mean number of file mean number f (V);It is also possible to pass through setting Team's constrained objective value is as the first given threshold.
In conjunction with table 2 and table 3, judgment mode, f (v1)=6 are illustrated by taking module1 as an example, first given threshold uses Total conflict file mean number f (V), it may be assumed that f (V)=3;6-3 > 0, the conflict for illustrating that module1 occurs is very frequent, and then says Contacting closely between bright module1 and other modules, and for concurrent product development, each module will be completed specifically Function, so should be individually present as far as possible, so that can not be influenced by other modules when branch merges, so And contact closer between module1 and other modules, and module1 coupling is stronger, illustrate that the independence of module1 is poorer, It needs to carry out decoupling optimization to module1, and the interface that the reason for causing intermodule coupling strong is often as intermodule is set The formation such as information of the complexity of meter, method of calling and transmitting.For the reason for causing intermodule coupling strong above, need Technical Architecture carries out decoupling optimization, to guarantee the lower coupling of intermodule.
Mode two: when judging that the difference of individual module conflict path frequency of occurrence f (n) and the second given threshold is greater than zero, Then it is considered as Technical Architecture to need to optimize, selection technique framework model of optimum and matching
Wherein, second given threshold can be averaged for total conflict path, and frequency of occurrence f (N) is either total to conflict Path is averaged the last base-line data value of frequency of occurrence;It is also possible to team's constrained objective value using setting as second Given threshold;
By taking module1 as an example: module1 individual module conflict path frequency of occurrence f (n) subtracts total conflict path and averages out When occurrence number f (N) difference is greater than 0, it may be assumed that f (n)=5, f (N)=2,5-2 > 0;Equally illustrate between module1 and other modules Coupling is stronger, needs to carry out decoupling optimization.It is same as aforesaid way one, it is also desirable to which that Technical Architecture is realized excellent to the decoupling of module Change.
Technical Architecture can be optimized by above-mentioned judging result and guidance instruction is provided, or provide ginseng for framework fractionation It examines, is conducive to improve the performances such as reusability, maintainability and the scalability of system of concurrent development.
Step S320: it when the difference of individual module conflict and line number average value and third given threshold is greater than zero, then regards It needs to optimize for business structure, selects business structure model of optimum and matching.
Wherein the third given threshold can be total conflict and the either described total conflict of line number average value is parallel The last base-line data value of number average value;It is also possible to team's constrained objective value of setting as third given threshold.
It is still illustrated by taking module1 as an example in step specific implementation process, module1 conflict and line number average value F (p), it may be assumed that f (p)=2.4;The third given threshold is always to conflict and for line number average value f (P), i.e. f (P)=2,2.4- 2 > 0, illustrate that the exploitation degree of parallelism of module1 is excessive, and the bigger functions of degree of parallelism realize there are the feelings for repeating or intersecting Condition is more serious, and the generation of such case is caused because plan of operation is unreasonable, the judging result can be to business Framework optimization provides guidance instruction, or provides reference for business structure fractionation, to be conducive to the optimization on business function.
It is understood that framework model of optimum and matching is not limited to it is above two, can be according to different needs Different Measure Indexes are set, and then corresponding framework model of optimum and matching is provided.
In above-mentioned steps S310 and step S320, when calculated result value be much larger than zero, illustrate individual module conflict file Mean number f (v) is much larger than the first given threshold, and individual module conflicts path frequency of occurrence f (n) much larger than the second setting threshold Value, module conflict and line number average value f (p) are much larger than third given threshold, at this point, splitting with greater need for framework, with excellent Change framework performance, and the Measure Indexes of above-mentioned framework model of optimum and matching can be the fractionation granularity of business structure and Technical Architecture Reference is provided.
The above are a kind of saying for analysis method first embodiment that the framework for concurrent development is split provided by the present application It is bright, refering to what is shown in Fig. 3, Fig. 3 is the second reality of the analysis method that a kind of framework for concurrent development provided by the present application is split Apply a flow chart.Second embodiment and first embodiment the difference is that, step S100 obtain for module branch close And the mode of the colliding data record generated is different, and second embodiment is specifically described below.
In this second embodiment, step S100: the branch obtained for module merges the colliding data record generated, tool Body realizes that process can be realized by following step 2-S110, it may be assumed that
Step 2-S110: the colliding data record realization is read in conflict database of record by merging.
The step 2-S110 can merge the module root mesh in the path column that conflicts in conflict database of record by acquisition Record path, such as: be illustrated by taking module1 in table 1 as an example, module1 acquisition be path be module1/A, Module1/B and module1/C root path;
It positions to the next layer of path in module root path, to the next layer of path in module1 root path It is positioned, it may be assumed that module1/A/A1, module1/A/A2, module1/A/A3, module1/B/B1, module1/C/C1;
The conflict file or folder for obtaining the next layer of path in module root path obtains module1 To be root path module1/A next layer of path module1/A/A1, module1/A/A2 and module1/A/A3 In conflict file A1, A2 and A3, the conflict file in the next layer of path module1/B/B1 of root path module1/B Conflict file C1 in the next layer of path module1/C/C1 of B1, root path module1/C;
Conflict file or folder under the next layer of path in each module root path is considered as a data record.
To the data record obtained in above-mentioned merging colliding data database of record, according to the Measure Indexes of setting to described Data record is analyzed, and obtains different metrics, and according to the metric and framework model of optimum and matching given threshold, To judge the framework model of optimum and matching that should be selected.
The analysis method that a kind of framework for concurrent development provided by the present application is split, can be according to the not unison of setting Figureofmerit analyzes the colliding data of acquisition record, based on the analysis results or metric judge the corresponding frame of Measure Indexes Structure model of optimum and matching, optimizes for framework or fractionation provides reference, can also be using Measure Indexes as the ginseng of framework granularity of division It examines.
Corresponding with the analysis method embodiment that the framework for being previously used for concurrent development is split, disclosed herein as well is one kind The analytical equipment that framework for concurrent development is split, please refers to Fig. 4, is provided by the present application a kind of for concurrent development The structural schematic diagram for the analytical equipment that framework is split.Since Installation practice is substantially similar to embodiment of the method, so describing Fairly simple, the relevent part can refer to the partial explaination of embodiments of method.Installation practice described below is only to illustrate Property.
The analytical equipment that a kind of framework for concurrent development is split, comprising:
Acquiring unit 100, the branch obtained for module merge the colliding data record generated;
Setup unit 200, according to the Measure Indexes of setting, to the colliding data that the acquiring unit 100 obtains record into Row analysis, obtains different Measure Indexes metrics;
Judging unit 300 judges whether the metric for the different Measure Indexes that the setup unit 200 obtains meets and frame The corresponding given threshold of structure model of optimum and matching;If satisfied, selection framework Optimized Matching corresponding with the given threshold Model.
In conjunction with Fig. 4, refering to what is shown in Fig. 5, Fig. 5 is the analysis that a kind of framework for concurrent development provided by the present application is split The schematic structural diagram of the first embodiment of device.
The acquiring unit 100 includes:
Acquisition unit 1-110 acquires all colliding datas record in set period of time;Colliding data record can be with It is that colliding data record is generated when branch is merged on trunk, comprising: version conflict, filename conflict and/or local covering A variety of individual module conflicts such as conflict and individual module conflict parallel.
Culling unit 1-120 rejects the invalid data note in the acquisition unit 1-110 in all colliding data records Record, the invalid data record include the data record that wrong report is conflict.Invalid data record may be to deposit when branch merges Do not influence combined colliding data record or system wrong report for the data record etc. of conflict.For collected punching Prominent data record, which needs to record invalid colliding data, to be removed, and effective colliding data record is retained.
The culling unit 1-120 may include:
Reading unit reads the record type label value in colliding data record one by one;
Selecting unit, selecting record type label value in the reading unit is the data record of engineering noise;
Unit is deleted, the data record that the record type label value in the selecting unit is engineering noise is deleted.
It is the analytical equipment that a kind of framework for concurrent development provided by the present application is split with reference to shown in Fig. 6 in conjunction with Fig. 4 Schematic structural diagram of the second embodiment.
The acquiring unit 100 includes:
Database reading unit 2-110 reads the colliding data for merging and recording in conflict database of record.It opens parallel Under hair mode, when branch merges, colliding data can be recorded in merging conflict database of record, therefore, can pass through conjunction And the database of record that conflicts obtains colliding data, analyzes according to the different Measure Indexes of setting colliding data.
Database reading unit 2-110 obtains colliding data
Path acquiring unit obtains the module root path merged in the path column that conflicts in conflict database of record;
Positioning unit is positioned to the next layer of path in module root path described in the path acquiring unit;
File obtaining unit obtains the next layer of path in the module root path positioned in the positioning unit Conflict file or folder;
Data record unit, by the next layer of path in each module root path in the file obtaining unit Under conflict file or folder be considered as a data record.
It is easily facilitated by the device of the colliding data of above-mentioned acquisition and colliding data is analyzed, also easily facilitate basis The different Measure Indexes of setting obtain metric, and then can be quickly corresponding according to metric and framework model of optimum and matching Given threshold is judged, is obtained framework optimization reference direction or is provided reference for framework fractionation granularity.
Measure Indexes provided by the present application include: individual module conflict total number of files, publication number, individual module conflict text Part mean number, conflict path frequency of occurrence, individual module conflict and line number average value, conflict total number of files, total conflict are parallel Number average value, total conflict file mean number and total conflict path are averaged frequency of occurrence.Given threshold can be the first setting threshold Value, the second given threshold and third given threshold, and the first given threshold is that total conflict file mean number is either total The last base-line data value or team's constrained objective value for the file mean number that conflicts;Second given threshold is described Total conflict path be averaged the either total conflict path of frequency of occurrence be averaged frequency of occurrence last time base-line data value, either Team's constrained objective value;Third given threshold is total conflict and the either described total conflict of line number average value and line number is average The last base-line data value or team's constrained objective value of value.
It is understood that the Measure Indexes and given threshold of above-mentioned selection are only a kind of embodiment for illustrating the application, Can according to for framework optimize or split different demands set different Measure Indexes and threshold value, as framework optimization and The reference guide of fractionation.
In a typical configuration, calculating equipment includes one or more processors (CPU), input/output interface, net Network interface and memory.
Memory may include the non-volatile memory in computer-readable medium, random access memory (RAM) and/or The forms such as Nonvolatile memory, such as read-only memory (ROM) or flash memory (flash RAM).Memory is computer-readable medium Example.
1, computer-readable medium can be by any side including permanent and non-permanent, removable and non-removable media Method or technology realize that information stores.Information can be computer readable instructions, data structure, the module of program or other numbers According to.The example of the storage medium of computer includes, but are not limited to phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other kinds of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory techniques, CD-ROM are read-only Memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassettes, tape magnetic disk storage or Other magnetic storage devices or any other non-transmission medium, can be used for storage can be accessed by a computing device information.According to Herein defines, and computer-readable medium does not include non-temporary computer readable media (transitory media), such as modulates Data-signal and carrier wave.
2, it will be understood by those skilled in the art that embodiments herein can provide as the production of method, system or computer program Product.Therefore, complete hardware embodiment, complete software embodiment or embodiment combining software and hardware aspects can be used in the application Form.It can be used moreover, the application can be used in the computer that one or more wherein includes computer usable program code The computer program product implemented on storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.) Form.
Although the application is disclosed as above with preferred embodiment, it is not for limiting the application, any this field skill Art personnel are not departing from spirit and scope, can make possible variation and modification, therefore the guarantor of the application Shield range should be subject to the range that the claim of this application defined.

Claims (14)

1. a kind of analysis method that the framework for concurrent development is split, it is characterised in that:
The branch obtained for module merges the colliding data record generated;
Colliding data record is analyzed according to the Measure Indexes of setting, obtains the metric of different Measure Indexes;
Judge whether the metric of the different Measure Indexes meets given threshold corresponding with framework model of optimum and matching;If Meet, selects framework model of optimum and matching corresponding with the Measure Indexes.
2. the analysis method that the framework according to claim 1 for concurrent development is split, which is characterized in that the acquisition The colliding data that branch's merging for module generates, which records, includes:
Acquire all colliding datas record in set period of time;
Reject the invalid data record in the colliding data record;
Wherein, the invalid data record includes the data record that wrong report is conflict.
3. the analysis method that the framework according to claim 2 for concurrent development is split, which is characterized in that the rejecting Invalid data in the colliding data record, which records, includes:
The record type label value in colliding data record is read one by one;
Select the label value for the data record of engineering noise;
The data record that the label value is engineering noise is deleted.
4. the analysis method that the framework according to claim 1 for concurrent development is split, which is characterized in that the acquisition The colliding data record that branch's merging for module generates includes: to read the number of collisions by merging in conflict database of record According to record.
5. the analysis method that the framework according to claim 4 for concurrent development is split, which is characterized in that described by closing And the colliding data record is read in the database of record that conflicts and includes:
Acquisition merges the module root path in the path column that conflicts in conflict database of record;
It positions to the next layer of path in module root path;
Obtain the conflict file or folder in the next layer of path in module root path;
And the conflict file or folder under the next layer of path in each module root path is considered as a data record.
6. the analysis method that the framework according to claim 1 for concurrent development is split, which is characterized in that the measurement Index includes: individual module conflict total number of files, the publication number of individual module, individual module conflict file mean number, punching Prominent path frequency of occurrence, individual module conflict and line number average value, conflict total number of files, total conflict and line number average value, Zong Chong Prominent file mean number and total conflict path are averaged frequency of occurrence.
7. the analysis method that the framework according to claim 6 for concurrent development is split, which is characterized in that the framework Model of optimum and matching includes: business structure model of optimum and matching and Technical Architecture model of optimum and matching.
8. the analysis method that the framework according to claim 7 for concurrent development is split, which is characterized in that the judgement Whether the metric of the difference Measure Indexes meets given threshold corresponding with framework model of optimum and matching;If satisfied, choosing Select framework model of optimum and matching corresponding with the given threshold, comprising:
It is greater than zero in the difference of individual module conflict file mean number and the first given threshold, and/or single conflict path goes out When the difference of occurrence number and the second given threshold is greater than zero, then it is considered as Technical Architecture and needs to optimize, the optimization of selection technique framework With model;
When the difference of individual module conflict and line number average value and third given threshold is greater than zero, then it is considered as business structure needs Optimization selects business structure model of optimum and matching.
9. the analysis method that the framework according to claim 8 for concurrent development is split, it is characterised in that:
First given threshold is the last time of the either total conflict file mean number of total conflict file mean number Base-line data value;
Second given threshold is that total conflict path frequency of occurrence path that either always conflicts that be averaged is averaged frequency of occurrence Last base-line data value;
The third given threshold be it is described it is total conflict and line number average value either it is described it is total conflict and line number average value it is upper Primary base-line data value.
10. a kind of analytical equipment that the framework for concurrent development is split characterized by comprising
Acquiring unit, the branch obtained for module merge the colliding data record generated;
Setup unit is analyzed the colliding data record that the acquiring unit obtains according to the Measure Indexes of setting, is obtained The metric of different Measure Indexes;
Judging unit, judges whether the metric of difference Measure Indexes obtained in the setup unit meets and framework optimization With the corresponding given threshold of model;If satisfied, selection framework model of optimum and matching corresponding with the given threshold.
11. the analytical equipment that the framework according to claim 10 for concurrent development is split, which is characterized in that described to obtain The unit is taken to include:
Acquisition unit acquires all colliding datas record in set period of time;
Culling unit rejects the invalid data record in all colliding datas record acquired in the acquisition unit, the nothing Effect data record includes the data record that wrong report is conflict.
12. the analytical equipment that the framework according to claim 11 for concurrent development is split, which is characterized in that described to pick Except unit includes:
Reading unit reads the record type label value in colliding data record one by one;
Selecting unit, selecting record type label value in the reading unit is the data record of engineering noise;
Unit is deleted, the data record that the record type label value in the selecting unit is engineering noise is deleted.
13. the analytical equipment that the framework according to claim 10 for concurrent development is split, which is characterized in that described to obtain The unit is taken to include:
Database reading unit reads the colliding data for merging and recording in conflict database of record.
14. the analytical equipment that the framework according to claim 13 for concurrent development is split, which is characterized in that the number Include: according to library reading unit
Path acquiring unit obtains the module root path merged in the path column that conflicts in conflict database of record;
Positioning unit is positioned to the next layer of path in module root path described in the path acquiring unit;
File obtaining unit obtains the conflict in the next layer of path in the module root path positioned in the positioning unit File or folder;
Data record unit, under the next layer of path in each module root path that the file obtaining unit is obtained Conflict file or folder be considered as a data record.
CN201410660056.XA 2014-11-18 2014-11-18 A kind of analysis method and device of the framework fractionation for concurrent development Active CN105677655B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410660056.XA CN105677655B (en) 2014-11-18 2014-11-18 A kind of analysis method and device of the framework fractionation for concurrent development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410660056.XA CN105677655B (en) 2014-11-18 2014-11-18 A kind of analysis method and device of the framework fractionation for concurrent development

Publications (2)

Publication Number Publication Date
CN105677655A CN105677655A (en) 2016-06-15
CN105677655B true CN105677655B (en) 2019-01-22

Family

ID=56945637

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410660056.XA Active CN105677655B (en) 2014-11-18 2014-11-18 A kind of analysis method and device of the framework fractionation for concurrent development

Country Status (1)

Country Link
CN (1) CN105677655B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795100B (en) * 2019-09-12 2023-11-03 连连银通电子支付有限公司 Branch merging method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101005428A (en) * 2006-01-19 2007-07-25 华为技术有限公司 Realizing method for detecting and resolving data synchronous conflict
CN101068156A (en) * 2006-12-20 2007-11-07 腾讯科技(深圳)有限公司 Conflict processing method and conflict processing server when data synchronization
CN103425630A (en) * 2012-11-30 2013-12-04 上海理工大学 Cooperation system framework and consistency maintenance method thereof
CN104123126A (en) * 2013-04-26 2014-10-29 阿里巴巴集团控股有限公司 Method and device for generating merge conflict record list

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1783604A3 (en) * 2005-11-07 2007-10-03 Slawomir Adam Janczewski Object-oriented, parallel language, method of programming and multi-processor computer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101005428A (en) * 2006-01-19 2007-07-25 华为技术有限公司 Realizing method for detecting and resolving data synchronous conflict
CN101068156A (en) * 2006-12-20 2007-11-07 腾讯科技(深圳)有限公司 Conflict processing method and conflict processing server when data synchronization
CN103425630A (en) * 2012-11-30 2013-12-04 上海理工大学 Cooperation system framework and consistency maintenance method thereof
CN104123126A (en) * 2013-04-26 2014-10-29 阿里巴巴集团控股有限公司 Method and device for generating merge conflict record list

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于事务合并优化的数据同步算法研究与应用;张金玲;《中国优秀硕士学位论文全文数据库 信息科技辑》;20090115(第2009年第1期);I138-743

Also Published As

Publication number Publication date
CN105677655A (en) 2016-06-15

Similar Documents

Publication Publication Date Title
Aelker et al. Managing complexity in supply chains: A discussion of current approaches on the example of the semiconductor industry
Vanderfeesten et al. Quality metrics for business process models
van der Aalst Distributed process discovery and conformance checking
Lagerström et al. Visualizing and measuring enterprise architecture: an exploratory biopharma case
CN109144882A (en) A kind of software fault positioning method and device based on program invariants
CN102053912A (en) Device and method for automatically testing software based on UML (unified modeling language) graphs
Adams et al. A framework for explainable concept drift detection in process mining
CN105447030B (en) A kind of index process method and apparatus
Yahya et al. Domain-driven actionable process model discovery
Bezerra et al. Measures for quality evaluation of feature models
CN105528447A (en) Method for rejecting and summarizing specific data layer by layer simultaneously
CN110134759A (en) A method of obtaining the trade information of enterprise
Akmel et al. A literature review study of software defect prediction using machine learning techniques
CN104376397B (en) A kind of data real-time analysis method and device
CN105677655B (en) A kind of analysis method and device of the framework fractionation for concurrent development
Jalali Object type clustering using Markov directly-follow multigraph in object-centric process mining
Vidgof et al. Interactive log-delta analysis using multi-range filtering
Colli et al. Implementing a dynamic FMECA in the digital transformation era
Pytel et al. Enabling UTXO-based backwards and forwards traceabilty
US20140372386A1 (en) Detecting wasteful data collection
CN102307079B (en) Simulation data validity checking method and device
CN114449569B (en) User traffic usage processing method, network equipment and service processing system
Tatale et al. A Survey on Test Case Generation using UML Diagrams and Feasibility Study to Generate Combinatorial Logic Oriented Test Cases.
Hsu et al. Analysing inaccurate artifact usages in workflow specifications
CN113901291A (en) Asset dictionary library construction method and device, storage medium and electronic equipment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20231225

Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province

Patentee after: Aliyun Computing Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: ALIBABA GROUP HOLDING Ltd.

TR01 Transfer of patent right