350 likes | 540 Views
Measuring projects size through its native objects. Juan Grompone Interfase S.A. grompone@interfase.com.uy Tilsor S.A. grompone@tilsor.com.uy. Presentation Contents. The reasons for measuring GeneXus projects measurement Web sites measurement Datawarehousing measurement
E N D
Measuring projects size through its native objects Juan Grompone Interfase S.A. grompone@interfase.com.uy Tilsor S.A. grompone@tilsor.com.uy
Presentation Contents • The reasons for measuring • GeneXus projects measurement • Web sites measurement • Datawarehousing measurement • Workflows measurement • Conclusions Derechos reservados, Juan Grompone, 2004.
Quality Management • These are the two main reasons for using projects metrics. • Management needs the accurate follow up of projects. • Quality standards also demand quantitative measures. Derechos reservados, Juan Grompone, 2004.
Projects measurement • Measurement by Functional Points has prevailed as main metrics. • New technologies demand expanding old definitions. • GeneXus, Web, Datawarehousing or Workflow applications demand these expansions. • They are not normalized. Derechos reservados, Juan Grompone, 2004.
Size and Effort • These are two different concepts. • Size results from a metrics that tends to be independent from technology. • It is an abstract metrics. • Effort depends strongly on technology. • It is an empirical result. • I will not deal with effort. Derechos reservados, Juan Grompone, 2004.
PDFs basic objects • Functional Points calculation considers the following system objects: • External inputs (EI) • External outputs (EO) • Queries (EQ) (inputs or outputs) • Internal logic files (ILF) • External interface files (EIF) Derechos reservados, Juan Grompone, 2004.
Points Calculation • Each object is classified in three levels: simple, average or complex. • There are standard weights for each case. • This result is called non-adjusted PF. • There are global modifications applied to the entire project. • They result in adjustedPFs. Derechos reservados, Juan Grompone, 2004.
GeneXus objects • GeneXus native objects are the following: • tables • reports • workpanels • webpanels • data views • menus • procedures Derechos reservados, Juan Grompone, 2004.
Alignment with Functional Points • The idea is “aligning” these objects with the ones handling the Functional Points. • The association occurs quite immediately. • It does not result in standard Functional Points but in a useful metrics. • This metrics can be calibrated through empiric coefficients. Derechos reservados, Juan Grompone, 2004.
Aligning tables ILF internal logic fiiles reports EO external outputs workpanels EI EQ inputs or queries webpanels EI EQ inputs or queries data views ILF interfaces menus navigation, not counted procedures general modifier Derechos reservados, Juan Grompone, 2004.
Resulting metrics • This metrics is easy to estimate or be reconsidered. • It is reasonable proportional to PDFs. • It may be automatically calculated from the Knowledge Base. • It is absolutely valid for the follow up and control of projects or quality measures. Derechos reservados, Juan Grompone, 2004.
back-end pages Web Site General Scheme external customer in the web external customer with browser Derechos reservados, Juan Grompone, 2004.
Size Measurement • The back-end does not present difficulties since it is a conventional information system. • The problem arises from the front-end pages (static or dynamic). • There is where we must introduce new concepts. Derechos reservados, Juan Grompone, 2004.
Web page objects • There are two types of Web page objects: • Web forms, which are conventional objects • and hyperlinks, which are new objects • An hyperlink must be designed, has a logic and returns information. • I believe that is it a query. Derechos reservados, Juan Grompone, 2004.
Rules for measuring a site • Measuring the back-end in the usual way, since it is a conventional system. • Considering the site forms and queries as simple, average or complex EQs. • Considering pages with hyperlinks as simple, average or complex EQs. • Not forgetting that there are “hidden” files. Derechos reservados, Juan Grompone, 2004.
Some cases from real life • Static Web Site: the site has 8,428 Functional Points. • Site whose pages are all dynamic: the back-end has 227 Functional Points. • Private Site of E-Commerce: it has 360 Functional Points in its back-end has a total of 1,052 Functional Points. Derechos reservados, Juan Grompone, 2004.
Datawarehousing Measurement • In fact, these projects may be considered standard systems and measured with the standard procedure. • Anyway, a certain alignment with PFs objects must be performed. Derechos reservados, Juan Grompone, 2004.
Alignment Data source EIF external interface Hypercube ILF internal file Hypercube data loading EI external input Reports on dimensions EQ queries Derechos reservados, Juan Grompone, 2004.
simple average complex ILF 23 - - EIF 13 - - EI 20 - 3 EQ 315 - - A case from real life • 1564 non-adjusted Functional Points • Datawarehousing tools productivity is huge! Derechos reservados, Juan Grompone, 2004.
First, a simple example from real life Derechos reservados, Juan Grompone, 2004.
nodes branches Let’s analyze its objects Derechos reservados, Juan Grompone, 2004.
Objects Analysis • A Workflow has two measurement types: • Measurement within each node: it is a conventional information system • Flow measurement • Information management may be measured in Functional Points. • Flow measurement demands a different metrics. Derechos reservados, Juan Grompone, 2004.
Cyclomatic metrics • It is a metrics normalized by IEEE. • It is quite simple. • The measurement equation is the following: measurement = branches - nodes + 1 • Let’s see some examples. Derechos reservados, Juan Grompone, 2004.
Some simple cases • A lineal flow has Cyclomatic complexity equal 0, since nodes are equal to branches plus 1. • A navigation tree has cyclomatic complexity equal 0: • If we remove a node and a branch, complexity does not change. • This way, we reach the root node. • Then, complexity equals 0. Derechos reservados, Juan Grompone, 2004.
A large workflow from real life Derechos reservados, Juan Grompone, 2004.
Comments • This results in navigation menus not adding measurement to a project. • This also results in a useful rule: the number of screens is approximately one third of the cyclomatic complexity. • This empirical rule is useful for preliminary estimates. Derechos reservados, Juan Grompone, 2004.
Metrics Defense • Metrics are needed and allow using simple tools. • The proposals of this presentation are not normalized, but they are useful. • The natural complement consists in gathering historical information enabling to relate them with projects efforts. Derechos reservados, Juan Grompone, 2004.