Associative Analysis of Software Development Phase Dependency N.Sasikala, Associate Professor, MSCAS, Chennai ABSTRACT The Success of software development is based on the developer s involvement and the adapted software architectures. The software development activities are highly dependent one with another in all its phases. The software development activities and its dependency of the internal activities are influences the quality of the software. The Associative analysis of software development which is focused to determine to identify the potential developer s in line with the software development models. The potential software developer is identified based on the cumulative weight of developer s contribution on each phases and its activities weight. The activity relationships are presented as a unit matrix and the common phase activity is calculated to determine dependency between the phases in each module, projects as per the selected as per the selected software architecture. A neural network model is constructed and identifies the developers weight related to their interaction between one phase of the project to another on the same project. The occurrence relationship and its frequency values are obtained according to the number of activities involved by each developer in their entire development process. The weight values supported to identify the influencing factors of the developers in different models. It will leads to identify the potential developers, future project planning and business planning activities. 1. Introduction Software engineering is the process to attain the quality of the software development to meet the desires and requirements of the users in a business scenario. The field of computer science especially on software development activities, it is a tool to ensure to meet the standards of the quality software development. The performance of the software developers are significantly varies from one firm to another, because of their process, people, and technology. All the firms are focusing the high quality software but the delivery of the thing is less than 80% according to the NASCOM survey. Its because of the unskilled developers, improper process, working towards the development without adopting architecture and the deficiency in software development phase activities. Therefore the software architecture is highly commendable the quality software mapping of the developers skills with the development technologies and the maximum productions with minimum error. This paper aimed to identify the potential developer, using the dependency weight analysis process. The Software architecture is defined in terms of structural software development elements and its relationships. The first part of the work analyze the existing software development models, associative relationship between the phase activities and identify the functional development activities, the weight values to identify the potential developers. The scope of the paper, related literature review, methodology, the experimental results and its analysis are presented along with the possible future work in this paper. 2. Scope The research work is focused to map the dependency activities between the software development activities, compute the associate weight values, developers contribution and determine the potential developers. The scope of this work attained with the following objectives: a) Identify the software development phase activities according to each development architecture. b) Identify the activities relationship in and between the phases of the same project. c) Construction of associative activities relationship matrix d) Computation of phase weight with individual phases and its relative phases. e) Formation of neural network model to compute the interactive weight in all possible associative matrix connectivity. f) Analysis of weight values for the identification of potential developers. 3. Methodology The predication of developer s performance on different software models designed and executed with neural network back propagation algorithm. The research path is described below Step 1: Identification of development activities in existing software models There is several software development models used to develop and deliver the quality products. As per the basic study of the software engineering approach water-fall models, spiral models, V models and iterative models are identified as mostly used and traditional development models. These models have the phase based approach as common but the numbers of phases are differing according to the models. The basic standard weight for each phase is assigned from the mostly used common weight. The Integrated Intelligent Research (IIR) 463
independent, dependent activities are defined and the associative relationship matrix is formed. Step 2: Identify the activities relationship in and between the phases of the same project The development model phases and its few activities are selected to design the general phase and the activities of the development model. The relationship between the activities of one phase with the activities of next phase is identified. The matrix was found with the values of ones and zeros. Step 3 : Construction of Associative activities relationship matrix The step two calculations are given in three levels. The relationship of each activity in the internal phase and the successive phases are considered to construct the ARM in first level. The successive phase dependent and forward, backward relationships are used to construct the adjacent matrix in each model. In second level the initial assigned weights are distributed to the number of activities of each phase. According to the calculated individual activity, the dependent and independent level of each phase is calculated. The obtained ratio is evaluated with regression and correlation to determine the efficiency of the model. The third level the four developments models are analyzed and identified that the phases are not similar in all the models. Therefore the common phase model is derived with seven phases and the activities are identified. The system study, system analysis, system design, coding, testing, implementation and maintenance phases are identified as a common phases which the whole is set of the entire analyzed model. Step 4: Computation of phase weight with individual phases and its relative phases The observed data sets which consist of above mentioned seven phases are selected for customization of each analyzed models. All the seven phases are considered as a universal set. The each model phases are considered as the subset of the universal set. The waterfalls model consists of six phases. These phase values are fetched in a customized manner from the universal data set activities. In this model universal set system study and system analysis phases are combined and PxWA -> W is a variable assigned to represent the represented as analysis phase of waterfall s model. waterfall model. Therefore the universal set activities values of system study and the system analysis activities values are (2)Phase Specification: The variable assignments can be done for merged and presented as analysis active values of water fall s model. The remaining universal phase activities values are assigned to similar phase activities of Waterfall s model. Step 5: Construction of NN Back propagation model The observed and customized values are divided into two sets namely developer s performance and different phases of each model. If we take the development activities contribution. The phase cumulative contribution is consider as a Input phase value and the developers five performance factors 4. Activity weightage calculation which mentioned above are treated as a Hidden layer for the neural network model. The performance and contribution level of each model is assigned as an output layer. The neural network model is constructed with 6 or 5 or 4 phases as an Input layer and 5 factors of performance as a hidden layer and two attributes results are an output layer. Such a way there are three neural network models are constructed and trained with the universal data set. Step 6: Developers Performance prediction As per the trained network model of the universal set and the customized data set of each module are trained. The hidden to output layer weights are fetched with the optimized network values. The maximum performance weight from hidden to the output is compared and derived the best development model for the developers. The obtained possible weights and the maximum presentations are tabulated will presented in the next section. 4. Construction of Activity Association Matrix (2a)Activity relation (2b) Cyclic Avoidance: The activities relationships are determined only for the phase x with the next phase x+1. There is no determination of activities within the phase itself. So there is no cyclic path for the relationship determination. (2c)Multi level Relationship: If there is a relation between the phase x with phase x+2 through the phase x+1, then a multi-level relationships will occur. (2d)Feed Forwarded approach: The activities relationships can be determined only for the phases x, x+1,x+2 etc. as a forward approach. Here there is no determination of relationships for the x+1 phase with its previous phase x. (3)Variable Assignment: (1)Model specification: Several variables are determined for the model, phase and activities. For the water fall model the variables can be given as follows. different phases of the water fall model than the variables are: Feasibility study phase (P 1 wa) P 1 Wa1 -> client study P1Wa2->Process study P1Wa3-> find best process Requirement Analysis phase (P 2 wa) Requirement gathering -> P2Wa1 Requirement analysis -> P 2 Wa 2 Aw requirement -> P 2 Wa 3 Integrated Intelligent Research (IIR) 464
(a) Individual phase weightage Number of activity in phase/total activities of model * % weight of each phase Feasibility study => 3/ 19 * 10/100=0.1579*0.1 =0.01579 (b) Individual activity weightage Weightage per activity = Individual phase weightage 0.01579 = = 0.0053 Number of activities in that phase 3 5. Relationship weight calculation A) Construction of relationship between Phases Px => Py Activities of (p1)+activities(p2) * weight % of p1 + weight % of p2 --------------------------------------------------------- --------------------------------------------------------------- Total of all phase total % of weight 3+3 *10+10=> 6 * 20 ----- ----------- --- ----- 19 100 19 100 => 0.3158 * 0.2 = 0.0632 This is the total relation value of p1 & p2 Possible relation value = 3*3=9 Per activity relation between p1 & p2 = total relation value = 0.0632 ----------------------------- ----------- Possible relation value 9 = 0.0070 b) Occurrence relationship of PxA=>PyA where A is an existence As per the association map table & water fall model, 5 relationships occur between p1 & p2 Per activity relation value * 5 =0.0070 * 5 =0.035 The feasibility study phase possibility to affect in the requirement analysis phase as follows 0.035 => 0.035 = 0.035 * 20 --------- ----------------------- ---------- ----- (p1+p2) 0.01579 + 0.01579 0.03158 100 =1.1083 * 0.2 Originally affected =0.2217 Dependency level of p1 + p2 = 0.2217 Independency level of p1 + p2= 1-0.2217 = 0.7783 (6) Construction relationship weighted matrix In this step I am constructing the relationship weightage matrixes between the phases x and x+1 (a)association map construction Direct relationship function Association map is constructed for the phases x and x +1 if there is a direct relationship between them If the phase x is having relation with x+1 then there is a path existing between the x and x+1 phase in the association map (b)routed relationship function (i) Single hidden phase This type of routed relationship is constructed if there is a path between the phases X and the phase x+2 through the phase x+1 which is in between those two phases (ii) Multilevel hidden phase This type of relationship occurs only when there is a relationship between x and X+3 or x+4 phase which is having the path existence through x+1 and x+2 etc. (c)activities as a node Each activity of the phases is considered as the nodes of the network construction. In the phase1 of waterfall model there are three activities and these three are going to be considered as nodes of the first layer of the network. Likewise the remaining phases and their activities are treated as the respective layers and nodes. Integrated Intelligent Research (IIR) 465
(d)nodes process as a weight The weightage of the particular activities of a particular phases are given as the value of the nodes in layers of the network model. Example of waterfall model network is given below: 2 1.5 1 0.5 Spiral Model Iterative Model V Model WaterFall Model 0 Phase1 Phase2 Phase3 Phase4 Phase5 Spiral Model 0.1871 0.2439 0.2758 0.3672 0.2222 Iterative Model 0.3352 0.6355 0.486 0 0 V Model 0.3035 0.3997 0.5335 0.5561 0 WaterFall Model 0.20088 0.2378 0.253 0.8389 0.4291 Comparison of Dependency values of waterfall model within phases WATER-FALL MODEL Integrated Intelligent Research (IIR) 466
Conclusion The associative analysis of software development phase dependency for the identification of potential developer methodology is designed, executed and experimental results are obtained. The existing architecture phase analysis, the common phase such as design, analysis, development, implementation and testing and maintenance. The development activities are identified and represented in Associative Relationship Matrix. As per the Associative Relationship Matrix values the common phases are identified between the architecture. The weight values are computed as per the developers involvement, contribution, and their performance. A neural network model developed and tested to identify the iterative activities weight from one phase to another. Based on the computed values potential developers are identified. This developer s could be assigned for future technology drive. The model analysis selected the specific and limited number of activities could be inserted and tested as part of the future work. References [1] Adepoju, G.A., Ogunjuyigbe, S.O.A., and Alawode K.O. 2007. Application of Neural Network to Load Forecasting in Nigerian Electrical Power System. The Pacific Journal of Science and Technology. 8(1):68-72.[5.11] [2] Adil Ali Abdelaziz, Wan M.N. Wan Kadir, Addin Osman, Comparative Analysis of Software Performance Prediction Approaches in Context of Component-based System, International journal of computer Application. [3] BARRY W. Boehm, A Spiral Model For Software Development And Enhancement TRW Defense groups, 0018-9162/88/0500-0061-IEEE [4] Carolyn Mizell --- Linda Malone, A Software Development Simulation Model of a Spiral Process, International Journal of Software Engineering, ISSN/EISSN: 16876954 20901801, Volume: 2 Issue: 2 Pages: 3-14. Integrated Intelligent Research (IIR) 467
[5] Dromey & Rout, (1992), Australia s Competitive Dependence on Software: Threats, Challenges and Opportunities, SQI-92-01, ASQI, Griffith University, Brisbane. [6] Eric S. K. Yu and John Mylopoulos, Understanding Why in Software Process Modelling, Analysis, and Design, Department of Computer Science, University of Toronto,Toronto, Ontario, Canada M5S 1A4 [7] Faisal A. Abu Rub --- Ayman A. Issa, Effects of Workspace on Engineering Software Projects, Lecture Notes in Engineering and Computer Science ISSN/EISSN: 20780958 20780966, Volume: 2170 Issue: 1 Pages: 479-483 [8] Gourav Khurana, Sachin Gupta, Study & Comparison Of Software Development Life Cycle Models, IJREAS Volume 2, Issue 2 (February 2012) ISSN: 2249-3905 [9] Hertz, J.K. 1991. Introduction to the Theory Of Neural Computation. Addison Wesley: New York, NY.[5.13] [10] Hofmeister, A. M. and J. M., Ferrara, Artificial Intelligence Applications in Special Education: How Feasible? Final Report, Logan, Utah State U. (1986). [5.4] [11] Hofmeister, Alan M. and Margaret M. Lubke, Expert Systems: Implications for the Diagnosis and Treatment of Learning Disabilities, Learning Disability Quarterly, Vol. 11, No. 3 pp. 287-91 (Summer, 1988).[5.5] [12] Ian Sommerville, Software Engineering, 6th edition,isbn 0 201 39815 X, Pearson Education Limited, Harlow 2001 [13] Iman Attarzadeh, Siew Hock Ow, Soft Computing Approach for Software Cost Estimation, International Journal of Software Engineering ISSN/EISSN: 16876954 20901801 Volume: 3 Issue: 1 Pages: 3-12, Publisher: Software Engineering Competence Center (SECC) [14] [JAM 2011] James A. Rodger; Pankaj Pankaj;Ata Nahouraii, knowledge Management of Software Productivity and Development Time, Journal of Software Engineering and Applications ISSN/EISSN: 19453116 19453124, Volume: 04 Issue: 11 Pages: 609-618 [15] [JAS 2008] Jasmine K.S --- Dr. R. Vasantha, A New Process Model For Reuse Based Software Development Approach, Lecture Notes in Engineering and Computer Science ISSN/EISSN: 20780958 20780966, Volume: 2170 Issue: 1 Pages: 251-254 [16] [LAI 2012], Laila Cheikhi, Rafa E. Al-Qutaish Ali Idri, Software Productivity: Harmonization in ISO/IEEE Software Engineering Standards, journal of software,1796217x,vol 7,462-470 P [17] [LEE 1987] Lee Osterweil M M LEHMAN, Process Models, Process Programs Programming Support, Response To An ICSE9 Keynote Address,Department of Computing, Imperial College, London SW7 2BH [18] [LEH 1969] Lehman MM, 'The Programming Process', IBM Res. Rep. RC 2722, IBM Res. Div., Yorktown Heights, NY 10495, Dec. 1969, 46p. Integrated Intelligent Research (IIR) 468