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 PDFInfo
- 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
Links
- 238000011161 development Methods 0.000 title claims abstract description 45
- 238000004458 analytical method Methods 0.000 title claims abstract description 33
- 238000005194 fractionation Methods 0.000 title description 9
- 238000000034 method Methods 0.000 claims description 23
- 238000005457 optimization Methods 0.000 claims description 15
- 241001269238 Data Species 0.000 claims description 9
- 238000004080 punching Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000012356 Product development Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 241000208340 Araliaceae Species 0.000 description 2
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 2
- 235000003140 Panax quinquefolius Nutrition 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 235000008434 ginseng Nutrition 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
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
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795100B (en) * | 2019-09-12 | 2023-11-03 | 连连银通电子支付有限公司 | Branch merging method and device |
Citations (4)
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)
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 |
-
2014
- 2014-11-18 CN CN201410660056.XA patent/CN105677655B/en active Active
Patent Citations (4)
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)
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 |