Academia.eduAcademia.edu

Software security characteristics for function point analysis

2009

Software cost estimation (SCE) has been an important but difficult task since the beginning of the computer era. It considers list of parameters to estimate accurately the software cost. However, security cost is always excluded in most of the parametric cost estimation models. It is because of the security aspect is normally considered late in the software development. To overcome this problem, we proposed an enhancement to one of the parametric estimation models, which is Function Point Analysis (FPA), to address the security concerns. The enhancement suggests potential software security characteristics during system development life cycle (SDLC). These characteristics are then integrated into FPA calculation to encounter the security cost estimation. This paper also points to the validation of a survey findings and calibration of the FPA calculation.

Software Security Characteristics for Function Point Analysis N. A. S. Abdullah1, R. Abdullah2, M. H. Selamat2, A. Jaafar2 1 2 Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA, Shah Alam, Selangor, Malaysia Faculty of Computer Science and Information Technology, Universiti Putra Malaysia, Serdang, Selangor, Malaysia ([email protected]; rusli, hasan, [email protected]) Abstract – Software cost estimation (SCE) has been an important but difficult task since the beginning of the computer era. It considers list of parameters to estimate accurately the software cost. However, security cost is always excluded in most of the parametric cost estimation models. It is because of the security aspect is normally considered late in the software development. To overcome this problem, we proposed an enhancement to one of the parametric estimation models, which is Function Point Analysis (FPA), to address the security concerns. The enhancement suggests potential software security characteristics during system development life cycle (SDLC). These characteristics are then integrated into FPA calculation to encounter the security cost estimation. This paper also points to the validation of a survey findings and calibration of the FPA calculation. II. METHODOLOGY A. Security Review on Parametric Estimation Models Several parametric estimation models have been evaluated from the security viewpoint [9]. The models include Albrecht’s Function Point Analysis (FPA), [3][14][24], Putnam’s Software Life Cycle Model (SLIM) [6][17], COSMIC-FPP [18], Boehm’s COCOMO II [2], and Symon’s Mk II Function Point Analysis (Mk II FPA) [5][19]. It reveals how existing models addressed security and found them deficient [9]. References [13], [15] and [16] have shared the same idea. According to [16], many commercial firms are interested in determining how the costs of implementing different security strategies. They also extended COCOMO II to COSECMO [13] and considered industry practices with security respects [15]. From these reviews, we believe that the existing parametric estimation models unable to estimate the security cost in the software cost estimation. Keywords – Function Point Analysis, Security Cost Estimation, Software Cost Estimation, Software Security Characteristics. I. INTRODUCTION B. Security Characteristics Derivation Software cost estimation (SCE) is a complex activity that requires knowledge of a number of key attributes about the project for which the estimate is being constructed [1]. It has been an important but difficult task since the beginning of the computer era in the 1940s [1]. SCE can be vary depends on different models. But most of the cost estimation models do not consider the costs that invoke security while developing software [10]. It is because security is often an afterthought when developing software and is often bolted on late in development or even during deployment or maintenance [10]. Nevertheless, secure software development has gained momentum. Software houses are now keen to produce secure software as requested by customers’ desire with respect to security and quality of their products [11]. Engineering security will substantially raise software cost and there has been wide variation in the amount of added cost estimated by different models [13][15]. Due to the insufficiency of parametric software cost estimation models in security concerns and the desire of software houses in producing secure software, there is a need to include the security cost during the software cost estimation. To estimate the security cost, we have proposed a software security characteristics formulation [9]. These characteristics are then integrated to FPA to become one of the General System Characteristics (GSCs). 978-1-4244-4870-8/09/$26.00 ©2009 IEEE To develop meaningful security characteristics, the relative importance of these characteristics needs to be established, along with some understanding as to why certain characteristics are perceived to be more important than others [7][12]. Based on the meta-data analysis [9] and supporting studies [12][13][15][16], a software security characteristics formulation has been proposed. Four security standards are analyzed to produce this formulation [9]. These standards include Information Technology Security Cost Estimation Guide [20], Common Criteria for Information Technology Security Evaluation [21], Open Web Application Security Project [22], and Control Objectives for Information and related Technology [23]. These common standards are chosen based on the literature reviews. The security aspects are prearranged into five phases as in Table 1. There are Plan (P), Design (D), Code (C), Test (T) and Deploy (E). In each phase, there are interrelated security aspects. Each security aspect considers the related software security characteristics. From the reviews, there are 48 security characteristics [9] (see Table 2). These characteristics are arranged according to the respective security aspects. They will be the characteristics to be considered whenever the software developers want to estimate for the security cost. These characteristics are integrated in existing FPA as GSC. 394 Proceedings of the 2009 IEEE IEEM TABLE 1 PROPOSED SECURITY CHARACTERISTICS FORMULATION Step Plan (P) Design (D) Security Aspects (1) Security Requirements (SR) As mentioned, the total number of UAF is accumulated from five components as in (2). The simplified equation is as follows: UAF = EI + EO + EQ + ILF + EIF. (2) where EI = External Inputs EO = External Outputs EQ = External Inquires ILF = Internal Logical Files EIF = External Interface Files Security Features (SF); Functional Features (FF) Code (C) Attack Planning (AP); Formal Review and Sign-off (FR); Secure Coding, Review and Audit (SCR) Test (T) Software Security Assurance (SSA); Final Security Review (FSR); Infrastructure Application Security Measures (ASM) Deploy (E) FP = UAF * VAF where UAF = Unadjusted Function Point VAF = Value Adjusted Factor Software Hardening Monitoring (SHA) & Application Security C. Measurement Instrument Setting The weights are assigned to each component based on transactional and data function types. For VAF, it is calculated from the summation of 14 GSCs as in (3). The proposed software security characteristics might or might not involve during the real world practices of SDLC in SCE. In response, we hypothesized that H0 : µsecurity ≥ µm where µsecurity = Software security characteristics from meta-data analysis µm = Malaysian software developers’ awareness towards the listed security characteristics. A survey has been conducted to test the proposed hypothesis [8]. The result indicates the extent of software security characteristics implemented in Malaysia software developers. To validate the formulation with current developers’ practices, a questionnaire has been setup as measurement instrument. The security characteristics are transformed into questions (refer as items in RASCH) that scale from 1 to 4 to indicate the degree of importance. The sample unit is the respondents that representing Multimedia Super Corridor (MSC) software houses and directly involved in software development related works. The results [8] from the survey were tabulated and run in Winsteps, RASCH [4] analysis software, to obtain the logit values. It helps to obtain the relative importance for the security characteristics to enhance the FPA model. ∑ Ci )/100]. 14 VAF = 0.65 + [( (3) i =1 where Ci = degree of influence for each Genaral System Characteristic i = is from 1 to 14 representing each GSC Σ = is summation of all 14 GSCs. From the literature [8][9], we strongly recommended that security can be treated as one of the general system characteristics in the current real world application estimation. Therefore, we proposed considering security as individual characteristic in GSCs in FPA model. However, this proposed enhancement is still need to be proven. We have initiated an effort to validate experimentally that the model can predicts the impact of added security cost. This experiment can calibrate the model to collect and analyze the actual impact of security characteristics. III. RESULTS A. Survey Results D. Review on Function Point Analysis for Enhancement Possibility 1) Person Measure Summary Statistics: The major finding is the Person Mean, µperson = 1.59logit, hence person awareness of the security characteristics is positive, which above the item mean. The person reliability is excellent, which is 0.97. 2) Item Measure Summary Statistics: The Item Summary gives poor separation, G=1.08 and poor Reliability = 0.54, which is lower than threshold 0.67. However, it has good item spread of 3.74logit with SDi = 0.70. It requires review on the both end of very difficult and very easy items, which shows a hollow area need to be patched up. In this analysis, items are referred to security characteristics. Therefore, most of the security characteristics (N=19) are basically implemented by all the respondents. This number is used in the score in GSC. Function Point Analysis (FPA) [3][14] consists of two main parts in the measurement. First part is five components; include External Inputs (EI), External Outputs (EO), External Inquires (EQ), Internal Logical Files (ILF) and External Interface Files (ELF). These components are evaluated by complexity weights to produce Unadjusted Function Point (UAF). The second part is 14 General System Characteristics (GSCs) that measured from 0 to 5 nominal scales. These characteristics contribute to Value Adjusted Factor (VAF). Based on the Function Point Analysis Training Course by [24], the final function point count is obtained by multiplying the VAF times the Unadjusted Function Point (UAF). The standard equation for estimation is: 395 Proceedings of the 2009 IEEE IEEM 3) Person-Item Distribution Map: The analysis reveals a person spread of 5.52logit with good separation, G=3.64 and excellent Reliability of Cronbach-α = 0.97, which means the survey outcome is acceptable due to Cronbach-α is greater than 0.67. From the calculations and results [8], generally the respondents have high level of awareness in implementing security characteristics throughout SDLC; µperson of 83.06%, which is higher than 60% threshold limit. Hereby, the Person Mean, µperson = 1.59 ≥ 0.00, with significant of p=0.05. Therefore, the H0 is accepted. It means the proposed security characteristics are valid, relevant and implemented by the software houses as current practices in Malaysia. B. Security Enhancements for FPA After analyzing the results [8], we intended to increase another General System Characteristic for security concern. The enhancement for VAF is proposed to do some modification on (3) and produce the following equation. ∑ Ci + Security) /100]. (4) i =1 where Ci = degree of influence for each Genaral System Characteristic i = is from 1 to 14 representing each GSC Σ = is summation of all 14 GSCs Security = Degree of Influence for Security Characteristics. SF User Identify Management; Interpreter Injection; Authorization; User Attribute Definition; Protection of Security Technology; Data Validation; Authentication; Session Management; Cryptography; Exchange of Sensitive Data; Verification of Secrets; Data Integrity FF Management Security Functions Behavior; Production and Input/Output Controls; File System; Web Services; Incident Response Capability; Handling E-Commerce Payments; Configuration; Buffer Overflow; Administrator Interfaces; Personnel Security SCR Audit Trial; Error Handling, Auditing and Logging; Cheat Sheets SSA Security Testing; Security Surveillance; Security Monitoring FSR Final Review of Security Controls; Final Security Attribute based Access Control; Final Logical Access Controls; Final Audit Data Generation ASM Security Awareness; Security Education; Security Training SHA Hardware Maintenance; Documentation; System Software Maintenance 0 1 2 3 4 5 Descriptions To Determine Degree of Influence None of the above Below 20% (1 ≤ N ≤ 10) 20% to 39% (11 ≤ N < 20) 40% to 63% (20 ≤ N ≤ 30) 64% to 79% (31 ≤ N ≤ 38) 80% and above (N > 38) IV. DISCUSSION The proposed software security characteristics are treated as items in RASCH analysis method. This analysis method has validated the items (refer to security characteristics) that practiced by the software houses in Malaysia. Therefore, the item validity from the RASCH method has supported the acceptance of security characteristics. However, the proposed enhancement on FPA model is currently transformed as online estimation tool and still in progress of testing. This tool needs to collect data through controlled experiments and verifies the proposed enhancement of FPA model. Security Characteristics Specification of Management Functions; Abuse Cases; Threat Risk Modeling; Risk Analysis; Management of IT Security; PHP Guidelines; Security Rules; IT Security Plan Review of Security Controls; Logical Access Controls; Audit Data Generation; Security Attribute based Access Control Score As TABLE 2 SECURITY CHARACTERISTICS SR FR TABLE 3 DEGREE OF INFLUENCE FOR SECURITY CHARACTERISTICS For ease of giving degree of influence, we listed the security characteristics (see Table 2). The user can identify the number of characteristics that might take into consideration during development. The number will indicate the score for degree of influence. Table 2 and Table 3 will be the additional characteristic sheet for GSCs in FPA model. Security Aspects Phishing; Denial of Service Attacks; Non-bypass Ability of TSP; Malicious Software Prevention, Detection and Correction As in the survey result, 19 items or security characteristics are basically implemented by all the respondents. Therefore, 19/48 x 100% = 39.58% ≈ 40%. The basic and common implementation is normally given score 3 in GSCs. Therefore, 20 items and above will get 3 as degree of influence. Based on the Measure Order of Difficulty for the items [8], the suggested score is as below. 14 VAF = 0.65 + [( AP V. CONCLUSION The importance of estimating security cost is highlighted in few studies. In response, we proposed an enhancement on FPA model to encounter the security 396 Proceedings of the 2009 IEEE IEEM [10] S. Ardi, D. Byers, N. Shahmehri, “Towards a Structured Unified Process for Software Security”, in Proc. ICSESESS, 2006, pp. 3-9. [11] Jari, R, “Contracting over the Quality Aspect of Security in Software Product Markets”, in Proc. of 2nd ACM workshop on Quality of Protection, 2006. pp. 19-26. [12] Frederick, L. “The Importance of Identifying Risk during Project Planning”; in Proc. of Project Management in Practice-The 2006 Project Risk And Cost Management Conference, 2006, pp. 74-83. [13] Colbert E., Wu D., Chen Y., and Boehm B, “Cost Estimation for Secure Software and Systems 2006 Project Update”, University of Southern California: Center of Software Engineering, USA, 2006. [14] Albrecht, A. J., “Measuring application development productivity”, in Proc. of IBM Application Development Symp, 1979, pp. 83-92. [15] Wu, D., and Yang, Y., “Towards An Approach for Security Risk Analysis in COTS Based Development”, Center for Software Engineering, University of Southern California, Los Angeles, CA. Proceedings of Software Process Workshop on Software Process Simulation 2006, USCCSE-2006-605, May 2006 [16] Reifer, D.J., Boehm, B.W., and Gangadharan, M., “Estimating the Cost of Security for COTS Software”, Center for Software Engineering, University of Southern California, Los Angeles, CA. Technical Report USC-CSE2003-502, 2003. [17] Panlilio N.Y., “Software Estimation Using the SLIM Tool”, IBM Canada Ltd Laboratory Technical Report 74.102, 1994. [18] C. Symons. (2007, Sep.). The COSMIC Functional Size Measurement Method Version 3.0 – Measurement Manual. Common Software Measurement International Consortium, UK. [Online]. Available: http://www.gelog.etsmtl.ca/cosmic-ffp [19] UKSMA Metrics Practices Committee. (1998, Sep.). Mk II Function Point Analysis – Counting Practices Manual Version 1.3.1. United Kingdom Software Metrics Association (UKSMA), UK. [Online]. Available: http://www.eee.metu.edu.tr/~bilgen/MARK%20II%20FP% 20Guide.pdf [20] Department of Education, USA. (2002, Nov.). Information Technology Security Cost Estimation Guide. United States of America. [Online]. Available: http://csrc.nist.gov/groups/SMA/fasp/documents/pm/ED_IT _Security_Cost_Estimation_Guide_NIST.doc [21] CCRA Working Group, (2007, Sep.). Common Criteria for Information Technology Security Evaluation, version 3.1. [Online]. Available: http://www.commoncriteriaportal.org/ [22] The Open Web Application Security Project, (2005, Jul.). “A Guide to Building Secure Web and Web Services”, Black Hat 2nd Edition. [Online]. Available: http://www.owasp.org/index.php/Category:OWASP_Guide _Project [23] ISACA, IT Governance Institute, USA, (2007). “Control Objectives for Information and related Technology (COBIT) – Framework, Control Objectives, Management Guidelines, and Maturity Models”. [Online]. Available: http://www.isaca.org/template.cfm?Section=COBIT6 [24] Longstreet, D., (2004, Oct.). Function Points Analysis Training Course. Blue Springs. [Online]. Available: http://www.softwaremetrics.com/freemanual.htm cost. Meta-data analysis on software security characteristics has produced the software security formulation. This formulation is then transformed as items in a measurement instrument. The result of the survey was tabulated and analyzed by using RASCH analysis method. This method verifies the person and item validity. The result of analysis supported the hypothesis that the formulation is valid, relevant and currently implemented by the software houses. These proposed security characteristics are integrated as one of the GSCs in FPA model. It proposed an addition sheet of GSCs with responsive degree of influences. However, the results of the calculations still need to be verified through experiments. Online estimating tool has be setup to collect data for further verification purpose. ACKNOWLEDGMENT N. A. S. Abdullah thanks The Ministry of Higher Education Malaysia and Universiti Teknologi MARA for giving financial support and scholarship for this study. REFERENCES [1] T.C., Jones, Estimating Software Costs. United States of America: McGraw-Hill, 1998, pp. 3-35. [2] Boehm, B., Abts, C., Brown, A.W., Chulani, S., Clark, B.K., Horowitz, E., Modachy, R., Reifer, D., Steece, B., Software Cost Estimation with COCOMO II. New Jersey: Prentice Hall, Inc, 2000, pp. 145-151, pp. 284-291. [3] D. Garmus and D. Herron, Function Point Analysis: Measurement Practices for Successful Software Projects. United States of America: Addison-Wesley, 2001, pp. 83171. [4] T.G. Bond and C. M. Fox, Applying the Rasch Model: fundamental measurement in the Human Sciences, 2nd ed. New Jersey: Lawrence Erlbaum Associates, Inc., 2007, pp. 29-48. [5] Symons, C., Software Sizing and Estimating – Mark II FPA. United Kingdom: Wiley Series in Software Engineering, 1991. [6] Putnam, L.H., “A general empirical solution to the macro software sizing and estimation problem”, IEEE Transactions on Sofiware Engineering, ~01.4, no. 4, pp. 345-381, Jul. 1978. [7] Keil, M., Cule, P. E., Lyytinen, K. and Schmidt, R.C. “A Framework for Identifying Software Project Risks”, Communication of the ACM, vol 41, no II, pp. 76 – 83, Nov. 1998. [8] Abdullah, N.A.S.; Abdullah, R.; Selamat, M.H.; Jaafar, A., “Validation of Security Awareness in Software Development by using RASCH Measurement”, Pacific Rim Objective Measurement Symposium 2009 Hong Kong (PROMS 09 HK), pp. 100, Jul 2009. [9] Abdullah, N.A.S.; Abdullah, R.; Selamat, M.H.; Jaafar, A., “Potential security factors in software cost estimation”, Information Technology, 2008. ITSim 2008. International Symposium vol 3. pp. 1 – 9, 26-28 Aug. 2008. Digital Object Identifier: 10.1109/ITSIM.2008.4631983 397