Object-Oriented Model Size Measurement: Experiences and a Proposal for a Process
|
|
- Eugene Adams
- 6 years ago
- Views:
Transcription
1 Object-Oriented Model Size Measurement: Experiences and a Proposal for a Process Vieri Del Bianco University of Insubria Via Mazzini, Varese (Italy) delbian1970@yahoo.it Luigi Lavazza CEFRIEL & University of Insubria Via Mazzini, Varese (Italy) luigi.lavazza@uninsubria.it ABSTRACT The size of SW artifacts is universally recognized as one of the most relevant metrics needed to support important software engineering and management practices, such as cost estimation, defect density estimation for test planning, etc. Traditionally, Lines Of Code (LOCs) and Function Points (FPs) have been used often successfully to characterize the physical and functional size, respectively, of software coded in languages like C, COBOL, or Ada. Since object-oriented (OO) programming became a popular development practice, researchers and practitioners have defined several techniques aimed at measuring object-oriented software. Under several respects, OO metrics have not yet fully proven their validity. Model-Driven Development requires that suitable model metrics be defined in order to characterize the size of models, since it is expected that several features of the resulting code can be estimated on the basis of the model s quantitative characteristics. In this paper we report some experimental evaluations of metrics for OO models. Such metrics were obtained by adapting for OO models some metrics that ware originally conceived for OO code. According to the reported results, we sketch a methodological approach to the measurement of model size and other quantitative characteristics. Categories and Subject Descriptors D.2.8 [Software Engineering]: Metrics Process metrics, Product metrics. General Terms Measurement. Keywords Object-oriented systems, size measures, Function Point Analysis, empirical validation, Lines of Code, Model metrics, UML metrics. 1. INTRODUCTION Since the introduction of object-oriented programming in the industrial practice, several techniques aimed at measuring objectoriented software have been proposed. Metrics were proposed to evaluate the characteristics of object-oriented design [5], to evaluate the characteristics of UML [8], to estimate the development effort [2][6], and for several other purposes. Among the proposed metrics, a number of approaches undertook the adaptation of the principles of Function Point Analysis [1] to object-oriented systems. Among these are the definitions of Object-Oriented Function Points (OOFPs) [2][3] and Class Points [6]. In previous work, we applied several object-oriented metrics in order to assess their validity [7][11]. For this purpose, we measured two sets of programs produced by students in a Software Engineering course, as well as a set of Open Source (OS) programs. The requirement of all the examined programs was to implement a chatting system; the programming language adopted was Java. The analysis of the collected data highlighted the relations existing among FP-like OO metrics, traditional OO metrics (e.g., number of classes, attributes, methods, etc.), and lines of code (LOCs). The paper is organized as follows: section 2 briefly illustrates the evaluations of object-oriented metrics deriving from our previous work. Section 3 proposes a methodological approach to OO Model measurement that should be able to overcome the limitations of current OO metrics suites. Section 4 draws some conclusions. 2. OO METRICS: LESSONS LEARNED The evaluations reported here are based on the analysis of two sets of programs. The first one includes the programs developed by master students of a software engineering course. Students were required to develop a simple but not trivial chatting system. The development was meant to test the ability of the students in following a software development process and in object-oriented design and implementation (using UML and Java). The second set of programs includes open source programs (all licensed under the GNU Public License) implementing chatting systems or similar functionalities. We performed the following measurements on all programs: Traditional LOC counting. The physical size of the programs was measured by means of the traditional Lines of Code metrics. More precisely, we counted effective LOCS; that is LOCs containing semantically meaningful statements: blank lines, comment lines, and lines containing only syntactic
2 information (open and close braces, etc.) were not counted. Given the OO nature of the programs, we measured the LOCs per class. Basic OO metrics. The number of elements that characterize an OO system was measured. In particular, we measured the number of classes, and the number of attributes and methods per class. FP-based OO metrics: we measured OOFPs [2] and Class Points [6]. Table 1 summarizes the data obtained from the measurement of the available chatting systems. The top 5 lines refer to the open source applications, while the bottom lines refer to the students applications. For each of these, two versions, having different functionalities were released. So, for instance, BCF1 and BCF2 refer to the two versions of program BCF. Table 1. The measures of the chatting systems. Application eloc Classes methods attributes OOFP CP chateverywhere_java chateverywhere_swing llamachat chipchat freecs BCF CC FDT MDP RER SM BCF CC FDT MDP RER SM The data reported in Table 1 were derived directly from the Java code of the applications, by means of an automatic measurement tool we developed called MACXIM [10][11]. 2.1 Relations between object-oriented basic metrics and LOCs. The statistical analysis performed in [7] showed a strong linear correlation (r 2 = 0.97, F observed = 200, F critic. 99% = 7.56) between LOCs and basic metrics, namely the numbers of attributes and methods. For students programs, the number of effective LOCs (elocs) is a linear combination of the number of methods (NoM) and the number of attributes (NoA). In fact, the formula eloc = 3.3 * NoA * NoM computes eloc with a reasonably small absolute error (23%). We observed that such correlation does not hold for the considered set of open source programs. More precisely, OS programs tend to be bigger (+75% on average) than the students programs having a similar number of classes. This seems reasonable, since OS programs implement non functional requirements that the students work did not address: for instance the students programs were not required to be very robust, reliable, secure, etc. In practice, we have that a good correlation between the LOCs and the basic OO metrics holds for the students programs, but it cannot be used as a predictive model for OS programs. 2.2 Results concerning object-oriented FPbased metrics The statistical analysis performed in [7] showed a strong linear correlation between basic metrics (i.e., number of attributes, methods, etc.) and both OOFPs and CPs. More precisely, both FPbased metrics appeared to be linearly proportional to the number of methods (NoM). In order to explore this issue for OS software, we employed the model derived from the analysis of students programs to predict
3 the FP-like measures of open source programs. The result was that both OOFPs and CPs of OS software can be predicted quite well, with a reasonably small average absolute error. This result is particularly relevant, since it casts the doubt that ambitious metrics, also relatively complex to compute, such as OOFPs and CPs, are actually equivalent to much more simple and straightforward metrics like the number of methods. According to the results reported above, a very strong linear correlation between OOFPs and CPs was found. In fact it was quite easy to observe, even without the help of any sophisticated statistical tool, that OOFP are generally between 6 and 7 times the CPs (with one noticeable exception concerning llamachat, probably due to an unusually good (!) organization of the program). 2.3 LOCs and defect density The work reported in [12] evaluated the possibility of predicting defect density in a very large industrial software system on the basis of size expressed in LOCs or on the basis of object-oriented metrics (namely a subset of Chidamber and Kemerer suite [5]). The results of the analysis confirmed that the intuitive idea the bigger, the more faulty, is generally valid, even though the fault density increases only linearly (i.e., the number of faults addressed is proportional to the number LOCs considered). On one hand using LOCs as fault predictor allows to stay on the safeside, avoiding the risk of focusing first on big amounts of nonfaulty modules. On the other hand, finding a way to predict accurately fault-proneness would allow optimizing verification effort: in the case considered in [12] 30% of the system was responsible for over 80% of the faults. However, the experimental results showed that in the considered case the OO metrics we used are no better predictors than LOCs. Actually they showed an ability to predict fault density quite close to LOCs one. Such negative result should not be considered definitive, since it is possible that the low quality of OO metrics were actually due to a not very good organization of the programs, object-oriented programming having been introduced in the organization recently, and having not yet been mastered by several programmers. 2.4 Conclusions on metrics evaluations In conclusion, we can say that it is quite hard to estimate LOCs on the basis of models OO metrics or, more generally, to establish a correspondence between the number of LOCs and the numbers that quantitatively represent the object-oriented characteristics of the systems (NoM, NoA, etc.). This difficulty was experienced with code; therefore we expect that it will prove even more difficult to establish a correlation between LOCs and the basic OO metrics of the model of the system. An explanation for this phenomenon still to be proved is that the number of lines of code depends on the number of classes, attributes and methods, but also on other factors. In fact, the number of classes, attributes and methods tend to provide a good indication of the functional size, as they describe the amount of data to be managed and the operations to be realized. Note that the correlation between basic OO metrics and FP-like metrics supports this statement. However, the complexity of operations or the non functional requirements for the system clearly affect the way the code is developed, and can therefore contribute to determining the size of the code. In any case, it is not at all clear to what extent LOCs are meaningful in an OO context. Research is still ongoing, but previous results do not support too much optimism [13]. In conclusion, it is not yet clear whether research addressing the goal of estimating LOCs on the basis of model size metrics can be successful or useful. Let us now consider the metrics that have been proposed to address the functional size of software by suitable adapting the principles of Function Point Analysis [1]. Note that the considered FP-like metrics can be applied not only to code, but also to models (namely to UML diagrams), measurement being performed when code does not yet exist, according to the principles of FPA. Our results show that for code FP-like metrics seem to be equivalent to far less sophisticated OO metrics. Since the elements that determine the value of OO FP-like metrics are the same in code and in models, we expect that also applying OO FPlike metrics to models could result in hardly any better indicator than those provided by basic metrics (number of attributes, number of methods, etc.). Although sufficient for some initial evaluation, the work we did does not support general conclusions. We need to analyze more programs, and of different nature, in order to confirm our results. 3. MODEL MEASUREMENT: HOW? The results illustrated in Section 2 demonstrate that in the objectoriented domain it is often difficult to get practically useful contributions from predefined metrics. More precisely, a set of metrics selected for a given purpose often fails to achieve the goal. On the contrary, the large variety of object-oriented metrics definitions proposed in the literature [14][15][16][17] demonstrate that it is quite easy to devise new metrics for the most different purposes, which seem reasonable from a conceptual point of view, but whose effectiveness in practice is rather hard to prove. 3.1 A two-step approach to measurement In our opinion, a way to overcome this impasse consists in performing wide range, general purpose measurements, without committing too early to a specific set of metrics definitions. Putting it in a rough way, the idea is that you should measure as much as you can, thus maximizing the possibility that some of the collected data actually prove useful for the given purpose. Although this process could seem unfeasible in general (you have to collect as many different metrics as possible!), when applied to
4 models, the approach is made viable by the availability of a finite metamodel. Consider for instance UML: all the features of a UML artifact that you can identify and measure (e.g., the number of attributes, the number of methods, the position of a class in a generalization hierarchy, etc.) are all specified in the definition of the UML metamodel [18]. So, the metamodel defines the domain of the elements that can be measured, while the actual metrics can be defined in various ways combining different functions involving the elements of the model. In fact, metrics definitions range from the simple count of metamodel elements (e.g., the number of classes) to relatively complex algorithms (see for instance the computation of Class Points [6]). This observation suggests that the measurement is performed in two steps: 1. The model is analyzed, and the elements of the model as defined in the metamodel are identified, extracted and stored in a database. The elements are properly classified according to the metamodel. In other words, the conceptual model of the database is directly inspired by the metamodel. 2. Measures are computed by querying the database. Step 1 guarantee that all the relevant information is captured. It also allows the user to store the information in a persistent and safe repository, from which measures can be retrieved exploiting powerful query engines. Step 2 guarantees the maximum flexibility. A problem with traditional metrics is that for every interesting metrics definition and for every language you need a specific tool. When new metrics are defined or conceived by the final user, or when the same metrics are to be collected from a different language, the corresponding tool is often not available, thus making the measurement process long and expensive. On the contrary, having the model representation stored in a database, the user has just to execute the proper query in order to retrieve the desired measure. Writing queries is easier than writing measurement tools; moreover, queries can be stored and reused very easily. Easing the availability of measures makes it possible to perform several measurements according to different criteria, and then verify via statistical analysis whether any of the collected metrics can be used as reliable indicator of the models features of interest (size, complexity, design quality, etc.). The proposed approach to measurement needs to be effectively supported by tools. Next subsection describes a tool implementing the proposed process. UML models & Java code Models & code (intermediate representation) Developer MACXIM translator Measurer Export directive Metrics definitions (XQuery) Results of Measurement (exported format) Query engine Results of Measurement (XML) exist XML DB Query engine Figure 1. The measurement process supported by MACXIM. 3.2 Automatic Measurement MACXIM (Model And Code XML-based Integrated Meter) is a tool that was developed according to the two step approach described above [10].
5 The MACXIM tool parses XMI files exported by UML editing tools or XML files derived from Java source code, and populates a XML database with the relevant information (e.g., classes, methods, attributes, associations, etc.). The actual measurement is then carried out simply by querying the database (see Figure 1). The XML files representation of Java source code is obtained through JavaML ( JavaML converts Java source files into XML files through the OS Jikes Java compiler (previously owned by IBM), and can also convert XML files back to Java source code through an XSLT style sheet. We come now to a very important question; that is, what information should the intermediate representations contain? On one hand, in order to save space, it would be advisable to compute most of the measures in advance, thus storing only the results of the preliminary measurements. On the other hand, the need to support multiple metrics (possibly involving different languages) suggests that the intermediate representation should include as much as possible of the detailed information available in the source code or model. We adopted the following trade-off: The coarse grain information concerning the structure of the system and the main elements (such as classes, functions, types etc.) are reported in detail in the intermediate representation: for instance, for every Java class we keep complete information about attributes and attribute types, methods and methods signatures, inheritance relations, etc. We summarize the information concerning the source code of finer grained elements (such as methods implementation) by computing various Source Lines of Code (SLOC) measures (total LOCs, effective LOCs, comment LOCs, etc.), the Cyclomatic Complexity[11], and the number and types of dependencies of a method. The tool supports two ways for defining and executing metrics: they can be defined in XQuery (the query specifies what XML elements of the intermediate representations should be used and what computation should be performed) or defined (and executed) by providing the specific Java measurement program. In general the execution of the query can both compute the specified metrics and also store the results in the XML database itself. Even though the tool is conceived to let users define their own metrics, the definitions of the most common metrics have been written and tested, and are readily available to users. We defined various kinds of metrics at different granularities. At the project level metrics involve different types of artefacts and generally several instances of the same artefact type (e.g. several Java files). Other metrics are defined at the package, class, and method level. In particular, it is possible to derive different kinds of measures from UML models simply by writing the proper queries; the tool is equipped with queries that compute basic OO metrics, Chidamber & Kemerer metrics, and FP-like object-oriented metrics. Measures can themselves be elaborated via queries, for instance to compare measures of a model with the measures of the corresponding implementation. 4. CONCLUSIONS The paper presents our view of how model measurement should be approached by developers. As far as metrics definitions are not validated and a knowledge corpus concerning OO model measurement is not available, the best option is in our opinion to pursue maximum flexibility. In practice this means collecting lots of metrics, and then discarding the ones that do not contribute to the informative goals. This approach, although at first sight requiring to waste time and effort, is made practically possible by tool support. It must be observed that here we reported exclusively our point of view on model size metrics. We did not take into consideration other researchers findings, leaving the discussion about the integration of available results as a workshop activity. 5. REFERENCES [1] A.J. Albrecht, Measuring Application Development Productivity, Proc. Joint SHARE/GUIDE/IBM Application Development Symp., pp , 1979 [2] G. Antoniol, C. Lokan, G. Caldiera, R. Fiutem, A Function Point-Like Measure for Object-Oriented Software, Empirical Software Engineering, 4 (3): , September [3] G. Antoniol, C. Lokan, R. Fiutem, Object-Oriented Function Points: an Empirical Validation, Empirical Software Engineering, 8 (3): , September [4] L. Briand, E. Arisholm, S. Counsell, F. Houdek, and P. Thévenod-Fosse, Empirical Studies of Object-Oriented Artifacts, Methods, and Processes: State of The Art and Future Directions, J. Empirical Software Eng., vol. 4, pp , Sept [5] S.R. Chidamber and C.F. Kemerer: A Metric Suite for Object-Oriented Design, IEEE Trans. Software Eng., vol.20, no.6, pp , June1994. [6] G. Costagliola, F. Ferrucci, G. Tortora, and G. Vitiello, Class Point: An Approach for the Size Estimation of Object-Oriented Systems, IEEE Transactions On Software Engineering, Vol. 31, No. 1, pp , January 2005, [7] V. Del Bianco and L. Lavazza, An Empirical Assessment of Function Point-Like Object-Oriented Metrics, METRICS 2005, 11 th International Software Metrics Symposium, Como, September [8] H. Kim, C. Boldyreff: Developing Software Metrics Applicable to UML Models, 6th ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering, June 11th, [9] B.A. Kitchenham, N. Fenton, and S.L. Pfleeger, Towards a Framework for Software Measurement Validation, IEEE Trans. Software Eng., vol. 21, no. 12, pp , Dec
6 [10] A.F. Crisà, V. del Bianco, L. Lavazza, A tool for the measurement, storage, and pre-elaboration of data supporting the release of public datasets, Workshop on Public Data about Software Development (WoPDaSD 2006), June , Como, Italy. [11] Vieri Del Bianco, Luigi Lavazza, An Assessment of Function Point-Like Metrics for Object-Oriented Open- Source Software, International Conference on Software Process and Product Measurement, MENSURA 2006, November 2006, Cádiz, Spain [12] G. Denaro, L. Lavazza, M. Pezzè An Empirical Evaluation of Object Oriented Metrics in Industrial Setting, The 5th CaberNet Plenary Workshop, November 2003, Porto Santo, Madeira Archipelago, Portugal. [13] Armour, P. G. Beware of counting LOC. Communications of the ACM 47, 3, pp , March [14] Lorenz M., Kidd J., Object-Oriented Software Metrics, Prentice Hall, [15] Bruntink, M., Predicting Class Testability using Object- Oriented Metrics, 4th IEEE International Workshop on Source Code Analysis and Manipulation (SCAM'04), [16] R. Harrison, S. J. Counsell, R. Nithi, An Evaluation of the MOOD Set of Object-Oriented Software Metrics, IEEE Transactions on Software Engineering, 24(6), pp , [17] J. Hogan, An Analysis of OO Software Metrics, Technical report, University of Warwick, May [18] Unified Modeling Language: Infrastructure, OMG, formal/ , March 2006.
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2005 Vol. 4, No. 4, May-June 2005 Automated Measurement of UML Models: an open toolset
More informationAn Experimental Study on Conceptual Data Model Based Software Code Size Estimation
An Exp. Study on Conceptual Data Model Based Software Code Size Est. An Experimental Study on Conceptual Data Model Based Software Code Size Estimation Oguz Atak 1, Cigdem Gencel 2 1 Havelsan Inc., 2 Informatics
More informationA Report on Using Simplified Function Point Measurement Processes
ICSEA 212 : The Seventh International Conference on Software Engineering Advances A Report on Using Simplified Function Point Measurement Processes Luigi Lavazza Geng Liu Dipartimento di Scienze Teoriche
More information2014, IJARCSSE All Rights Reserved Page 303
Volume 4, Issue 1, January 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com A Novel Software
More informationHOW AND WHEN TO FLATTEN JAVA CLASSES?
HOW AND WHEN TO FLATTEN JAVA CLASSES? Jehad Al Dallal Department of Information Science, P.O. Box 5969, Safat 13060, Kuwait ABSTRACT Improving modularity and reusability are two key objectives in object-oriented
More informationEvaluation of a Business Application Framework Using Complexity and Functionality Metrics
Evaluation of a Business Application Framework Using Complexity and Functionality Metrics Hikaru Fujiwara 1, Shinji Kusumoto 1, Katsuro Inoue 1, Toshifusa Ootsubo 2 and Katsuhiko Yuura 2 1 Graduate School
More informationTaxonomy Dimensions of Complexity Metrics
96 Int'l Conf. Software Eng. Research and Practice SERP'15 Taxonomy Dimensions of Complexity Metrics Bouchaib Falah 1, Kenneth Magel 2 1 Al Akhawayn University, Ifrane, Morocco, 2 North Dakota State University,
More informationReusability Metrics for Object-Oriented System: An Alternative Approach
Reusability Metrics for Object-Oriented System: An Alternative Approach Parul Gandhi Department of Computer Science & Business Administration Manav Rachna International University Faridabad, 121001, India
More informationTowards Cohesion-based Metrics as Early Quality Indicators of Faulty Classes and Components
2009 International Symposium on Computing, Communication, and Control (ISCCC 2009) Proc.of CSIT vol.1 (2011) (2011) IACSIT Press, Singapore Towards Cohesion-based Metrics as Early Quality Indicators of
More informationImpact of Dependency Graph in Software Testing
Impact of Dependency Graph in Software Testing Pardeep Kaur 1, Er. Rupinder Singh 2 1 Computer Science Department, Chandigarh University, Gharuan, Punjab 2 Assistant Professor, Computer Science Department,
More informationTowards the re-usability of software metric definitions at the meta level
Towards the re-usability of software metric definitions at the meta level - Position Paper - Jacqueline A. McQuillan and James F. Power Department of Computer Science, National University of Ireland, Maynooth,
More informationA Complete and Comprehensive Metrics Suite for Object-Oriented Design Quality Assessment
, pp.173-188 http://dx.doi.org/10.14257/ijseia.2014.8.2.17 A Complete and Comprehensive Metrics Suite for Object-Oriented Design Quality Assessment K.P. Srinivasan 1 and Dr. T.Devi 2 1 Associate Professor
More information1 Introduction. Abstract
An MVC-based Analysis of Object-Oriented System Prototyping for Banking Related GUI Applications Correlationship between OO Metrics and Efforts for Requirement Change Satoru Uehara, Osamu Mizuno, Yumi
More informationEffect of Principle Component Analysis and Support Vector Machine in Software Fault Prediction
International Journal of Computer Trends and Technology (IJCTT) volume 7 number 3 Jan 2014 Effect of Principle Component Analysis and Support Vector Machine in Software Fault Prediction A. Shanthini 1,
More informationProcedia Computer Science
Procedia Computer Science 00 (2009) 000 000 Procedia Computer Science www.elsevier.com/locate/procedia INSODE 2011 Theoretical Analysis for the Impact of Including Special Methods in Lack-of-Cohesion Computation
More informationEffective Estimation of Modules Metrics in Software Defect Prediction
Effective Estimation of Modules Metrics in Software Defect Prediction S.M. Fakhrahmad, A.Sami Abstract The prediction of software defects has recently attracted the attention of software quality researchers.
More informationSpemmet - A Tool for Modeling Software Processes with SPEM
Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes
More informationCOST ESTIMATION FOR DISTRIBUTED SYSTEMS USING USE CASE DIAGRAM
S. V. Pingale et al. : Cost Estimation for Distributed Systems using Use Case Diagram Journal of Advances in Engineering Science 41 Section C (3), July - December 2010, PP 41-48 COST ESTIMATION FOR DISTRIBUTED
More informationSNS College of Technology, Coimbatore, India
Support Vector Machine: An efficient classifier for Method Level Bug Prediction using Information Gain 1 M.Vaijayanthi and 2 M. Nithya, 1,2 Assistant Professor, Department of Computer Science and Engineering,
More informationAn Empirical Evaluation of Simplified Function Point Measurement Processes
International Journal on Advances in Software, vol no 1 & 2, year 3, http://www.iariajournals.org/software/ An Empirical Evaluation of Simplified Function Point Measurement Processes 1 Luigi Lavazza Geng
More informationAn Empirical Study on Object-Oriented Metrics
An Empirical Study on Object-Oriented Metrics Mei-Huei Tang Ming-Hung Kao Mei-Hwa Chen Computer Science Department SUNY at Albany Albany, NY 12222 (meitang, kao, mhc)@cs.albany.edu Abstract The objective
More informationEmpirical Evaluation and Critical Review of Complexity Metrics for Software Components
Proceedings of the 6th WSEAS Int. Conf. on Software Engineering, Parallel and Distributed Systems, Corfu Island, Greece, February 16-19, 2007 24 Empirical Evaluation and Critical Review of Complexity Metrics
More informationObject Oriented Measurement
Object Oriented Measurement Diego Chaparro González dchaparro@acm.org Student number: 59881P 17th January 2003 Abstract This document examines the state of art in software products measurement, with focus
More informationResearch Article ISSN:
Research Article [Agrawal, 1(3): May, 2012] IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY Use Of Software Metrics To Measure And Improve The Quality Of The Software Design
More informationIntroduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process
Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative
More informationIMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING
IMPACT OF DEPENDENCY GRAPH IN SOFTWARE TESTING Pardeep kaur 1 and Er. Rupinder Singh 2 1 Research Scholar, Dept. of Computer Science and Engineering, Chandigarh University, Gharuan, India (Email: Pardeepdharni664@gmail.com)
More informationCHAPTER 4 HEURISTICS BASED ON OBJECT ORIENTED METRICS
CHAPTER 4 HEURISTICS BASED ON OBJECT ORIENTED METRICS Design evaluation is most critical activity during software development process. Design heuristics are proposed as a more accessible and informal means
More informationAUTOMATED GUI TESTING OF SOFTWARE APPLICATIONS USING UML MODELS
AUTOMATED GUI TESTING OF SOFTWARE APPLICATIONS USING UML MODELS Robertas Jasaitis, Dominykas Barisas, Eduardas Bareisa Kaunas University of Technology, Department of Software Engineering Studentu st. 50,
More informationEvolutionary Decision Trees and Software Metrics for Module Defects Identification
World Academy of Science, Engineering and Technology 38 008 Evolutionary Decision Trees and Software Metrics for Module Defects Identification Monica Chiş Abstract Software metric is a measure of some
More informationSequence Diagram Generation with Model Transformation Technology
, March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,
More informationCHAPTER 4 OBJECT ORIENTED COMPLEXITY METRICS MODEL
64 CHAPTER 4 OBJECT ORIENTED COMPLEXITY METRICS MODEL 4.1 INTRODUCTION Customers measure the aspects of the final product to determine whether it meets the requirements and provides sufficient quality.
More informationSOFTWARE ARCHITECTURE & DESIGN INTRODUCTION
SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION http://www.tutorialspoint.com/software_architecture_design/introduction.htm Copyright tutorialspoint.com The architecture of a system describes its major components,
More informationTheoretical Validation of Inheritance Metrics for Object-Oriented Design against Briand s Property
I.J. Information Engineering and Electronic Business, 2014, 3, 28-33 Published Online June 2014 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijieeb.2014.03.05 Theoretical Validation of Inheritance
More informationModule 16. Software Reuse. Version 2 CSE IIT, Kharagpur
Module 16 Software Reuse Lesson 40 Reuse Approach Specific Instructional Objectives At the end of this lesson the student would be able to: Explain a scheme by which software reusable components can be
More informationEmpirical Study on Impact of Developer Collaboration on Source Code
Empirical Study on Impact of Developer Collaboration on Source Code Akshay Chopra University of Waterloo Waterloo, Ontario a22chopr@uwaterloo.ca Parul Verma University of Waterloo Waterloo, Ontario p7verma@uwaterloo.ca
More informationMetrics and OO. SE 3S03 - Tutorial 12. Alicia Marinache. Week of Apr 04, Department of Computer Science McMaster University
and OO OO and OO SE 3S03 - Tutorial 12 Department of Computer Science McMaster University Complexity Lorenz CK Week of Apr 04, 2016 Acknowledgments: The material of these slides is based on [1] (chapter
More informationInvestigation of Metrics for Object-Oriented Design Logical Stability
Investigation of Metrics for Object-Oriented Design Logical Stability Mahmoud O. Elish Department of Computer Science George Mason University Fairfax, VA 22030-4400, USA melish@gmu.edu Abstract As changes
More informationInternational Journal for Management Science And Technology (IJMST)
Volume 4; Issue 03 Manuscript- 1 ISSN: 2320-8848 (Online) ISSN: 2321-0362 (Print) International Journal for Management Science And Technology (IJMST) GENERATION OF SOURCE CODE SUMMARY BY AUTOMATIC IDENTIFICATION
More informationModel Transformation Testing Challenges
Model Transformation Testing Challenges Benoit Baudry 1, Trung Dinh-Trong 2, Jean-Marie Mottu 1, Devon Simmonds 2, Robert France 2, Sudipto Ghosh 2, Franck Fleurey 1, Yves Le Traon 3 1 IRISA, Campus Beaulieu,
More informationCollaborative Framework for Testing Web Application Vulnerabilities Using STOWS
Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology ISSN 2320 088X IMPACT FACTOR: 5.258 IJCSMC,
More informationReview Report on Estimating the Back-End Cost of Business Software using ER diagram Artifact
Review Report on Estimating the Back-End Cost of Business Software using ER diagram Artifact SWAYAMPRAVA PARIDA School of Computer Engineering KIIT University Bhubaneswar, India swayamprava89@gmail.com
More informationUML-Based Conceptual Modeling of Pattern-Bases
UML-Based Conceptual Modeling of Pattern-Bases Stefano Rizzi DEIS - University of Bologna Viale Risorgimento, 2 40136 Bologna - Italy srizzi@deis.unibo.it Abstract. The concept of pattern, meant as an
More informationBLU AGE 2009 Edition Agile Model Transformation
BLU AGE 2009 Edition Agile Model Transformation Model Driven Modernization for Legacy Systems 1 2009 NETFECTIVE TECHNOLOGY -ne peut être copiésans BLU AGE Agile Model Transformation Agenda Model transformation
More informationResource Estimation for Objectory Projects
Resource Estimation for Objectory Projects Gustav Karner Objective Systems SF AB Torshamnsgatan 39, Box 1128 164 22 Kista email: gustav@os.se September 17, 1993 Abstract In order to estimate the resources
More informationAn Empirical Verification of Software Artifacts Using Software Metrics
An Empirical Verification of Software Artifacts Using Software Metrics Raed Shatnawi and Ahmad Alzu bi Abstract In model-driven development, design understandability is very important to maintain software
More informationREVIEW AND OUTLOOKS OF THE MEANS FOR VISUALIZATION OF SYNTAX SEMANTICS AND SOURCE CODE. PROCEDURAL AND OBJECT ORIENTED PARADIGM DIFFERENCES
REVIEW AND OUTLOOKS OF THE MEANS FOR VISUALIZATION OF SYNTAX SEMANTICS AND SOURCE CODE. PROCEDURAL AND OBJECT ORIENTED PARADIGM DIFFERENCES Hristo Hristov Abstract. In the article, we have reviewed the
More informationRisk-based Object Oriented Testing
Risk-based Object Oriented Testing Linda H. Rosenberg, Ph.D. Ruth Stapko Albert Gallo NASA GSFC SATC NASA, Unisys SATC NASA, Unisys Code 302 Code 300.1 Code 300.1 Greenbelt, MD 20771 Greenbelt, MD 20771
More informationEffectiveness of software metrics for object-oriented system
Available online at www.sciencedirect.com Procedia Technology 6 (2012 ) 420 427 2nd International Conference on Communication, Computing & Security [ICCCS-2012] Effectiveness of software metrics for object-oriented
More information!MDA$based*Teaching*and* Research*in*Software*Engineering*!
Plan!MDA$based*Teaching*and* Research*in*Software*Engineering*! Ludwik!Kuźniarz! Blekinge*Institute*of*Technology* School*of*Computing* Sweden*! Myself! Driven Architecture! MDA based Reaserch! Sample
More informationExisting Model Metrics and Relations to Model Quality
Existing Model Metrics and Relations to Model Quality Parastoo Mohagheghi, Vegard Dehlen WoSQ 09 ICT 1 Background In SINTEF ICT, we do research on Model-Driven Engineering and develop methods and tools:
More informationSOFTWARE ASSESSMENT USING OBJECT METRICS
Key words: object metrics, metrics measuring tools, software assessment, software evolution Ilona BLUEMKE*, Rafał ROGUSKI* SOFTWARE ASSESSMENT USING OBJECT METRICS Adequate metrics of object-oriented software
More informationInternational Journal of Software and Web Sciences (IJSWS) EVALUATING TESTABILITY OF OBJECT ORIENTED SYSTEM
International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0063 ISSN (Online): 2279-0071 International
More informationAn Approach for Quality Control Management in Object Oriented Projects Development
J. Basic. Appl. Sci. Res., 3(1s)539-544, 2013 2013, TextRoad Publication ISSN 2090-4304 Journal of Basic and Applied Scientific Research www.textroad.com An Approach for Quality Control Management in Object
More informationThe Unified Modelling Language. Example Diagrams. Notation vs. Methodology. UML and Meta Modelling
UML and Meta ling Topics: UML as an example visual notation The UML meta model and the concept of meta modelling Driven Architecture and model engineering The AndroMDA open source project Applying cognitive
More informationEmpAnADa Project. Christian Lange. June 4 th, Eindhoven University of Technology, The Netherlands.
EmpAnADa Project C.F.J.Lange@tue.nl June 4 th, 2004 Eindhoven University of Technology, The Netherlands Outline EmpAnADa introduction Part I Completeness and consistency in detail Part II Background UML
More informationDesigning a System Engineering Environment in a structured way
Designing a System Engineering Environment in a structured way Anna Todino Ivo Viglietti Bruno Tranchero Leonardo-Finmeccanica Aircraft Division Torino, Italy Copyright held by the authors. Rubén de Juan
More informationSELECTED TOPICS in APPLIED COMPUTER SCIENCE
A Tool for Detecting Detects on Class Implementation in Object Oriented Program on the Basis of the Law of Demeter: Focusing on Dependency between Packages RYOTA CHIBA, HIROAKI HASHIURA and SEIICHI KOMIYA
More informationAn Object Oriented Runtime Complexity Metric based on Iterative Decision Points
An Object Oriented Runtime Complexity Metric based on Iterative Amr F. Desouky 1, Letha H. Etzkorn 2 1 Computer Science Department, University of Alabama in Huntsville, Huntsville, AL, USA 2 Computer Science
More informationABSTRACT 2. Related Work 1. Introduction 1 NNGT Journal: International Journal of Software Engineering Volume 1 July 30,2014
Maintainability Evaluation of Information Systems Dr Nejmeddine Tagoug College of Computer and Information Systems KSU University Saudi Arabia ntagoug@ksu.edu.sa ABSTRACT The maintenance of existing software
More informationEnhancing Mood Metrics Using Encapsulation
Proceedings of the 8th WSEAS International Conference on Automation and Information, Vancouver, Canada, June 9-2, 2007 252 Enhancing Mood Metrics Using Encapsulation SUNINT SAINI, MEHAK AGGARWAL Department
More informationSoftware design simulation for quick and qualitative application development
IJCSNS International Journal of Computer Science and Network Security, Vol.9, No.8, August 2009 89 Software design simulation for quick and qualitative application development P.K. Suri 1 Gurdev Singh
More informationComputation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):
viii Preface The software industry has evolved to tackle new approaches aligned with the Internet, object-orientation, distributed components and new platforms. However, the majority of the large information
More informationTHE ADHERENCE OF OPEN SOURCE JAVA PROGRAMMERS TO STANDARD CODING PRACTICES
THE ADHERENCE OF OPEN SOURCE JAVA PROGRAMMERS TO STANDARD CODING PRACTICES Mahmoud O. Elish Department of Computer Science George Mason University Fairfax VA 223-44 USA melish@gmu.edu ABSTRACT The use
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML
Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation
More informationQuantify the project. Better Estimates. Resolve Software crises
Quantify the project Quantifying schedule, performance,work effort, project status Helps software to be compared and evaluated Better Estimates Use the measure of your current performance to improve your
More informationSoftware Metrics based on Coding Standards Violations
Software Metrics based on Coding Standards Violations Yasunari Takai, Takashi Kobayashi and Kiyoshi Agusa Graduate School of Information Science, Nagoya University Aichi, 464-8601, Japan takai@agusa.i.is.nagoya-u.ac.jp,
More informationISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 3, Issue 11, May 2014
Coupling Appraisal in Object-Oriented Systems Priya Nigam, Rachna Mishra Department of Computer Science & Engg. Abstract The metrics "Coupling is a quantification of interdependence of two objects. Coupling
More informationObject-Oriented Analysis and Design Using UML (OO-226)
Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,
More information(S)LOC Count Evolution for Selected OSS Projects. Tik Report 315
(S)LOC Count Evolution for Selected OSS Projects Tik Report 315 Arno Wagner arno@wagner.name December 11, 009 Abstract We measure the dynamics in project code size for several large open source projects,
More informationKeywords: OLC, CLC. 2015, IJARCSSE All Rights Reserved Page 1
Volume 5, Issue 3, March 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Special Issue
More informationInternational Journal of Software and Web Sciences (IJSWS)
International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research) ISSN (Print): 2279-0063 ISSN (Online): 2279-0071 International
More informationBusiness Process Modelling
CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process
More informationIntroduction to Programming Languages and Compilers. CS164 11:00-12:30 TT 10 Evans. UPRM ICOM 4029 (Adapted from: Prof. Necula UCB CS 164)
Introduction to Programming Languages and Compilers CS164 11:00-12:30 TT 10 Evans 1 ICOM 4036 - Outline Prontuario Course Outline Brief History of PLs Programming Language Design Criteria Programming Language
More informationMetrics in assessing the quality and evolution of jedit
Metrics in assessing the quality and evolution of jedit Ilona Bluemke, Rafał Roguski Institute of Computer Science, Warsaw University of Technology Nowowiejska 15/19, 00-665 Warsaw, Poland I.Bluemke@ii.pw.edu.pl
More informationAnalysis of operations and parameters involved in interface for CBSE
Analysis of operations and parameters involved in interface for CBSE P.L. Powar 1, Dr. R.K. Pandey 2, M.P. Singh 3, Bharat Solanki 4 1 Department of Mathematics and Computer Science, R. D. University,
More informationExecuting Evaluations over Semantic Technologies using the SEALS Platform
Executing Evaluations over Semantic Technologies using the SEALS Platform Miguel Esteban-Gutiérrez, Raúl García-Castro, Asunción Gómez-Pérez Ontology Engineering Group, Departamento de Inteligencia Artificial.
More informationSoftware Service Engineering
Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language
More informationModel Driven Engineering (MDE)
Model Driven Engineering (MDE) Yngve Lamo 1 1 Faculty of Engineering, Bergen University College, Norway 26 April 2011 Ålesund Outline Background Software Engineering History, SE Model Driven Engineering
More informationSoftware Metrics 2.1 INTRODUCTION 2.2 PROJECT MANAGEMENT PROCESS ACTIVITIES
2 C h a p t e r Software Metrics 2.1 INTRODUCTION I am reminded of a very interesting story when we talk of software metrics. Once there was a meeting going on in USA. In that meeting, one of the ladies
More informationToward a definition of run-time object-oriented metrics
7TH ECOOP WORKSHOP ON QUANTITATIVE APPROACHES IN OBJECT-ORIENTED SOFTWARE ENGINEERING 200 1 Toward a definition of run-time object-oriented metrics - Position Paper - Aine Mitchell, James F. Power Abstract
More informationA Top-Down Visual Approach to GUI development
A Top-Down Visual Approach to GUI development ROSANNA CASSINO, GENNY TORTORA, MAURIZIO TUCCI, GIULIANA VITIELLO Dipartimento di Matematica e Informatica Università di Salerno Via Ponte don Melillo 84084
More informationQuality Metrics Tool for Object Oriented Programming
Quality Metrics Tool for Object Oriented Programming Mythili Thirugnanam * and Swathi.J.N. Abstract Metrics measure certain properties of a software system by mapping them to numbers (or to other symbols)
More informationUsing Function Point Analysis and COSMIC for Measuring the Functional Size of Real-Time and Embedded Software: a Comparison
330 Using Function Point Analysis and COSMIC for Measuring the Functional Size of Real-Time and Embedded Software: a Comparison Luigi Lavazza Sandro Morasca Davide Tosi Dipartimento di Scienze Teoriche
More informationMDSE USE CASES. Chapter #3
Chapter #3 MDSE USE CASES Teaching material for the book Model-Driven Software Engineering in Practice by Morgan & Claypool, USA, 2012. www.mdse-book.com MDSE GOES FAR BEYOND CODE-GENERATION www.mdse-book.com
More informationCHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview
CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:
More informationApplying ISO/IEC Quality Model to Quality Requirements Engineering on Critical Software
Applying ISO/IEC 9126-1 Quality Model to Quality Engineering on Critical Motoei AZUMA Department of Industrial and Management Systems Engineering School of Science and Engineering Waseda University azuma@azuma.mgmt.waseda.ac.jp
More informationSize Estimation of Cloud Migration Projects with Cloud Migration Point (CMP)
2011 International Symposium on Empirical Software Engineering and Measurement Size Estimation of Cloud Migration Projects with Cloud Migration Point (CMP) VanT.K.Tran, Kevin Lee, Alan Fekete, Anna Liu
More informationDesign Metrics for Object-Oriented Software Systems
ECOOP 95 Quantitative Methods Workshop Aarhus, August 995 Design Metrics for Object-Oriented Software Systems PORTUGAL Design Metrics for Object-Oriented Software Systems Page 2 PRESENTATION OUTLINE This
More informationClass Inheritance Metrics-An Analytical and Empirical Approach
Class Inheritance Metrics-n nalytical and Empirical pproach KUMR RJNISH 1, VNDN BHTTCHERJEE 2 1 Department of Computer Science & Engineering, Birla Institute of Technology, Ranchi-01, India kumar_rajnish_in@yahoo.com
More informationInternational Journal of Advanced Research in Computer Science and Software Engineering
ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: Applying Machine Learning for Fault Prediction Using Software
More informationEfficient Regression Test Model for Object Oriented Software
Efficient Regression Test Model for Object Oriented Software Swarna Lata Pati College of Engg. & Tech, Bhubaneswar Abstract : This paper presents an efficient regression testing model with an integration
More informationSecurity Issues Formalization
Security Issues Formalization V. T. Dimitrov University of Sofia, Faculty of Mathematics and Informatics, 5 James Bourchier Blvd, 1164, Sofia, Bulgaria E-mail: cht@fmi.uni-sofia.bg Software bugs are primary
More informationAnalysis of Reusability of Object-Oriented System using CK Metrics
Analysis of Reusability of Object-Oriented System using CK Metrics Brij Mohan Goel Research Scholar, Deptt. of CSE SGVU, Jaipur-302025, India Pradeep Kumar Bhatia Deptt. of CSE., G J University of Science
More informationPart I: Preliminaries 24
Contents Preface......................................... 15 Acknowledgements................................... 22 Part I: Preliminaries 24 1. Basics of Software Testing 25 1.1. Humans, errors, and testing.............................
More informationOCL Support in MOF Repositories
OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that
More information1DL321: Kompilatorteknik I (Compiler Design 1) Introduction to Programming Language Design and to Compilation
1DL321: Kompilatorteknik I (Compiler Design 1) Introduction to Programming Language Design and to Compilation Administrivia Lecturer: Kostis Sagonas (kostis@it.uu.se) Course home page: http://www.it.uu.se/edu/course/homepage/komp/h18
More informationStatistical Testing of Software Based on a Usage Model
SOFTWARE PRACTICE AND EXPERIENCE, VOL. 25(1), 97 108 (JANUARY 1995) Statistical Testing of Software Based on a Usage Model gwendolyn h. walton, j. h. poore and carmen j. trammell Department of Computer
More informationEmpirical Analysis of the Reusability of Object-Oriented Program Code in Open-Source Software
Empirical Analysis of the Reusability of Object-Oriented Program Code in Open-Source Software Fathi Taibi Abstract Measuring the reusability of Object-Oriented (OO) program code is important to ensure
More informationMACHINE LEARNING BASED METHODOLOGY FOR TESTING OBJECT ORIENTED APPLICATIONS
MACHINE LEARNING BASED METHODOLOGY FOR TESTING OBJECT ORIENTED APPLICATIONS N. Kannadhasan and B. Uma Maheswari Department of Master of Computer Applications St. Joseph s College of Engineering, Chennai,
More informationTowards Effective SysML Model Reuse
Roy Mendieta, Jose Luis de la Vara, Juan Llorens and Jose María Álvarez-Rodríguez Computer Science and Engineering Department, Carlos III University of Madrid, Madrid, Spain Keywords: Abstract: Systems
More information