I would break these down to use cases and assign complexity to each one of them and then try estimating it that way.
Regards, Vishal. -----Original Message----- From: Chappell, Simon P [mailto:[EMAIL PROTECTED] Sent: Monday, March 24, 2003 11:14 AM To: Struts Mailing List (E-mail) Subject: [OT] Estimating a Struts-based project I have just completed an initial estimate for a Struts-based web application. I am curious as to what estimation methods folks out there use for their initial estimates. The revised estimate will be delivered after more analysis is performed. I am fed up with making wild guesses for initial estimates and wondered if there was any way to take the small amount of information available up front (i.e. the number of screens on the user's initial workflow requirements document) and extrapolate it into an estimate. I understand that the margin of error is gonna be big and hairy on this puppy, but it's an initial estimate created with a dearth of information, so what do you expect? :-) What I did was: Take the estimated number of application screens: s=13 Take the number of application user roles: r=3 Figure which screens are used by which roles and total: sr=32 Estimate the number of actions: a = sr * 2 = 64 Application units of work: auow = a + sr = 96 Total units of work (including admin screens): tuow = auow * 2 = 192 Estimate an effort factor per unit: ef = 4hr Programmer work: pw = tuow * ef = 768hrs Some assumptions included in these calculations include: 1. An average of two actions per screen role. 2. The administration facility of an application is about 50% of the work. 3. The effort factor is a figure arrived at from knowledge of the programmer being tasked and the number of new technologies within the project. Your thoughts please. Simon ----------------------------------------------------------------- Simon P. Chappell [EMAIL PROTECTED] Java Programming Specialist www.landsend.com Lands' End, Inc. (608) 935-4526 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]