140 likes | 572 Views
Improving Software Economics. Software & the Internet: Business Drivers. Surveyed 100 Software Industry Experts. Growth of complexity Continuously-evolving systems Software Development. 1. Growth of Complexity: e-business. Stock Trading. High. Distributed Concurrent Connected
E N D
Software & the Internet: Business Drivers Surveyed 100 SoftwareIndustry Experts • Growth of complexity • Continuously-evolving systems • Software Development
1. Growth of Complexity: e-business Stock Trading High • Distributed • Concurrent • Connected • Real-time/embedded • Fault tolerant • Customized Medium Low Time
2. Continuously-evolving Systems Year 1 Year 2 • Conventional • Yearly + • Modern • < Yearly The New Economy Year 1 Year 2 24x7x365 Global • Near Future • Monthly • Weekly • Daily Year 1 Year 2
3. Software Development: Today’s Business Driver Accessibility & Usage Software Development Power Bandwidth
Simplified Software Economics Where: Project Performance= Effort or time Complexity= Volume of human-generated code Process= Methods, notations, maturity Team= Skill set, experience, motivation Tools= Software process automation Project Performance = (Complexity) (Process)* (Team) * (Tools)
Reduce the Proportion of Hand Written Code Hardware Elements Gates Chips Cards Racks System Higher Complexity Lower Complexity Components Statements Instructions Subsystems Application If a = b then c=1 Else c=2 While n> c Decrement_count end Software Elements Use higher level software components to enable economically significant reuse
Results of An Architecture-First Process Risk Exploration Period Risk Resolution Period Controlled Risk Management Period Waterfall Iterative Risk Risk Reduction Time
Improve Team Proficiency • Smaller, more capable teams are key to success • Consistent, simple communication paths • Empowered and self-managed • Ownership in the plan and accountable
Instrument Through an Integrated Environment Visual Modeling Requirements Management Round-trip Engineering Round-trip Engineering Programming Environment Project Artifacts Change Management Project Management Round-trip Engineering Round-trip Engineering AutomatedTesting