pub struct PutnamModel {
pub ck: f64,
pub d0: f64,
}Expand description
Putnam/SLIM model.
Software Equation: Size = Ck × E^(1/3) × T^(4/3) Combined with D0 = E / T³: T = (Size / (Ck × D0^(1/3)))^(3/7) [years] E = D0 × T³ [person-years]
Fields§
§ck: f64Technology/productivity constant Ck. Typical: 2000 (poor), 8000 (good), 11000 (excellent).
d0: f64Manpower buildup index D0 = Effort / Time³. Typical: 8 (new/many interfaces), 15 (new standalone), 27 (rebuild).
Trait Implementations§
Source§impl Default for PutnamModel
impl Default for PutnamModel
Source§impl EstimationModel for PutnamModel
impl EstimationModel for PutnamModel
Source§fn display_params(&self) -> Vec<(String, String)>
fn display_params(&self) -> Vec<(String, String)>
Key parameters for display in report footer.
Source§fn estimate_effort(&self, metrics: &CodeMetrics) -> f64
fn estimate_effort(&self, metrics: &CodeMetrics) -> f64
Estimate effort in person-months.
Source§fn estimate_schedule(&self, _effort_months: f64, metrics: &CodeMetrics) -> f64
fn estimate_schedule(&self, _effort_months: f64, metrics: &CodeMetrics) -> f64
Estimate schedule in months.
Source§fn estimate_cost(
&self,
effort_months: f64,
metrics: &CodeMetrics,
cost_config: &CostConfig,
) -> f64
fn estimate_cost( &self, effort_months: f64, metrics: &CodeMetrics, cost_config: &CostConfig, ) -> f64
Estimate cost in USD. Default: salary-based.
Auto Trait Implementations§
impl Freeze for PutnamModel
impl RefUnwindSafe for PutnamModel
impl Send for PutnamModel
impl Sync for PutnamModel
impl Unpin for PutnamModel
impl UnsafeUnpin for PutnamModel
impl UnwindSafe for PutnamModel
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more