Function Point Estimation A Case Study Personal Investment Management System FP Group at Infosys Technologies Ltd, Bangalore
Background • FP counting in practice is not easy; there are courses just on this • For PIMS, this FP counting was done by professionals who apply FP regularly – An initial version of PIMS SRS was given along with the init architecture – The professional were asked to do a detailed analysis using their rules • This presentation is the output they provided
The Project The Project involves the development of a Personal Investment Management System (PIMS) which can be used by a single user to track his/her investments. The System should have the following functionalities: 1. Tracking • Portfolios • Securities • Transactions over a particular security 2. Aid the user in analyzing the investments. The System will get the latest prices of various stocks from a predetermined Website.
Creating a Portfolio Module : Portfolio Management File – Portfolio Basic Enters PROGRAM-1 Actor EI EI ILF PROGRAM-2 PROGRAM-3 PROGRAM-4 PROGRAM-5 Programs Program – 1: Portfolio Manager Program – 2: Securities Manager Program – 3: Transaction Manager Program – 4: Investment Analyzer Program – 5: General (Login, Change Pwd and User Options)
Analyzing Gains Module : Investment Analyzer File – Portfolio Basic Enters PROGRAM-1 Actor File – Portfolio Securities Data EI File - Transactions EI PROGRAM-2 ILF PROGRAM-3 PROGRAM-4 PROGRAM-5 Programs Program – 1: Portfolio Manager Program – 2: Securities Manager Program – 3: Transaction Manager Program – 4: Investment Analyzer Program – 5: General (Login, Change Pwd and User Options)
PIMS -- Full System Internal Logical Files : 1: Agent’s Personal Data, Qualification, Work Experience, Agent’s Test Results Portfolio 2: Validation Rules File Management 3: Agent’s License Data 4. Agent Transfer Request Data 5: Customer Complaint, Penal Action Data 6: Agent Termination Data Transactions 7: Agent Re-Assgn. Request Data Management ILF External Queries and Output : Investment 1: List of Portfolios Analyzer EO/EQ 2: List of Securities Report 3. List of Transactions Report 4: Net Worth Report 5: Rate of Return Report General Data 6. Gains Report 7: Alert Messages EIF External Interface Files : 1: Latest Stock Price
PIMS – Data Functions Internal Logical Files (ILF) External Interface Files (EIF) 1. LatestStockPrices 1. Portfolio Basic 2. Portfolio Securities 3. Transactions 4. UserData
PIMS – Data Functions ILF Complexity Factors Function ILF DET RET Complexity Points Portfolio Basic Portfolio ID., Name (2) Portfolio Basic Information (1) Simple 7 Security code, Security name, Security type, Volume, Cost, Securities Info (1) Portfolio Simple 7 Current price, Last Modified Date (7) Securities 7 Simple Transaction No., Date, Code, Security Type, Txn Type, Transaction Info (1) Transactions Data Maturity date, Interest rate, Volume, Cost of purchase (9) User Id, Password, Site to download Stock Prices from, User Data Simple Login Details, 7 Frequency of getting updates, Timeline for getting alerts (6) User Options (2) Total 28
PIMS – Data Functions EIF Complexity Factors Function EIF DET RET Complexity Points Stocks Data Security Code, Price, Min Price, Max Stock Data (1) Simple 5 Price, Date (5) Help file Simple 5 10 Total
PIMS – Transaction Functions External Outputs (EO) External Inputs (EI) Analysis Reports Maintenance of 1. Net Worth 1. Portfolio Basic 2. ROR 2. Portfolio Securities Data 3. Gains Report 3. Transactions Data 4. Analysis of ROR 4. General User Data 5. Analysis of Net Worth 5. Current Price of Stocks 6. Alert Messages External Queries (EQ) 1. List of Portfolios 2. List of Securities 3. List of Transactions
PIMS – Transaction Functions EI Complexity Factors Function EI DET FTR Complexity Points Login User Id, Password (2) User Data (1) Simple 3 Old Password, New Password, Retyped Change Password User Data (1) Simple 3 Password Simple Site to download latest prices, Frequency of getting updates, 3 User Options User Data (1) Timeline for getting alerts (3) Portfolio No., Name (2) (In case of delete, the no. of DETs Ins/Upd/Del - Portfolio Basic (1) Portfolio 3 x 3 is 3, as there is a confirmation message.) Simple Management (Security Code, name, type, Portfolio No (4) – Add) (Code, OldPortfolioNo and Securities File (1) Securities 3 x 4 Add/Move/Del/Ei New PortfolioNo(3)- Move) , (Security Code (1) – Delete) For Edit Current Prices (Security Code, Current Price) Management dit - Simple 3 x 3 Txn No., Date, security code…. (6). (For delete only Txn No Transactions Transactions File (1) Ins/Upd/ Delete - and Security code are needed) Managment Simple Total 39
PIMS – Transaction Functions EO Complexity Factors Function EO DET FTR Complexity Points NetWorth All fields in All ILFs, except User Data. Latest Stock Price: EIF Portfolio Basic, Securities, Complex 7 also to be considered. Remove duplicates(16). Transaction, Latest prices (4) Determination Securities File, Transactions File, Security Code, Security type, Simple ROR 4 Latest Prices (3) Volume, Cost, Current Price (5) Security Code, Security type, Volume, Cost, Securities File, Transactions File, Short term and Long Medium 5 Current Price, date of Txn, Maturity Date (7) Latest Prices (3) term Gains Report Securities File, Transactions File, Simple 4 Security Code, Security type, Analysis of ROR Latest Prices (3) Volume, Cost, Current Price (5) Analysis of NetWorth Same as in Networth 7 Same as in NetWorthDetermination Complex determination Alert User on SecurityCode, Name, Maturity Date, Txn File, User Options Simple 4 Maturity Dates Timeline for giving Alerts (4) File, Securities File (3) Securities File, Latest Display Current Simple Security Code, Name, Current Price 4 prices Values on Security (3) Total 35
PIMS – Transaction Functions EQ Complexity Factors EQ DET FTR Complexity Function Points List Portfolios PortfolioNo., Portfolio Name (2) Portfolio Basic Simple 3 List Securities All fields in Security File Securities File Simple 3 List Transactions All fields in Transaction file Transaction File Simple 3 Total 9 Total Unadjusted Function Points = ILF+EIF+EI+EO+EQ = 28+10+39+35+9 = 121 FP
PIMS – VAF Value Adjustment Factor Sl. GSC Description Value (0-5) Comments 1 Data Communications 1 Needs to Connect to Web 2 Distributed Data Processing 0 NA 3 Performance 0 No major performance requirements 4 Heavily used configuration 0 Standard 5 Transaction rate 0 Standard 6 Online data entry 0 Standard 7 End-user efficiency 0 Standard 8 Online update 0 Standard 9 Complex processing 0 Standard 10 Re-usability 0 Standard 11 Installation ease 0 Some installation requirements mentioned. 12 Operation ease 0 Standard 13 Multiple sites 0 Single Location 14 Facilitate change 1 Possible changes anticipated Total 3 VAF = (TDI * 0.01) + 0.65 0.68
PIMS – AFP Total Adjusted Function Points = UFP * VAF = 121 * 0.68 = 82 FP Effort = Function Points * Productivity ( of selected platform) Assuming Productivity for Java/Some Standard RDBMS is 15 hrs/FP Effort to develop the application in VB/Oracle is = 82 * 15 = 1234.20 Person Hours Add PM effort (10%) = 123 Person Hours Total effort = 1357/(22 * 8) = 8 Person Months
Thank You
Recommend
More recommend